Difference between revisions of "SCUMM/Debug Codes"

Jump to navigation Jump to search
4,414 bytes added ,  12:24, 16 November 2022
→‎The Dig: Tell how to force enable debug mode; from NeoDement on YouTube
(bring order to chaos / aka consistency :))
(→‎The Dig: Tell how to force enable debug mode; from NeoDement on YouTube)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Various LucasArts games have debug passwords and key combinations built into the original executable. <b>THESE DO NOT WORK IN SCUMMVM</b>, only in the original dos executable.
Various LucasArts games have debug passwords and key combinations built into the original executable. <b>THESE DO NOT WORK IN SCUMMVM</b>, only in the original dos executable.


The password should be entered as-is, and an activation combination pressed to enter full debug mode. Case matters! If the activation key is ctrl-D, then hold ctrl-shift-d.
The password should be entered as-is, and an activation combination pressed to enter full debug mode.


=== Common Debug Keys ===
Partially based on [http://www.lucasforums.com/showthread.php?threadid=97859 this thread].
These keys are common to most SCUMM debug modes.
* ctrl-g: Switch rooms
* ctrl-f: Toggle 'Fast Mode'
* ctrl-s: Set SCUMM variable (EGA games)
* ctrl-e: Set SCUMM variable (VGA games)


=== Maniac Mansion (Original) ===
=== Maniac Mansion (Original) ===
Debug Password: !a%ifyou*ve (discovered by Tomas)<br>
Debug Password: ''!a%ifyou*ve'' (discovered by Tomas)<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:          '(ex)claim a percentage if you starve'
Notes:          '(ex)claim a percentage if you starve'
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|- style="background:#efefef"
|-
!Shift-D
|Displays the running scripts
|-
!Shift-G
|Goto room
|-
!Shift-O
|Get object in room
|-
!Shift-S
|Set variable
|-
!Shift-Z
|Display hex data from memory
|-
!Shift-/
|"Something"
|-
!Esc
|Redraw screen
|}


=== Maniac Mansion (Enhanced) ===
=== Maniac Mansion (Enhanced) ===
Debug Password: *ch4mysocks<br>
Debug Password: ''*ch4mysocks''<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:          Use shift-8 for the *, not the keypad. 'Starch for my socks'
Notes:          Use ''Shift-8'' for the *, not the keypad. 'Starch for my socks'
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-D
|Displays the running scripts
|-
!Shift-G
|Goto room
|-
!Shift-O
|Get object in room
|-
!Shift-S
|Set variable
|-
!Shift-Z
|Display hex data from memory
|-
!Shift-/
|"Something"
|-
!Esc
|Redraw screen
|}


=== Zak McKracken and the Alien Mindbenders (Original & Enhanced) ===
=== Zak McKracken and the Alien Mindbenders (Original & Enhanced) ===
Debug Password: *ch4mysocks<br>
Debug Password: ''*ch4mysocks''<br>
Activation Key: ctrl-g for Atari version, F7 for others<br>
Activation Key: ''Ctrl-G'' for Atari version, ''F7'' for others<br>
Notes:          Use shift-8 for the *, not the keypad. 'Starch for my socks'
Notes:          Use ''Shift-8'' for the *, not the keypad. 'Starch for my socks'
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-F
|Fast mode
|-
!Shift-G
|Goto room
|-
!Shift-L
|Set object in room
|-
!Shift-O
|Get object in room
|-
!Shift-S
|Set variable
|-
! ! (Shift and 1)
|Change actor color (original), change room color (enhanced)
|-
! @ (Shift and 2)
|Change actor color (enhanced)
|-
! [] or {}
|Change room color (original)
|}


=== Zak McKracken and the Alien Mindbenders (FM-TOWNS) ===
=== Zak McKracken and the Alien Mindbenders (FM-TOWNS) ===
Debug Password: whipitgood<br>
Debug Password: ''whipitgood''<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-F
|Fast mode
|-
!Shift-G
|Goto room
|-
!Shift-S
|Set variable
|}


=== Indiana Jones and the Last Crusade (EGA) ===
=== Indiana Jones and the Last Crusade (EGA) ===
Debug Password: coolwhiped<br>
Debug Password: ''coolwhiped''<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-F
|Fast mode
|-
!Shift-G
|Goto room
|-
!Shift-L
|Set object
|-
!Shift-O
|Activate object, eg open door
|-
!Shift-S
|Set variable
|-
!Shift-Z
|Display z-plane
|}


=== Indiana Jones and the Last Crusade (VGA) ===
=== Indiana Jones and the Last Crusade (VGA) ===
Debug Password: whipitgood<br>
Debug Password: ''whipitgood''<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-F
|Fast mode
|-
!Shift-G
|Goto room
|-
!Shift-S
|Set variable
|}


=== Loom (Floppy) ===
=== Loom (Floppy) ===
Debug Password: schwanensee<br>
Debug Password: ''schwanensee''<br>
Activation Key: F7<br>
Activation Key: ''F7''<br>
Notes:        
Note: Schwanensee means "Swan Lake" in German     
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-G
|Goto room
|}


=== Loom (CD) ===
=== Loom (CD) ===
Debug Password: hardyharhar<br>
Debug Password: ''hardyharhar''<br>
Activation Key: ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-S
|Set variable
|-
!Shift-F
|Fast mode
|-
!Shift-G
|Goto room
|}


=== The Secret of Monkey Island ===
=== The Secret of Monkey Island ===
Debug Password: hardyharhar<br>
Debug Password: ''hardyharhar''<br>
Activation Key: ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes: Works for demo versions too, except standalone pc demo. Extra debug keys in cd version: ctrl-o - Pick up object from room, ctrl-l - Enter a bootparam.
Notes: Works for demo versions too, except standalone PC demo.  
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Shift-G
|Goto room
|}
 
==== CD Keys ====
In addition to the above key, the CD version supports these keys:
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Examine/set a SCUMM variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-O
|Pick up object from room
|-
!Ctrl-L
|Enter a bootparam
|-
!1
|Change character
|-
![7-8]
|Change text color
|}


=== Monkey Island 2: LeChuck's Revenge ===
=== Monkey Island 2: LeChuck's Revenge ===
Debug Password: monkeyspit<br>
Debug Password: ''monkeyspit''<br>
Activation Key: ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|-
!1
|Change character
|-
![2-6]
|Pick up animations
|-
![7-8]
|Change text color
|}


=== Indiana Jones and the Fate of Atlantis ===
=== Indiana Jones and the Fate of Atlantis ===
Debug Password: shinymetal<br>
Debug Password: ''shinymetal''<br>
Activation Key: ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|}


=== Day of the Tentacle ===
=== Day of the Tentacle ===
Debug Password: swordfish<br>
Debug Password: ''swordfish''<br>
Activation Key: ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|}


=== Sam & Max Hit the Road ===
=== Sam & Max Hit the Road ===
Debug Password:<br>
Sam & Max ''does not'' have an enabled debug code. The code should be stored in SCUMM variable 111, but is never set.
Activation Key:<br>
 
Notes:          Neither Sam & Max nor The Dig have an enabled debug code. The code should be stored in SCUMM variables 89 and 111 respectively, but these are never set.
However, it can be re-enabled (in the original DOS/English CD release) by opening <code>SAMNMAX.001</code> in a hex editor and changing the string of bytes <code>0C692622</code> (located at offset 0x3995) to <code>06696969</code>.
 
Activation Key: ''Ctrl-D''
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|}


=== Full Throttle ===
=== Full Throttle ===
Debug Password: matilda (swordfish for PC Demo)<br>
Debug Password: ''matilda'' (''swordfish'' for PC Demo)<br>
Activation Key: Ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|}


=== The Dig ===
=== The Dig ===
Debug Password:<br>
The Dig ''does not'' have an enabled debug code. The code should be stored in SCUMM variable 89, but is never set.
Activation Key:<br>
 
Notes:          Neither Sam & Max nor The Dig have an enabled debug code. The code should be stored in SCUMM variables 89 and 111 respectively, but these are never set.
However, it can be re-enabled (in the original DOS/English CD release) by opening <code>DIG.LA1</code> in a hex editor and changing the string of bytes <code>44002F424F4F542E3030372F633A5C646967</code> (located at offset 0x236D) to <code>590000000000000000000000000000000000</code> (thanks to NeoDement on YouTube!).
 
Activation Key: ''Ctrl-D''
 
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl-E
|Set variable
|-
!Ctrl-F
|Fast mode
|-
!Ctrl-G
|Goto room
|-
!Ctrl-O
|Pick up object in room x
|-
!Ctrl-L
|Enter a bootparam
|}


=== The Curse of Monkey Island ===
=== The Curse of Monkey Island ===
Debug Password: matilda<br>
Debug Password: ''matilda''<br>
Activation Key: Ctrl-D<br>
Activation Key: ''Ctrl-Shift-D''<br>
Notes:          The first key on entering a screen is ignored! (?)
Notes:          The first key on entering a screen is ignored! (?)
==== Keys ====
{|border="1"  cellspacing="0" cellpadding="2" class="wikitable"
|-
!Ctrl
|Hold to speed up the game
|-
!Shift-A
|Choose a different actor
|-
!Shift-F
|Actor follows walk boxes
|-
!Shift-I
|Actor ignores walk boxes
|-
!F9
|Play low pickup animation
|-
!F10
|Play high pickup animation
|-
!Shift-B
|Make actor face to the back
|-
!F
|Make actor face to the front
|-
!7
|Decrease actor talk color
|-
!8
|Increase actor talk color
|}
149

edits

Navigation menu