If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Spelunky (2012)/Debug Menu

From The Cutting Room Floor
Jump to navigation Jump to search

This is a sub-page of Spelunky (2012).

SpelunkyHD debug menu 1.png

Spelunky HD has a debug menu that went unknown until 2017. After it was discovered, it was basically forgotten about even to Spelunky scientists and the speedrun community. It would not be until 2023 that this debug menu would finally be documented on TCRF.

Intro

Enabling Debug Menu

The debug menu can be enabled with the below Cheat Engine table. Unrelated entries are also included in this table to access other unused content in this game, described in its file page.

Download.png Download Spelunky HD TCRF Cheat Engine table
File: SpelunkyHD_TCRF_Cheat_Engine_table.zip (756 B) (info)

The table contains two different entries to enable the debug menu: one for version 1.4, and one for version 1.47. Both are included because the WARPS page of the debug menu had the endings added in the 2021 v1.47 update. The 1.4 entry is intended to be used after downpatching through the public Steam beta branch version1_4. The 1.47 entry is intended to be used in the latest version of the game from Steam.

After loading the cheat table and attaching to Spelunky.exe, click the checkbox for Enable Debug Menu for your version of the game, then enter the Help & Options menu to go to the debug menu instead. Clearing the checkbox will make the Help & Options menu lead to itself again.

Warning: The Steam version of Spelunky HD automatically submits runs to the leaderboards. If you care about preserving your best time submitted to the leaderboards, do not trigger a ending to submit your time.

Why This Works

The way that Spelunky HD handles menus and knowing what submenu to load is by checking the string key of the menu option. If the menu option is using the key IDS_MAINMENU_HELPANDOPTIONS and is selected, it will open the Help & Options submenu. This system works for all languages because it checks the string key, not the displayed text in the menu. The menu has unused code for opening the debug menu if the selected menu option is using the hardcoded text DEBUG MENU. The cheat table to enable the debug menu works by swapping the pointer to the string key IDS_MAINMENU_HELPANDOPTIONS with a pointer to the hardcoded string DEBUG MENU. This DEBUG MENU string can even be found in Spelunky.exe at 0x11B860.

(Cheat table explanation: Kirby703)

Using Debug Menu

The debug menu is broken up into four pages. Selecting the page header (SETTINGS/WARPS/ITEMS/HIDDEN CHARACTERS) is how to advance to the next page. If the WARPS menu was last used, the debug menu will skip it the next time it is opened. This means that after using a warp, the debug menu will cycle through the pages in this order: SETTINGS, ITEMS, HIDDEN CHARACTERS, then it will loop the four pages in this order: SETTINGS, WARPS, ITEMS, HIDDEN CHARACTERS.

SETTINGS

SpelunkyHD_debug_menu_1.png

The first page of the debug menu. This page features general settings.

Option Default Value Values Description
Life 4 4-99 Has no effect on gameplay. The value starts at 4, and selecting it increases it by 1, eventually maxing out at 99.
Bomb 4
Rope 4
Money $0 $0-$999999 Has no effect on gameplay. Selecting this increases the number by 5000. Once 100000 is reached, selecting it again increases it by 100000. Once 900000 is reached, selecting it again sets it to 999999 and it cannot increase any more.
Shortcuts OFF OFF/ON Has no known effect on gameplay. Maybe this was related to Tunnel Man's shortcuts?
Unlock Journal Entries
Lock Journal Entries
N/A N/A Selecting this unlocks all journal entries. Afterward, the option changes to Lock Journal Entries, and selecting it again locks all journal entries. This option only edits the flags saying that a journal entry is locked/unlocked, so Killed and Killed By stats are preserved.
View Path OFF OFF/ON When enabled, this option draws a 4×12 grid of numbers to the bottom-left of the screen. This option is explained in the below section.
HUD Draw ON OFF/ON This option allows completely turning off the HUD. This was probably used to take screenshots for the promotion of the game.
Force Dark OFF OFF/ON This option toggles the internal "is this level a dark level?" flag, which does not really do anything if edited mid-level. It does not allow forcing any level to be dark after loading it, and it does not allow turning off the darkness in a dark level. The only noticeable effect this has is that lamps emit more light if the flag/option are enabled.
Strangely, hovering over this option removes the space between the colon and OFF/ON.
Toggle Num Plays N/A N/A Without a warning or feedback, this option sets the number of plays in the save (visible in the Player Profile in the main menu) to 998. Selecting this option again sets it to 0. This option was probably used to debug the Addicted achievement, which requires playing Adventure Mode 1000 times.
Reset Save File N/A N/A Without a warning, this option deletes all save data and saves the now blank save afterward. This option is functionally identical to using the Reset Save Game option in the player profile.

View Path Info

Levels in Spelunky HD are broken up into 10×8 sections of tiles called rooms. The room system is how the game generates its levels. Normal levels are 4×4 rooms big. Levels that have an abyss and Olmec's Lair are taller than four rooms. The Worm is 2×12 rooms big, and this is done by making a 4×12 room big level with the two right columns empty (this empty space can even be entered by using the Teleporter item).

The View Path debug option displays a 4×12 grid of numbers in the bottom-left of the screen with each number representing the internal ID of the rooms that generated in the level. The Worm's unique way of having a non-standard level size is why the bottom eight rows of the display usually display a 0 in normal levels.

The table below contains all room IDs used by the game. The Generation Area column is included in the table to allow sorting by area to better organize the data. Extra tables are included further below to show the fixed layout of room IDs in the tutorial and Yama's Throne.

ID Generation Area Description
0 Generic Side, Idol, and Kali Altar rooms.
1 Generic Path. Rooms with left and right sides open (path_normal as named in Spelunky 2).
2 Generic Path. Rooms where the player is expected to drop into the room below (path_drop as named in Spelunky 2).
This room ID is also used for rooms where the player drops in from the room above and drops into the room below (path_drop_notop as named in Spelunky 2).
3 Generic Path. Rooms where the player is expected to drop in from the room above (path_notop as named in Spelunky 2).
4 Generic Shop with entrance on the right side. Used only in level generation before a shop type gets assigned?
5 Generic Shop with entrance on the left side. Used only in level generation before a shop type gets assigned?
6 Mines - Snake Pit Snake pit top.
7 Mines - Snake Pit Snake pit middle.
8 Mines - Snake Pit Snake pit bottom.
9 Jungle - Rushing Water Rushing water lake surface.
10 Jungle - Rushing Water Rushing water lake bottom.
11 Jungle - Rushing Water Rushing water lake bottom with Old Bitey.
12 Ice Caves - Psychic Presence Psychic presence left.
13 Ice Caves - Psychic Presence Psychic presence middle.
14 Ice Caves - Psychic Presence Psychic presence right.
15 Ice Caves Moai.
16 Temple - Prayers to Kali Prayers to Kali pit top.
17 Temple - Prayers to Kali Prayers to Kali pit middle.
18 Temple - Prayers to Kali Prayers to Kali pit bottom.
19 Hell Vlad's Tower top.
20 Hell Vlad's Tower middle.
21 Hell Vlad's Tower bottom.
22 Jungle - Beehive Beehive room with left and right sides open.
Note: because of how beehives are generated, this description may not be 100% accurate.
24 Jungle - Beehive Beehive room with left, right, and bottom sides open.
Note: because of how beehives are generated, this description may not be 100% accurate.
25 Jungle - Beehive Beehive room with left, right, and top sides open.
Note: because of how beehives are generated, this description may not be 100% accurate.
26 City of Gold Book of the Dead room left.
27 City of Gold Book of the Dead room right.
28 Ice Caves Mothership entrance top.
29 Ice Caves Mothership entrance bottom.
30 Haunted Castle Haunted Castle top layer middle-left. Inside the castle, this room has left and right sides open.
31 Haunted Castle Haunted Castle top layer middle-right. Inside the castle, this room has left and bottom sides open.
32 Haunted Castle Haunted Castle middle layers left with left and right sides open.
33 Haunted Castle Haunted Castle middle layers left with left, right, and bottom sides open.
34 Haunted Castle Haunted Castle bottom with left and right sides open. Exit can sometimes use this.
35 Haunted Castle Haunted Castle bottom with left, right, and top sides open. Exit can sometimes use this.
36 Haunted Castle Haunted Castle right wall with left side open.
37 Haunted Castle Haunted Castle right wall with left and bottom sides open.
38 Haunted Castle Haunted Castle right wall bottom layer with left side open. This room has the front door.
39 Haunted Castle Haunted Castle right wall bottom layer with left and top sides open. This room has the front door.
40 Haunted Castle Haunted Castle moat in bottom-right.
41 Worm Worm Crysknife acid pit left.
42 Worm Worm Crysknife acid pit right.
43 Generic Co-op coffin path room with open sides.
44 Generic Co-op coffin path room where the player is expected to drop into the room below.
This room ID is also used for co-op coffin rooms where the player drops in from the room above and drops into the room below.
45 Generic Co-op coffin path room where the player is expected to drop in from the room above.
46 Mothership Alien Queen's room.
47 Jungle - Dead are Restless Dead are restless royal grave (Haunted Castle entrance).
48 Jungle - Dead are Restless Dead are restless Crystal Skull room.
49 Hell - Yama's Throne Yama's Throne top layer left. Room ID 49 or 52 is where the exit is placed.
50 Hell - Yama's Throne Yama's Throne top layer middle-left.
51 Hell - Yama's Throne Yama's Throne top layer middle-right.
52 Hell - Yama's Throne Yama's Throne top layer right. Room ID 49 or 52 is where the exit is placed.
53 Hell - Yama's Throne Yama's Throne top-left of the throne itself.
54 Hell - Yama's Throne Yama's Throne top-right of the throne itself.
55 Hell - Yama's Throne Yama's Throne middle layers left. This room ID contains the climbable chains and terrain on the left side.
56 Hell - Yama's Throne Yama's Throne bottom-left of the throne itself.
57 Hell - Yama's Throne Yama's Throne bottom-right of the throne itself.
58 Hell - Yama's Throne Yama's Throne middle layers right. This room ID contains the climbable chains and terrain on the right side.
59 Hell - Yama's Throne Yama's Throne bottom layer left. Horse Head's initial spawn room.
60 Hell - Yama's Throne Yama's Throne bottom layer middle-left.
61 Hell - Yama's Throne Yama's Throne bottom layer middle-right.
62 Hell - Yama's Throne Yama's Throne bottom layer right. Ox Face's initial spawn room.
63 Mines - Skin is Crawling Skin is crawling Giant Spider lair left half. This room has left, right, and potentially top sides open. This room ID is also used for the Round Girl's unlock coffin.
64 Mines - Skin is Crawling Skin is crawling Giant Spider lair right half. This room has left, right, and potentially top sides open.
65 Mines - Skin is Crawling Skin is crawling Giant Spider lair left half. This room has left, right, bottom, and potentially top sides open.
66 Mines - Skin is Crawling Skin is crawling Giant Spider lair right half. This room has left, right, bottom, and potentially top sides open.
67 Generic Vault. These are the solid rooms with a shopkeeper guarding treasure chests.
68 Ice Caves Ice Caves pool (single room).
69 Ice Caves Ice Caves pool top.
70 Ice Caves Ice Caves pool bottom.
72 Temple Kali Altar used only for Temple.
73 Generic Unlockable character coffin with the entrance on the right side.
74 Generic Unlockable character coffin with the entrance on the left side.
75 Worm Worm regenerating block structure.
76 Ice Caves - Wet Fur Wet fur Yeti King room. Path room with left and right sides open.
77 Ice Caves - Wet Fur Wet fur Yeti King room. Path drop room with left, right, and bottom sides open. Can also be used as a path drop no top room with top and bottom sides open.
Because this room has a row of solid tiles along the bottom, if this room is on the path, it results in a blocked path.
78 Ice Caves - Wet Fur Wet fur Yeti King room. Path no top room where the player is expected to enter from the room above.
100 Generic Shop with the entrance on the left side (General).
101 Generic Shop with the entrance on the left side (Specialty).
102 Generic Shop with the entrance on the left side (Clothing).
103 Generic Shop with the entrance on the left side (Bomb).
104 Generic Shop with the entrance on the left side (Weapon).
105 Generic Shop with the entrance on the left side (Kissing Parlor).
106 Generic Shop with the entrance on the left side (Hired Hands).
107 Generic Shop with the entrance on the left side (Wheel of Prizes).
10100 Generic Shop with the entrance on the right side (General).
10101 Generic Shop with the entrance on the right side (Specialty).
10102 Generic Shop with the entrance on the right side (Clothing).
10103 Generic Shop with the entrance on the right side (Bomb).
10104 Generic Shop with the entrance on the right side (Weapon).
10105 Generic Shop with the entrance on the right side (Kissing Parlor).
10106 Generic Shop with the entrance on the right side (Hired Hands).
10107 Generic Shop with the entrance on the right side (Wheel of Prizes), also used for Ankh shop in Black Market.
1000 - 1015 Tutorial Tutorial setrooms. Room IDs 1000 through 1015 are all used for the tutorial.
(List of room IDs source: Super Ninja Fat)

Tutorial

This is how the room IDs are laid out in Tutorial 1 and Tutorial 2. There's one difference in Tutorial Final: in place of room ID 1007 is ID 100, a general store.

1000 1001 1002 1003
1004 1005 1006 1007
1008 1009 1010 1011
1012 1013 1014 1015

Yama's Throne

This is how the room IDs are laid out in Yama's Throne.

49 50 51 52
55 53 54 58
55 56 57 58
59 60 61 62

WARPS

The second page of the debug menu. This page is a level select to many of the types of levels and level feelings. All of these warps start a new run at the selected option, which will reset data like the player's inventory, the total time, and score. Choosing Quick Restart in the game over screen will restart the run at 1-1, requiring the debug menu to be opened again to warp to a desired level.

Option Description
Mine Leads to a regular Mines 1-1 level.
Mine (Level 2) Leads to a regular Mines 1-2 level. 1-2 is when shops, idols, Kali altars, dark levels, and snake pits can first appear.
Jungle Leads to a regular Jungle 2-1 level.
Lake Leads to a Jungle 2-1 level with the rushing water level feeling.
Cemetery Leads to a Jungle 2-4 level with the dead are restless level feeling. Because it leads to 2-4, the Haunted Castle entrance will never be found here.
Cemetery Lake Leads to a Jungle 2-1 level with both the dead are restless and rushing water level feelings.
Haunted Castle Leads to a Haunted Castle 2-2 level.
Black Market Leads to a Black Market 2-2 level.
Jungle Worm Leads to a Worm 2-2 level. Jungle enemies will spawn in this version of the Worm.
Ice Leads to a regular Ice Caves 3-1 level.
Ice Worm Leads to a Worm 3-2 level. Ice Caves enemies will spawn in this version of the Worm.
Yeti Cave Leads to an Ice Caves 3-1 level with the wet fur level feeling.
Mothership Leads to a Mothership 3-3 level.
Temple Leads to a regular Temple 4-1 level.
City of Gold Leads to a City of Gold 4-3 level.
Olmec Leads to an Olmec's Lair 4-4 level.
Olmec Ending Leads directly to the first part of the normal ending: the hallway to the treasure with lava below.
Strangely, this warp was added in the 2021 v1.47 update.
Hell Leads to a regular Hell 5-1 level.
King Yama Leads to a Yama's Throne 5-4 level.
Yama Ending Leads directly to the first part of the hard ending: the hallway to the treasure with lava below.
Strangely, this warp was added in the 2021 v1.47 update.

Version Difference

The 2021 v1.47 update added Olmec Ending and Yama Ending warps to the debug menu. Here is what both the v1.4 and v1.47 WARPS menus look like.

v1.4 v1.47
SpelunkyHD_debug_menu_2_v1.4.png
SpelunkyHD_debug_menu_2_v1.47.png

ITEMS

SpelunkyHD_debug_menu_3.png

The third page of the debug menu. This menu unfortunately does not have any gameplay effects; none of the options do anything when selected.

Option Default Value Values Notes
Compass OFF OFF/ON
Parachute
Climbing Gloves
Pitchers Mitt Option name has a small typo: the official name of the item is Pitcher's Mitt, which uses an apostrophe.
Spring Shoes
Spike Shoes
Spectacles
Crysknife
Vlad's Amulet
Kapala
Hedjet
Udjat Eye
Book of Dead Option name is "Book of Dead" instead of the official name "Book of the Dead".
The string key for the Book of the Dead item name is IDS_JOURNAL_BOOKOFDEAD, which also omits a word.
Ankh
Paste
Equipped Item None None
Cape
Jetpack
Vlad's Wings
Vlad's Wings option name appears to give an early name of the Vlad's Cape item.
The string key for the Vlad's Cape item name is IDS_JOURNAL_VLADSWINGS, which is another source of the early name.
Held Item None None
Rock
Shotgun
Mattock
Webgun
Machete
Teleporter
Scepter
Camera
Freeze Ray
Laser Gun
Shield
Laser Gun option name appears to give an early name of the Plasma Cannon item.
The string key for the Plasma Cannon item name is IDS_JOURNAL_LASERGUN, which confirms what the early name was for.

HIDDEN CHARACTERS

SpelunkyHD_debug_menu_4.png

The fourth and final page of the debug menu. This page allows locking or unlocking the hidden characters found throughout the game. All options in this page use ON/OFF toggles; this information is not in the below table to make it easier to read. All options initially say OFF, but hovering over them will update the message based on the save file. Each option will feature a character description to help with identifying which option controls the status of which character. Notably, this menu gives previously-unknown official names of some of the characters.

Option Character Description
Yang The character temporarily played as in the tutorial, and unlocked by defeating King Yama and getting the hard ending, who's primary color is white.
This is the only character officially named in the game itself outside of this debug menu.
Meat Boy The character unlocked in the Worm, who's primary color is pink. This character's defining feature is being a Spelunky-styled version of Meat Boy.
This character is a crossover with Super Meat Boy.
Hardhat A character randomly unlocked in any of the four main areas, who's primary color is yellow. This character wears a yellow hard hat as defining feature.
This character would eventually gain the official name Tina Flan in Spelunky 2.
Aztec The character unlocked by defeating Olmec and getting the normal ending, who's primary color is brown. This character wears a jaguar hood as a defining feature.
Pirate A character randomly unlocked in any of the four main areas, who's primary color is purple. This character wears a purple bandana with an anchor design and an eyepatch as defining features.
In Spelunky 2, Margaret Tunnel appears to be based on or is this character.
Black The character unlocked in the Haunted Castle, who's primary color is black. This character wears a black top hat and suit as defining features.
This character would eventually gain the official name Van Horsing in Spelunky 2.
Bearguy A character randomly unlocked in any of the four main areas, who's primary color is cyan. This character wears a cyan bear hood as a defining feature.
Mariachi A character randomly unlocked in any of the four main areas, who's primary color is lime. This character wears a lime sombrero as a defining feature.
DLC Pack This option controls the unlock status of all eight of the characters originally part of the Spelunky: Explorers DLC for the Xbox LIVE Arcade version.
In the Windows version, these characters are naturally integrated into the game instead of bought as DLC.
The names of the characters controlled by this option, sourced from the Xbox store page for the DLC, are Eskimo, Robot, Viking, Round Girl, Round Boy, Cyclops, Ninja, and Golden Monk.