mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-19 21:03:42 -07:00
generate RandomizerRegion enum, process files in deterministic order
This commit is contained in:
parent
cd71c102f9
commit
44e28a9cf9
6 changed files with 58 additions and 782 deletions
|
@ -125,6 +125,7 @@ file(GLOB_RECURSE soh__ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "soh/*.c" "soh/*.cp
|
|||
|
||||
# Add specific files that don't match the pattern
|
||||
list(APPEND soh__ ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/randomizer/generated/regions.cpp)
|
||||
list(APPEND soh__ ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/randomizer/generated/regions.h)
|
||||
list(APPEND soh__ ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/savestates_extern.inc)
|
||||
list(APPEND soh__ ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/speechsynthesizer/DarwinSpeechSynthesizer.mm)
|
||||
|
||||
|
@ -216,6 +217,7 @@ source_group("src\\overlays\\misc" REGULAR_EXPRESSION "src/overlays/misc/*")
|
|||
find_package(Python3 COMPONENTS Interpreter)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/randomizer/generated/regions.cpp
|
||||
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/randomizer/generated/regions.h
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/compile_logic.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/soh/Enhancements/randomizer/logic/dungeons/bottom_of_the_well.s
|
||||
|
|
|
@ -62,6 +62,14 @@ void RegionTable_Init_Generated() {
|
|||
with open(dirname + "/regions.cpp", "w", encoding="ascii") as f:
|
||||
for s in result:
|
||||
f.write(s)
|
||||
with open(dirname + "/regions.h", "w", encoding="ascii") as f:
|
||||
f.write("#pragma once\n")
|
||||
f.write("typedef enum {\n")
|
||||
f.write(f" RR_NONE,\n")
|
||||
for rr in RRs:
|
||||
f.write(f" {rr.name},\n")
|
||||
f.write(f" RR_MAX,\n")
|
||||
f.write("} RandomizerRegion;\n")
|
||||
|
||||
def compile_rr(self, rr, ast):
|
||||
result = []
|
||||
|
@ -285,47 +293,51 @@ ctxFUNC = {
|
|||
|
||||
def main():
|
||||
RRs = []
|
||||
for root, dirs, files in os.walk(argv[2]):
|
||||
for file in files:
|
||||
active_rr = None
|
||||
buf = ""
|
||||
pcount = 0
|
||||
for line in open(os.path.join(root, file), "r", encoding="ascii"):
|
||||
line = line.strip()
|
||||
if line.startswith("def "):
|
||||
if pcount != 0:
|
||||
print("error parsing", line)
|
||||
defline = line.split()
|
||||
active_rr = RR(*defline[1:])
|
||||
RRs.append(active_rr)
|
||||
buf = ""
|
||||
pcount = 0
|
||||
continue
|
||||
if active_rr and not active_rr.ui_name:
|
||||
active_rr.ui_name = line
|
||||
continue
|
||||
if not active_rr or line.startswith("//"):
|
||||
continue
|
||||
pcount += line.count('(') - line.count(')')
|
||||
buf += " "
|
||||
buf += line
|
||||
files = []
|
||||
for root, dirs, names in os.walk(argv[2]):
|
||||
for name in names:
|
||||
files.append(os.path.join(root, name))
|
||||
files.sort(key=lambda f: ((2 if "dungeons" in f else 1 if "overworld" in f else 0), f))
|
||||
for file in files:
|
||||
active_rr = None
|
||||
buf = ""
|
||||
pcount = 0
|
||||
for line in open(file, "r", encoding="ascii"):
|
||||
line = line.strip()
|
||||
if line.startswith("def "):
|
||||
if pcount != 0:
|
||||
continue
|
||||
if not buf or buf.isspace():
|
||||
continue
|
||||
try:
|
||||
thing, code = buf.split(None, 1)
|
||||
except:
|
||||
print("failed to parse line", repr(buf))
|
||||
continue
|
||||
if thing.startswith("RR_"):
|
||||
active_rr.exits.append((thing, parse(code)))
|
||||
elif thing.startswith("RC_"):
|
||||
active_rr.checks.append((thing, parse(code)))
|
||||
else:
|
||||
LOGIC.add(thing)
|
||||
active_rr.events.append((thing, parse(code)))
|
||||
print("error parsing", line)
|
||||
defline = line.split()
|
||||
active_rr = RR(*defline[1:])
|
||||
RRs.append(active_rr)
|
||||
buf = ""
|
||||
pcount = 0
|
||||
continue
|
||||
if active_rr and not active_rr.ui_name:
|
||||
active_rr.ui_name = line
|
||||
continue
|
||||
if not active_rr or line.startswith("//"):
|
||||
continue
|
||||
pcount += line.count('(') - line.count(')')
|
||||
buf += " "
|
||||
buf += line
|
||||
if pcount != 0:
|
||||
continue
|
||||
if not buf or buf.isspace():
|
||||
continue
|
||||
try:
|
||||
thing, code = buf.split(None, 1)
|
||||
except:
|
||||
print("failed to parse line", repr(buf))
|
||||
continue
|
||||
if thing.startswith("RR_"):
|
||||
active_rr.exits.append((thing, parse(code)))
|
||||
elif thing.startswith("RC_"):
|
||||
active_rr.checks.append((thing, parse(code)))
|
||||
else:
|
||||
LOGIC.add(thing)
|
||||
active_rr.events.append((thing, parse(code)))
|
||||
buf = ""
|
||||
|
||||
generator = { "cpp": Cpp }[argv[1]]()
|
||||
generator.generate_rr(argv[3], RRs)
|
||||
|
|
|
@ -685,9 +685,9 @@ void LookForExternalArea(Region* currentRegion, std::set<Region*>& alreadyChecke
|
|||
|
||||
void SetAreas() {
|
||||
auto ctx = Rando::Context::GetInstance();
|
||||
// RANDOTODO give entrances an enum like RandomizerCheck, the give them all areas here,
|
||||
// RANDOTODO give entrances an enum like RandomizerCheck, then give them all areas here,
|
||||
// then use those areas to not need to recursivly find ItemLocation areas when an identifying entrance's area
|
||||
for (int regionType = 0; regionType < RR_MARKER_AREAS_END; regionType++) {
|
||||
for (int regionType = 0; regionType < RR_MAX; regionType++) {
|
||||
Region* region = &areaTable[regionType];
|
||||
std::set<RandomizerArea> areas = region->GetAllAreas();
|
||||
std::set<Region*> regionsToSet = { region };
|
||||
|
|
|
@ -787,7 +787,7 @@ void RegionTable_Init() {
|
|||
RegionTable_Init_Generated();
|
||||
|
||||
// Set parent regions
|
||||
for (uint32_t i = RR_ROOT; i <= RR_GANONS_CASTLE; i++) {
|
||||
for (uint32_t i = RR_ROOT; i < RR_MAX; i++) {
|
||||
for (LocationAccess& locPair : areaTable[i].locations) {
|
||||
RandomizerCheck location = locPair.GetLocation();
|
||||
Rando::Context::GetInstance()->GetItemLocation(location)->SetParentRegion((RandomizerRegion)i);
|
||||
|
|
|
@ -28,8 +28,6 @@ enum class GlitchDifficulty {
|
|||
|
||||
class Logic {
|
||||
public:
|
||||
bool noVariable = false;
|
||||
|
||||
// Mask Quest
|
||||
bool CanBorrowMasks = false;
|
||||
bool BorrowSkullMask = false;
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
#include <stdint.h>
|
||||
#include "z64item.h"
|
||||
|
||||
#include "./generated/regions.h"
|
||||
|
||||
#define MAX_TRICK_NAME_SIZE 50
|
||||
|
||||
#define TWO_ACTOR_PARAMS(a, b) ((((a)&0xFFFF) << 16) | ((b)&0xFFFF))
|
||||
|
@ -357,744 +359,6 @@ typedef enum {
|
|||
RCSHOW_SAVED,
|
||||
} RandomizerCheckStatus;
|
||||
|
||||
typedef enum {
|
||||
RR_NONE,
|
||||
RR_ROOT,
|
||||
RR_ROOT_EXITS,
|
||||
RR_CHILD_SPAWN,
|
||||
RR_ADULT_SPAWN,
|
||||
RR_MINUET_OF_FOREST_WARP,
|
||||
RR_BOLERO_OF_FIRE_WARP,
|
||||
RR_SERENADE_OF_WATER_WARP,
|
||||
RR_REQUIEM_OF_SPIRIT_WARP,
|
||||
RR_NOCTURNE_OF_SHADOW_WARP,
|
||||
RR_PRELUDE_OF_LIGHT_WARP,
|
||||
RR_KOKIRI_FOREST,
|
||||
RR_KF_LINKS_HOUSE,
|
||||
RR_KF_MIDOS_HOUSE,
|
||||
RR_KF_SARIAS_HOUSE,
|
||||
RR_KF_HOUSE_OF_TWINS,
|
||||
RR_KF_KNOW_IT_ALL_HOUSE,
|
||||
RR_KF_KOKIRI_SHOP,
|
||||
RR_KF_OUTSIDE_DEKU_TREE,
|
||||
RR_KF_STORMS_GROTTO,
|
||||
RR_THE_LOST_WOODS,
|
||||
RR_LW_BRIDGE_FROM_FOREST,
|
||||
RR_LW_BRIDGE,
|
||||
RR_LW_FOREST_EXIT,
|
||||
RR_LW_BEYOND_MIDO,
|
||||
RR_LW_NEAR_SHORTCUTS_GROTTO,
|
||||
RR_DEKU_THEATER,
|
||||
RR_LW_SCRUBS_GROTTO,
|
||||
RR_SFM_ENTRYWAY,
|
||||
RR_SACRED_FOREST_MEADOW,
|
||||
RR_SFM_WOLFOS_GROTTO,
|
||||
RR_SFM_FAIRY_GROTTO,
|
||||
RR_SFM_STORMS_GROTTO,
|
||||
RR_HYRULE_FIELD,
|
||||
RR_HF_SOUTHEAST_GROTTO,
|
||||
RR_HF_OPEN_GROTTO,
|
||||
RR_HF_INSIDE_FENCE_GROTTO,
|
||||
RR_HF_COW_GROTTO,
|
||||
RR_HF_COW_GROTTO_BEHIND_WEBS,
|
||||
RR_HF_NEAR_MARKET_GROTTO,
|
||||
RR_HF_FAIRY_GROTTO,
|
||||
RR_HF_NEAR_KAK_GROTTO,
|
||||
RR_HF_TEKTITE_GROTTO,
|
||||
RR_LAKE_HYLIA,
|
||||
RR_LH_FROM_SHORTCUT,
|
||||
RR_LH_FROM_WATER_TEMPLE,
|
||||
RR_LH_FISHING_ISLAND,
|
||||
RR_LH_OWL_FLIGHT,
|
||||
RR_LH_LAB,
|
||||
RR_LH_FISHING_POND,
|
||||
RR_LH_GROTTO,
|
||||
RR_GERUDO_VALLEY,
|
||||
RR_GV_UPPER_STREAM,
|
||||
RR_GV_LOWER_STREAM,
|
||||
RR_GV_GROTTO_LEDGE,
|
||||
RR_GV_CRATE_LEDGE,
|
||||
RR_GV_OCTOROK_GROTTO,
|
||||
RR_GV_FORTRESS_SIDE,
|
||||
RR_GV_CARPENTER_TENT,
|
||||
RR_GV_STORMS_GROTTO,
|
||||
RR_GF_OUTSKIRTS,
|
||||
RR_GF_NEAR_GROTTO,
|
||||
RR_GF_OUTSIDE_GTG,
|
||||
RR_GF_TO_GTG,
|
||||
RR_GF_EXITING_GTG,
|
||||
RR_GF_ABOVE_GTG,
|
||||
RR_GF_BOTTOM_OF_LOWER_VINES,
|
||||
RR_GF_TOP_OF_LOWER_VINES,
|
||||
RR_GF_NEAR_GS,
|
||||
RR_GF_SLOPED_ROOF,
|
||||
RR_GF_BOTTOM_OF_UPPER_VINES,
|
||||
RR_GF_TOP_OF_UPPER_VINES,
|
||||
RR_GF_NEAR_CHEST,
|
||||
RR_GF_LONG_ROOF,
|
||||
RR_GF_BELOW_GS,
|
||||
RR_GF_BELOW_CHEST,
|
||||
RR_GF_HBA_RANGE,
|
||||
RR_GF_ABOVE_JAIL,
|
||||
RR_GF_JAIL_WINDOW,
|
||||
RR_GF_OUTSIDE_GATE,
|
||||
RR_GF_STORMS_GROTTO,
|
||||
RR_TH_1_TORCH_CELL,
|
||||
RR_TH_DOUBLE_CELL,
|
||||
RR_TH_DEAD_END_CELL,
|
||||
RR_TH_STEEP_SLOPE_CELL,
|
||||
RR_TH_KITCHEN_CORRIDOR,
|
||||
RR_TH_KITCHEN_MAIN,
|
||||
RR_TH_KITCHEN_TOP,
|
||||
RR_TH_BREAK_ROOM,
|
||||
RR_TH_BREAK_ROOM_CORRIDOR,
|
||||
RR_WASTELAND_NEAR_FORTRESS,
|
||||
RR_HAUNTED_WASTELAND,
|
||||
RR_WASTELAND_NEAR_COLOSSUS,
|
||||
RR_DESERT_COLOSSUS,
|
||||
RR_DESERT_COLOSSUS_OASIS,
|
||||
RR_DESERT_COLOSSUS_OUTSIDE_TEMPLE,
|
||||
RR_COLOSSUS_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_COLOSSUS_GROTTO,
|
||||
RR_MARKET_ENTRANCE,
|
||||
RR_THE_MARKET,
|
||||
RR_MARKET_GUARD_HOUSE,
|
||||
RR_MARKET_BAZAAR,
|
||||
RR_MARKET_MASK_SHOP,
|
||||
RR_MARKET_SHOOTING_GALLERY,
|
||||
RR_MARKET_BOMBCHU_BOWLING,
|
||||
RR_MARKET_TREASURE_CHEST_GAME,
|
||||
RR_MARKET_POTION_SHOP,
|
||||
RR_MARKET_BACK_ALLEY,
|
||||
RR_MARKET_BOMBCHU_SHOP,
|
||||
RR_MARKET_DOG_LADY_HOUSE,
|
||||
RR_MARKET_MAN_IN_GREEN_HOUSE,
|
||||
RR_TOT_ENTRANCE,
|
||||
RR_TEMPLE_OF_TIME,
|
||||
RR_TOT_BEYOND_DOOR_OF_TIME,
|
||||
RR_CASTLE_GROUNDS,
|
||||
RR_CASTLE_GROUNDS_FROM_GANONS_CASTLE,
|
||||
RR_HYRULE_CASTLE_GROUNDS,
|
||||
RR_HC_GARDEN,
|
||||
RR_HC_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_HC_STORMS_GROTTO,
|
||||
RR_HC_STORMS_GROTTO_BEHIND_WALLS,
|
||||
RR_GANONS_CASTLE_GROUNDS,
|
||||
RR_OGC_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_GANONS_CASTLE_LEDGE,
|
||||
RR_KAKARIKO_VILLAGE,
|
||||
RR_KAK_CARPENTER_BOSS_HOUSE,
|
||||
RR_KAK_HOUSE_OF_SKULLTULA,
|
||||
RR_KAK_IMPAS_HOUSE,
|
||||
RR_KAK_IMPAS_LEDGE,
|
||||
RR_KAK_IMPAS_HOUSE_BACK,
|
||||
RR_KAK_WINDMILL,
|
||||
RR_KAK_BAZAAR,
|
||||
RR_KAK_SHOOTING_GALLERY,
|
||||
RR_KAK_POTION_SHOP_FRONT,
|
||||
RR_KAK_POTION_SHOP_BACK,
|
||||
RR_KAK_WATCHTOWER,
|
||||
RR_KAK_ROOFTOP,
|
||||
RR_KAK_IMPAS_ROOFTOP,
|
||||
RR_KAK_BEHIND_GATE,
|
||||
RR_KAK_BACKYARD,
|
||||
RR_KAK_WELL,
|
||||
RR_KAK_ODD_POTION_BUILDING,
|
||||
RR_KAK_REDEAD_GROTTO,
|
||||
RR_KAK_OPEN_GROTTO,
|
||||
RR_THE_GRAVEYARD,
|
||||
RR_GRAVEYARD_DAMPES_GRAVE,
|
||||
RR_GRAVEYARD_DAMPES_HOUSE,
|
||||
RR_GRAVEYARD_SHIELD_GRAVE,
|
||||
RR_GRAVEYARD_SHIELD_GRAVE_BACK,
|
||||
RR_GRAVEYARD_COMPOSERS_GRAVE,
|
||||
RR_GRAVEYARD_HEART_PIECE_GRAVE,
|
||||
RR_GRAVEYARD_WARP_PAD_REGION,
|
||||
RR_DEATH_MOUNTAIN_TRAIL,
|
||||
RR_DEATH_MOUNTAIN_SUMMIT,
|
||||
RR_DMT_OWL_FLIGHT,
|
||||
RR_DMT_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_DMT_COW_GROTTO,
|
||||
RR_DMT_STORMS_GROTTO,
|
||||
RR_GORON_CITY,
|
||||
RR_GC_MEDIGORON,
|
||||
RR_GC_WOODS_WARP,
|
||||
RR_GC_DARUNIAS_CHAMBER,
|
||||
RR_GC_GROTTO_PLATFORM,
|
||||
RR_GC_SHOP,
|
||||
RR_GC_GROTTO,
|
||||
RR_DMC_UPPER_LOCAL,
|
||||
RR_DMC_CENTRAL_LOCAL,
|
||||
RR_DMC_LOWER_LOCAL,
|
||||
RR_DMC_LOWER_NEARBY,
|
||||
RR_DMC_UPPER_NEARBY,
|
||||
RR_DMC_CENTRAL_NEARBY,
|
||||
RR_DMC_LADDER_AREA_NEARBY,
|
||||
RR_DMC_UPPER_GROTTO,
|
||||
RR_DMC_HAMMER_GROTTO,
|
||||
RR_DMC_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_DMC_DISTANT_PLATFORM,
|
||||
RR_ZR_FRONT,
|
||||
RR_ZORAS_RIVER,
|
||||
RR_ZR_FROM_SHORTCUT,
|
||||
RR_ZR_BEHIND_WATERFALL,
|
||||
RR_ZR_OPEN_GROTTO,
|
||||
RR_ZR_FAIRY_GROTTO,
|
||||
RR_ZR_STORMS_GROTTO,
|
||||
RR_ZORAS_DOMAIN,
|
||||
RR_ZORAS_DOMAIN_ISLAND,
|
||||
RR_ZD_BEHIND_KING_ZORA,
|
||||
RR_ZD_SHOP,
|
||||
RR_ZD_STORMS_GROTTO,
|
||||
RR_ZORAS_FOUNTAIN,
|
||||
RR_ZF_ICEBERGS,
|
||||
RR_ZF_LAKEBED,
|
||||
RR_ZF_LEDGE,
|
||||
RR_ZF_HIDDEN_CAVE,
|
||||
RR_ZF_HIDDEN_LEDGE,
|
||||
RR_ZF_ROCK,
|
||||
RR_ZF_GREAT_FAIRY_FOUNTAIN,
|
||||
RR_LON_LON_RANCH,
|
||||
RR_LLR_TALONS_HOUSE,
|
||||
RR_LLR_STABLES,
|
||||
RR_LLR_TOWER,
|
||||
RR_LLR_GROTTO,
|
||||
|
||||
RR_DEKU_TREE_ENTRYWAY,
|
||||
RR_DODONGOS_CAVERN_ENTRYWAY,
|
||||
RR_JABU_JABUS_BELLY_ENTRYWAY,
|
||||
RR_FOREST_TEMPLE_ENTRYWAY,
|
||||
RR_FIRE_TEMPLE_ENTRYWAY,
|
||||
RR_WATER_TEMPLE_ENTRYWAY,
|
||||
RR_SPIRIT_TEMPLE_ENTRYWAY,
|
||||
RR_SHADOW_TEMPLE_ENTRYWAY,
|
||||
RR_BOTTOM_OF_THE_WELL_ENTRYWAY,
|
||||
RR_ICE_CAVERN_ENTRYWAY,
|
||||
RR_GERUDO_TRAINING_GROUND_ENTRYWAY,
|
||||
RR_GANONS_CASTLE_ENTRYWAY,
|
||||
|
||||
RR_DEKU_TREE_LOBBY,
|
||||
RR_DEKU_TREE_2F_MIDDLE_ROOM,
|
||||
RR_DEKU_TREE_SLINGSHOT_ROOM,
|
||||
RR_DEKU_TREE_COMPASS_ROOM,
|
||||
RR_DEKU_TREE_BASEMENT_LOWER,
|
||||
RR_DEKU_TREE_BASEMENT_SCRUB_ROOM,
|
||||
RR_DEKU_TREE_BASEMENT_WATER_ROOM_FRONT,
|
||||
RR_DEKU_TREE_BASEMENT_WATER_ROOM_BACK,
|
||||
RR_DEKU_TREE_BASEMENT_TORCH_ROOM,
|
||||
RR_DEKU_TREE_BASEMENT_BACK_LOBBY,
|
||||
RR_DEKU_TREE_BASEMENT_BACK_ROOM,
|
||||
RR_DEKU_TREE_BASEMENT_UPPER,
|
||||
RR_DEKU_TREE_OUTSIDE_BOSS_ROOM,
|
||||
|
||||
RR_DEKU_TREE_MQ_1F,
|
||||
RR_DEKU_TREE_MQ_2F,
|
||||
RR_DEKU_TREE_MQ_3F,
|
||||
RR_DEKU_TREE_MQ_EYE_TARGET_ROOM,
|
||||
RR_DEKU_TREE_MQ_COMPASS_ROOM,
|
||||
RR_DEKU_TREE_MQ_PAST_BOULDER_VINES,
|
||||
RR_DEKU_TREE_MQ_BASEMENT,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_SOUTHEAST_ROOM,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_FRONT,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_BACK,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_SOUTHWEST_ROOM,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_GRAVE_ROOM,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_BACK_ROOM,
|
||||
RR_DEKU_TREE_MQ_BASEMENT_LEDGE,
|
||||
RR_DEKU_TREE_MQ_OUTSIDE_BOSS_ROOM,
|
||||
|
||||
RR_DEKU_TREE_BOSS_ENTRYWAY,
|
||||
RR_DEKU_TREE_BOSS_EXIT,
|
||||
RR_DEKU_TREE_BOSS_ROOM,
|
||||
|
||||
RR_DODONGOS_CAVERN_BEGINNING,
|
||||
RR_DODONGOS_CAVERN_LOBBY,
|
||||
RR_DODONGOS_CAVERN_LOBBY_SWITCH,
|
||||
RR_DODONGOS_CAVERN_SE_CORRIDOR,
|
||||
RR_DODONGOS_CAVERN_SE_ROOM,
|
||||
RR_DODONGOS_CAVERN_NEAR_LOWER_LIZALFOS,
|
||||
RR_DODONGOS_CAVERN_LOWER_LIZALFOS,
|
||||
RR_DODONGOS_CAVERN_DODONGO_ROOM,
|
||||
RR_DODONGOS_CAVERN_NEAR_DODONGO_ROOM,
|
||||
RR_DODONGOS_CAVERN_STAIRS_LOWER,
|
||||
RR_DODONGOS_CAVERN_STAIRS_UPPER,
|
||||
RR_DODONGOS_CAVERN_COMPASS_ROOM,
|
||||
RR_DODONGOS_CAVERN_ARMOS_ROOM,
|
||||
RR_DODONGOS_CAVERN_BOMB_ROOM_LOWER,
|
||||
RR_DODONGOS_CAVERN_2F_SIDE_ROOM,
|
||||
RR_DODONGOS_CAVERN_FIRST_SLINGSHOT_ROOM,
|
||||
RR_DODONGOS_CAVERN_UPPER_LIZALFOS,
|
||||
RR_DODONGOS_CAVERN_SECOND_SLINGSHOT_ROOM,
|
||||
RR_DODONGOS_CAVERN_BOMB_ROOM_UPPER,
|
||||
RR_DODONGOS_CAVERN_FAR_BRIDGE,
|
||||
RR_DODONGOS_CAVERN_BOSS_AREA,
|
||||
RR_DODONGOS_CAVERN_BACK_ROOM,
|
||||
|
||||
RR_DODONGOS_CAVERN_MQ_BEGINNING,
|
||||
RR_DODONGOS_CAVERN_MQ_LOBBY,
|
||||
RR_DODONGOS_CAVERN_MQ_GOSSIP_STONE,
|
||||
RR_DODONGOS_CAVERN_MQ_MOUTH_SIDE_BRIDGE,
|
||||
RR_DODONGOS_CAVERN_MQ_STAIRS_PAST_MUD_WALL,
|
||||
RR_DODONGOS_CAVERN_MQ_STAIRS_LOWER,
|
||||
RR_DODONGOS_CAVERN_MQ_STAIRS_UPPER,
|
||||
RR_DODONGOS_CAVERN_MQ_STAIRS_PAST_BIG_SKULLTULAS,
|
||||
RR_DODONGOS_CAVERN_MQ_DODONGO_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_LOWER,
|
||||
RR_DODONGOS_CAVERN_MQ_BIG_BLOCK_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_LARVAE_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_UPPER_LIZALFOS,
|
||||
RR_DODONGOS_CAVERN_MQ_TWO_FIRES_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_UPPER,
|
||||
RR_DODONGOS_CAVERN_MQ_LOWER_RIGHT_SIDE,
|
||||
RR_DODONGOS_CAVERN_MQ_LOWER_LIZALFOS,
|
||||
RR_DODONGOS_CAVERN_MQ_POES_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_MAD_SCRUB_ROOM,
|
||||
RR_DODONGOS_CAVERN_MQ_BEHIND_MOUTH,
|
||||
RR_DODONGOS_CAVERN_MQ_BACK_BEHIND_FIRE,
|
||||
RR_DODONGOS_CAVERN_MQ_BACK_SWITCH_GRAVE,
|
||||
|
||||
RR_DODONGOS_CAVERN_BOSS_ENTRYWAY,
|
||||
RR_DODONGOS_CAVERN_BOSS_EXIT,
|
||||
RR_DODONGOS_CAVERN_BOSS_ROOM,
|
||||
|
||||
RR_JABU_JABUS_BELLY_BEGINNING,
|
||||
RR_JABU_JABUS_BELLY_MAIN,
|
||||
RR_JABU_JABUS_BELLY_B1_NORTH,
|
||||
RR_JABU_JABUS_BELLY_WATER_SWITCH_ROOM_SOUTH,
|
||||
RR_JABU_JABUS_BELLY_WATER_SWITCH_ROOM_LEDGE,
|
||||
RR_JABU_JABUS_BELLY_COMPASS_ROOM,
|
||||
RR_JABU_JABUS_BELLY_BLUE_TENTACLE,
|
||||
RR_JABU_JABUS_BELLY_GREEN_TENTACLE,
|
||||
RR_JABU_JABUS_BELLY_BIGOCTO_LEDGE,
|
||||
RR_JABU_JABUS_BELLY_ABOVE_BIGOCTO,
|
||||
RR_JABU_JABUS_BELLY_LIFT_UPPER,
|
||||
RR_JABU_JABUS_BELLY_NEAR_BOSS_ROOM,
|
||||
|
||||
RR_JABU_JABUS_BELLY_MQ_BEGINNING,
|
||||
RR_JABU_JABUS_BELLY_MQ_LIFT_ROOM,
|
||||
RR_JABU_JABUS_BELLY_MQ_LIFT_ROOM_EAST_LEDGE,
|
||||
RR_JABU_JABUS_BELLY_MQ_UNDERWATER_ALCOVE,
|
||||
RR_JABU_JABUS_BELLY_MQ_HOLES_ROOM,
|
||||
RR_JABU_JABUS_BELLY_MQ_WATER_SWITCH_ROOM,
|
||||
RR_JABU_JABUS_BELLY_MQ_FORKED_CORRIDOR,
|
||||
RR_JABU_JABUS_BELLY_MQ_WEST_FORKED_ROOMS,
|
||||
RR_JABU_JABUS_BELLY_MQ_INVISIBLE_KEESE_ROOM,
|
||||
RR_JABU_JABUS_BELLY_MQ_PAST_OCTO,
|
||||
RR_JABU_JABUS_BELLY_MQ_EAST_ROOM,
|
||||
|
||||
RR_JABU_JABUS_BELLY_BOSS_ENTRYWAY,
|
||||
RR_JABU_JABUS_BELLY_BOSS_EXIT,
|
||||
RR_JABU_JABUS_BELLY_BOSS_ROOM,
|
||||
|
||||
RR_FOREST_TEMPLE_FIRST_ROOM,
|
||||
RR_FOREST_TEMPLE_SOUTH_CORRIDOR,
|
||||
RR_FOREST_TEMPLE_LOBBY,
|
||||
RR_FOREST_TEMPLE_NORTH_CORRIDOR,
|
||||
RR_FOREST_TEMPLE_LOWER_STALFOS,
|
||||
RR_FOREST_TEMPLE_NW_OUTDOORS_LOWER,
|
||||
RR_FOREST_TEMPLE_NW_OUTDOORS_UPPER,
|
||||
RR_FOREST_TEMPLE_NE_OUTDOORS_LOWER,
|
||||
RR_FOREST_TEMPLE_NE_OUTDOORS_UPPER,
|
||||
RR_FOREST_TEMPLE_MAP_ROOM,
|
||||
RR_FOREST_TEMPLE_SEWER,
|
||||
RR_FOREST_TEMPLE_BELOW_BOSS_KEY_CHEST,
|
||||
RR_FOREST_TEMPLE_FLOORMASTER_ROOM,
|
||||
RR_FOREST_TEMPLE_WEST_CORRIDOR,
|
||||
RR_FOREST_TEMPLE_BLOCK_PUSH_ROOM,
|
||||
RR_FOREST_TEMPLE_NW_CORRIDOR_TWISTED,
|
||||
RR_FOREST_TEMPLE_NW_CORRIDOR_STRAIGHTENED,
|
||||
RR_FOREST_TEMPLE_RED_POE_ROOM,
|
||||
RR_FOREST_TEMPLE_UPPER_STALFOS,
|
||||
RR_FOREST_TEMPLE_BLUE_POE_ROOM,
|
||||
RR_FOREST_TEMPLE_NE_CORRIDOR_STRAIGHTENED,
|
||||
RR_FOREST_TEMPLE_NE_CORRIDOR_TWISTED,
|
||||
RR_FOREST_TEMPLE_FROZEN_EYE_ROOM,
|
||||
RR_FOREST_TEMPLE_FALLING_ROOM,
|
||||
RR_FOREST_TEMPLE_GREEN_POE_ROOM,
|
||||
RR_FOREST_TEMPLE_EAST_CORRIDOR,
|
||||
RR_FOREST_TEMPLE_BOSS_REGION,
|
||||
|
||||
RR_FOREST_TEMPLE_MQ_LOBBY,
|
||||
RR_FOREST_TEMPLE_MQ_CENTRAL_AREA,
|
||||
RR_FOREST_TEMPLE_MQ_WOLFOS_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_LOWER_BLOCK_PUZZLE,
|
||||
RR_FOREST_TEMPLE_MQ_MIDDLE_BLOCK_PUZZLE,
|
||||
RR_FOREST_TEMPLE_MQ_UPPER_BLOCK_PUZZLE,
|
||||
RR_FOREST_TEMPLE_MQ_STRAIGHT_HALLWAY,
|
||||
RR_FOREST_TEMPLE_MQ_FLOORMASTER_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_OUTDOOR_LEDGE,
|
||||
RR_FOREST_TEMPLE_MQ_NW_OUTDOORS,
|
||||
RR_FOREST_TEMPLE_MQ_NE_OUTDOORS,
|
||||
RR_FOREST_TEMPLE_MQ_OUTDOORS_TOP_LEDGES,
|
||||
RR_FOREST_TEMPLE_MQ_NE_OUTDOORS_LEDGE,
|
||||
RR_FOREST_TEMPLE_MQ_JOELLE_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_3_STALFOS_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_BETH_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_TORCH_SHOT_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_FALLING_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_AMY_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_BASEMENT,
|
||||
RR_FOREST_TEMPLE_MQ_BASEMENT_POT_ROOM,
|
||||
RR_FOREST_TEMPLE_MQ_BOSS_REGION,
|
||||
|
||||
RR_FOREST_TEMPLE_BOSS_ENTRYWAY,
|
||||
RR_FOREST_TEMPLE_BOSS_ROOM,
|
||||
|
||||
RR_FIRE_TEMPLE_FIRST_ROOM,
|
||||
RR_FIRE_TEMPLE_NEAR_BOSS_ROOM,
|
||||
RR_FIRE_TEMPLE_LOOP_ENEMIES,
|
||||
RR_FIRE_TEMPLE_LOOP_TILES,
|
||||
RR_FIRE_TEMPLE_LOOP_FLARE_DANCER,
|
||||
RR_FIRE_TEMPLE_LOOP_HAMMER_SWITCH,
|
||||
RR_FIRE_TEMPLE_LOOP_GORON_ROOM,
|
||||
RR_FIRE_TEMPLE_LOOP_EXIT,
|
||||
RR_FIRE_TEMPLE_BIG_LAVA_ROOM,
|
||||
RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_GORON,
|
||||
RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_TILES,
|
||||
RR_FIRE_TEMPLE_BIG_LAVA_ROOM_SOUTH_GORON,
|
||||
RR_FIRE_TEMPLE_FIRE_PILLAR_ROOM,
|
||||
RR_FIRE_TEMPLE_SHORTCUT_ROOM,
|
||||
RR_FIRE_TEMPLE_SHORTCUT_CLIMB,
|
||||
RR_FIRE_TEMPLE_BOULDER_MAZE_LOWER,
|
||||
RR_FIRE_TEMPLE_BOULDER_MAZE_LOWER_SIDE_ROOM,
|
||||
RR_FIRE_TEMPLE_EAST_CENTRAL_ROOM,
|
||||
RR_FIRE_TEMPLE_FIRE_WALL_CHASE,
|
||||
RR_FIRE_TEMPLE_MAP_AREA,
|
||||
RR_FIRE_TEMPLE_BOULDER_MAZE_UPPER,
|
||||
RR_FIRE_TEMPLE_SCARECROW_ROOM,
|
||||
RR_FIRE_TEMPLE_EAST_PEAK,
|
||||
RR_FIRE_TEMPLE_CORRIDOR,
|
||||
RR_FIRE_TEMPLE_FIRE_MAZE_ROOM,
|
||||
RR_FIRE_TEMPLE_FIRE_MAZE_UPPER,
|
||||
RR_FIRE_TEMPLE_FIRE_MAZE_SIDE_ROOM,
|
||||
RR_FIRE_TEMPLE_WEST_CENTRAL_LOWER,
|
||||
RR_FIRE_TEMPLE_WEST_CENTRAL_UPPER,
|
||||
RR_FIRE_TEMPLE_LATE_FIRE_MAZE,
|
||||
RR_FIRE_TEMPLE_UPPER_FLARE_DANCER,
|
||||
RR_FIRE_TEMPLE_WEST_CLIMB,
|
||||
RR_FIRE_TEMPLE_WEST_PEAK,
|
||||
RR_FIRE_TEMPLE_HAMMER_RETURN_PATH,
|
||||
RR_FIRE_TEMPLE_ABOVE_FIRE_MAZE,
|
||||
|
||||
RR_FIRE_TEMPLE_MQ_FIRST_ROOM_LOWER,
|
||||
RR_FIRE_TEMPLE_MQ_FIRST_ROOM_UPPER,
|
||||
RR_FIRE_TEMPLE_MQ_MAP_ROOM_SOUTH,
|
||||
RR_FIRE_TEMPLE_MQ_STALFOS_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_IRON_KNUCKLE_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_LOWER_FLARE_DANCER,
|
||||
RR_FIRE_TEMPLE_MQ_MAP_ROOM_NORTH,
|
||||
RR_FIRE_TEMPLE_MQ_MAP_ROOM_CAGE,
|
||||
RR_FIRE_TEMPLE_MQ_NEAR_BOSS_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_NEAR_BOSS_ROOM_NORTH,
|
||||
RR_FIRE_TEMPLE_MQ_BIG_LAVA_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_TORCH_FIREWALL_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_ELEVATOR_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_BIG_TORCH_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_LOWER_MAZE,
|
||||
RR_FIRE_TEMPLE_MQ_LOWER_MAZE_CRATE_CAGE,
|
||||
RR_FIRE_TEMPLE_MQ_UPPER_MAZE,
|
||||
RR_FIRE_TEMPLE_MQ_UPPER_MAZE_BOX_CAGE,
|
||||
RR_FIRE_TEMPLE_MQ_MAZE_SHORTCUT,
|
||||
RR_FIRE_TEMPLE_MQ_MAZE_SHORTCUT_CAGE,
|
||||
RR_FIRE_TEMPLE_MQ_BURNING_BLOCK_CLIMB,
|
||||
RR_FIRE_TEMPLE_MQ_NARROW_PATH_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_HIGH_TORCH_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_SOUTH_FIRE_MAZE,
|
||||
RR_FIRE_TEMPLE_MQ_FIRE_MAZE_PLATFORMS,
|
||||
RR_FIRE_TEMPLE_MQ_NORTH_FIRE_MAZE,
|
||||
RR_FIRE_TEMPLE_MQ_WEST_FIRE_MAZE,
|
||||
RR_FIRE_TEMPLE_MQ_FIRE_MAZE_PAST_WALL,
|
||||
RR_FIRE_TEMPLE_MQ_UPPER_FLARE_DANCER,
|
||||
RR_FIRE_TEMPLE_MQ_SCARECROW_ROOM,
|
||||
RR_FIRE_TEMPLE_MQ_COLLAPSED_STAIRS,
|
||||
|
||||
RR_FIRE_TEMPLE_BOSS_ENTRYWAY,
|
||||
RR_FIRE_TEMPLE_BOSS_ROOM,
|
||||
|
||||
RR_WATER_TEMPLE_LOBBY,
|
||||
RR_WATER_TEMPLE_EAST_LOWER,
|
||||
RR_WATER_TEMPLE_MAP_ROOM,
|
||||
RR_WATER_TEMPLE_CRACKED_WALL,
|
||||
RR_WATER_TEMPLE_TORCH_ROOM,
|
||||
RR_WATER_TEMPLE_NORTH_LOWER,
|
||||
RR_WATER_TEMPLE_BOULDERS_LOWER,
|
||||
RR_WATER_TEMPLE_BLOCK_ROOM,
|
||||
RR_WATER_TEMPLE_JETS_ROOM,
|
||||
RR_WATER_TEMPLE_BOULDERS_UPPER,
|
||||
RR_WATER_TEMPLE_BOSS_KEY_ROOM,
|
||||
RR_WATER_TEMPLE_SOUTH_LOWER,
|
||||
RR_WATER_TEMPLE_WEST_LOWER,
|
||||
RR_WATER_TEMPLE_DRAGON_ROOM,
|
||||
RR_WATER_TEMPLE_CENTRAL_PILLAR_LOWER,
|
||||
RR_WATER_TEMPLE_CENTRAL_PILLAR_UPPER,
|
||||
RR_WATER_TEMPLE_CENTRAL_PILLAR_BASEMENT,
|
||||
RR_WATER_TEMPLE_EAST_MIDDLE,
|
||||
RR_WATER_TEMPLE_WEST_MIDDLE,
|
||||
RR_WATER_TEMPLE_HIGH_WATER,
|
||||
RR_WATER_TEMPLE_BLOCK_CORRIDOR,
|
||||
RR_WATER_TEMPLE_FALLING_PLATFORM_ROOM,
|
||||
RR_WATER_TEMPLE_DRAGON_PILLARS_ROOM,
|
||||
RR_WATER_TEMPLE_DARK_LINK_ROOM,
|
||||
RR_WATER_TEMPLE_LONGSHOT_ROOM,
|
||||
RR_WATER_TEMPLE_RIVER,
|
||||
RR_WATER_TEMPLE_PRE_BOSS_ROOM,
|
||||
|
||||
RR_WATER_TEMPLE_MQ_3F_SOUTH_LEDGE,
|
||||
RR_WATER_TEMPLE_MQ_MAIN,
|
||||
RR_WATER_TEMPLE_MQ_3F_CENTRAL,
|
||||
RR_WATER_TEMPLE_MQ_2F_CENTRAL,
|
||||
RR_WATER_TEMPLE_MQ_2F_CENTRAL_HIGH,
|
||||
RR_WATER_TEMPLE_MQ_HIGH_EMBLEM,
|
||||
RR_WATER_TEMPLE_MQ_3F_NORTH_LEDGE,
|
||||
RR_WATER_TEMPLE_MQ_BOSS_DOOR,
|
||||
RR_WATER_TEMPLE_MQ_EAST_TOWER,
|
||||
RR_WATER_TEMPLE_MQ_EAST_TOWER_1F_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_CENTRAL_PILLAR_1F,
|
||||
RR_WATER_TEMPLE_MQ_CENTRAL_PILLAR_2F,
|
||||
RR_WATER_TEMPLE_MQ_CENTRAL_PILLAR_HIGH,
|
||||
RR_WATER_TEMPLE_MQ_CENTRAL_PILLAR_B1,
|
||||
RR_WATER_TEMPLE_MQ_CENTRAL_PILLAR_B1_FINAL,
|
||||
RR_WATER_TEMPLE_MQ_BEHIND_BLUE_SWITCH_2F,
|
||||
RR_WATER_TEMPLE_MQ_BEHIND_BLUE_SWITCH_3F,
|
||||
RR_WATER_TEMPLE_MQ_STORAGE_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_LIZALFOS_HALLWAY,
|
||||
RR_WATER_TEMPLE_MQ_LIZALFOS_CAGE,
|
||||
RR_WATER_TEMPLE_MQ_3F_EAST_LEDGE,
|
||||
RR_WATER_TEMPLE_MQ_WATERFALL,
|
||||
RR_WATER_TEMPLE_MQ_STALFOS_PIT,
|
||||
RR_WATER_TEMPLE_MQ_STALFOS_PIT_POTS,
|
||||
RR_WATER_TEMPLE_MQ_STALFOS_PIT_UPPER,
|
||||
RR_WATER_TEMPLE_MQ_AFTER_DARK_LINK,
|
||||
RR_WATER_TEMPLE_MQ_RIVER_SKULL,
|
||||
RR_WATER_TEMPLE_MQ_RIVER_POTS,
|
||||
RR_WATER_TEMPLE_MQ_DRAGON_ROOM_DOOR,
|
||||
RR_WATER_TEMPLE_MQ_DRAGON_ROOM_TUNNEL,
|
||||
RR_WATER_TEMPLE_MQ_DRAGON_ROOM_ALCOVE,
|
||||
RR_WATER_TEMPLE_MQ_BOSS_KEY_ROOM_SWITCH,
|
||||
RR_WATER_TEMPLE_MQ_BOSS_KEY_ROOM_PIT,
|
||||
RR_WATER_TEMPLE_MQ_BOSS_KEY_ROOM_CHEST,
|
||||
RR_WATER_TEMPLE_MQ_B1_GATE_SWITCH,
|
||||
RR_WATER_TEMPLE_MQ_TRIANGLE_TORCH_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_TRIANGLE_TORCH_CAGE,
|
||||
RR_WATER_TEMPLE_MQ_CRATES_WHIRLPOOLS_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_SINGLE_STALFOS_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_4_TORCH_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_DODONGO_ROOM,
|
||||
RR_WATER_TEMPLE_MQ_CRATES_WHIRLPOOLS_CAGE,
|
||||
|
||||
RR_WATER_TEMPLE_BOSS_ENTRYWAY,
|
||||
RR_WATER_TEMPLE_BOSS_ROOM,
|
||||
|
||||
RR_SPIRIT_TEMPLE_LOBBY,
|
||||
RR_SPIRIT_TEMPLE_CHILD,
|
||||
RR_SPIRIT_TEMPLE_CHILD_CLIMB,
|
||||
RR_SPIRIT_TEMPLE_EARLY_ADULT,
|
||||
RR_SPIRIT_TEMPLE_CENTRAL_CHAMBER,
|
||||
RR_SPIRIT_TEMPLE_OUTDOOR_HANDS,
|
||||
RR_SPIRIT_TEMPLE_BEYOND_CENTRAL_LOCKED_DOOR,
|
||||
RR_SPIRIT_TEMPLE_BEYOND_FINAL_LOCKED_DOOR,
|
||||
RR_SPIRIT_TEMPLE_INSIDE_STATUE_HEAD,
|
||||
|
||||
RR_SPIRIT_TEMPLE_MQ_LOBBY,
|
||||
RR_SPIRIT_TEMPLE_MQ_1F_WEST,
|
||||
RR_SPIRIT_TEMPLE_MQ_1F_GIBDO_ROOM_NORTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_1F_GIBDO_ROOM_SOUTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_TURNTABLE_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_MAP_ROOM_NORTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_MAP_ROOM_SOUTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_WEST_1F_RUSTED_SWITCH,
|
||||
RR_SPIRIT_TEMPLE_MQ_UNDER_LIKE_LIKE,
|
||||
RR_SPIRIT_TEMPLE_MQ_BROKEN_WALL_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_STATUE_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_SUN_BLOCK_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_WEST_IRON_KNUCKLE,
|
||||
RR_SPIRIT_TEMPLE_MQ_SILVER_GAUNTLETS_HAND,
|
||||
RR_SPIRIT_TEMPLE_MQ_BIG_BLOCK_ROOM_SOUTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_BIG_BLOCK_ROOM_NORTH,
|
||||
RR_SPIRIT_TEMPLE_MQ_STATUE_ROOM_EAST,
|
||||
RR_SPIRIT_TEMPLE_MQ_THREE_SUNS_ROOM_2F,
|
||||
RR_SPIRIT_TEMPLE_MQ_THREE_SUNS_ROOM_1F,
|
||||
RR_SPIRIT_TEMPLE_MQ_1F_EAST,
|
||||
RR_SPIRIT_TEMPLE_MQ_LEEVER_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_SYMPHONY_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_AFTER_SYMPHONY_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_FOUR_BEAMOS_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_SOT_SUN_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_EAST_STAIRS_TO_HAND,
|
||||
RR_SPIRIT_TEMPLE_MQ_EAST_IRON_KNUCKLE,
|
||||
RR_SPIRIT_TEMPLE_MQ_MIRROR_SHIELD_HAND,
|
||||
RR_SPIRIT_TEMPLE_MQ_3F_GIBDO_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_BIG_WALL,
|
||||
RR_SPIRIT_TEMPLE_MQ_4F_CENTRAL,
|
||||
RR_SPIRIT_TEMPLE_MQ_NINE_CHAIRS_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_BIG_MIRROR_ROOM,
|
||||
RR_SPIRIT_TEMPLE_MQ_BIG_MIRROR_CAVE,
|
||||
RR_SPIRIT_TEMPLE_MQ_INSIDE_STATUE_HEAD,
|
||||
|
||||
RR_SPIRIT_TEMPLE_BOSS_ENTRYWAY,
|
||||
RR_SPIRIT_TEMPLE_BOSS_ROOM,
|
||||
|
||||
RR_SHADOW_TEMPLE_BEGINNING,
|
||||
RR_SHADOW_TEMPLE_FIRST_BEAMOS,
|
||||
RR_SHADOW_TEMPLE_HUGE_PIT,
|
||||
RR_SHADOW_TEMPLE_WIND_TUNNEL,
|
||||
RR_SHADOW_TEMPLE_BEYOND_BOAT,
|
||||
|
||||
RR_SHADOW_TEMPLE_MQ_ENTRYWAY,
|
||||
RR_SHADOW_TEMPLE_MQ_BEGINNING,
|
||||
RR_SHADOW_TEMPLE_MQ_SPINNER_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_DEAD_HAND_AREA,
|
||||
RR_SHADOW_TEMPLE_MQ_FIRST_BEAMOS,
|
||||
RR_SHADOW_TEMPLE_MQ_B2_SPINNING_BLADE_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_SHORTCUT_PATH,
|
||||
RR_SHADOW_TEMPLE_MQ_B2_TO_B3_CORRIDOR,
|
||||
RR_SHADOW_TEMPLE_MQ_UPPER_HUGE_PIT,
|
||||
RR_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_LOWER_HUGE_PIT,
|
||||
RR_SHADOW_TEMPLE_MQ_STONE_UMBRELLA_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_UPPER_STONE_UMBRELLA,
|
||||
RR_SHADOW_TEMPLE_MQ_FLOOR_SPIKES_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_STALFOS_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_WIND_TUNNEL,
|
||||
RR_SHADOW_TEMPLE_MQ_WIND_HINT_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_B4_GIBDO_ROOM,
|
||||
RR_SHADOW_TEMPLE_MQ_DOCK,
|
||||
RR_SHADOW_TEMPLE_MQ_BEYOND_BOAT,
|
||||
RR_SHADOW_TEMPLE_MQ_ACROSS_CHASM,
|
||||
RR_SHADOW_TEMPLE_MQ_BOSS_DOOR,
|
||||
RR_SHADOW_TEMPLE_MQ_INVISIBLE_MAZE,
|
||||
RR_SHADOW_TEMPLE_MQ_SPIKE_WALLS_ROOM,
|
||||
|
||||
RR_SHADOW_TEMPLE_BOSS_ENTRYWAY,
|
||||
RR_SHADOW_TEMPLE_BOSS_ROOM,
|
||||
|
||||
RR_BOTTOM_OF_THE_WELL_PERIMETER,
|
||||
RR_BOTTOM_OF_THE_WELL_BEHIND_FAKE_WALLS,
|
||||
RR_BOTTOM_OF_THE_WELL_SOUTHWEST_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_KEESE_BEAMOS_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_LIKE_LIKE_CAGE,
|
||||
RR_BOTTOM_OF_THE_WELL_INNER_ROOMS,
|
||||
RR_BOTTOM_OF_THE_WELL_COFFIN_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_DEAD_HAND_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_BASEMENT,
|
||||
RR_BOTTOM_OF_THE_WELL_BASEMENT_USEFUL_BOMB_FLOWERS,
|
||||
RR_BOTTOM_OF_THE_WELL_BASEMENT_PLATFORM,
|
||||
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_PERIMETER,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_WEST_ROOM_SWITCH,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_COFFIN_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_LOCKED_CAGE,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_DEAD_HAND_ROOM,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_MIDDLE,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_BASEMENT,
|
||||
RR_BOTTOM_OF_THE_WELL_MQ_BASEMENT_SWITCH_PLATFORM,
|
||||
|
||||
RR_ICE_CAVERN_BEGINNING,
|
||||
RR_ICE_CAVERN_MAIN,
|
||||
|
||||
RR_ICE_CAVERN_MQ_BEGINNING,
|
||||
RR_ICE_CAVERN_MQ_HUB,
|
||||
RR_ICE_CAVERN_MQ_MAP_ROOM,
|
||||
RR_ICE_CAVERN_MQ_SCARECROW_ROOM,
|
||||
RR_ICE_CAVERN_MQ_STALFOS_ROOM,
|
||||
RR_ICE_CAVERN_MQ_WEST_CORRIDOR,
|
||||
RR_ICE_CAVERN_MQ_COMPASS_ROOM,
|
||||
|
||||
RR_GERUDO_TRAINING_GROUND_LOBBY,
|
||||
RR_GERUDO_TRAINING_GROUND_CENTRAL_MAZE,
|
||||
RR_GERUDO_TRAINING_GROUND_CENTRAL_MAZE_RIGHT,
|
||||
RR_GERUDO_TRAINING_GROUND_LAVA_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_HAMMER_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_EYE_STATUE_LOWER,
|
||||
RR_GERUDO_TRAINING_GROUND_EYE_STATUE_UPPER,
|
||||
RR_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_LIKE_LIKE_ROOM,
|
||||
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_LOBBY,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_MAZE_HIDDEN_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_MAZE_FIRST_LOCK,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_MAZE_CENTER,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_SAND_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_LEFT_SIDE,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_STALFOS_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_BEHIND_BLOCK,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_STATUE_ROOM_LEDGE,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_MAGENTA_FIRE_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_STATUE_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_TORCH_SLUG_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_SWITCH_LEDGE,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_LEDGE_SIDE_PLATFORMS,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_FURTHEST_PLATFORM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_TORCH_SIDE_PLATFORMS,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_PLATFORMS_UNLIT_TORCH,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_DINOLFOS_ROOM,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_UNDERWATER,
|
||||
RR_GERUDO_TRAINING_GROUND_MQ_MAZE_RIGHT,
|
||||
|
||||
RR_GANONS_CASTLE_LOBBY,
|
||||
RR_GANONS_CASTLE_MAIN,
|
||||
RR_GANONS_CASTLE_DEKU_SCRUBS,
|
||||
RR_GANONS_CASTLE_FOREST_TRIAL,
|
||||
RR_GANONS_CASTLE_FIRE_TRIAL,
|
||||
RR_GANONS_CASTLE_WATER_TRIAL,
|
||||
RR_GANONS_CASTLE_SHADOW_TRIAL,
|
||||
RR_GANONS_CASTLE_SPIRIT_TRIAL,
|
||||
RR_GANONS_CASTLE_LIGHT_TRIAL,
|
||||
|
||||
RR_GANONS_CASTLE_MQ_LOBBY,
|
||||
RR_GANONS_CASTLE_MQ_MAIN,
|
||||
RR_GANONS_CASTLE_MQ_DEKU_SCRUBS,
|
||||
RR_GANONS_CASTLE_MQ_FOREST_TRIAL_STALFOS_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_FOREST_TRIAL_BEAMOS_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_FOREST_TRIAL_FINAL_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_FIRE_TRIAL_MAIN_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_FIRE_TRIAL_FINAL_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_WATER_TRIAL_GEYSER_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_WATER_TRIAL_BLOCK_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_WATER_TRIAL_FINAL_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_STARTING_LEDGE,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_CHEST_PLATFORM,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_MOVING_PLATFORM,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_BEAMOS_TORCH,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_FAR_SIDE,
|
||||
RR_GANONS_CASTLE_MQ_SHADOW_TRIAL_FINAL_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_SPIRIT_TRIAL_CHAIRS_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_SPIRIT_TRIAL_BEFORE_SWITCH,
|
||||
RR_GANONS_CASTLE_MQ_SPIRIT_TRIAL_AFTER_SWITCH,
|
||||
RR_GANONS_CASTLE_MQ_SPIRIT_TRIAL_FINAL_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_LIGHT_TRIAL_DINOLFOS_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_LIGHT_TRIAL_TRIFORCE_ROOM,
|
||||
RR_GANONS_CASTLE_MQ_LIGHT_TRIAL_BOULDER_ROOM_FRONT,
|
||||
RR_GANONS_CASTLE_MQ_LIGHT_TRIAL_BOULDER_ROOM_BACK,
|
||||
RR_GANONS_CASTLE_MQ_LIGHT_TRIAL_FINAL_ROOM,
|
||||
|
||||
RR_GANONS_TOWER_ENTRYWAY,
|
||||
RR_GANONS_TOWER_FLOOR_1,
|
||||
RR_GANONS_TOWER_FLOOR_2,
|
||||
RR_GANONS_TOWER_FLOOR_3,
|
||||
RR_GANONS_TOWER_BEFORE_GANONDORF_LAIR,
|
||||
RR_GANONS_TOWER_GANONDORF_LAIR,
|
||||
RR_GANONS_CASTLE_ESCAPE,
|
||||
RR_GANONS_CASTLE_GANON_ARENA,
|
||||
|
||||
RR_MARKER_AREAS_END, // Used for area key count
|
||||
|
||||
// DUNGEONS
|
||||
RR_DEKU_TREE,
|
||||
RR_DODONGOS_CAVERN,
|
||||
RR_JABU_JABUS_BELLY,
|
||||
RR_FOREST_TEMPLE,
|
||||
RR_FIRE_TEMPLE,
|
||||
RR_WATER_TEMPLE,
|
||||
RR_SPIRIT_TEMPLE,
|
||||
RR_SHADOW_TEMPLE,
|
||||
RR_BOTTOM_OF_THE_WELL,
|
||||
RR_ICE_CAVERN,
|
||||
RR_GERUDO_TRAINING_GROUND,
|
||||
RR_GANONS_CASTLE,
|
||||
RR_MAX,
|
||||
} RandomizerRegion;
|
||||
|
||||
typedef enum {
|
||||
RC_UNKNOWN_CHECK,
|
||||
RC_LINKS_POCKET,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue