Game phases control which screen or mode is active. They are dispatched as Windows messages
and handled by CEvent in src/event.cpp.
All 67 phases are defined as an enum in include/def.hpp, starting at
WM_PHASE_INIT = WM_USER + 500 and ending at
WM_PHASE_INTRO2 = WM_USER + 566.
Core Gameplay
Phase
Value
Description
WM_PHASE_INIT
WM_USER+500
Initialization / startup
WM_PHASE_PLAY
WM_USER+501
Normal gameplay
WM_PHASE_BUILD
WM_USER+502
Level editor / design mode
WM_PHASE_PLAYTEST
WM_USER+506
Test play from the level editor
WM_PHASE_1531
WM_USER+507
Unknown/unnamed phase (decompilation artifact)
WM_PHASE_DOPLAY
WM_USER+515
Start single-player game
WM_PHASE_DEMO
WM_USER+533
Demo playback (attract mode)
WM_PHASE_STOP
WM_USER+558
Escape key pause menu during gameplay (comment in source)
WM_PHASE_QUITPLAY
WM_USER+563
Exit play back to main menu
WM_PHASE_1588
WM_USER+564
Unknown/unnamed phase (decompilation artifact)
Win / Lose
Phase
Value
Description
WM_PHASE_WIN
WM_USER+508
Level won
WM_PHASE_LOST
WM_USER+509
Level lost
WM_PHASE_WINMOVIE
WM_USER+513
Win cutscene
WM_PHASE_1539
WM_USER+514
Unknown/unnamed phase (decompilation artifact)
WM_PHASE_LASTWIN
WM_USER+516
Last win — Planet Blupi vestige (comment in source)
WM_PHASE_LOSTMULTI
WM_USER+525
Multiplayer: lost
WM_PHASE_WINMULTI
WM_USER+526
Multiplayer: won
WM_PHASE_WINMOVIEMULTI
WM_USER+527
Multiplayer: win cutscene
WM_PHASE_WINDESIGN
WM_USER+522
Editor test: won
WM_PHASE_LOSTDESIGN
WM_USER+523
Editor test: lost
WM_PHASE_WINMOVIEDESIGN
WM_USER+524
Editor test: win cutscene
Menus and UI
Phase
Value
Description
WM_PHASE_SETUP
WM_USER+510
Settings screen
WM_PHASE_MUSIC
WM_USER+511
Music selection screen
WM_PHASE_PLAYMOVIE
WM_USER+512
Play intro movie
WM_PHASE_SETUPp
WM_USER+517
Settings screen (alternate variant)
WM_PHASE_REGION
WM_USER+518
Region selection screen
WM_PHASE_INSERT
WM_USER+519
Insert CD (CD check screen, requires _CD=TRUE)
WM_PHASE_INFO
WM_USER+505
Info / statistics screen
WM_PHASE_HELP
WM_USER+559
Help screen
WM_PHASE_BYE
WM_USER+532
Exit / goodbye screen (requires _BYE=TRUE)
WM_PHASE_INTRO1
WM_USER+565
Intro animation 1
WM_PHASE_INTRO2
WM_USER+566
Intro animation 2
WM_PHASE_TESTCD
WM_USER+528
CD presence test
WM_PHASE_MANUEL
WM_USER+529
Manual / instructions
WM_PHASE_PRIVATE
WM_USER+530
Private / cheat mode
WM_PHASE_UNDO
WM_USER+531
Undo — Planet Blupi vestige (comment in source)
Gamer Profile Management
Phase
Value
Description
WM_PHASE_GAMER
WM_USER+521
Gamer selection screen
WM_PHASE_NAMEGAMER
WM_USER+503
Name a new gamer profile
WM_PHASE_CLEARGAMER
WM_USER+504
Clear a gamer profile (confirmation)
WM_PHASE_DONAMEGAMER
WM_USER+538
Execute gamer naming
WM_PHASE_DOCLEARGAMER
WM_USER+539
Execute gamer profile clear
Level Editor I/O
Phase
Value
Description
WM_PHASE_NAMEDESIGN
WM_USER+534
Name a custom design level
WM_PHASE_WRITEDESIGN
WM_USER+535
Export design to c:\user (legacy path, comment in source)