emulator: Commander Genius type: standalone core_classification: game_engine source: "https://gitlab.com/Dringgstein/Commander-Genius" upstream: "https://gitlab.com/Dringgstein/Commander-Genius" profiled_date: "2026-10-04" source_commit: "bee4fcbd235b9d3d804a50cc6ecaccbbe89490f7" core_version: "v3.6.3" display_name: "Commander Genius" cores: [cgenius] systems: [commander-keen] verification: existence notes: | Reimplementation of the Commander Keen engines: Vorticon (Keen 1 to 3), Galaxy (Keen 4 to 6) and Keen Dreams. It reads the data files of the DOS releases and the DOS executable itself, from which it extracts tables, texts and compressed headers. Game detection. The launcher scans its root and every folder up to two levels under games/ for .exe and .lua files (src/engine/CGameLauncher.h:36-40, src/engine/CGameLauncher.cpp:134-141, 64-78). A file name containing keenN.exe, keenNe.exe, keenN.lua or kNdemo.exe (N from 1 to 6) or kdreams makes the folder a game (src/engine/CGameLauncher.cpp:437-487). Folder names are free; the paths below use the folder names of the packages the project publishes for its in-app downloader, which unpacks under games/ (src/engine/gamedownloader.cpp:455-491). File lookups are case-insensitive. Executable. readKeenExeData tries keenN.exe, keenNe.exe, kNdemo.exe, then kdreams.exe (src/fileio/CExeFile.cpp:164-203), unpacks LZEXE or PKLITE compression (src/fileio/CExeFile.cpp:235-255) and derives the version from the size of the unpacked image, never from a hash (src/fileio/CExeFile.cpp:350-402): Keen 1 100274 v1.1, 100484 v1.31, 100132 v1.34 Keen 2 118626 v1.0, 118672 v1.31 Keen 3 127598 v1.0, 127616 v1.31 Keen 4 258064 v1.0, 259232 v1.1, 263488 v1.4 Keen 5 262176 v1.0, 266096 v1.4 Keen 6 236112 v1.0 (the demo executable), 271696 v1.4, 270896 v1.5 Dreams 213536 The version selects the offsets used to read data out of the image. Tile properties are known for Keen 1 v1.1, v1.31, v1.34, Keen 2 and 3 v1.0 and v1.31, Keen 4 and 5 v1.4, Keen 6 v1.4 and v1.5, Keen Dreams and the Keen 6 demo (src/fileio/CTileLoader.cpp:68-88). The constructor also holds a support map keyed by the same sizes (src/fileio/CExeFile.cpp:29-50); its result and the CRC comparison of getEXECrc are stored in the launcher entry and read nowhere else (src/engine/CGameLauncher.cpp:546-548). Vorticon episodes open egahead, egalatch and egasprit, one levelNN file per map (80 is the world map, 81 the ending map, 90 the title map; the other numbers come from the world map data) and finale.ckN. Episode 1 also reads its story, help and ending texts, its sounds and its preview screens from files; episodes 2 and 3 take texts and sounds from the executable (src/engine/keen/vorticon/CStory.cpp:35-76, src/engine/keen/vorticon/CHelp.cpp:38-81, src/engine/keen/vorticon/CAudioVorticon.cpp:40-60). A sounds.ckN file, when present, replaces the embedded sounds. Without the three EGA files or a level file nothing is drawn or the map load fails; the text, finale, sound and preview files are skipped when absent. High scores are kept in the engine's own highscoreepN.dat, SCORES.CKN is not read (src/engine/keen/vorticon/CHighScores.cpp:394-397). Galaxy episodes open EGAGRAPH, GAMEMAPS and AUDIO. A missing EGAGRAPH ends the load (src/engine/keen/galaxy/GalaxyEngine.cpp:237-243). The graphics and audio dictionaries, EGAHEAD, AUDIOHED and MAPHEAD come from the executable; a file named egahead.ckN, egadict.ckN, audiohed.ckN, audiodct.ckN or maphead.ckN in the game folder takes precedence when present, which is how mods replace them (src/fileio/KeenFiles.h:41-48, src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:537-585, 706-742, src/engine/keen/galaxy/res/CAudioGalaxy.cpp:350-355, 389-411, src/engine/keen/galaxy/common/CMapLoaderGalaxy.cpp:220-235). The Keen 6 demo uses its own offsets (src/fileio/CExeFile.cpp:268-289, src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:190-205). Keen Dreams runs on an embedded Reflection Keen build for the EGA releases (src/engine/refkeen/CMakeLists.txt:11-13). The engine extracts nine tables from KDREAMS.EXE at the offsets of shareware v1.13 (src/engine/keen/dreams/dreamsengine.cpp:103-114, 226-283, 438) and opens KDREAMS.EGA, KDREAMS.MAP and KDREAMS.AUD, quitting when one is missing. The same file lists a size and CRC-32 for each file of that release (src/engine/keen/dreams/dreamsengine.cpp:93-101); the routine that compared them is commented out (src/engine/refkeen/be_cross_fs.cpp:660-679), so nothing is verified. LAST.SHL is in that list and is never opened. A .pat file in the game folder can rename the header and map files and patch the image (src/fileio/CPatcher.cpp:102-141, src/engine/CGameLauncher.cpp:660-696). Optional replacement graphics, sounds and music (gfx/, snd/, music/, songlist.lst) and Lua scripts are looked up in the game folder, some also in the bundled global/ folder (GsKit/fileio/ResourceMgmt.cpp:34-78). Cosmo's Cosmic Adventure is handled by a separate submodule compiled only with BUILD_COSMOS, off by default (src/engine/CMakeLists.txt:3). files: # Commander Keen 1: Marooned on Mars (shareware) - name: "keen1.exe" path: "games/keen1/keen1.exe" category: game_data system: commander-keen description: "Keen 1 executable, read for tables, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:164-168" - name: "egahead.ck1" path: "games/keen1/egahead.ck1" category: game_data system: commander-keen description: "Keen 1 EGA graphics header" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:48-52" - name: "egalatch.ck1" path: "games/keen1/egalatch.ck1" category: game_data system: commander-keen description: "Keen 1 tiles, fonts and bitmaps" required: false source_ref: "src/engine/keen/vorticon/CEGALatch.cpp:160-165" - name: "egasprit.ck1" path: "games/keen1/egasprit.ck1" category: game_data system: commander-keen description: "Keen 1 sprites" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:146-149, src/engine/keen/vorticon/CEGASprit.cpp:111-116" - name: "level01.ck1" path: "games/keen1/level01.ck1" category: game_data system: commander-keen description: "Keen 1 level 1" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level02.ck1" path: "games/keen1/level02.ck1" category: game_data system: commander-keen description: "Keen 1 level 2" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level03.ck1" path: "games/keen1/level03.ck1" category: game_data system: commander-keen description: "Keen 1 level 3" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level04.ck1" path: "games/keen1/level04.ck1" category: game_data system: commander-keen description: "Keen 1 level 4" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level05.ck1" path: "games/keen1/level05.ck1" category: game_data system: commander-keen description: "Keen 1 level 5" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level06.ck1" path: "games/keen1/level06.ck1" category: game_data system: commander-keen description: "Keen 1 level 6" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level07.ck1" path: "games/keen1/level07.ck1" category: game_data system: commander-keen description: "Keen 1 level 7" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level08.ck1" path: "games/keen1/level08.ck1" category: game_data system: commander-keen description: "Keen 1 level 8" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level09.ck1" path: "games/keen1/level09.ck1" category: game_data system: commander-keen description: "Keen 1 level 9" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level10.ck1" path: "games/keen1/level10.ck1" category: game_data system: commander-keen description: "Keen 1 level 10" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level11.ck1" path: "games/keen1/level11.ck1" category: game_data system: commander-keen description: "Keen 1 level 11" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level12.ck1" path: "games/keen1/level12.ck1" category: game_data system: commander-keen description: "Keen 1 level 12" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level13.ck1" path: "games/keen1/level13.ck1" category: game_data system: commander-keen description: "Keen 1 level 13" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level14.ck1" path: "games/keen1/level14.ck1" category: game_data system: commander-keen description: "Keen 1 level 14" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level15.ck1" path: "games/keen1/level15.ck1" category: game_data system: commander-keen description: "Keen 1 level 15" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level16.ck1" path: "games/keen1/level16.ck1" category: game_data system: commander-keen description: "Keen 1 level 16" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level80.ck1" path: "games/keen1/level80.ck1" category: game_data system: commander-keen description: "Keen 1 world map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/playgame/CPlayGameVorticon.h:35" - name: "level81.ck1" path: "games/keen1/level81.ck1" category: game_data system: commander-keen description: "Keen 1 ending map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/finale/CEndingEp1.cpp:104" - name: "level90.ck1" path: "games/keen1/level90.ck1" category: game_data system: commander-keen description: "Keen 1 title and demo map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/CPassiveVort.cpp:33" - name: "finale.ck1" path: "games/keen1/finale.ck1" category: game_data system: commander-keen description: "Keen 1 ending picture" required: false source_ref: "src/engine/keen/vorticon/finale/CEndingEp1.cpp:167, src/engine/keen/vorticon/finale/finale.cpp:94-95" - name: "sounds.ck1" path: "games/keen1/sounds.ck1" category: game_data system: commander-keen description: "Keen 1 PC speaker sounds" required: false source_ref: "src/engine/keen/vorticon/CAudioVorticon.cpp:36-40" - name: "storytxt.ck1" path: "games/keen1/storytxt.ck1" category: game_data system: commander-keen description: "Keen 1 story text" required: false source_ref: "src/engine/keen/vorticon/CStory.cpp:42-46" - name: "helptext.ck1" path: "games/keen1/helptext.ck1" category: game_data system: commander-keen description: "Keen 1 help text" required: false source_ref: "src/engine/keen/vorticon/CHelp.cpp:45-49" - name: "endtext.ck1" path: "games/keen1/endtext.ck1" category: game_data system: commander-keen description: "Keen 1 ending text" required: false source_ref: "src/engine/keen/vorticon/finale/CFinale.cpp:41-44, src/engine/keen/vorticon/finale/CEndingEp1.cpp:42" - name: "previews.ck1" path: "games/keen1/previews.ck1" category: game_data system: commander-keen description: "Keen 1 previews text, enables the Previews menu entry" required: false source_ref: "src/engine/keen/vorticon/CPreviews.cpp:58-65, src/engine/core/menu/CHelpMenu.cpp:58-67" - name: "preview2.ck1" path: "games/keen1/preview2.ck1" category: game_data system: commander-keen description: "Keen 1 preview screen 2" required: false source_ref: "src/engine/keen/vorticon/CPreviews.cpp:42-49" - name: "preview3.ck1" path: "games/keen1/preview3.ck1" category: game_data system: commander-keen description: "Keen 1 preview screen 3" required: false source_ref: "src/engine/keen/vorticon/CPreviews.cpp:42-49" # Commander Keen 2: The Earth Explodes (registered) - name: "keen2.exe" path: "games/keen2/keen2.exe" category: game_data system: commander-keen description: "Keen 2 executable, read for tables, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:164-168" - name: "egahead.ck2" path: "games/keen2/egahead.ck2" category: game_data system: commander-keen description: "Keen 2 EGA graphics header" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:48-52" - name: "egalatch.ck2" path: "games/keen2/egalatch.ck2" category: game_data system: commander-keen description: "Keen 2 tiles, fonts and bitmaps" required: false source_ref: "src/engine/keen/vorticon/CEGALatch.cpp:160-165" - name: "egasprit.ck2" path: "games/keen2/egasprit.ck2" category: game_data system: commander-keen description: "Keen 2 sprites" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:146-149, src/engine/keen/vorticon/CEGASprit.cpp:111-116" - name: "level01.ck2" path: "games/keen2/level01.ck2" category: game_data system: commander-keen description: "Keen 2 level 1" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level02.ck2" path: "games/keen2/level02.ck2" category: game_data system: commander-keen description: "Keen 2 level 2" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level03.ck2" path: "games/keen2/level03.ck2" category: game_data system: commander-keen description: "Keen 2 level 3" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level04.ck2" path: "games/keen2/level04.ck2" category: game_data system: commander-keen description: "Keen 2 level 4" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level05.ck2" path: "games/keen2/level05.ck2" category: game_data system: commander-keen description: "Keen 2 level 5" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level06.ck2" path: "games/keen2/level06.ck2" category: game_data system: commander-keen description: "Keen 2 level 6" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level07.ck2" path: "games/keen2/level07.ck2" category: game_data system: commander-keen description: "Keen 2 level 7" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level08.ck2" path: "games/keen2/level08.ck2" category: game_data system: commander-keen description: "Keen 2 level 8" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level09.ck2" path: "games/keen2/level09.ck2" category: game_data system: commander-keen description: "Keen 2 level 9" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level10.ck2" path: "games/keen2/level10.ck2" category: game_data system: commander-keen description: "Keen 2 level 10" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level11.ck2" path: "games/keen2/level11.ck2" category: game_data system: commander-keen description: "Keen 2 level 11" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level12.ck2" path: "games/keen2/level12.ck2" category: game_data system: commander-keen description: "Keen 2 level 12" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level13.ck2" path: "games/keen2/level13.ck2" category: game_data system: commander-keen description: "Keen 2 level 13" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level14.ck2" path: "games/keen2/level14.ck2" category: game_data system: commander-keen description: "Keen 2 level 14" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level15.ck2" path: "games/keen2/level15.ck2" category: game_data system: commander-keen description: "Keen 2 level 15" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level16.ck2" path: "games/keen2/level16.ck2" category: game_data system: commander-keen description: "Keen 2 level 16" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level80.ck2" path: "games/keen2/level80.ck2" category: game_data system: commander-keen description: "Keen 2 world map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/playgame/CPlayGameVorticon.h:35" - name: "level81.ck2" path: "games/keen2/level81.ck2" category: game_data system: commander-keen description: "Keen 2 ending map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/finale/CEndingEp2.cpp:72" - name: "level90.ck2" path: "games/keen2/level90.ck2" category: game_data system: commander-keen description: "Keen 2 title and demo map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/CPassiveVort.cpp:33" - name: "finale.ck2" path: "games/keen2/finale.ck2" category: game_data system: commander-keen description: "Keen 2 ending picture" required: false source_ref: "src/engine/keen/vorticon/finale/CEndingEp2.cpp:174, src/engine/keen/vorticon/finale/finale.cpp:94-95" # Commander Keen 3: Keen Must Die! (registered) - name: "keen3.exe" path: "games/keen3/keen3.exe" category: game_data system: commander-keen description: "Keen 3 executable, read for tables, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:164-168" - name: "egahead.ck3" path: "games/keen3/egahead.ck3" category: game_data system: commander-keen description: "Keen 3 EGA graphics header" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:48-52" - name: "egalatch.ck3" path: "games/keen3/egalatch.ck3" category: game_data system: commander-keen description: "Keen 3 tiles, fonts and bitmaps" required: false source_ref: "src/engine/keen/vorticon/CEGALatch.cpp:160-165" - name: "egasprit.ck3" path: "games/keen3/egasprit.ck3" category: game_data system: commander-keen description: "Keen 3 sprites" required: false source_ref: "src/engine/keen/vorticon/CEGAGraphicsVort.cpp:146-149, src/engine/keen/vorticon/CEGASprit.cpp:111-116" - name: "level01.ck3" path: "games/keen3/level01.ck3" category: game_data system: commander-keen description: "Keen 3 level 1" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level02.ck3" path: "games/keen3/level02.ck3" category: game_data system: commander-keen description: "Keen 3 level 2" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level03.ck3" path: "games/keen3/level03.ck3" category: game_data system: commander-keen description: "Keen 3 level 3" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level04.ck3" path: "games/keen3/level04.ck3" category: game_data system: commander-keen description: "Keen 3 level 4" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level05.ck3" path: "games/keen3/level05.ck3" category: game_data system: commander-keen description: "Keen 3 level 5" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level06.ck3" path: "games/keen3/level06.ck3" category: game_data system: commander-keen description: "Keen 3 level 6" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level07.ck3" path: "games/keen3/level07.ck3" category: game_data system: commander-keen description: "Keen 3 level 7" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level08.ck3" path: "games/keen3/level08.ck3" category: game_data system: commander-keen description: "Keen 3 level 8" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level09.ck3" path: "games/keen3/level09.ck3" category: game_data system: commander-keen description: "Keen 3 level 9" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level10.ck3" path: "games/keen3/level10.ck3" category: game_data system: commander-keen description: "Keen 3 level 10" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level11.ck3" path: "games/keen3/level11.ck3" category: game_data system: commander-keen description: "Keen 3 level 11" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level12.ck3" path: "games/keen3/level12.ck3" category: game_data system: commander-keen description: "Keen 3 level 12" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level13.ck3" path: "games/keen3/level13.ck3" category: game_data system: commander-keen description: "Keen 3 level 13" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level14.ck3" path: "games/keen3/level14.ck3" category: game_data system: commander-keen description: "Keen 3 level 14" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level15.ck3" path: "games/keen3/level15.ck3" category: game_data system: commander-keen description: "Keen 3 level 15" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level16.ck3" path: "games/keen3/level16.ck3" category: game_data system: commander-keen description: "Keen 3 level 16" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, 153-160" - name: "level80.ck3" path: "games/keen3/level80.ck3" category: game_data system: commander-keen description: "Keen 3 world map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/playgame/CPlayGameVorticon.h:35" - name: "level81.ck3" path: "games/keen3/level81.ck3" category: game_data system: commander-keen description: "Keen 3 ending map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/finale/CEndingEp3.cpp:68" - name: "level90.ck3" path: "games/keen3/level90.ck3" category: game_data system: commander-keen description: "Keen 3 title and demo map" required: false source_ref: "src/engine/keen/vorticon/CVorticonMapLoader.cpp:128-130, src/engine/keen/vorticon/CPassiveVort.cpp:33" - name: "finale.ck3" path: "games/keen3/finale.ck3" category: game_data system: commander-keen description: "Keen 3 ending picture" required: false source_ref: "src/engine/keen/vorticon/finale/CEndingEp3.cpp:136, src/engine/keen/vorticon/finale/finale.cpp:94-95" # Commander Keen 4: Secret of the Oracle (shareware) - name: "keen4e.exe" path: "games/keen4/keen4e.exe" aliases: ["keen4.exe"] category: game_data system: commander-keen description: "Keen 4 executable, read for dictionaries, headers, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:174-176" - name: "egagraph.ck4" path: "games/keen4/egagraph.ck4" category: game_data system: commander-keen description: "Keen 4 EGA graphics" required: false source_ref: "src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:754-763" - name: "gamemaps.ck4" path: "games/keen4/gamemaps.ck4" category: game_data system: commander-keen description: "Keen 4 level maps" required: false source_ref: "src/fileio/KeenFiles.h:47, src/engine/keen/galaxy/common/CMapLoaderGalaxy.cpp:249-257" - name: "audio.ck4" path: "games/keen4/audio.ck4" category: game_data system: commander-keen description: "Keen 4 sounds and music" required: false source_ref: "src/fileio/KeenFiles.h:44, src/engine/keen/galaxy/res/CAudioGalaxy.cpp:358-366, src/fileio/CExeFile.cpp:709-716" # Commander Keen 5: The Armageddon Machine (registered) - name: "keen5e.exe" path: "games/keen5/keen5e.exe" aliases: ["keen5.exe"] category: game_data system: commander-keen description: "Keen 5 executable, read for dictionaries, headers, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:174-176" - name: "egagraph.ck5" path: "games/keen5/egagraph.ck5" category: game_data system: commander-keen description: "Keen 5 EGA graphics" required: false source_ref: "src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:754-763" - name: "gamemaps.ck5" path: "games/keen5/gamemaps.ck5" category: game_data system: commander-keen description: "Keen 5 level maps" required: false source_ref: "src/fileio/KeenFiles.h:47, src/engine/keen/galaxy/common/CMapLoaderGalaxy.cpp:249-257" - name: "audio.ck5" path: "games/keen5/audio.ck5" category: game_data system: commander-keen description: "Keen 5 sounds and music" required: false source_ref: "src/fileio/KeenFiles.h:44, src/engine/keen/galaxy/res/CAudioGalaxy.cpp:358-366, src/fileio/CExeFile.cpp:709-716" # Commander Keen 6: Aliens Ate My Baby Sitter! (retail) - name: "keen6e.exe" path: "games/keen6/keen6e.exe" aliases: ["keen6.exe"] category: game_data system: commander-keen description: "Keen 6 executable, read for dictionaries, headers, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:174-176" - name: "egagraph.ck6" path: "games/keen6/egagraph.ck6" category: game_data system: commander-keen description: "Keen 6 EGA graphics" required: false source_ref: "src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:754-763" unsourceable: "retail data the collection does not hold; a same-named file of another game must not stand in" - name: "gamemaps.ck6" path: "games/keen6/gamemaps.ck6" category: game_data system: commander-keen description: "Keen 6 level maps" required: false source_ref: "src/fileio/KeenFiles.h:47, src/engine/keen/galaxy/common/CMapLoaderGalaxy.cpp:249-257" unsourceable: "retail data the collection does not hold; a same-named file of another game must not stand in" - name: "audio.ck6" path: "games/keen6/audio.ck6" category: game_data system: commander-keen description: "Keen 6 sounds and music" required: false source_ref: "src/fileio/KeenFiles.h:44, src/engine/keen/galaxy/res/CAudioGalaxy.cpp:358-366, src/fileio/CExeFile.cpp:709-716" unsourceable: "retail data the collection does not hold; a same-named file of another game must not stand in" # Commander Keen 6: Aliens Ate My Baby Sitter! (demo) - name: "k6demo.exe" path: "games/K6DEMO/k6demo.exe" category: game_data system: commander-keen description: "Keen 6 demo executable, read for dictionaries, headers, texts and tile properties" required: false source_ref: "src/fileio/CExeFile.cpp:183-187" - name: "egagraph.ck6" path: "games/K6DEMO/egagraph.ck6" category: game_data system: commander-keen description: "Keen 6 demo EGA graphics" required: false source_ref: "src/engine/keen/galaxy/res/CEGAGraphicsGalaxy.cpp:754-763" - name: "gamemaps.ck6" path: "games/K6DEMO/gamemaps.ck6" category: game_data system: commander-keen description: "Keen 6 demo level maps" required: false source_ref: "src/fileio/KeenFiles.h:47, src/engine/keen/galaxy/common/CMapLoaderGalaxy.cpp:249-257" - name: "audio.ck6" path: "games/K6DEMO/audio.ck6" category: game_data system: commander-keen description: "Keen 6 demo sounds and music" required: false source_ref: "src/fileio/KeenFiles.h:44, src/engine/keen/galaxy/res/CAudioGalaxy.cpp:358-366, src/fileio/CExeFile.cpp:709-716" # Keen Dreams (shareware v1.13, EGA) - name: "KDREAMS.EXE" path: "games/KeenDreams/KDREAMS.EXE" category: game_data system: commander-keen description: "Keen Dreams executable, read for the nine embedded tables" required: false size: 81619 crc32: "9dce0a39" source_ref: "src/fileio/CExeFile.cpp:195-196, src/engine/keen/dreams/dreamsengine.cpp:97" - name: "KDREAMS.EGA" path: "games/KeenDreams/KDREAMS.EGA" category: game_data system: commander-keen description: "Keen Dreams EGA graphics" required: false size: 213045 crc32: "2dc94687" source_ref: "src/engine/refkeen/kdreams/id_ca.cpp:605-608, src/engine/keen/dreams/dreamsengine.cpp:96" - name: "KDREAMS.MAP" path: "games/KeenDreams/KDREAMS.MAP" category: game_data system: commander-keen description: "Keen Dreams level maps" required: false size: 65673 crc32: "8dce09af" source_ref: "src/engine/refkeen/kdreams/id_ca.cpp:749-752, src/engine/keen/dreams/dreamsengine.cpp:98" - name: "KDREAMS.AUD" path: "games/KeenDreams/KDREAMS.AUD" category: game_data system: commander-keen description: "Keen Dreams sounds" required: false size: 3498 crc32: "80ac85e5" source_ref: "src/engine/refkeen/kdreams/id_ca.cpp:817-820, src/fileio/KeenFiles.h:53, src/engine/keen/dreams/dreamsengine.cpp:94" - name: "KDREAMS.CMP" path: "games/KeenDreams/KDREAMS.CMP" category: game_data system: commander-keen description: "Keen Dreams title screen library, skipped when absent" required: false size: 14189 crc32: "97628ca0" source_ref: "src/engine/keen/dreams/dreamsintro.cpp:42-46, src/engine/refkeen/kdreams/soft.cpp:388-390, src/engine/keen/dreams/dreamsengine.cpp:95"