Difference between revisions of "Commander Keen in Secret of the Oracle"

From PCGamingWiki, the wiki about fixing PC games
m (Added MobyGames)
 
(26 intermediate revisions by 12 users not shown)
Line 8: Line 8:
 
|release dates=  
 
|release dates=  
 
{{Infobox game/row/date|DOS|December 15, 1991}}
 
{{Infobox game/row/date|DOS|December 15, 1991}}
{{Infobox game/row/date|Windows|August 3, 2007}}
+
{{Infobox game/row/date|Windows|August 3, 2007|wrapper=DOSBox}}
 
|steam appid  = 9180
 
|steam appid  = 9180
|gogcom page  =  
+
|gogcom id    =  
 
|strategywiki =  
 
|strategywiki =  
 +
|mobygames    = commander-keen-4-secret-of-the-oracle
 
|wikipedia    = Commander Keen in Goodbye, Galaxy
 
|wikipedia    = Commander Keen in Goodbye, Galaxy
 
|winehq      =  
 
|winehq      =  
Line 26: Line 27:
 
{{mm}} [https://www.commander-keen.com/ Commander Keen Fan Site]
 
{{mm}} [https://www.commander-keen.com/ Commander Keen Fan Site]
 
{{mm}} [http://www.dopefish.com/ Official Dopefish website]
 
{{mm}} [http://www.dopefish.com/ Official Dopefish website]
{{mm}} [http://steamcommunity.com/app/9180/discussions/ Steam Community Discussions]
+
{{mm}} [https://steamcommunity.com/app/9180/discussions/ Steam Community Discussions]
  
 
==Availability==
 
==Availability==
 
{{Availability|
 
{{Availability|
{{Availability/row| Retail | | unknown | Commander Keen in Goodbye, Galaxy!  | | DOS }}
+
{{Availability/row| Retail | | DRM-free | Commander Keen in Goodbye, Galaxy!  | | DOS }}
{{Availability/row| Steam | 9180 | Steam | Commander Keen Complete Pack. Pre-packaged with [[DOSBox]].<ref>[https://steamdb.info/app/9180/config/ Commander Keen Complete Pack · Commander Keen · AppID: 9180 · Steam Database]</ref> | | Windows }}
+
{{Availability/row| Steam | 9180 | DRM-free | Commander Keen Complete Pack. Pre-packaged with [[DOSBox]].<ref>[https://steamdb.info/app/9180/config/ Commander Keen Complete Pack · Commander Keen · AppID: 9180 · Steam Database]</ref> | | Windows }}
 
}}
 
}}
 
{{ii}} A free [http://legacy.3drealms.com/keen4/index.html shareware version] is available.
 
{{ii}} A free [http://legacy.3drealms.com/keen4/index.html shareware version] is available.
Line 45: Line 46:
  
 
==Essential improvements==
 
==Essential improvements==
 +
===Patches===
 +
Unfortunately Keen was from an era of computing before downloadable patches were a norm. Instead, a fully patched version of the game would be sent in the mail. The old version had to be uninstalled and deleted and the updated copy installed in its place. As the update is already the full game, it would be illegal to distribute it. Luckily this particular episode is shareware and can be freely distributed (latest version is 1.4 from [[Company:GT Interactive|GTi]]). Alternatively, Several dedicated fans have made [http://dosclassics.com/keen/dl.php?id=of homebrewed patches] to update (or downgrade if you want) every official keen game. These patches edit the files to make the changes, no warez used! The original discussion thread for them can be found [https://pckf.rigeltechnical.com/viewtopic.php?f=1&t=21&sid=90a04012cef1c483fba6131d8da5e810 here].
 +
 
===Episode launcher===
 
===Episode launcher===
{{ii}} A launcher for the entire Keen series can be found [https://gist.github.com/maxlefou/e6fe35739a1ffad1b85543eb800c36f4#file-keenstrt-bat-L15 here] (runs in [[DOSBox]]). For a modified version of this same launcher that also supports [[Commander Keen in Keen Dreams|Keen Dreams]] (for people whom don't have the native Steam version), try the following:
+
A launcher for the entire Keen series can be found [https://gist.github.com/maxlefou/e6fe35739a1ffad1b85543eb800c36f4#file-keenstrt-bat-L15 here] (runs in [[DOSBox]]). For a modified version of this same launcher that also supports [[Commander Keen in Keen Dreams|Keen Dreams]] (for people whom don't have the native Steam version), try the following:
  
 
<div class="mw-collapsible mw-collapsed">
 
<div class="mw-collapsible mw-collapsed">
Line 226: Line 230:
 
exit
 
exit
 
</pre></div></div>
 
</pre></div></div>
 +
{{ii}} The executable names (keen*.exe etc.) may have to be edited to fit your particular version of Keen. There are many versions. You could also replace the executable calls with CKPatch scripts if you wish to keep a customized aspect of the game always that way when you run it.
  
===Source Ports===
+
===[http://www.shikadi.net/keenwiki/CKPatch CKPatch]===
 +
CKPatch is essentially a tool needed to load some mods (such as total conversions, or even just simple hacking) into the Keen engine. It does so by "patching" the engine in memory, hence it's name. For simple single script patches for Keen 4, look [http://www.shikadi.net/keenwiki/Category:Keen_4_patches here].
 +
{{ii}} If loading of a mod/script fails, you may have to uncompress the keen executables using [http://www.shikadi.net/keenwiki/UNP UNP] or [http://www.shikadi.net/keenwiki/UNLZEXE UNLZEXE].
 +
 
 +
===Source ports===
 
Two reversed engineered source ports are available.
 
Two reversed engineered source ports are available.
 
{{ii}} [https://davidgow.net/keen/omnispeak.html Omnispeak]
 
{{ii}} [https://davidgow.net/keen/omnispeak.html Omnispeak]
Line 238: Line 247:
 
===Configuration file(s) location===
 
===Configuration file(s) location===
 
{{Game data|
 
{{Game data|
{{Game data/row|DOS|}}
+
{{Game data/config|DOS|}}
{{Game data/row|Windows|{{p|game}}\base4}}
+
{{Game data/config|Windows|{{p|game}}\base4}}
 
}}
 
}}
  
 
===Save game data location===
 
===Save game data location===
 
{{Game data|
 
{{Game data|
{{Game data/row|DOS|}}
+
{{Game data/saves|DOS|}}
{{Game data/row|Windows|{{p|game}}\base4\SAVEGAM*.CK4}}
+
{{Game data/saves|Windows|{{p|game}}\base4\SAVEGAM*.CK4}}
 
}}
 
}}
  
 
===[[Glossary:Save game cloud syncing|Save game cloud syncing]]===
 
===[[Glossary:Save game cloud syncing|Save game cloud syncing]]===
 
{{Save game cloud syncing
 
{{Save game cloud syncing
|origin               =  
+
|discord                =
|origin notes         =  
+
|discord notes          =
|steam cloud           = true
+
|epic games store      =
|steam cloud notes     =  
+
|epic games store notes =
|uplay                 =  
+
|gog galaxy            =
|uplay notes           =  
+
|gog galaxy notes      =
 +
|origin                 =  
 +
|origin notes           =  
 +
|steam cloud           = true
 +
|steam cloud notes     =  
 +
|uplay                 =  
 +
|uplay notes           =
 +
|xbox cloud            =
 +
|xbox cloud notes      =  
 
}}
 
}}
  
Line 266: Line 283:
 
|4k ultra hd wsgf award    =  
 
|4k ultra hd wsgf award    =  
 
|widescreen resolution      = false
 
|widescreen resolution      = false
|widescreen resolution notes=  
+
|widescreen resolution notes= 320x200 only.
 
|multimonitor              = false
 
|multimonitor              = false
 
|multimonitor notes        =  
 
|multimonitor notes        =  
Line 289: Line 306:
 
|120 fps                    = false
 
|120 fps                    = false
 
|120 fps notes              =  
 
|120 fps notes              =  
 +
|hdr                        = unknown
 +
|hdr notes                  =
 
|color blind                = unknown
 
|color blind                = unknown
 
|color blind notes          =  
 
|color blind notes          =  
Line 307: Line 326:
 
|invert mouse y-axis      = n/a
 
|invert mouse y-axis      = n/a
 
|invert mouse y-axis notes =  
 
|invert mouse y-axis notes =  
 +
|touchscreen              = unknown
 +
|touchscreen notes        =
 
|controller support        = true
 
|controller support        = true
 
|controller support notes  = Can be disabled using the <code>/NOJOYS</code> parameter.
 
|controller support notes  = Can be disabled using the <code>/NOJOYS</code> parameter.
Line 317: Line 338:
 
|invert controller y-axis  = n/a
 
|invert controller y-axis  = n/a
 
|invert controller y-axis notes=  
 
|invert controller y-axis notes=  
|touchscreen               = unknown
+
|xinput controllers        = unknown
|touchscreen notes        =  
+
|xinput controllers notes  =
 +
|xbox prompts              = unknown
 +
|xbox prompts notes        =
 +
|impulse triggers          = unknown
 +
|impulse triggers notes    =
 +
|dualshock 4               = unknown
 +
|dualshock 4 notes        =
 +
|dualshock prompts        = unknown
 +
|dualshock prompts notes  =
 +
|light bar support        = unknown
 +
|light bar support notes  =
 +
|dualshock 4 modes        = unknown
 +
|dualshock 4 modes notes  =
 +
|tracked motion controllers= unknown
 +
|tracked motion controllers notes =
 +
|tracked motion prompts    = unknown
 +
|tracked motion prompts notes =
 +
|other controllers         = unknown
 +
|other controllers notes  =
 +
|other button prompts      = unknown
 +
|other button prompts notes=  
 
|button prompts            = false
 
|button prompts            = false
 
|button prompts notes      =  
 
|button prompts notes      =  
Line 325: Line 366:
 
|haptic feedback          = false
 
|haptic feedback          = false
 
|haptic feedback notes    =  
 
|haptic feedback notes    =  
|light bar support        = unknown
+
|simultaneous input        = unknown
|light bar support notes   =  
+
|simultaneous input notes =  
 
}}
 
}}
  
Line 355: Line 396:
 
  |notes    =  
 
  |notes    =  
 
  |fan      =  
 
  |fan      =  
|fan notes =
 
 
}}
 
}}
 
}}
 
}}
Line 374: Line 414:
 
|mantle support        =  
 
|mantle support        =  
 
|mantle support notes  =  
 
|mantle support notes  =  
|vulkan support        =  
+
|vulkan versions        =  
|vulkan support notes   =  
+
|vulkan notes           =  
 
|dos modes              = CGA, EGA
 
|dos modes              = CGA, EGA
|dos modes notes        = Has a "SVGA compatibility mode" option in settings. Can also use the <code>/HIDDENCARD</code> parameter to force the game to accept the card if it doesn't detect a supported model.
+
|dos modes notes        = Has a "SVGA compatibility mode" option in settings. The <code>/COMP</code> parameter performs the same function. Can also use the <code>/HIDDENCARD</code> parameter to force the game to accept the card if it doesn't detect a supported model.
 
|shader model versions  =  
 
|shader model versions  =  
 
|shader model notes    =  
 
|shader model notes    =  
|64-bit executable     = false
+
|windows 32-bit exe    = unknown
|64-bit executable notes=  
+
|windows 64-bit exe    = unknown
 +
|windows exe notes      =
 +
|macos 32-bit app      =
 +
|macos 64-bit app      =
 +
|macos app notes        =
 +
|linux 32-bit executable=  
 +
|linux 64-bit executable=
 +
|linux executable notes =  
 
}}
 
}}
 +
{{ii}} Certain EGA/VGA cards have issues with choppy scrolling (the "fix jerky movement" option is only for SVGA cards). A fan patch has been made to correct this issue [https://pckf.rigeltechnical.com/viewtopic.php?f=4&t=4084&sid=b34e880281066bb01949b7ecdb978bc5 here]. Note this fix requires version 1.4 Apogee/non-[[Company:GT Interactive|GTi]] to work correctly.
 +
{{ii}} Fans have managed to hack CGA composite video support into Keen 4. For more info and download, see [http://www.vogons.org/viewtopic.php?f=24&t=48215 this].
  
 
==System requirements==
 
==System requirements==
Line 393: Line 442:
 
|minHD    = 1 MB (Shareware)
 
|minHD    = 1 MB (Shareware)
 
|minGPU  = CGA, EGA
 
|minGPU  = CGA, EGA
 +
|minaudio = PC Speaker
  
 
|recOS    = 3.3
 
|recOS    = 3.3
Line 399: Line 449:
 
|recHD    = 3 MB (full release)
 
|recHD    = 3 MB (full release)
 
|recGPU  =  
 
|recGPU  =  
 +
|recaudio = AdLib/Sound Blaster
 
}}
 
}}
  

Latest revision as of 00:50, 5 January 2020

Commander Keen in Secret of the Oracle
Commander Keen in Secret of the Oracle cover
Developers
id Software
Publishers
Apogee Software
Release dates
DOS December 15, 1991
Windows (DOSBox) August 3, 2007
Commander Keen in Secret of the Oracle on MobyGames
Commander Keen in Secret of the Oracle on Wikipedia
Commander Keen
Commander Keen in Marooned on Mars 1990
Commander Keen in The Earth Explodes 1990
Commander Keen in Keen Must Die! 1990
Commander Keen in Keen Dreams 1991
Commander Keen in Secret of the Oracle 1991
Commander Keen in The Armageddon Machine 1991
Commander Keen in Aliens Ate My Baby Sitter! 1991

Key points

Also known as Commander Keen: Episode 4
Available for free as shareware

General information

Commander Keen wiki
Public Commander Keen Forum
Commander Keen Fan Site
Official Dopefish website
Steam Community Discussions

Availability[edit]

Source DRM Notes Keys OS
Retail
DRM-free
Commander Keen in Goodbye, Galaxy!
DOS
Steam
DRM-free after installation through Steam client (see notes)
Commander Keen Complete Pack. Pre-packaged with DOSBox.[1]
Windows
A free shareware version is available.

Version differences[edit]

Commander Keen in Goodbye, Galaxy![edit]

The retail release of the game, which includes the 4th and 5th episodes of the series: Commander Keen in Secret of the Oracle and Commander Keen in The Armageddon Machine.

Commander Keen Complete Pack[edit]

A compilation pack containing the entire Commander Keen series (excluding the final episode Commander Keen in Aliens Ate My Baby Sitter! and the "lost" episode Commander Keen in Keen Dreams).

All games in the pack are pre-configured to run with DOSBox.

Essential improvements[edit]

Patches[edit]

Unfortunately Keen was from an era of computing before downloadable patches were a norm. Instead, a fully patched version of the game would be sent in the mail. The old version had to be uninstalled and deleted and the updated copy installed in its place. As the update is already the full game, it would be illegal to distribute it. Luckily this particular episode is shareware and can be freely distributed (latest version is 1.4 from GTi). Alternatively, Several dedicated fans have made homebrewed patches to update (or downgrade if you want) every official keen game. These patches edit the files to make the changes, no warez used! The original discussion thread for them can be found here.

Episode launcher[edit]

A launcher for the entire Keen series can be found here (runs in DOSBox). For a modified version of this same launcher that also supports Keen Dreams (for people whom don't have the native Steam version), try the following:

Episode launcher
@ECHO OFF

:MENU

CLS


REM All episodes must be in the same folder contrary

REM to the original launcher this one was based on.


ECHO.

ECHO  ===========================================================================

ECHO  ======================= COMMANDER KEEN COLLECTION =========================

ECHO  ===========================================================================

ECHO.

ECHO         Invasion of the Vortices (1-3):

ECHO.

ECHO     1 - Commander Keen 1 Marooned On Mars (1990)(Apogee Software)

ECHO     2 - Commander Keen 2 The Earth Explodes (1990)(Apogee Software)

ECHO     3 - Commander Keen 3 Keen Must Die (1990)(Apogee Software)

ECHO.

ECHO         Goodbye, Galaxy! (4-6):

ECHO.

ECHO     4 - Commander Keen 4 Secret Of The Oracle (1991)(Apogee Software Ltd)

ECHO     5 - Commander Keen 5 The Armageddon Machine (1991)(Apogee Software Ltd)

ECHO     6 - Commander Keen 6 Aliens Ate My Baby Sitter (1991)(Formgen)

ECHO.

ECHO         Other (The Lost Episode):

ECHO.

ECHO     7 - Commander Keen Dreams (1991)(Softdisk Publishing)

ECHO.


CHOICE /c1234567q/n Choose a number (Press Q to Quit):

IF ERRORLEVEL 8 GOTO EXIT

IF ERRORLEVEL 7 GOTO KEEN7

IF ERRORLEVEL 6 GOTO KEEN6

IF ERRORLEVEL 5 GOTO KEEN5

IF ERRORLEVEL 4 GOTO KEEN4

IF ERRORLEVEL 3 GOTO KEEN3

IF ERRORLEVEL 2 GOTO KEEN2

IF ERRORLEVEL 1 GOTO KEEN1




:KEEN1

CLS

ECHO Starting Commander Keen 1...

call keen1.exe

GOTO MENU




:KEEN2

CLS

ECHO Starting Commander Keen 2...

call keen2.exe

GOTO MENU




:KEEN3

CLS

ECHO Starting Commander Keen 3...

call keen3.exe

GOTO MENU




:KEEN4

CLS

ECHO Starting Commander Keen 4...

call keen4e.exe

GOTO MENU




:KEEN5

CLS

ECHO Starting Commander Keen 5...

call keen5e.exe

GOTO MENU




:KEEN6

CLS

ECHO Starting Commander Keen 6...

call keen6c.exe

GOTO MENU




:KEEN7

CLS

ECHO Starting Commander Keen Dreams…

call kdreams.exe

GOTO MENU




:EXIT

CLS

exit
The executable names (keen*.exe etc.) may have to be edited to fit your particular version of Keen. There are many versions. You could also replace the executable calls with CKPatch scripts if you wish to keep a customized aspect of the game always that way when you run it.

CKPatch[edit]

CKPatch is essentially a tool needed to load some mods (such as total conversions, or even just simple hacking) into the Keen engine. It does so by "patching" the engine in memory, hence it's name. For simple single script patches for Keen 4, look here.

If loading of a mod/script fails, you may have to uncompress the keen executables using UNP or UNLZEXE.

Source ports[edit]

Two reversed engineered source ports are available.

Omnispeak
Commander Genius

Game data[edit]

In-game options menu.
In-game options menu.
In-game general settings.
In-game general settings.

Configuration file(s) location[edit]

System Location
DOS
Windows <path-to-game>\base4[Note 1]
Linux (Proton) <Steam-folder>/steamapps/compatdata/9180/pfx/[Note 2]

Save game data location[edit]

System Location
DOS
Windows <path-to-game>\base4\SAVEGAM*.CK4[Note 1]
Linux (Proton) <Steam-folder>/steamapps/compatdata/9180/pfx/[Note 2]

Save game cloud syncing[edit]

System Native Notes
Steam Cloud

Video settings[edit]

Input settings[edit]

In-game key map settings (1/2).
In-game key map settings (1/2).
In-game key map settings (2/2).
In-game key map settings (2/2).

Audio settings[edit]

In-game sound effects settings.
In-game sound effects settings.
In-game music settings.
In-game music settings.
Audio feature State Notes
Separate volume controls
Has the ability to enable "quiet audio" when using Adlib/SB for sound effects. According to the help file(s) it allows you to hear the music better.
Surround sound
Subtitles
Closed captions
Mute on focus lost
Can be enabled through DOSBox's priority settings (use the pause emulation option).

Localizations

Language UI Audio Sub Notes
English

Other information[edit]

API[edit]

Technical specs Supported Notes
DOS video modes CGA, EGA Has a "SVGA compatibility mode" option in settings. The /COMP parameter performs the same function. Can also use the /HIDDENCARD parameter to force the game to accept the card if it doesn't detect a supported model.
Certain EGA/VGA cards have issues with choppy scrolling (the "fix jerky movement" option is only for SVGA cards). A fan patch has been made to correct this issue here. Note this fix requires version 1.4 Apogee/non-GTi to work correctly.
Fans have managed to hack CGA composite video support into Keen 4. For more info and download, see this.

System requirements[edit]

DOS
Minimum Recommended
Operating system (OS) 3.0
Processor (CPU) Intel 8088 4.77 MHz
System memory (RAM) 565 KB
Hard disk drive (HDD) 1 MB (Shareware)
Video card (GPU) CGA, EGA
Sound (audio device) PC Speaker
Windows
Minimum
Operating system (OS) XP, Vista
Processor (CPU)
System memory (RAM)
Hard disk drive (HDD)

Notes

  1. 1.0 1.1 When running this game without Administrator elevation, activity in %PROGRAMFILES%, %PROGRAMFILES(X86)%, and %WINDIR% might be redirected to %LOCALAPPDATA%\VirtualStore\ (more details).
  2. 2.0 2.1 File/folder structure within this directory reflects the path(s) listed for Windows and/or Steam game data (use Wine regedit to access Windows registry paths). Games with Steam Cloud support may store data in ~/.steam/steam/userdata/<user-id>/9180/ in addition to or instead of this directory. The app ID (9180) may differ in some cases. Treat backslashes as forward slashes. See the glossary page for details.

References