Difference between revisions of "SCI/Debug Modes"

From ScummVM :: Wiki
< SCI
Jump to navigation Jump to search
(wiki-fied tables)
Line 472: Line 472:


The following options are available:
The following options are available:
TP        -  Teleport (change room/scene/script)


{| border="1"
{| border="1"
|-
|TP||Teleport (change room/scene/script)
|-
|-
|[ALT + E]||Show ego information
|[ALT + E]||Show ego information

Revision as of 20:34, 10 December 2011

Sierra On-Line Debug Mode FAQ Version 0.93 [14-Jan-06] by HWM [hwmol@hotmail.com]

Thanks to Omer Mor, Lars Skovlund & Kelmer for their valuable information.

Intro

This FAQ will explain the several debug modes found in Sierra On-Line adventure games.

Before you read, keep in mind the following things:

- References to "ego" mean "the main character" or the object you control.

- Any brackets, asterisks or quotation marks should NOT be typed in. They're only used to clarify.

- Anything between brackets means it's either a key or a combination of keys. So:

 [CTRL + D] means you push the CONTROL-key and the D-key AT THE SAME TIME.

- Between quotation marks means it should be typed in.

- Words between asterisks should be replaced with a proper word/object/thing. So:

 "PITCH *object name*" means you should type the object you want to get, e.g. "PITCH WIG".

And while you might know, Sierra games use an "interpreter". This basically is a program/system which translates the program statements (in byte-code) into executable machine code one line at a time as the program is running; as opposed to a compiler, which translates the entire program before the program is executed. The different interpreters used by Sierra for their games are described in the next chapter.

This FAQ only covers the debug modes of IBM PC versions, however, some of them might work on the other systems too.

SCI0

SCI0 (Sierra's Creative Interpreter v0.xxx.xxx)

Video: 320x200 resolution, 16 colors (and dithering) Audio: MIDI Platform: IBM PC (including PCjr & TANDY), Commodore AMIGA, Atari ST & Apple Macintosh Period: 1988-1990

Games using the SCI0 interpreter:

Codename: ICEMAN Conquests of Camelot Hoyle Volume 1: Official Book of Games Hoyle Volume 2: Solitaire King's Quest 1: Quest for the Crown (SCI remake) King's Quest 4: The Perils of Rosella Leisure Suit Larry 2: Goes Looking for Love (In Several Wrong Places) Leisure Suit Larry 3: Passionate Patti in Pursuit of the Pulsating Pectorals Mixed-Up Mother Goose (SCI remake) Police Quest 2: The Vengeance Quest for Glory 1: So You Want to be a Hero? (AKA Hero's Quest) Quest for Glory 2: Trial by Fire Space Quest 3: The Pirates of Pestulon The Colonel's Bequest

SCI1/SCI11

SCI1/SCI11 (Sierra's Creative Interpreter v1.xxx.xxx)

Video: 320x200 resolution, 256 colors (32 colors on the Amiga) Audio: MIDI/Digital audio Platform: IBM PC (286+), Commodore AMIGA, Apple Macintosh & FM Towns(?) Period: 1990-1993

Games using the SCI1/SCI11 interpreter:

Castle of Dr. Brain Conquests of the Longbow EcoQuest: The Search for Cetus EcoQuest 2: The Lost Secret of the Rainforest Freddy Pharkas Frontier Pharmacist Hoyle Classic: Card Games Hoyle Volume 3: Great Board Games Island of Dr. Brain Jones in the Fast Lane King's Quest 5: Absence Makes the Heart go Yonder King's Quest 6: Heir Today, Gone Tomorrow Leisure Suit Larry 1: In the Land of the Lounge Lizards (SCI remake) Leisure Suit Larry 5: Passionate Patti Does a Little Undercover Work Leisure Suit Larry 6: Shape Up or Slip Out! Mixed-Up Fairy Tales Mixed-Up Mother Goose (SCI1 remake) Mixed-Up Mother Goose (SCI11 remake) Pepper's Adventures in Time (AKA Twisty History) Police Quest 1: In Pursuit of the Death Angel (SCI remake) Police Quest 3: The Kindred Quest for Glory 1: So You Want to be a Hero (SCI remake) Quest for Glory 3: Wages of War Slater & Charlie Go Camping Space Quest 1: The Sarien Encounter (SCI remake) Space Quest 4: Roger Wilco and the Time Rippers Space Quest 5: Roger Wilco in the Next Mutation The Dagger of Amon Ra

SCI32

SCI32 (Sierra's Creative Interpreter v2.xxx.xxx & v3.xxx.xxx)

Video: 32 bit, 320x200/640x400/others? Audio: MIDI/Digital audio Platform: IBM PC (386+) & Apple Macintosh Period: 1993-1997

Games using the SCI32 interpreter:

Gabriel Knight 1: Sins of the Fathers Gabriel Knight 2: The Beast Within King's Quest 7: The Princeless Bride Leisure Suit Larry 6: Shape Up or Slip Out! (SVGA CD-ROM version) Leisure Suit Larry 7: Love For Sail! Lighthouse Mixed-Up Mother Goose Deluxe Phantasmagoria Phantasmagoria 2 Police Quest 4: Open Season Police Quest SWAT Quest for Glory 4: Shadows of Darkness RAMA Shivers Shivers 2 Space Quest 6: Roger Wilco in the Spinal Frontier Torin's Passage

Debug mode in SCI0 games

Nearly all SCI0 games have an internal debugger, meaning a build-in debugger in the game's interpreter. Next to that, some games also have a script debugger. Like with AGI games, a script debugger is a debug script located directly in the game code itself, rather than in the interpreter's code.

Internal Debugger

The internal debugger is activated by pressing [SHIFT + SHIFT + MINUS]. So both SHIFTs and the MINUS key located at the NUMERIC keypad AT ONCE. The debugger is/was mainly useful for programmers, but some things like changing variables can be easily done.

Options:

[Q] Quit game
[B] Set breakpoint
[A] Inspect ID in accumulator
[C] Inspect current object
[I] Inspect object or memory
[F] Show free heap
[S] Show sends
[R] Show resource types
[O] Show objects in heap
[SHIFT + O] Show objects with adresses
[SHIFT + S] Show stack usage
[G] Change global variable
[L] Change local variable
[T] Change temp variable
[ENTER] Proceed single step
[TAB] Step across send
[SHIFT + /] Help

Note that these are case sensitive, so [CAPS LOCK] should be de-activated.

Example: The room number is controlled by global variable 13. When the debug is activated, push [G]. It will ask which global variable should be changed. Enter "13". Now it will show the current value of the variable. Change this to your preferred, valid room number. Exit the debugger to see the effect.

Script Debugger

The script debugger is a bit more interesting and often more extensive. Not all games have a script debugger, some of them were likely removed before the final release of the game in question. However, a fair amount of games still have it. The script debugger is in most cases activated by typing a certain sentence in the game. This sentence differs from game to game.

When there isn't a sentence to type, but a debug is present in the game, it can be activated by changing the value of a certain global variable. An example of doing this is given in the previous chapter "Internal Debugger".

Note that in some games, the debug mode will be activated on room change.

When the script debugger is activated, the following general commands are available:

[CTRL + left mouse click] Instant movement (of ego) [1]
[SHIFT + left mouse click] Show coordinates
  1. Does not work with Quest for Glory / Hero's Quest
Game specific: King's Quest 4

To activate the debug mode, type: "overtime nosleep". An extra menu item will be activated on room change.

The following options are available:

TP Teleport (change room/scene/script)
ENTER NIGHT Changes gamestate into night
GET MEMORY Show memory
[ALT + E] Show ego information
[ALT + F] Show memory
[ALT + R] Show current room number
[ALT + P] Show ATPs (Add-To-Pic)
[ALT + S] Gives inventory item
[ALT + V] Set global variable
[ALT + G] Gives all inventory items
[ALT + L] Log information
[CTRL + D] Internal debug will pop up when entering a new room
[F4] Show control lines
[F6] Show priority screen
[F10] Show visual screen
[ALT + left mouse click] Show ego information

Most options are also available in the debug menu item. The menu option "Clicks" will (de-)activate the debug options triggered by mouse.

Game Specific: Leisure Suit Larry 2

There are two ways of activating this debug mode, depending on the version of your copy of the game.

With v1.000.011, the debug mode can be activated by typing: "praise lord" The debug mode will be activated when entering a new room.

Although "praise lord" works too in v1.002.000 (the one included in the Leisure Suit Larry collections), it offers another method. At the copy-protection sequence at the start of the game, a phone number is asked. Enter "555-0724" to pass the copy-protection and get the debug mode activated.

The following options are available:

TP Teleport (change room/scene/script)
GET *object name* Get object
PITCH *object name* Drop object
MAKE NOTE Log information
SHOW TIMER Show timer
SHOW EGO Show ego information
SHOW GRID Show grid
[ALT + C] Show control lines
[ALT + F] Show fragmenting
[ALT + I] Regain typing during movies
[ALT + M] Show memory
[ALT + D] Internal debug mode
[ALT + R] Show current room number
[ALT + V] Show visual screen
[ALT + Z] Quit
Game Specific: Leisure Suit Larry 3

To activate the debug mode, type: "ascot backdrop". The debug mode will be activated when entering a new room.

The following options are available:

TP Teleport (change room/scene/script)
[ALT + W] Write to log
[ALT + E] Change view of ego
[ALT + R] Show current room number
[ALT + T] ?
[ALT + P] Show priority screen
[ALT + S] Change from Larry to Patty or vice versa
[ALT + D] Internal debug mode
[ALT + F] Internal debug will pop up when entering a new room
[ALT + G] Room tester [1]
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + M] Show memory

Also, the self-running demo of LSL3 has the same debug mode, apart from a room-selector on the beginning. It can be activated by extracting SCRIPT.000 from the RESOURCE files (the easiest way being SCI DECODER v1.0) and in addition changing the byte at offset 0x00000064 to "00" (instead of the original "01"). Beware that it's not really worth it, since it's pretty much the same deal and lots of missing resources cause it to crash easily.

  1. Before this will work, you'll have to place the SCI picture resource of the room you want to test in the game directory and rename it to "PIC.999". That specific picture/room will be shown and can be tested in the game.
Game specific: Mixed-up Mother Goose

Since the input is disabled, use the internal debugger to change the value of global variable 100 to 1.

The following options are available:

[ALT + P] Show priority screen
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + S] Show cast (information about all objects on screen)
[CTRL + T] Teleport (change room/scene/script)
[CTRL + D] Shows which item is in which room
[CTRL + C] Changes score to 17 out of 18
[ALT + left mouse click] Show ego information

A useless (but interesting for some nonetheless) debug menu is still partly in the game's scripts. It can be activated by extracting SCRIPT.000 from the RESOURCE files (the easiest way being SCI DECODER v1.0) and in addition changing the byte at offset 0x000026C7 to "01" (instead of the original "00"). This will activate the debug mode at the start of the game, which will also initialize the extra pulldown menu's.

Game specific: Police Quest 2

Police Quest 2 should respond to the sentence: "kiss angel 187", but somehow it doesn't work. So use the internal debugger to change the value of global variable 101 to 1.

The following options are available:

[ALT + P] Show priority screen
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + S] Show cast (information about all objects on screen)
[ALT + M] Show memory
[ALT + T] Teleport (change room/scene/script)
[ALT + I] Gives inventory item
[ALT + E] Show ego information
[SHIFT + /] Help
Game Specific: Quest for Glory / Hero's Quest

To activate the debug mode, type: "razzle dazzle root beer"

The following options are available:

[ALT + P] Show priority screen
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + S] Show cast (information about all objects on screen)
[ALT + M] Show memory
[ALT + T] Teleport (change room/scene/script)
[ALT + I] Gives inventory item
[ALT + E] Show ego information
[ALT + B] Change amount of silvers
[ALT + X] Sets all stats to 80
[ALT + K] Change value of skills
[SHIFT + /] Help
Game specific: Quest for Glory 2

To activate the debug mode, type: "suck blue frog"

The following options are available:

[ALT + P] Show priority screen
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + S] Show cast (information about all objects on screen)
[ALT + M] Show memory
[ALT + T] Teleport (change room/scene/script)
[ALT + I] Gives inventory item
[ALT + E] Show ego information
[ALT + B] Change amount of silvers
[ALT + L] Write to log
[ALT + K] Change value of skills
[ALT + H] Change all skills to one value
[ALT + W] Write features
[ALT + F] Shows free heap
[ALT + G] Path Writer
[ALT + U] Show cast 2?
[ALT + N] Write note
[ALT + Z] Exit game
[CTRL + W] Write cast to file (for tester)
[SHIFT + /] Help
Game Specific: Space Quest 3

To activate the debug mode, type: "backstage pass"

The following options are available:

TP Teleport (change room/scene/script)
[ALT + E] Show ego information
[ALT + R] Show current room number
[ALT + Y] Assign object
[ALT + P] Show priority screen
[ALT + H] Show free heap
[ALT + C] Show control lines
[ALT + V] Show visual screen
[ALT + Z] Quit

Debug mode in SCI1 games

SCI1 is a whole different story. The internal debugger has been removed from pretty much every (public) release of the games. You can still use the key combination [SHIFT + SHIFT + MINUS], but it will throw you out of the game, due to the absence of the debugger. That said, internal SCI1 debuggers are not non-existant (really early versions, like the interpreter used with "Jones in the Fast Lane" still have their debugger) and work just like the SCI0 ones.

However, script debuggers have survived in a bunch of games. The way of activating them depends mainly on the version of the SCI interpreter.

SCI1 games (interpreter version < 1.001.000) do not have a standard way of activating the script debugger (atleast, I haven't found one yet).

SCI11 games (interpreter versions > 1.001.000) are activated by extracting the debug script from the packed RESOURCE files. Some kind of routine checks if the file is present in the game directory (and not just in the RESOURCE files) and the debug mode gets activated. An empty file won't do the trick, since the external scripts override the ones in the packed resource.

Internal Debugger

Since the SCI1 internal debugger is pretty much the same as the one found in the SCI0 games, refer to chapter 4.1 on its usage. Currently, the following SCI1 games with an internal debugger are known:

Jones in the Fast Lane (both CGA/EGA/Tandy and VGA disk releases) Jones in the Fast Lane (CD-ROM version, only the SCIDHV executable) Mixed-Up Mother Goose (1990 CD-ROM version)

Sometimes an interpreter can be swapped with another one, to use within other games, but often the games get too buggy to play. As of yet, trail-and-error is the key here.

SCI version < 1.001.000 (SCI1)

There's no known standard way of activating the script debugger.

Game specific: Police Quest 3

Rename/remove the file "version" in your PQ3 directory, or set the attribute to "read-only".

This will give you some options at the beginning to configure which flags should be set and where/when you will start the game.

Game specific: Space Quest 4 (beta)

Somewhere in 1991, the cracking group The Humble Guys released a beta version of Space Quest 4. I suspect it had version number 1.052 (I found some saves of the beta), but the first sales release had that too, so far for that lead.

However, someone named "Beamer" typed up a list back then describing the functions and based on that, I made this following list:

[ALT + A] Show ego information **
[ALT + B] Polygon editor (edit walking areas) *
[ALT + C] Show control map
[ALT + D] DebugOn toggle (not sure what this does)
[ALT + E] Show cast (information about all objects on screen) **
[ALT + F] Show free memory
[ALT + G] Set global variable
[ALT + I] Get inventory item
[ALT + M] Gives 20 buckazoids/money
[ALT + N] QA logger
[ALT + P] Show priority map
[ALT + R] Show room info
[ALT + T] Teleport (change room/scene/script)
[ALT + W] Feature writer *
[ALT + Y] Adjust vanishing point
[ALT + Z] Exit game
  • This option is removed and crashes the game
    • Seems like either Sierra or the author of the original text file swapped the keys for "Show cast" and "Show ego information"

SCI version > 1.001.000 (SCI11)

At the time of writing, VAG's SCIResDump can be used for games using an interpreter > 1.001.000. This is a bit tricky, but beats any other manual method. Refer to its documentation on further use. When dumping the files, it would be advisable to dump, apart from the SCR file, the accompanying HEP and TEX file. Some debug modes will not work properly without them.

Besides giving you the usual debug options, some games will give the "Where to?" dialog. Basically, this is a dialog giving you the opportuninty to set various flags/variables at the beginning of the game, so you can for example start halfway in the game or so.

Game specific: EcoQuest 2

The "magic" script is 98. Extract 98.SCR & 98.HEP

This debug mode however, is partially removed or something. Only the "Where to?" room select dialog on start will appear, the rest of the keys won't work.

Game specific: Freddy Pharkas: Frontier Pharmacist

The "magic" script is 10. However, this script cannot be found in the English release of Freddy Pharkas. Extract 10.SCR/10.HEP/10.TEX from the RESOURCE.MSG file (instead of the usual RESOURCE.000) in a NON-ENGLISH(!) release. I've tested this with the German, Spanish and French release. The extracted script will work with every version of the game, also the English one.

It activates the following options:

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas)
[ALT + C] Show control map
[ALT + D] Dialog editor
[ALT + E] Every puzzle can be found **
[ALT + F] Show feature outlines *
[ALT + G] Set global variable
[ALT + H] Show global variable
[ALT + I] Get inventory item
[ALT + J] Justify text on screen
[ALT + K] Show palette
[ALT + L] Set flag
[ALT + M] Clear flag
[ALT + N] Show flag
[ALT + O] QA logger
[ALT + P] Show priority map
[ALT + Q] Set detail to 1 *
[ALT + R] Show room info / free memory *
[ALT + S] Show string or message
[ALT + T] Teleport (change room/scene/script) *
[ALT + U] Give HandsOn (return user control) **
[ALT + V] Show visual map
[ALT + W] Feature writer
[ALT + X] Exit game
[ALT + Y] Stuff or unstuff a clue **
[ALT + Z] Exit game
[SHIFT + /] Help
[Left mouse click + ALT] Instant movement *
[Left mouse click + CTRL + LSHIFT] Show ego *
[Left mouse click + CTRL + RSHIFT] Show room *
[Left mouse click + CTRL + ALT] Show position
  • This option is awfully buggy or will crash the game instantly
    • Not sure what this does or if it works at all
Game specific: Leisure Suit Larry 6

The "magic" script is 911. Extract 911.SCR/911.HEP/911.TEX. Besides giving you a "Where to?" dialog at the beginning, it activates the following options:

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas)
[ALT + C] Show control map
[ALT + D] DebugOn toggle (internal debugger on room change) *
[ALT + E] Show ego information
[ALT + F] Set flag / clear
[ALT + G] Set global variable
[ALT + H] Show features
[ALT + I] Get inventory item
[ALT + L] Logfile
[ALT + M] Show free memory
[ALT + P] Show priority map
[ALT + Q] Show cursor coordinates
[ALT + R] Show room info
[ALT + S] Updating cast elements
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map
[ALT + W] Feature writer
[ALT + X] Exit game
[ALT + Y] Adjust vanishing point
[ALT + Z] Exit game
[SHIFT + /] Help
  • Doesn't seem to do anything
Game specific: Pepper's Adventures In Time (AKA Twisty History)

The "magic" script is 880. Extract 880.SCR/880.HEP/880.TEX.

Besides giving you a "Where to?" dialog, it activates the following options:

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas)
[ALT + C] Show control map
[ALT + D] Place an actor
[ALT + E] Show ego information
[ALT + F] Show feature outlines
[ALT + G] Set global variable
[ALT + H] Show global variable
[ALT + I] Get inventory item
[ALT + J] QA logger (it should "Justify text on screen", but doesn't)
[ALT + K] Show palette
[ALT + L] Set flag
[ALT + M] Clear flag
[ALT + N] Show flag
[ALT + P] Show priority map
[ALT + Q] Set detail to 1
[ALT + R] Show room info / free memory
[ALT + S] Show string or message
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map
[ALT + W] Feature writer
[ALT + Y] Stuff or unstuff a clue (or some sort of "Change ego" function)
[ALT + X] Exit game
[ALT + Z] Exit game
[SHIFT + /] Help
Game specific: Police Quest (SCI remake)

The "magic" script is 899. Extract 899.SCR/899.HEP/899.TEX. To activate the debug mode in this case, they should be first renamed to 702.SCR/702.HEP/702.TEX.

It activates the following options:

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas) *
[ALT + C] Show control map
[ALT + D] Place an actor ***
[ALT + E] Show ego information
[ALT + F] Show feature outlines
[ALT + G] Set global variable
[ALT + H] Show global variable
[ALT + I] Get inventory item
[ALT + J] Justify text on screen
[ALT + K] Show palette
[ALT + L] Set flag
[ALT + M] Clear flag
[ALT + N] QA logger (it should "Show flag", but doesn't)
[ALT + O] QA logger
[ALT + P] Show priority map
[ALT + Q] Set detail to 1 **
[ALT + R] Show room info / free memory
[ALT + S] Show string or message
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control) **
[ALT + V] Show visual map
[ALT + W] Feature writer *
[ALT + X] Exit game
[ALT + Z] Exit game
[SHIFT + /] Help
  • This option is removed and crashes the game
    • Not sure what this does or if it works at all
      • This option is awfully buggy
Game specific: Quest for Glory (SCI remake)

The "magic" script is 298. However, it's not available anymore in the game's resource files. So to activate the debug mode, debug scripts from another game should be used. You can use the script from either Laura Bow 2 or Police Quest (SCI remake). They should be first renamed to 298.SCR/298.HEP/298.TEX.

Now the "Where to?" dialog works, while the remaining functions don't. Perhaps the scripts used are not fully compatible with this game.

Game specific: Space Quest 5 (beta)

The Space Quest series seem to be the major victim of leaked betas at Sierra. A Space Quest 5 beta version was released by some group, back in 1993. This beta was actually a reviewer's copy, included a script debugger (but no internal debugger) and works just like most of them.

The version in question is version 0.028, it has the following commands:

[ALT + E] Show ego information
[ALT + R] Show room info / free memory
[ALT + O] QA logger
[ALT + P] Show priority map
[ALT + H] Show global variable
[ALT + J] Show cast (information about all objects on screen)
[ALT + K] Show palette
[ALT + C] Show control map
[ALT + V] Show visual map
[ALT + N] Show flag
Game specific: The Dagger of Amon Ra

This probably is the buggiest debug mode, thus not really interesting. What is somewhat interesting though, is that the "magic" script (10), cannot be found in the game's resource files, yet, the script somehow turned up on the web. So download it and copy 10.SCR/10.HEP/10.TEX to the game directory.

It somewhat activates the following options:

[ALT + A] Show cast (information about all objects on screen) **
[ALT + B] Polygon editor (edit walking areas) *
[ALT + C] Show control map
[ALT + D] Place an actor **
[ALT + E] Show ego information **
[ALT + F] Show feature outlines **
[ALT + G] Set global variable
[ALT + H] Show global variable
[ALT + I] Get inventory item **
[ALT + J] Justify text on screen ***
[ALT + K] Show palette
[ALT + L] Set flag
[ALT + M] Clear flag
[ALT + N] Show flag
[ALT + O] QA logger *
[ALT + P] Show priority map
[ALT + Q] Set detail to 1 *
[ALT + R] Show room info / free memory **
[ALT + S] Show string or message **
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control) **
[ALT + V] Show visual map
[ALT + W] Feature writer *
[ALT + X] Exit game
[ALT + Y] Stuff or unstuff a clue **
[ALT + Z] Exit game
[SHIFT + /] Help
[Left mouse click + ALT] Instant movement **
[Left mouse click + CTRL + LSHIFT] Show ego **
[Left mouse click + CTRL + RSHIFT] Show room **
[Left mouse click + CTRL + ALT] Show position
  • This option is removed and crashes the game
    • This option is awfully buggy or will crash the game instantly
      • Not sure what this does or if it works at all

SCI32

In the beginning, SCI32 games had the same activation procedure as SCI11 games. In this FAQ, this will be called the "Traditional" method. However, at a certain point, this procedure got replaced by the so-called "CLASSES" method. Both are explained below.

Internal Debugger

There is currently one SCI32 interpreter known with an internal debugger. It's bundled with a rare Gabriel Knight 2 demo and can be activated by pushing the [`] key, usually above [TAB].

Options:

[Q] Quit game
[`] Toggle debug
[SHIFT + `] Check memory
[/] Toggle menu
[B] Set breakpoint - Object, method
[SHIFT + B] Set breakpoint - Object, method (sticky)
[N] Set breakpoint - Script, offset
[SHIFT + N] Set breakpoint - Script, offset (sticky)
[K] Set breakpoint - Kernal call
[SHIFT + K] Set breakpoint - Kernal call (sticky)
[T] Set breakpoint - Changed memory
[SHIFT + R] Break out of current routine
[SHIFT + C] Clear all breakpoints
[F7] Step by source line
[F8] Step across source line
[ENTER] Proceed single step
[TAB] Step across send
[M] Change display mode
[A] Inspect ID in accumulator
[C] Inspect current object
[I] Inspect object or memory
[F] Show largest memory
[S] Show sends
[R] Show resources
[O] Show objects in heap
[SHIFT + O] Show objects with adresses
[P] Show palette
[G] Edit global variable
[L] Edit local variable
[E] Edit memory
[V] Show version information
[SHIFT + /] Help

Note that these are case sensitive, so [CAPS LOCK] should be de-activated.

This particular interpreter also support the following command line parameters:

-c - Cursor display for resource loading (e.g. -c958 for cursor 958) -E - Extract resources (in VOLs) to current directory (e.g. -E*.v56) -i - Integrity checking(?) (default is on; use -i0 to turn off) -k - Set kernel calls between integrity checks (default is 50,000) -m - Max. memory to use (examples: -m1M -m1024K -m1048576 -m$fffff) -p - Play digital audio sample (examples: -P100.WAV -PA0010203.045)

So to use this, start the game using a command line, e.g. "SCIW -i0 -m1M".

"Traditional" method

The "Traditional" method is the same method as the SCI11 one: It relies on extracting scripts from the RESOURCE or RESMAP file. Again, at the time of writing, VAG's SCIResDump is the tool to use. Please refer to its documention on further use.

Game specific: Gabriel Knight (CD-ROM version)

The "magic" script is 99. Extract 99.SCR/99.HEP.

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas) *
[ALT + C] Show control map **
[ALT + D] DebugOn toggle (internal debugger on room change) **
[ALT + F] Set flag / clear
[ALT + G] Set global variable
[ALT + H] Help
[ALT + I] Get inventory item
[ALT + L] Logfile
[ALT + M] Show free memory
[ALT + P] Show priority map **
[ALT + Q] Show cursor coordinates
[ALT + R] Show room info
[ALT + S] Updating cast elements
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map **
[ALT + W] Feature writer **
[ALT + X] Exit game
[ALT + Y] Adjust vanishing point *
[ALT + Z] Position ego at cursor
  • This option is removed and crashes the game
    • Doesn't seem to do anything
Game specific: King's Quest 7

The "magic" script is 99. Extract 99.SCR/99.HEP.

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Polygon editor (edit walking areas)
[ALT + D] DebugOn toggle (internal debugger on room change) **
[ALT + E] Show ego information
[ALT + F] Set flag / clear
[ALT + G] Set global variable
[ALT + H] Help
[ALT + I] Get inventory item
[ALT + J] Load picture
[ALT + K] Show palette
[ALT + L] Logfile
[ALT + M] Show free memory
[ALT + P] Position ego at cursor
[ALT + Q] Show cursor coordinates
[ALT + R] Show room info
[ALT + S] Updating cast elements
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show room polygons
[ALT + W] Feature writer *
[ALT + X] Exit game
[ALT + Y] Adjust vanishing point *
[CTRL + B] Capture screenshot (in BMP format)
[CTRL + S] Sound test
[SHIFT + /] Help
  • This option is removed and crashes the game
    • Doesn't seem to do anything
Game specific: Police Quest 4 (Disk version)

The "magic" script is 1. Extract 1.SCR/1.HEP.

[ALT + A] Show cast (information about all objects on screen)
[ALT + D] Dialog editor **
[ALT + E] Show ego information
[ALT + F] Show features **
[ALT + I] Get inventory item
[ALT + J] Justify text on screen *
[ALT + K] Show palette **
[ALT + O] Create obstacles *
[ALT + P] Show priority map **
[ALT + R] Show room info / free memory
[ALT + S] Switch alter ego *
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map **
[ALT + W] Feature writer **
[ALT + X] Exit game
[ALT + Y] Toggle CD rooms ***
[ALT + Z] Reverse palette ***
[CTRL + L] QA logger **
[CTRL + S] Sound test
[SHIFT + /] Help
  • This option is awfully buggy or will crash the game instantly
    • Doesn't seem to do anything
      • Confirmed by a message, yet doesn't seem to do anything
Game specific: Police Quest 4 (CD-ROM version)

This isn't exactly the "traditional" method, but it does involve external scripts. Activate the debug mode by renaming/removing 4.SCR

[ALT + A] Show cast (information about all objects on screen)
[ALT + D] Dialog editor **
[ALT + E] Show ego information
[ALT + F] Show features **
[ALT + I] Get inventory item
[ALT + J] Justify text on screen **
[ALT + K] Show palette **
[ALT + O] Create obstacles **
[ALT + P] Show priority map **
[ALT + R] Show room info / free memory
[ALT + S] Switch alter ego **
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map **
[ALT + W] Feature writer **
[ALT + X] Exit game
[ALT + Y] Toggle CD rooms ***
[ALT + Z] Reverse palette ***
[CTRL + L] QA logger **
[CTRL + S] Sound test
[SHIFT + /] Help
[Left mouse click + ALT] Instant movement
[Left mouse click + CTRL + LSHIFT] Show ego
[Left mouse click + CTRL + RSHIFT] Show room
[Left mouse click + CTRL + ALT] Show position *
  • This option is awfully buggy or will crash the game instantly
    • Doesn't seem to do anything
      • Confirmed by a message, yet doesn't seem to do anything
Game specific: Quest for Glory 4 (Disk version)

The "magic" script is 18. Extract 18.SCR/18.HEP.

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Change amount of money
[ALT + C] Learn a new spell
[ALT + D] DebugOn toggle (internal debugger on room change) *
[ALT + E] Show ego information & free memory
[ALT + F] Show features *
[ALT + G] Set flag / clear
[ALT + H] Set hour of the day
[ALT + I] Get inventory item
[ALT + K] Set one of the ego's skills
[ALT + M] Show free memory
[ALT + O] Create obstacles *
[ALT + P] Show priority map *
[ALT + R] Show room info
[ALT + S] Shift user alterego(?)
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + V] Show visual map *
[ALT + W] Feature writer *
[ALT + X] Set all of the ego's skills
[ALT + Y] Show palette *
[ALT + Z] Reverse palette *
[CTRL + L] QA logger
[CTRL + S] Sound test
[SHIFT + /] Help
[Left mouse click + ALT] Instant movement
[Left mouse click + CTRL + LSHIFT] Show ego
[Left mouse click + CTRL + RSHIFT] Show room
[Left mouse click + CTRL + ALT] Show position
  • Doesn't seem to do anything

"CLASSES" method

The later SCI32 games (1995-1997) use the "CLASSES" method. They depend on a file in the game directory, called "CLASSES". This can be an empty file. It's checked on existance by some code in the script, if found, the debug mode gets activated. "AUTOTP" as an empty file will function too sometimes, however its purpose is not fully clear to me.

Note that the CLASSES file should NOT have an extension (like .txt, etc.)

Game specific: Gabriel Knight 2

Activate the debug mode usings the "CLASSES" method. Besides giving you a "Where to?" dialog at the beginning, it activates the following options:

[ALT + A] Reload room
[ALT + B] Capture screenshot (in BMP format) *
[ALT + C] Show cast (information about all objects on screen)
[ALT + E] Show ego information
[ALT + F] Edit features
[ALT + G] Show/set/clear flag
[ALT + I] Get inventory item
[ALT + P] Polygon editor (edit walking areas) *
[ALT + R] Show room info / free memory(?)
[ALT + S] Scaler tools *
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + M] Show free memory
[ALT + X] Exit game
[CTRL + S] Sound test
[SHIFT + /] Help

There are some more debug/tester functions in this game. They can be accessed by teleporting to room 98. This will activate "The Elite Tester V1.0":

[ALT + A] AVI player *
[ALT + D] DebugOn toggle (internal debugger on room change) **
[ALT + I] Toggle full screen
[ALT + O] Polygon editor (edit walking areas) *
[ALT + P] Toggle palette *
[ALT + S] Scaler tools *
[ALT + T] Teleport (change room/scene/script)
[ALT + V] VMD player
[CTRL + D] Unload current view
[CTRL + F] Forward (?)
[CTRL + S] Play sound
[CTRL + P] Play sound effect
[CTRL + B] Actor lastCel(?)
[CTRL + R] Reset room(?)
[M] Toggle mover(?) **
[S] Manual toggle scaler(?)
[P] Picture(?)
[V] View(?)
[=] Toggle picture(?)
[E] EndLoop(?)
[B] BegLoop(?)
[L] Loop(?)
[H] Hide/show actor(?)
[K] Normalize actor(?)
[F9] Set Pri(?)
[I] Current actor information(?)
[N] nextCel-lastCel(?)
[ALT + N] Previous cel
[0]-[9] Actors
[O] Open robot
[F] Advance robot frame
[R] Retreat robot frame
[DELETE] Delete robot frame *
[CTRL + C] Tag robot frame for cue
[ALT + R] Play robot
[E] Play robot
[T] Terminate robot
[CTRL + I] Show robot info
[D] Display single robot frame
[,] Scroll large pics left and right
[CTRL + M] Change scroll step size
[CTRL + N] Reset plane rectangle (for scrolled pics)
[SHIFT + /] Help
  • This option is removed or does not work properly
    • Doesn't seem to do anything
Game specific: Leisure Suit Larry 7

Activate the debug mode usings the "CLASSES" method and when in the game, press both SHIFTs and the PLUS key located at the NUMERIC keypad AT ONCE. It activates the following options:

[ALT + A] Add view
[ALT + B] Capture screenshot (in BMP format)
[ALT + C] Show cast (information about all objects on screen)
[ALT + D] Show current view information
[ALT + E] Show ego information
[ALT + F] Edit features
[ALT + G] Show/set/clear flag
[ALT + H] Show features & obstacles
[ALT + I] Get inventory item
[ALT + J] Load picture
[ALT + K] Blink current view(?)
[ALT + M] Dump debug log
[ALT + N] New palette
[ALT + P] Polygon editor (edit walking areas)
[ALT + R] Show room info / free memory
[ALT + S] Scaler tools
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + X] Exit game
[ALT + Y] Show polygons
[CTRL + C] Check audio card
[CTRL + G] Give ego necessary items for room
[CTRL + L] Log errors
[CTRL + R] Play a robot
[CTRL + D] Sound test
[SHIFT + /] Help

Numeric keypad keys:

[DELETE] Delete current object
[8] Rotate current (actor) right
[2] Rotate current (actor) left
[4] Decrease current (prop) cel
[6] Increase current (prop) cel
[1] Decrease current (prop) loop
[3] Increase current (prop) loop
Game specific: Space Quest 6

Activate the debug mode usings the "CLASSES" method. Besides giving you a "Where to?" dialog at the beginning, it activates the following options:

[ALT + A] Show cast (information about all objects on screen)
[ALT + B] Capture screenshot (in BMP format)
[ALT + E] Show ego information
[ALT + F] Edit features
[ALT + G] Show/set/clear flag
[ALT + I] Get inventory item
[ALT + O] Get inventory item (other half)
[ALT + P] Edit polygons
[ALT + R] Show room info / free memory
[ALT + S] Scaler tools
[ALT + T] Teleport (change room/scene/script)
[ALT + U] Give HandsOn (return user control)
[ALT + X] Exit game
[CTRL + S] Sound test
[SHIFT + /] Help

Note that this debug mode is a buggy one!

Other method(s)

One game (currently) hasn't got the usual debug mode. Nevertheless, it's not really an "easter egg" either, so this section was created.

Game specific: Leisure Suit Larry 6 (SVGA CD-ROM version)

This game has no real debug mode (anymore), but yet it had some leftovers of one, which were actually worth to mention. Trigger certain actions by clicking 4 times with the "hand icon" on the following list of objects:

FRONT DESK LOBBY:

Left chandelier - Gives stuff to fix cellulite machine Right chandelier - The maid's cart is now upstairs Ashtray - Gives you ThunderBird's sequence Counter door - Gives you Char's sequence Counter top - Gives current free memory

HALL WITH ELEVATOR:

Plant above elevator - Shablee has the gown and gives Larry the condom and champagne

LARRY'S ROOM:

Overhang above toilet door - Gets the plumber to work on sink/toilet Right-most plant - Choice between certain events to execute

LARRY'S TOILET:

Towel rack - Gives the towel, toilet cover, toilet paper, hand creme, brochure and the wash cloth.

STAIRS LEADING TO BEACH:

Big tree - Gives you Shablee's sequence

PART OF THE LOBBY WITH SWIMMING POOL ENTRANCE TO THE NORTH:

Right sculpture - Gives the swim suit, your room key and the inflatable beaver

END OF THE LOBBY (TO THE EAST):

Right sculpture - Gives matches for Art

ROSE'S ROOM (OR WHEN LOOKING AT HER):

Bottle of grease - Gives flowers for Rose


Interesting fact:

When clicking 4 times on the big tree, to activate the "Shablee sequence", somehow the debug mode gets activated (sort of), because the game will react to key combinations used in debug. However, being removed, it will terminate the game directly with the error "cannot find 911.hep". Also, clicking 4 times will be reduced to 2 times.

Suspected of having a debug mode

The following games have some references to debug options, yet no way found to activate them, if they can be activated at all:

EcoQuest: The Search for Cetus Leisure Suit Larry 5: Passionate Patti Does a Little Undercover Work

Games that I do not have (or haven't tried yet):

Lighthouse Phantasmagoria Phantasmagoria 2 Police Quest SWAT RAMA