fix more startflags

This commit is contained in:
gymnast86
2026-04-15 01:35:46 -07:00
parent 2bb05b0248
commit da24b6a1e2
9 changed files with 1449 additions and 0 deletions
+3
View File
@@ -1381,6 +1381,9 @@ set(DUSK_FILES
src/dusk/OSThread.cpp
src/dusk/OSMutex.cpp
# Randomizer files
src/dusk/randomizer/game/flags.h
src/dusk/randomizer/game/stages.cpp
src/dusk/randomizer/game/stages.h
src/dusk/randomizer/game/tools.cpp
src/dusk/randomizer/game/tools.h
src/dusk/randomizer/game/verify_item_functions.cpp
+12
View File
@@ -1432,6 +1432,12 @@ inline BOOL dComIfGs_isDarkClearLV(int i_no) {
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().isDarkClearLV(i_no);
}
#if TARGET_PC
inline u8 dComIfGs_getDarkClearLV() {
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().getDarkClearLV();
}
#endif
inline void dComIfGs_onTransformLV(int i_no) {
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().onTransformLV(i_no);
}
@@ -1509,6 +1515,12 @@ inline void dComIfGs_onRegionBit(int i_region) {
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().onRegionBit(i_region);
}
#if TARGET_PC
inline void dComIfGs_setRegionBit(u8 i_region) {
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().setRegionBit(i_region);
}
#endif
inline void dComIfGs_setPlayerFieldLastStayInfo(const char* i_stage, cXyz& i_pos, s16 i_angle,
s8 i_point, u8 i_region) {
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().set(i_stage, i_pos, i_angle,
+6
View File
@@ -203,6 +203,9 @@ public:
void setTime(f32 i_time) { mTime = i_time; }
u16 getDate() const { return mDate; }
void setDate(u16 i_date) { mDate = i_date; }
#if TARGET_PC
u8 getDarkClearLV() const { return mDarkClearLevelFlag; }
#endif
/* 0x00 */ BE(OSTime) mDateIpl;
/* 0x08 */ u8 mTransformLevelFlag;
@@ -276,6 +279,9 @@ public:
bool isFieldDataExistFlag() const { return mFieldDataExistFlag ? true : false; }
void offFieldDataExistFlag() { mFieldDataExistFlag = false; }
void onFieldDataExistFlag() { mFieldDataExistFlag = true; }
#if TARGET_PC
void setRegionBit(u8 region) { mRegion |= region;}
#endif
#if TARGET_PC
/* 0x00 */ BE(Vec) mPos;
+627
View File
@@ -30,6 +30,10 @@
#if TARGET_PC
#include "dusk/randomizer/randomizer.hpp"
#include "dusk/randomizer/utility/yaml.hpp"
#include "dusk/randomizer/game/tools.h"
#include "dusk/randomizer/game/stages.h"
#include "dusk/randomizer/game/flags.h"
#include "dusk/randomizer//game/verify_item_functions.h"
#endif
@@ -167,6 +171,580 @@ int dComIfG_play_c::getLayerNo_common_common(const char* i_stageName, int i_room
layer = 14;
}
#if TARGET_PC
// Special layer checks for randomizer
if (dComIfG_isRandomizer()) {
int stageID = getStageID(i_stageName);
bool condition = false;
bool darkIsClear = false;
if (layer < 13) {
switch(stageID) {
case Snowpeak_Ruins: {
if (dComIfGs_isEventBit(SNOWPEAK_RUINS_CLEARED)) {
layer = 3;
}
break;
}
case Snowpeak: {
if (dComIfGs_isEventBit(SNOWPEAK_RUINS_CLEARED) && (i_roomNo != 0)) {
layer = 3;
}
break;
}
case Faron_Woods:
case Faron_Woods_Interiors: {
if ((i_roomNo == 5) || (i_roomNo == 6)) { // North Faron or Mist Area
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo Saved
if (condition) {
layer = 3;
} else {
layer = 1;
}
}
else {
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo Saved
if (condition) {
condition = dComIfGs_isEventBit(FOREST_TEMPLE_CLEARED); // Forest Temple Completed
if (condition) {
layer = 5;
}
} else {
layer = 1;
}
}
break;
}
case Kakariko_Village:
{
condition = dComIfGs_isEventBit(WATCHED_CUTSCENE_AFTER_GORON_MINES); // Cutscene after GM Watched
if (condition == false) {
condition = dComIfGs_isEventBit(GORON_MINES_CLEARED); // Goron Mines Completed
if (condition == false) {
layer = 2;
// If it is night, the layer is different.
dComIfG_get_timelayer(&layer);
}
else {
layer = 12;
}
}
else {
layer = 2;
dComIfG_get_timelayer(&layer);
}
break;
}
case Kakariko_Graveyard:
{
condition = dComIfGs_isEventBit(GOT_ZORA_ARMOR_FROM_RUTELA); // Got Zora Armor from Rutela
if (condition == false) {
condition = dComIfGs_isEventBit(ZORA_ESCORT_CLEARED); // Zora Escort Cleared
if (condition == false) {
layer = 2;
// If it is night, the layer is different.
dComIfG_get_timelayer(&layer);
}
else {
layer = 4;
}
}
else {
layer = 2;
dComIfG_get_timelayer(&layer);
}
break;
}
case Kakariko_Graveyard_Interiors: {
if (((i_roomNo == 1 &&
(condition = dComIfGs_isEventBit(LAKEBED_TEMPLE_CLEARED),
condition != false)))) // Lakebed Completed
{
layer = 4;
dComIfG_get_timelayer(&layer);
}
else {
layer = 2;
dComIfG_get_timelayer(&layer);
}
break;
}
case Kakariko_Village_Interiors: {
if (i_roomNo == 1) { // Lakebed Completed
layer = 4;
dComIfG_get_timelayer(&layer);
}
else if (i_roomNo == 3) {
layer = 2;
}
else {
layer = 2;
dComIfG_get_timelayer(&layer);
}
break;
}
case Death_Mountain: {
condition =
dComIfGs_isEventBit(GORON_MINES_CLEARED); // Goron Mines Completed
if (condition) {
layer = 2;
}
break;
}
case Death_Mountain_Interiors: {
layer = 0;
break;
}
case Lake_Hylia: {
if (i_roomNo == 1) { // Lanayru Spring
condition = dComIfGs_isEventBit(LAKEBED_TEMPLE_CLEARED); // Lakebed Temple has been completed
if (condition) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED); // MDH has been started
if (condition == false) {
layer = 9;
}
else {
layer = 2;
}
}
}
else {
condition = dComIfGs_isEventBit(SKY_CANNON_REPAIRED); // Sky Cannon Repaired
if (condition == false) {
condition = dComIfGs_isEventBit(WARPED_SKY_CANNON_TO_LAKE_HYLIA); // Sky Cannon Warped to Lake Hylia
if (condition == false) {
layer = 2;
}
else {
layer = 1;
}
}
else {
layer = 3;
}
}
break;
}
case Castle_Town_Interiors:
{
if (condition = dComIfGs_isEventBit(LAKEBED_TEMPLE_CLEARED),condition) { // Lakebed Temple Completed
layer = 2;
if (condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED),condition) { // MDH Completed
layer = 0;
}
}
if (i_roomNo == 5) { // Telma's Bar
layer = 4;
}
break;
}
case Castle_Town: {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED); // MDH Completed
if (condition == false) {
condition = dComIfGs_isEventBit(LAKEBED_TEMPLE_CLEARED); // Lakebed Temple Completed
if (condition == false) {
if ((i_roomNo == 3) &&
(condition = dComIfGs_isEventBit(ZORA_ESCORT_CLEARED),condition != false)) { // Zora Escort Cleared
layer = 1;
}
else if (i_roomNo == 4) {
layer = 1;
}
}
else {
layer = 2;
}
}
else {
if (((i_roomNo == 4) || (i_roomNo == 3)) || (i_roomNo == 1)) {
layer = 1;
}
else {
layer = 0;
}
}
if (i_roomNo == 0) {
if (dComIfGs_getStartPoint() == 0xF) {
layer = 5;
}
}
break;
}
case Zoras_Domain: {
layer = 0;
break;
}
case Upper_Zoras_River: {
condition = dComIfGs_isEventBit(IZA_1_MINIGAME_UNLOCKED); // Iza 1 Unlocked
if (condition != false)
{
layer = 1;
}
break;
}
case Gerudo_Desert: {
layer = 8;
condition = dComIfGs_isEventBit(VISITED_DESERT_FOR_THE_FIRST_TIME); // Have been to desert
if (condition != false) {
layer = 0;
}
break;
}
case Zoras_River: {
condition = dComIfGs_isEventBit(IZA_1_MINIGAME_DONE); // Iza 1 Minigame Completed
if (condition == false) {
condition = dComIfGs_isEventBit(STARTED_IZA_1_MINIGAME); // Iza 1 Minigame Started
if (condition != false) {
layer = 2;
}
}
else {
layer = 1;
}
break;
}
case Ordon_Village: {
if (i_roomNo == 0) {
if (!dKy_daynight_check()) {
layer = 0;
}
else {
layer = 5;
}
}
else {
if (i_roomNo == 1) {
condition =
dComIfGs_isEventBit(ORDON_DAY_1_FINISHED); // Ordon Day 1 done
if (condition) {
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo Saved
if (condition) {
layer = 2;
}
else {
layer = 4;
}
}
else {
layer = 3;
}
}
}
break;
}
case Ordon_Village_Interiors:
{
/* not used in randomizer anymore. keeping for documentation sake
if ( i_roomNo == 1 ) // Sera's Shop
{
condition = dComIfGs_isEventBit(
BOUGHT_SLINGSHOT_FROM_SERA ); // Bought slinghot from Sera
if ( condition )
{
layer = 2;
}
}*/
if (i_roomNo == 2) { // Jaggle's House
darkIsClear = dComIfGs_isDarkClearLV(0);
if (darkIsClear == false) {
condition = dComIfGs_isEventBit(FINISHED_SEWERS); // First Trip to Sewers done
if (condition != false) {
layer = 1;
}
}
else {
layer = 1;
}
}
/* not used in randomizer anymore. keeping for documentation sake
else
{
if ( i_roomNo == 5 ) // Rusl's House
{
darkIsClear = libtp::tp::d_save::isDarkClearLV( playerStatusBPtr, 0 );
if ( darkIsClear != false )
{
layer = 2;
}
}
}*/
break;
}
case Ordon_Spring: {
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo saved
if (condition) {
condition =
dComIfGs_isEventBit(FINISHED_SEWERS); // First trip to Sewers done
if (condition) {
darkIsClear = dComIfGs_isDarkClearLV(0);
if (darkIsClear != false) {
layer = 2;
}
else {
layer = 4;
}
}
else {
layer = 0;
}
}
else {
condition = dComIfGs_isEventBit(TALO_CHASES_MONKEY); // Sword training done on Ordon Day 2
if (condition) {
layer = 3;
}
else {
layer = 1;
}
}
break;
}
case Ordon_Ranch: {
condition = dComIfGs_isEventBit(ORDON_DAY_1_FINISHED); // Day 1 done
if (condition) {
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo Saved
if (condition) {
condition = dComIfGs_isEventBit(WATCHED_CUTSCENE_AFTER_GOATS_2); // Saw CS after Goats 2 done
if (condition) {
layer = 2;
dComIfG_get_timelayer(&layer);
}
else {
layer = 9;
}
}
else {
layer = 2;
}
}
else {
layer = 12;
}
break;
}
case Hyrule_Field: {
// First 3 twilights are cleared
if ((dComIfGs_getDarkClearLV() & 0x7) == 0x7) {
if (dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED)) {
layer = 6;
}
else if (dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED)) {
layer = 4;
}
else {
layer = 0;
}
}
else {
layer = 0;
}
break;
}
case Outside_Castle_Town: {
if (i_roomNo == 8) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED); // MDH Completed
if (condition == false) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED); // MDH State Activated
if (condition != false) {
layer = 4;
}
}
else {
layer = 6;
}
}
else {
if (i_roomNo == 0x10) {
condition = dComIfGs_isEventBit(GOT_WOOD_STATUE); // Wooden Statue Gotten
if (condition == false) {
condition = dComIfGs_isEventBit(TALKED_TO_LOUISE_ABOUT_THE_STOLEN_STATUE); // Talked to Louise after Medicine Scent
if (condition == false) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED); // MDH Completed
if (condition == false) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED); // MDH State Activated
if (condition != false) {
layer = 4;
}
else {
layer = 6;
}
}
else {
layer = 6;
}
}
else {
layer = 1;
}
}
else {
layer = 6;
}
}
else {
if (i_roomNo == 0x11) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED); // MDH Completed
if (condition == false) {
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED); // MDH State Activated
if (condition != false) {
layer = 4;
}
}
else {
layer = 0;
}
}
}
}
break;
}
case Hidden_Village: {
condition = dComIfGs_isEventBit(GAVE_ILIA_THE_WOOD_STATUE); // Ilia shown the wooden statue
if (condition != false) {
condition = dComIfGs_isEventBit(GOT_ILIAS_CHARM); // Ilia shown Ilia's Charm
if (condition != false) {
layer = 1;
}
}
else {
layer = 1;
}
break;
}
case Castle_Town_Shops: {
if (i_roomNo == 5) {
layer = 0;
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_STARTED);
if (condition) {
layer = 1;
condition = dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED);
if (condition) {
layer = 0;
}
}
}
else {
condition = dComIfGs_isEventBit(MALO_MART_CASTLE_TOWN_BRANCH_IS_OPEN); // CT Shop is Malo Mart
if (condition != false) {
layer = 1;
}
}
break;
}
case Sacred_Grove: {
layer = 2;
break;
}
case Bulblin_Camp: {
condition = dComIfGs_isEventBit(ESCAPED_BURNING_TENT_IN_BULBLIN_CAMP); // Escaped Burning Tent in Bulblin Camp
if (condition) {
if (i_roomNo == 3) // Other states for this room are very similar, but do not have the boar
// in the dzx.
{ // Setting state 1 solves for any potential softlocks regarding the boar in that area.
layer = 1;
}
else {
layer = 3;
}
}
break;
}
case Faron_Woods_Cave: {
condition = dComIfGs_isEventBit(ORDON_DAY_2_OVER); // Talo saved
if (condition != false) {
layer = 1;
}
break;
}
case Hyrule_Castle_Sewers: {
condition = dComIfGs_isEventBit(FINISHED_SEWERS); // Sewers Finished
if (condition) {
layer = 13;
}
else {
layer = 14;
}
break;
}
case Hyrule_Castle: {
if (((i_roomNo != 0xb) && (i_roomNo != 0xd)) && (i_roomNo != 0xe)) {
layer = 1;
}
break;
}
case Fishing_Pond:
case Fishing_Pond_Interiors: {
switch (g_env_light.fishing_hole_season) {
case 1:
layer = 0;
break;
case 2:
layer = 1;
break;
case 3:
layer = 2;
break;
case 4:
layer = 3;
break;
}
break;
}
default: {
break;
}
}
}
} else
#endif
if (layer < 13) {
// Stage is Snowpeak Ruins or Snowpeak
if (!strcmp(i_stageName, "D_MN11") || !strcmp(i_stageName, "F_SP114")) {
@@ -2343,6 +2921,55 @@ void dComIfGs_setupRandomizerSave() {
}
}
// Other flags based on starting flags
if (dComIfGs_isEventBit(CLEARED_FARON_TWILIGHT))
{
dComIfGs_onDarkClearLV(0);
dComIfGs_setLightDropNum(0, 0x10);
execItemGet(dItemNo_Randomizer_DROP_CONTAINER_e);
execItemGet(dItemNo_Randomizer_WEAR_KOKIRI_e);
}
if (dComIfGs_isEventBit(CLEARED_ELDIN_TWILIGHT))
{
dComIfGs_onDarkClearLV(1);
dComIfGs_setLightDropNum(1, 0x10);
execItemGet(dItemNo_Randomizer_DROP_CONTAINER02_e);
}
if (dComIfGs_isEventBit(CLEARED_LANAYRU_TWILIGHT))
{
dComIfGs_onDarkClearLV(2);
dComIfGs_setLightDropNum(2, 0x10);
execItemGet(dItemNo_Randomizer_DROP_CONTAINER03_e);
}
// if (skipMinorCutscenes())
// {
// dComIfGs_setAllLetterGet();
// dComIfGs_setAllLetterRead();
// }
if (dComIfGs_isEventBit(MIDNAS_DESPERATE_HOUR_COMPLETED))
{
if (dComIfGs_getDarkClearLV() == 0x7)
{
dComIfGs_onDarkClearLV(3);
dComIfGs_onTransformLV(3);
}
}
if (world->Setting("Unlock Map Regions") == "On")
{
int mapBits = 0x20;
if (world->Setting("Snowpeak Does Not Require Reekfish Scent") == "On") {mapBits |= 0x40;}
if (dComIfGs_isEventBit(CLEARED_LANAYRU_TWILIGHT)) {mapBits |= 0x10;}
if (dComIfGs_isEventBit(CLEARED_ELDIN_TWILIGHT)) {mapBits |= 0x08;}
if (dComIfGs_isEventBit(CLEARED_FARON_TWILIGHT)) {mapBits |= 0x04;}
if (world->Setting("Skip Prologue") == "On") {mapBits |= 0x02;}
dComIfGs_setRegionBit(mapBits);
}
// Set starting inventory
for (const auto& item: world->GetStartingItemPool()) {
execItemGet(static_cast<u8>(item->GetID()));
+618
View File
@@ -0,0 +1,618 @@
#pragma once
enum EventFlags
{
CHEESE_PUT_IN_SOUP = 0x0001,
PUMPKIN_PUT_IN_SOUP = 0x0002,
LOST_TO_GOR_CORON_IN_SUMO = 0x0004,
TALKED_TO_RENADO_AFTER_GORON_MINES = 0x0008,
YETO_TOOK_CHEESE = 0x0010,
YETO_TOOK_PUMPKIN = 0x0020,
MIDNA_TEXT_ABOUT_FINDING_GORGE_BRIDGE = 0x0080,
TALKED_TO_COLIN_OUTSIDE_LINKS_HOUSE = 0x104,
TALKED_TO_FADO_BEFORE_GOATS_1 = 0x110,
TOLD_YETA_ABOUT_CHEESE = 0x120,
TALKED_TO_YETO_IN_SPR_FOR_FIRST_TIME = 0x140,
CAN_FIGHT_TWILIGHT_BLOAT = 0x180,
TALKED_TO_SERA_BEFORE_CAT_RESCUED = 0x201,
TALKED_TO_COLIN_THROUGH_SPRING_GATE = 0x202,
FINISHED_SLINGSHOT_TRAINING = 0x220,
FINISHED_SWORD_TRAINING = 0x240,
FAILED_TO_CATCH_GOAT_AT_BO_HOUSE = 0x280,
GOT_FISHING_ROD_FROM_ULI = 0x301,
GAVE_WOODEN_SWORD_TO_TALO = 0x302,
BROUGHT_CRADLE_TO_ULI = 0x304,
TALKED_TO_KIDS_OUTSIDE_LINKS_HOUSE = 0x308,
JAGGLE_ASKED_TO_LOOK_UP_PILLAR = 0x310,
TALKED_TO_PERGIE = 0x340,
TALKED_TO_SQUIRREL_AFTER_FARON_TWILIGHT = 0x380,
TALKED_TO_ULI = 0x404,
ULI_RAN_DOWN_RIVER = 0x408,
TALKED_TO_ULI_BEFORE_GETTING_CRADLE = 0x410,
UNK_0420 = 0x420,
REFUSED_SWORD_TRAINING = 0x440,
TOLD_YETA_ABOUT_PUMPKIN = 0x480,
MIDNA_CHARGE_UNLOCKED = 0x501,
FINISHED_SEWERS = 0x502,
MIDNA_TEXT_AFTER_ENTERING_FARON_TWILIGHT = 0x504,
MET_ZELDA_IN_SEWERS = 0x508,
MIDNA_CUT_PRISON_CHAIN = 0x510,
WATCHED_SEWERS_INTRO_CUTSCENE = 0x520,
ESCAPED_CELL_IN_SEWERS = 0x540,
ENTERED_ORDON_SPRING_DAY_3 = 0x580,
EPONA_TAMED = 0x601,
FOREST_TEMPLE_CLEARED = 0x602,
MAP_WARPING_UNLOCKED = 0x604,
KING_BULBLIN_1_TRIGGER_ACTIVATED = 0x608,
CLEARED_FARON_TWILIGHT = 0x610,
WARPED_KAKARIKO_GORGE_BRIDGE_BACK = 0x620,
WATCHED_FARON_TWILIGHT_INTRO_CUTSCENE = 0x640,
WATCHED_FARONE_CUTSCENE_AFTER_OPENING_ORDON_SPRING_WARP = 0x680,
GORON_MINES_CLEARED = 0x701,
FIRST_TIME_TALKING_TO_GOR_CORON = 0x702,
WON_SUMO_AGAINST_GOR_CORON = 0x704,
CLEARED_ELDIN_TWILIGHT = 0x708,
WATCHED_ELDIN_TWILIGHT_SANCTUARY_CUTSCENE = 0x710,
TALKED_TO_BO_AFTER_TAMING_EPONA = 0x720,
STARTED_SUMO_AGAINST_GOR_CORON = 0x740,
WATCHED_COLIN_CUTSCENE_AFTER_KING_BULBLIN_1 = 0x780,
TALKED_WITH_TALO_TO_START_ARCHERY_MINIGAME = 0x801,
GOT_ZORA_ARMOR_FROM_RUTELA = 0x804,
ZORA_ESCORT_CLEARED = 0x810,
ENTERED_TELMAS_BAR_AFTER_LANAYRU_TWILIGHT = 0x820,
WAGON_ESCORT_STARTED = 0x840,
WARPED_METEOR_TO_ZORAS_DOMAIN = 0x880,
LISTENED_TO_IZA_SPIRIT_AFTER_KILLING_BUG_NEXT_TO_HER = 0x901,
STARTED_IZA_1_MINIGAME = 0x902,
LAKEBED_TEMPLE_CLEARED = 0x904,
BOUGHT_BARNES_BOMB_BAG = 0x908,
WON_ARCHERY_MINIGAME_IN_KAKARIKO_WITH_HAWKEYE = 0x910,
WON_ARCHERY_MINIGAME_IN_KAKARIKO_LEGITIMATELY = 0x920,
STARTED_ARCHERY_MINIGAME_IN_KAKARIKO = 0x940,
TALKED_TO_TALO_AFTER_WINNING_ARCHERY_MINIGAME_LEGITIMATELY = 0x980,
KING_BULBLIN_1_HIT_ONCE_DURING_PHASE_2 = 0xA01,
KING_BULBLIN_1_PHASE_1_DONE = 0xA02,
KING_BULBLIN_1_FIGHT_STARTED = 0xA04,
KING_BULBLIN_1_DEFEATED = 0xA08,
STARTED_KARGOROK_FLIGHT_UP_ZORAS_RIVER_DURING_TWILIGHT = 0xA10,
BRIDGE_OF_ELDIN_STOLEN = 0xA20,
THREW_FIRST_GORON_OFF_LEDGE_WHILE_SCALING_DMT = 0xA40,
LEFT_AFTER_AGREEING_TO_HELP_IZA_1 = 0xA80,
IZA_1_MINIGAME_DONE = 0xB01,
IZA_1_MINIGAME_UNLOCKED = 0xB02,
AGREED_TO_HELP_IZA = 0xB04,
LEFT_AFTER_AGREEING_TO_HELP_IZA = 0xB08,
GOT_SNOWPEAK_RUINS_MAP_FROM_YETA = 0xB10,
TALKED_TO_YETA_IN_SNOWPEAK_RUINS_FOR_THE_FIRST_TIME = 0xB20,
ESCAPED_BURNING_TENT_IN_BULBLIN_CAMP = 0xB40,
DECLINED_TO_HELP_IZA = 0xB80,
MIDNAS_DESPERATE_HOUR_STARTED = 0xC01,
CLEARED_LANAYRU_TWILIGHT = 0xC02,
TALKED_TO_KID_GORON_SHOP_IN_KAKARIKO_AT_NIGHT = 0xC04,
REMOVE_SWORD_SHIELD_FROM_WOLF_BACK = 0xC08,
MIDNA_ACCOMPANIES_WOLF = 0xC10,
TALKED_WITH_FARONE_AFTER_CLEARING_FOREST_TEMPLE = 0xC40,
MET_RUTELLA_AFTER_WARPING_METEOR_TO_ZORAS_DOMAIN = 0xC80,
ENTERED_ORDON_SHIELD_HOUSE_AS_WOLF_AT_NIGHT = 0xD01,
TALKED_TO_ONE_OF_THE_FROGS_OUTSIDE_RUSLS_HOUSE_AS_WOLF_AT_NIGHT = 0xD02,
TRANSFORMING_UNLOCKED = 0xD04,
TALKED_WITH_CLERK_AT_CASTLE_TOWN_MALO_MART = 0xD08,
TALKED_WITH_YETA_AFTER_GETTING_BEDROOM_KEY = 0xD10,
MIDNA_TEXT_AFTER_ORDON_SHIELD_OBTAINED = 0xD80,
START_ILIA_MEMORY_SIDEQUEST = 0xE01,
TWILIGHT_BLOAT_TEAR_APPEARS_ON_MAP = 0xE02,
MALO_TEXT_AFTER_LEAVING_SHOP_MENU = 0xE08,
LISTENED_TO_FYER_SPIRIT_IN_FILLED_LAKE_HYLIA_DURING_TWILIGHT = 0xE10,
TALKED_TO_RIGHT_GORON_IN_HOTSPRING_AFTER_KING_BULBLIN_1 = 0xE20,
TALKED_TO_SECOND_GORON_IN_DMT_AFTER_CLEARING_GORON_MINES = 0xE40,
TALKED_TO_BROWN_CUCOO_OUTSIDE_BOS_HOUSE_AS_WOLF_AT_NIGHT = 0xE80,
GOT_LANTERN_FROM_CORO = 0xF01,
IZA_TEXT_AFTER_IZA_1_DONE = 0xF02,
TALKED_WITH_FYER_AFTER_GOING_TO_DESERT = 0xF04,
WARPED_BRIDGE_OF_ELDIN_BACK = 0xF08,
FUNDED_CASTLE_TOWN_MALO_MART = 0xF10,
TALKED_WITH_DOCTOR_BEFORE_GIVING_INVOICE = 0xF20,
FORCED_TEXT_WHEN_ENTERING_DOCTORS_CLINIC_FOR_THE_FIRST_TIME = 0xF40,
GOT_RENADOS_LETTER = 0xF80,
SERAS_CAT_RETURNED_TO_SHOP = 0x1001,
ORDON_DAY_2_TALKED_TO_JAGGLE_ON_THE_PILLAR = 0x1002,
ORDON_DAY_2_L_TARGET_TALKED_TO_JAGGLE_ON_THE_PILLAR = 0x1004,
ORDON_DAY_2_TALKED_TO_COLIN_AFTER_FISHING_ROD = 0x1008,
WATCHED_START_OF_GAME_CUTSCENE = 0x1010,
ORDON_DAY_2_TALKED_TO_COLIN_BEFORE_FISHING_ROD = 0x1020,
ORDON_DAY_3_TALKED_TO_RUSL = 0x1040,
ORDON_DAY_3_TALKED_TO_PERGIE = 0x1080,
TALKED_TO_SERA_AFTER_GETTING_BOTTLE = 0x1101,
ORDON_DAY_3_TALKED_TO_ULI = 0x1102,
ORDON_DAY_2_STARTED_SWORD_TRAINING = 0x1104,
TALKED_TO_GOR_EBIZO_AFTER_COMPLETING_HOTSPRING_MINIGAME = 0x1108,
TALKED_WITH_YETA_AFTER_SHE_WALKS_UP_TO_BEDROOM = 0x1110,
HANCH_IS_ATTACKED_BY_BEES = 0x1120,
ORDON_DAY_2_TALKED_TO_JAGGLE_AFTER_CALLING_DOWN_EAGLE = 0x1140,
ORDON_DAY_2_TALKED_TO_HANCH_AFTER_TOUCHING_BEE_NEST = 0x1180,
SOUTH_FARON_WARP_FIGHT_STARTED = 0x1202,
ORDON_DAY_2_TALKED_TO_SERA_BEFORE_CAT_RETURNS = 0x1204,
TALKED_TO_SERA_AFTER_CAT_RETURNS = 0x1208,
HEARD_BO_TEXT_AFTER_SUMO_FIGHT = 0x1210,
TALK_TO_GORON_IN_FRONT_OF_DM_SHOP_AFTER_WINNING_GOR_CORON_SUMO_MATCH = 0x1302,
TALKED_TO_IZA_BEFORE_UZR_PORTAL = 0x1304,
WATCHED_CUTSCENE_AFTER_GORON_MINES = 0x1320,
LOST_SUMO_TO_GOR_CORON_TWICE = 0x1340,
TALKED_TO_FARONE_IN_FARON_TWILIGHT = 0x1380,
ORDON_DAY_3_COLIN_WENT_TO_SEE_ILIA_IN_ORDON_SPRING = 0x1402,
GOT_BOTTLE_FROM_SERA = 0x1408,
WATCHED_CUTSCENE_AFTER_GETTING_KNOCKED_OFF_DM_LEDGE_BY_GORON = 0x1410,
TALKED_WITH_YETA_AFTER_GIVING_CHEESE = 0x1420,
TALKED_WITH_YETA_AFTER_GIVING_PUMPKIN = 0x1440,
ENTERED_FYERS_CANON_FOR_THE_FIRST_TIME = 0x1480,
TALKED_TO_AGITHA_IN_HER_CASTLE_FOR_THE_FIRST_TIME = 0x1501,
TALKED_TO_HANCH_AFTER_HE_JUMPS_IN_THE_WATER_ORDON_DAY_2_OR_3 = 0x1502,
ORDON_DAY_2_JAGGLE_SCOLDS_YOU_FOR_BREAKING_ALL_THE_PUMPKINS_NEXT_TO_HIM = 0x1504,
HANCH_HIT_BEE_NEST_AND_DOVE_IN_WATER = 0x1508,
ORDON_DAY_2_TOUCHED_ORDON_HANGING_BEE_NEST = 0x1510,
ORDON_DAY_2_TOOK_DOWN_ORDON_BEE_NEST_WITH_HAWK = 0x1520,
WARPING_IN_LANAYRU_PROVINCE_DISABLED = 0x1540,
WATCHED_CUTSCENE_AFTER_GOATS_2 = 0x1580,
ORDON_DAY_2_DONE = 0x1601,
TOOK_DOWN_ORDON_BEE_NEST_WITH_SLINGSHOT = 0x1602,
GOT_A_LETTER_FROM_AGITHA = 0x1604,
ORDON_DAY_2_TALKED_TO_BO_AFTER_CATCHING_GOAT = 0x1620,
ORDON_DAY_2_CAUGHT_GOAT_IN_FRONT_OF_BOS_HOUSE = 0x1640,
HANCH_HIT_BEE_NEST_AND_DOVE_IN_WATER_TRIGGER = 0x1680,
TALKED_TO_FEMALE_OWNER_OF_GROCERY_STORE_IN_SOUTH_CASTLE_TOWN = 0x1701,
TALKED_TO_HYRULE_SOLDIER_IN_SOUTH_CASTLE_TOWN = 0x1702,
TALKED_TO_STALKER_OUTSIDE_AGITHAS_CASTLE = 0x1704,
ORDON_DAY_3_TALKED_TO_BO = 0x1710,
ORDON_DAY_2_TALKED_TO_HANCH_AFTER_TAKING_DOWN_BEE_NEST = 0x1780,
WATCHED_CUTSCENE_BETWEEN_RUSL_ULI_AFTER_ORDON_SHIELD = 0x1801,
CHECKED_TRILLS_MONEY_BOX = 0x1804,
CAUGHT_BY_RUSL_IN_ORDON_AS_WOLF_AT_NIGHT = 0x1808,
ORDON_DAY_2_TALO_RAN_AFTER_MONKEY_AFTER_SWORD_TRAINING = 0x1880,
WATCHED_ELDIN_SPIRIT_CUTSCENE_AFTER_OPENING_KAKARIKO_WARP = 0x1901,
SUCCESSFULLY_LISTENED_TO_BO_AND_JAGGLES_CONVERSATION_AS_WOLF = 0x1904,
COLIN_STOPPED_YOU_FROM_GETTING_ON_EPONA_ORDON_DAY_2 = 0x1908,
FAILED_TO_LISTEN_TO_BO_AND_JAGGLES_CONVERSATION_AS_WOLF = 0x1910,
SCARED_OFF_HANCH_AS_WOLF_AT_NIGHT = 0x1920,
HANCH_SPOTTED_YOU_AS_WOLF_AT_NIGHT = 0x1940,
TRIED_TO_ENTER_FARON_TWILIGHT_WITHOUT_SWORD_SHIELD = 0x1980,
TALKED_TO_ELDIN_SPIRIT_IN_ELDIN_TWILIGHT = 0x1A01,
LISTENED_TO_FIRST_GUARD_IN_SEWERS = 0x1A02,
BOUGHT_COROS_OIL_BOTTLE = 0x1A08,
TALKED_TO_CORO_AFTER_FARON_TWILIGHT = 0x1A10,
TALKED_TO_WHITE_CUCOO_NEAR_RUSLS_HOUSE_AS_WOLF_AT_NIGHT = 0x1A20,
TALKED_TO_SERAS_CAT_AS_WOLF_AT_NIGHT = 0x1A40,
TALKED_TO_MIDNA_AFTER_ESCAPING_CELL_IN_SEWERS = 0x1A80,
TRIED_TO_LEAVE_MIST_AREA_WITHOUT_PICKING_UP_LANTERN = 0x1B01,
LISTENED_TO_FIRST_GORON_SPIRIT_IN_DEATH_MOUNTAIN_TWILIGHT = 0x1B02,
PICKED_UP_LANTERN_AFTER_MONKEY_STEALING_SEQUENCE = 0x1B08,
MONKEY_DROPPED_YOUR_LANTERN = 0x1B10,
MONKEY_STOLE_YOUR_LANTERN = 0x1B20,
LISTENED_TO_CORO_SPIRIT_BEFORE_KILLING_BUGS_IN_HIS_HOUSE = 0x1B40,
TALKED_TO_MALO_AFTER_KING_BULBLIN_1 = 0x1C01,
SAW_MIDNA_TEXT_AFTER_TRYING_TO_WARP_AN_OBJECT_TO_THE_WRONG_PLACE = 0x1C02,
SACRED_GROVE_STATUE_PUZZLE_COMPLETED = 0x1C04,
WIN_SUMO_ROUND_1_AGAINST_BO = 0x1C10,
BO_TALKED_TO_YOU_AFTER_OPENING_IRON_BOOTS_CHEST = 0x1C20,
ACCEPTED_TO_KEEP_BOS_SECRET = 0x1C40,
LISTENED_TO_SECOND_GORON_SPIRIT_IN_DEATH_MOUNTAIN_TWILIGHT = 0x1C80,
MINI_MAP_RETRACTED = 0x1D01,
TALKED_TO_TALO_AFTER_KING_BULBLIN_1 = 0x1D02,
TALKED_TO_LUDA_AFTER_KING_BULBLIN_1 = 0x1D04,
TALKED_TO_DARBUS_AFTER_DEFEATING_FYRUS = 0x1D08,
TALKED_TO_BARNES_AFTER_GORON_MINES = 0x1D10,
TALKED_TO_BARNES_AFTER_KING_BULBLIN_1 = 0x1D20,
LISTENED_TO_FYER_SPIRIT_IN_DRAINED_LAKE_HYLIA_DURING_LANAYRU_TWILIGHT = 0x1D40,
TALKED_TO_SERA_A_SECOND_TIME_AFTER_FARON_TWILIGHT = 0x1E02,
TALKED_TO_SERA_AFTER_FARON_TWILIGHT = 0x1E04,
MIDNAS_DESPERATE_HOUR_COMPLETED = 0x1E08,
TALKED_TO_CORO_AFTER_FOREST_TEMPLE = 0x1E20,
TALK_TO_MALO_AFTER_FUNDRAISING_IS_OPEN = 0x1E40,
MALO_MART_FUNDRAISING_STARTS = 0x1E80,
HEARD_FORCED_MIDNA_TEXT_E3_2006_GORON_MINES = 0x1F04,
HEARD_MIDNA_TEXT_ONTOP_OF_MAGNET_SWITCH_E3_2006_GORON_MINES = 0x1F08,
FYRUS_IS_ON_THE_GROUND = 0x1F10,
KNOCKED_FYRUS_DOWN_FOR_THE_FIRST_TIME = 0x1F20,
FYRUS_IS_STUNNED = 0x1F40,
SHOT_FYRUS_EYE_FOR_THE_FIRST_TIME = 0x1F80,
TALKED_WITH_TELMA_AFTER_GETTING_MASTER_SWORD = 0x2001,
CITY_IN_THE_SKY_CLEARED = 0x2002,
TEMPLE_OF_TIME_CLEARED = 0x2004,
SNOWPEAK_RUINS_CLEARED = 0x2008,
ARBITERS_GROUNDS_CLEARED = 0x2010,
GOT_MASTER_SWORD = 0x2020,
WATCHED_TELMA_ILIA_SPIRIT_CUTSCENE_IN_THE_BAR_DURING_LANAYRU_TWILIGHT = 0x2101,
TALKED_TO_LOUISE_ABOUT_THE_STOLEN_STATUE = 0x2102,
GAVE_TELMA_RENADOS_LETTER = 0x2180,
TALKED_TO_PLUMM_AS_WOLF_FOR_THE_FIRST_TIME = 0x2201,
GOT_A_HIGH_SCORE_IN_PLUMMS_MINIGAME = 0x2202,
GOT_WOOD_STATUE = 0x2204,
TALKED_TO_YETO_ON_TOP_OF_THE_MOUNTAIN_AFTER_CLEARING_SPR = 0x2208,
MALO_MART_CASTLE_TOWN_BRANCH_IS_OPEN = 0x2210,
GOT_ILIAS_SCENT = 0x2220,
GOT_YOUTHS_SCENT = 0x2240,
GOT_ILIAS_CHARM = 0x2280,
CLEARED_STAR_2 = 0x2301,
STARTED_STAR_2 = 0x2302,
MAGIC_UNLOCKED = 0x2304,
CLEARED_STAR_1 = 0x2308,
ENTERED_STAR_FOR_THE_FIRST_TIME = 0x2310,
GAVE_ILIA_HER_CHARM = 0x2320,
GAVE_ILIA_THE_WOOD_STATUE = 0x2340,
WON_PLUMMS_HEART_PIECE = 0x2380,
TALKED_TO_SHAD_AFTER_FINISHING_CITY_IN_THE_SKY = 0x2401,
TALKED_TO_SHAD_FOR_A_SECOND_TIME_IN_TELMAS_BAR = 0x2402,
TALKED_TO_SHAD_IN_TELMAS_BAR = 0x2404,
TALKED_TO_AURU_IN_TELMAS_BAR = 0x2408,
TALKED_TO_CENTRAL_CASTLE_TOWN_SHOP_CLERK = 0x2410,
TALKED_TO_LOUISE_AFTER_BEING_THROWN_OUT_DURING_MDH = 0x2420,
WATCHED_LOUISE_CUTSCENE_DURING_MIDNAS_DESPERATE_HOUR = 0x2440,
DONATED_1000_RUPEES_TO_CHARLO = 0x2480,
WATCHED_CUTSCENE_WITH_YETO_ON_TOP_OF_MOUNTAIN = 0x2502,
TALKED_TO_YETO_ON_TOP_OF_MOUNTAIN_AS_WOLF = 0x2504,
GOT_AURUS_MEMO = 0x2510,
TALKED_TO_AURU_IN_LAKE_HYLIA = 0x2520,
SHAD_USED_COMPLETED_SKYBOOK = 0x2540,
SHAD_CASTS_UNFINISHED_SPELL_ON_STATUE = 0x2580,
SOL_FLAG_1 = 0x2601,
SOL_FLAG_2 = 0x2602,
PALACE_WEST_SOL_TAKEN_IN_PHANTOM_ZANT_ROOM = 0x2604,
SOL_FLAG_3 = 0x2608,
PALACE_WEST_SOL_TAKEN_OUT_PHANTOM_ZANT_ROOM = 0x2610,
PALACE_EAST_SOL_TAKEN_OUTSIDE = 0x2620,
PALACE_WEST_SOL_TAKEN_OUTSIDE = 0x2640,
SHOWED_AURUS_MEMO_TO_FYER = 0x2680,
TALKED_TO_UNDERWATER_ZORA_ABOUT_GORON_IN_THRONE_ROOM_AFTER_RELEASE = 0x2701,
TALKED_TO_UNDERWATER_ZORA_ABOUT_GORON_IN_THRONE_ROOM_BEFORE_RELEASE = 0x2702,
TALKED_TO_WEST_ZORA_IN_DOMAIN_THRONE_ROOM_AFTER_LANAYRU_TWILIGHT = 0x2704,
TALKED_TO_SWIMMING_ZORA_IN_ZORAS_DOMAIN_BEFORE_LAKEBED = 0x2708,
GAVE_INVOICE_TO_DOCTOR = 0x2710,
PALACE_EAST_SOL_TAKEN_IN_PHANTOM_ZANT_ROOM = 0x2720,
SOL_FLAG_4 = 0x2740,
PALACE_EAST_SOL_TAKEN_OUT_OF_PHANTOM_ZANT_ROOM = 0x2780,
SAW_ULI_TEXT_BEFORE_LEAVING_RUSLS_HOUSE = 0x2801,
TALKED_TO_ULI_A_SECOND_TIME_AFTER_FARON_TWILIGHT = 0x2802,
TALKED_TO_ULI_AFTER_FARON_TWILIGHT = 0x2804,
SAW_FORCED_ULI_TEXT_IN_RUSLS_HOUSE_AFTER_FARON_TWILIGHT = 0x2808,
TALKED_TO_JAGGLE_A_SECOND_TIME_AFTER_FARON_TWILIGHT = 0x2810,
TALKED_TO_JAGGLE_AFTER_FARON_TWILIGHT = 0x2820,
USED_OOCCOO_FOR_THE_FIRST_TIME = 0x2840,
HELM_SPLITTER_UNLOCKED = 0x2901,
BACKSLICE_UNLOCKED = 0x2902,
ENDING_BLOW_UNLOCKED = 0x2904,
SHIELD_ATTACK_UNLOCKED = 0x2908,
LISTENED_TO_LADY_SPIRITS_TALKING_IN_WEST_CASTLE_TOWN_DURING_TWILIGHT = 0x2910,
FREED_UNDERWATER_GORON_IN_ZORAS_DOMAIN = 0x2920,
GOT_ASHEIS_SKETCH = 0x2940,
TALKED_TO_ASHEI_IN_TELMAS_BAR = 0x2980,
TALKED_TO_ZORA_SOLDIER_NEAR_LAKEBED_ENTRANCE_AFTER_OPENING = 0x2A01,
TALKED_TO_ZORA_SOLDIER_NEAR_LAKEBED_ENTRANCE_BEFORE_OPENING = 0x2A02,
TALKED_TO_ASHEI_IN_TELMAS_BAR_AFTER_FINISHING_SPR = 0x2A04,
ORDON_DAY_2_LIT_COROS_POT = 0x2A10,
GREAT_SPIN_UNLOCKED = 0x2A20,
JUMP_STRIKE_UNLOCKED = 0x2A40,
MORTAL_DRAW_UNLOCKED = 0x2A80,
TALKED_TO_DOCTOR_AFTER_RESTORING_ILIAS_MEMORY = 0x2B02,
SHOWED_WOOD_STATUE_TO_DOCTOR = 0x2B04,
FIXED_THE_MIRROR_OF_TWILIGHT = 0x2B08,
TALKED_TO_LADIES_OUTSIDE_CENTRAL_CASTLE_TOWN_SHOP_BEFORE_MALO_MART = 0x2B10,
UNK_2B20 = 0x2B20,
TALKED_TO_GOR_CORON_AFTER_CLEARING_GORON_MINES = 0x2C01,
SAVED_MONKEY_IN_FARON_TWILIGHT = 0x2C02,
UNK_2C04 = 0x2C04,
TALKED_TO_RUSL_IN_TELMAS_BAR = 0x2C08,
RAISED_MIRROR_IN_MIRROR_CHAMBER = 0x2C10,
UNK_2C20 = 0x2C20,
UNK_2C40 = 0x2C40,
TALKED_TO_TELMA_AFTER_RECOVERING_ILIAS_MEMORY = 0x2C80,
TALKED_TO_DARBUS_AFTER_RESTORING_ILIAS_MEMORY = 0x2D01,
UNK_2D02 = 0x2D02,
UNK_2D04 = 0x2D04,
TALKED_TO_GORON_BY_BARNES_SHOP_AFTER_GORON_MINES = 0x2D08,
TALKED_TO_GORON_IN_KAKARIKO_HOTSPRING_AFTER_GORON_MINES = 0x2D10,
TALKED_TO_GORON_BY_KAKARIKO_WATCHTOWER_AFTER_GORON_MINES = 0x2D20,
TALKED_TO_GORON_IN_FRONT_OF_KAKARIKO_INN_AFTER_GORON_MINES = 0x2D40,
TALKED_TO_FIRST_GORON_ON_DEATH_MOUNTAIN_TRAIL_AFTER_GORON_MINES = 0x2D80,
TALKED_TO_ADULT_GORON_AFTER_OPENING_HOTSPRING_WATER_SHOP_IN_CASTLE_TOWN = 0x2E01,
TALKED_TO_AGITHA_FOR_THE_FIRST_TIME_OUTSIDE_SOUTH_CASTLE_TOWN = 0x2E02,
GAVE_ALL_24_GOLDEN_BUGS_TO_AGITHA = 0x2E04,
HIDDEN_VILLAGE_BARRIER_REMOVED = 0x2E08,
HELPED_OUTSIDE_SOUTH_CASTLE_TOWN_GORON = 0x2E10,
BRIDGE_REPAIR_FUNDRAISING_COMPLETED = 0x2E20,
TALKED_TO_GOR_EBIZO_IN_KAKARIKO = 0x2E40,
TALKED_TO_DARBUS_AFTER_CLEARING_GORON_MINES = 0x2E80,
TALKED_TO_GORON_OUTSIDE_SOUTH_CASTLE_TOWN = 0x2F01,
UNK_2F02 = 0x2F02,
GOT_MEDICINE_SCENT = 0x2F04,
TALKED_TO_BARNES_AFTER_UNLOCKING_BOMBLINGS = 0x2F08,
TALKED_TO_BARNES_AFTER_UNLOCKING_WATER_BOMBS = 0x2F10,
TALKED_TO_CHILD_GORON_BEFORE_OPENING_HOTSPRING_WATER_SHOP_IN_CASTLE_TOWN = 0x2F20,
TALKED_TO_CHILD_GORON_AFTER_OPENING_HOTSPRING_WATER_SHOP_IN_CASTLE_TOWN = 0x2F40,
TALKED_TO_GORON_OUTSIDE_EAST_CASTLE_TOWN = 0x2F80,
TALKED_TO_GOR_LIGGS_AFTER_UNK = 0x3001,
STARTED_HOTSPRING_WATER_MINIGAME = 0x3002,
TALKED_TO_GOR_LIGGS_IN_KAKARIKO_VILLAGE = 0x3004,
TALKED_TO_GOR_AMATO_IN_GORON_MINES = 0x3008,
UNK_3010 = 0x3010,
TALKED_TO_GORON_OUTSIDE_SOUTH_CASTLE_TOWN_AFTER_GIVING_WATER = 0x3020,
GAVE_HOTSPRING_WATER_TO_GORON_OUTSIDE_SOUTH_CASTLE_TOWN = 0x3040,
TALKED_TO_JOVANI_FOR_THE_FIRST_TIME_BEFORE_POE = 0x3080,
M_STAG_BEETLE_TURNED_IN = 0x3101,
F_BUTTERFLY_TURNED_IN = 0x3102,
M_BUTTERFLY_TURNED_IN = 0x3104,
F_BEETLE_TURNED_IN = 0x3108,
M_BEETLE_TURNED_IN = 0x3110,
WARPED_SKY_CANNON_TO_LAKE_HYLIA = 0x3120,
TALKED_TO_GOR_LIGGS_AFTER_TALKING_TO_GORON_OUTSIDE_EAST_CASTLE_TOWN = 0x3140,
TALKED_TO_GOR_LIGGS_AFTER_BRIDGE_HAS_BEEN_FIXED = 0x3180,
M_MANTIS_TURNED_IN = 0x3201,
F_PILLBUG_TURNED_IN = 0x3202,
M_PILLBUG_TURNED_IN = 0x3204,
F_PHASMID_TURNED_IN = 0x3208,
M_PHASMID_TURNED_IN = 0x3210,
F_GRASSHOPPER_TURNED_IN = 0x3220,
M_GRASSHOPPER_TURNED_IN = 0x3240,
F_STAG_BEETLE_TURNED_IN = 0x3280,
M_ANT_TURNED_IN = 0x3301,
F_DRAGONFLY_TURNED_IN = 0x3302,
M_DRAGONFLY_TURNED_IN = 0x3304,
F_SNAIL_TURNED_IN = 0x3308,
M_SNAIL_TURNED_IN = 0x3310,
F_LADYBUG_TURNED_IN = 0x3320,
M_LADYBUG_TURNED_IN = 0x3340,
F_MANTIS_TURNED_IN = 0x3380,
F_DAYFLY_TURNED_IN = 0x3420,
M_DAYFLY_TURNED_IN = 0x3440,
F_ANT_TURNED_IN = 0x3480,
TALKED_TO_GOR_LIGGS_IN_GORON_MINES = 0x3701,
TALKED_TO_GOR_EBIZO_IN_GORON_MINES = 0x3702,
TALKED_TO_POSTMAN_FOR_THE_FIRST_TIME = 0x3704,
TALKED_TO_GOR_LIGGS_AFTER_TALKING_TO_GORON_OUTSIDE_EAST_CASTLE_TOWN_BEFORE_FIXING_BRIDGE = 0x3710,
TEMP_USED_AFTER_PAYING_TO_FISH_WITH_HENA = 0x3801,
TALKED_TO_HENA_FOR_THE_FIRST_TIME = 0x3802,
ENTERED_HENAS_CABIN_FOR_THE_FIRST_TIME = 0x3804,
TALKED_TO_GENGLE_AFTER_COLLECTING_20_POE_SOULS = 0x3808,
TALKED_TO_JOVANI_AFTER_COLLECTING_60_POE_SOULS = 0x3820,
UNK_3840 = 0x3840,
TALKED_TO_JOVANI_AFTER_DEFEATING_THE_POE_IN_HIS_HOUSE = 0x3880,
WON_2ND_SUMO_ROUND_AGAINST_BO = 0x3901,
RELEASED_FIRST_CAUGHT_FISH_ORDON_DAY_2 = 0x3902,
BEAT_ROLLGOAL_1_8 = 0x3904,
CAUGHT_THE_FISHING_BOTTLE = 0x3908,
RESERVED_FOR_FISHING_1 = 0x3910,
CAUGHT_THE_SINKING_LURE = 0x3920,
WENT_FISHING_WITH_HENA_FOR_THE_FIRST_TIME = 0x3940,
TEMP_USED_AFTER_PAYING_TO_FISH_WITH_HENA_2 = 0x3980,
TALKED_WITH_RALIS_IN_KAKARIKO_GRAVEYARD = 0x3A01,
TALKED_TO_RALIS_IN_ZORAS_DOMAIN_THRONE_ROOM = 0x3A02,
HOWLED_AT_HIDDEN_VILLAGE_STONE = 0x3A04,
HOWLED_AT_SNOWPEAK_STONE = 0x3A08,
HOWLED_AT_LAKE_HYLIA_STONE = 0x3A10,
HOWLED_AT_SACRED_GROVE_OUTSIDE_STONE = 0x3A20,
HOWLED_AT_UPPER_ZORAS_RIVER_STONE = 0x3A40,
HOWLED_AT_DEATH_MOUNTAIN_STONE = 0x3A80,
TALKED_WITH_LUDA_AFTER_RALIS_RETURNS_TO_ZORAS_DOMAIN = 0x3B01,
TALKED_WITH_LUDA_WHILE_RALIS_IS_IN_KAKARIKO_GRAVEYARD = 0x3B02,
TALKED_TO_FYER_ABOUT_REPAIRING_THE_SKY_CANNON = 0x3B04,
SKY_CANNON_REPAIRED = 0x3B08,
WON_SNOWBOARD_RACE_AGAINST_YETA = 0x3B10,
TALKED_TO_YETA_AFTER_WINNING_RACE_AGAINST_YETO = 0x3B20,
WON_SNOWBOARD_RACE_AGAINST_YETO = 0x3B40,
GOT_CORAL_EARRING_FROM_RALIS = 0x3B80,
GOT_SKILL_FROM_BULBLIN_CAMP_WOLF = 0x3C01,
GOT_SKILL_FROM_SOUTH_CT_FIELD_WOLF = 0x3C02,
GOT_SKILL_FROM_WEST_CT_WOLF = 0x3C04,
GOT_SKILL_FROM_ORDON_WOLF = 0x3C08,
TALKED_TO_WHITE_CUCCOO_INSIDE_FENCES_NEXT_TO_BOS_HOUSE_AS_WOLF_AT_NIGHT = 0x3C20,
TALKED_TO_GORON_OUTSIDE_BARNES_SHOP_AFTER_UNLOCKING_BOMBLINGS = 0x3C40,
TALKED_TO_GORON_OUTSIDE_BARNES_SHOP_AFTER_UNLOCKING_WATER_BOMBS = 0x3C80,
ELDIN_SPRING_HAS_FARIES = 0x3D01,
FARON_SPRING_HAS_FARIES = 0x3D02,
ORDON_SPRING_HAS_FARIES = 0x3D04,
ENTER_RUSLS_HOUSE_AFTER_FARON_TWILIGHT = 0x3D08,
UNK_3D10 = 0x3D10,
GOT_SKILL_FROM_BARRIER_WOLF = 0x3D40,
GOT_SKILL_FROM_GRAVEYARD_WOLF = 0x3D80,
TALKED_WITH_COLIN_WHILE_RALIS_IS_IN_KAKARIKO_GRAVEYARD = 0x3E01,
CITY_OOCCOO_CS_WATCHED = 0x3E02,
FOUND_OOCCOO_FOR_THE_SECOND_TIME = 0x3E04,
FOUND_OOCCOO_FOR_THE_FIRST_TIME = 0x3E08,
OOCCOO_NOW_HAS_OOCCOO_JR_NEXT_TO_HER = 0x3E10,
OOCCOO_MET_BUT_DOESNT_HAVE_OOCCOO_JR_YET_UNSET_ONCE_JR_MET = 0x3E20,
SPRING_SPIRITS_CAN_GIVE_FARY_TEARS = 0x3E40,
LANAYRU_SPRING_HAS_FARIES = 0x3E80,
TALKED_TO_SERA_A_SECOND_TIME_AFTER_ELDIN_TWILIGHT = 0x3F01,
TALKED_TO_SERA_AFTER_ELDIN_TWILIGHT = 0x3F02,
TALKED_TO_JAGGLE_AFTER_ELDIN_TWILIGHT = 0x3F04,
TALKED_TO_ULI_AFTER_GM = 0x3F08,
TALKED_TO_ULI_A_SECOND_TIME_AFTER_ELDIN_TWILIGHT = 0x3F10,
TALKED_TO_ULI_AFTER_ELDIN_TWILIGHT = 0x3F20,
TALKED_WITH_COLIN_AFTER_RALIS_RETURNS_TO_ZORAS_DOMAIN = 0x3F40,
TALKED_TO_RUSL_IN_TELMAS_BAR_AFTER_FINISHING_TOT = 0x4001,
RUSL_IN_N_FARON_SUMMONS_GOLD_CUCCO = 0x4002,
DECLINED_TO_HELP_RUSL_IN_N_FARON_OFF_AFTER_SAYING_YES = 0x4004,
VISITED_DESERT_FOR_THE_FIRST_TIME = 0x4008,
TALKED_TO_ZORA_BOMB_SELLER_BY_LAKEBED_ENTRANCE_BEFORE_OPENING = 0x4010,
TALK_TO_HANCH_AFTER_ELDIN_TWILIGHT = 0x4020,
TALK_TO_HANCH_AFTER_FARON_TWILIGHT = 0x4040,
SAVED_MONKEY_FROM_PUPPETS = 0x4080,
TALKED_TO_UNDERWATER_GORON_IN_ZORAS_DOMAIN_AFTER_X_ = 0x4104,
TALK_TO_FADO_AFTER_FARON_TWILIGHT = 0x4108,
TALK_TO_FADO_AFTER_ELDIN_TWILIGHT = 0x4110,
TALK_TO_PERGIE_AFTER_FARON_TWILIGHT = 0x4140,
TALK_TO_PERGIE_AFTER_ELDIN_TWILIGHT = 0x4180,
WATCHED_POST_TOT_OOCCOO_CS = 0x4201,
TRIGGERED_MONKEY_PUPPET_SCENE = 0x4202,
WATCHED_CUTSCENE_WITH_RUSL_IN_N_FARON_AFTER_FINISHING_SPR = 0x4204,
BARRIER_GONE = 0x4208,
MIDNA_TEXT_AFTER_WARPING_BACK_TO_FARON_IN_ELDIN_TWILIGHT = 0x4220,
GOATS_3_DONE = 0x4240,
PALACE_WEST_WING_SOL_IN_WEST_SLOT = 0x4302,
SENSES_UNLOCKED = 0x4308,
LISTENED_TO_ADULT_SPIRITS_NEXT_TO_FOUNTAIN_IN_CASTLE_TOWN_TWILIGHT = 0x4310,
TALKED_TO_JAGGLE_ORDON_DAY_3 = 0x4320,
TALKED_TO_EAST_CT_GUARD = 0x4380,
PALACE_EAST_WING_SOL_IN_WEST_SLOT = 0x4408,
PALACE_WEST_WING_SOL_IN_EAST_SLOT = 0x4420,
POSTMAN_LEAVES_FOR_THE_FIRST_TIME_1 = 0x4504,
POSTMAN_LEAVES_FOR_THE_FIRST_TIME_2 = 0x4508,
ORDON_DAY_2_OVER = 0x4510,
LISTENED_TO_SOLDIER_SPIRITS_IN_TELMAS_BAR_DURING_TWILIGHT_1 = 0x4520,
TOOK_CRADLE_FROM_MONKEY_DAY_2 = 0x4601,
TALKED_TO_FADO_DAY_2 = 0x4602,
RODE_EPONA_BACK_TO_LINKS_HOUSE_ORDON_DAY_1 = 0x4610,
REFUSE_TO_GIVE_WOODEN_SWORD_SECOND_TIME_ORDON_DAY_3 = 0x4620,
REFUSE_TO_GIVE_WOODEN_SWORD_FIRST_TIME_ORDON_DAY_3 = 0x4640,
UNK_4680 = 0x4680,
TALKED_TO_BO_ORDON_DAY_1 = 0x4701,
TALKED_TO_RUSL_ORDON_DAY_1 = 0x4702,
TALKED_TO_ILIA_BEFORE_CALLING_EPONA_ORDON_DAY_1 = 0x4704,
TALKED_TO_ILIA_AFTER_CALLING_EPONA_ORDON_DAY_1 = 0x4708,
USED_HAWK_GRASS_FOR_THE_FIRST_TIME_ORDON_DAY_2 = 0x4710,
CALLED_EPONA_IN_ORDON_SPRING = 0x4720,
TALKED_TO_HANCH_BEFORE_BEE_ATTACK_ORDON_DAY_2 = 0x4740,
TALKED_TO_BETH_ORDON_DAY_3 = 0x4780,
TALKED_TO_BETH_DURING_TALO_RESCUE_SEQUENCE = 0x4801,
TALKED_TO_MALO_DURING_TALO_RESCUE_SEQUENCE = 0x4804,
TALKED_TO_SERA_ORDON_DAY_1 = 0x4810,
FAILED_TO_CATCH_GOAT_IN_FRONT_OF_BOS_HOUSE_ORDON_DAY_3 = 0x4820,
CAUGHT_GOAT_IN_FRONT_OF_BOS_HOUSE_ORDON_DAY_3 = 0x4840,
TALKED_TO_BO_AFTER_CATCHING_A_GOAT_ORDON_DAY_3 = 0x4880,
TALKED_TO_TALO_IN_CAGE_DAY_2 = 0x4901,
BOUGHT_SLINGSHOT_FROM_SERA = 0x4902,
TALKED_TO_BO_START_OF_DAY_2 = 0x4908,
TALKED_TO_BO_AFTER_CATCHING_GOAT_DAY_2 = 0x4910,
TALKED_TO_COLIN_DURING_TALO_RESCUE_SEQUENCE = 0x4920,
STARTED_SLINGSHOT_TUTORIAL = 0x4A02,
SACRED_GROVE_STATUES_SWITCHED = 0x4A08,
SAW_TALO_IN_CAGE_CUTSCENE_ORDON_DAY_2 = 0x4A10,
TALO_CHASES_MONKEY = 0x4A20,
ORDON_DAY_1_FINISHED = 0x4A40,
ZOOMED_IN_ON_FISH_TANK_HENAS_HUT = 0x4A80,
TALKED_TO_TALO_AFTER_GIVING_HIM_THE_WOODEN_SWORD_DAY_3 = 0x4B02,
TALKED_TO_LANAYRU_SPIRIT_IN_TWILIGHT = 0x4B04,
TALKED_TO_KIDS_AFTER_FINISHING_SLINGSHOT_TUTORIAL = 0x4B08,
TALKED_TO_KIDS_AFTER_HITTING_OBJECT_SLINGSHOT_TUTORIAL = 0x4B10,
TALKED_TO_KIDS_BEFORE_HITTING_OBJECT_SLINGSHOT_TUTORIAL = 0x4B20,
BROKE_A_PUMPKIN_FIRST_SLINGSHOT_TUTORIAL = 0x4B40,
BROKE_A_TARGET_FIRST_SLINGSHOT_TUTORIAL = 0x4B80,
RESCUED_TALO_AND_THE_MONKEY_ORDON_DAY_2 = 0x4C01,
TALKED_TO_HANCH_ORDON_DAY_3 = 0x4C04,
TALKED_TO_HANCH_AFTER_TALKING_TO_SERA_ORDON_DAY_2 = 0x4C08,
UNK_4C20 = 0x4C20,
TALKED_TO_ZORA_CLOSE_TO_FYER_LAKE_HYLIA_AFTER_LANAYRU_TWILIGHT = 0x4C40,
PUT_BEE_LARVA_IN_BOTTLE_ORDON_DAY_2 = 0x4C80,
ZOOMED_IN_ON_LURES_1_HENA = 0x4D01,
WATCHED_CUTSCENE_AFTER_BEING_CAPTURED_IN_FARON_TWILIGHT = 0x4D08,
TALKED_TO_GENGLE_AFTER_TALKING_TO_JOVANI_IN_THE_BAR = 0x4D10,
TALKED_TO_JOVANI_IN_BAR = 0x4D40,
GOT_BOTTLE_FROM_JOVANI = 0x4D80,
ZOOMED_IN_ON_BOOK_HENAS_HUT = 0x4E01,
ZOOMED_IN_ON_CARPET_HENAS_HUT = 0x4E02,
ZOOMED_IN_ON_JARS_HENAS_HUT = 0x4E04,
ZOOMED_IN_ON_HAT_HENAS_HUT = 0x4E08,
ZOOMED_IN_ON_CANOE_HENAS_HUT = 0x4E10,
HENA_BEAT_ROLLGOAL_1_8_FROG_LURE = 0x4E20,
HENA_ZOOMED_IN_ON_LURES_2 = 0x4E80,
HENA_ZOOMED_IN_ON_LINK_LOACH_PIC_2 = 0x4F01,
HENA_ZOOMED_IN_ON_LINK_LOACH_PIC_1 = 0x4F02,
COMPARE_HENA_AND_IZA_PICTURES_HENAS_HUT = 0x4F04,
ZOOMED_IN_ON_HENA_PICTURE_LEFT = 0x4F08,
ZOOMED_IN_ON_HENA_PICTURE_RIGHT = 0x4F10,
ZOOMED_IN_ON_IZA_PICTURE_HENAS_HUT = 0x4F20,
ZOOMED_IN_ON_CORO_PICTURE_HENAS_HUT = 0x4F40,
ZOOMED_IN_ON_FISHERMAN_PICTURE_HENAS_HUT = 0x4F80,
UNK_5001 = 0x5001,
CAUGHT_AN_ADULT_HYLIAN_LOACH = 0x5002,
CAUGHT_FIRST_FISH_WITH_HENA = 0x5004,
CAUGHT_AN_ORDON_CATFISH_NON_BOAT = 0x5008,
CAUGHT_A_BABY_HYLIAN_LOACH = 0x5010,
CAUGHT_A_HYLIAN_PIKE_NON_BOAT = 0x5020,
CAUGHT_A_HYRULE_BASS_NON_BOAT = 0x5040,
CAUGHT_A_GREENGILL = 0x5080,
ZOOMED_IN_ON_ROLLGOAL_HENAS_HUT = 0x5102,
HENA_TALKS_ABOUT_HARDER_ROLLGOAL_BEFORE_2_1 = 0x5108,
BEAT_ROLLGOAL_LEVEL_HENAS_HUT = 0x5110,
LISTENED_TO_TWO_ZORA_SPIRITS_IN_DRAINED_LAKE_HYLIA_TWILIGHT = 0x5120,
LISTENED_TO_LONE_ZORA_SPIRIT_IN_DRAINED_LAKE_HYLIA_TWILIGHT = 0x5140,
LISTENED_TO_SOLDIER_SPIRITS_IN_TELMAS_BAR_DURING_TWILIGHT_2 = 0x5180,
DANGORO_WENT_IN_A_BALL_FOR_THE_FIRST_TIME = 0x5204,
THREW_DANGORO_IN_LAVA_FOR_THE_FIRST_TIME = 0x5208,
FYRUS_GETS_UP_FIRST_TIME = 0x5210,
FYRUS_KNOCKED_DOWN_FIRST_TIME = 0x5220,
OOCCOO_SHOPKEEPER_OPENING_TEXT_READ = 0x5301,
TALKED_TO_GUY_OUTSIDE_CT_MALO_MART = 0x5308,
TALKED_TO_LADY_OUTSIDE_AGITHAS_CASTLE = 0x5401,
TALKED_TO_NPC_BY_SPRINGWATER = 0x5404,
TALKED_TO_NPC_BY_SPRINGWATER_SHOP_BEFORE_FIXING = 0x5408,
PALACE_OF_TWILIGHT_CLEARED = 0x5410,
UPDATE_SHARDS_TO_HAVE_AT_LEAST_ARBITERS_SHARD = 0x5420,
USED_SENSES_TO_SEE_STATUE_GHOST_IN_TEMPLE_OF_TIME_FIRST_ROOM = 0x5440,
UNK_5502 = 0x5502,
TALKED_TO_SOLDIER_IN_SOUTH_CASTLE_TOWN_BY_FLOWER_SHOP = 0x5504,
FIRST_FROG_LURE_FAIL_WITH_HENA = 0x5508,
TALKED_TO_JOVANI_AFTER_COLLECTING_20_POE_SOULS = 0x5510,
TALKED_TO_PLUMM_AS_HUMAN_AFTER_LANAYRU_TWILIGHT = 0x5520,
TALKED_WITH_CAT_AFTER_MIDNAS_DESPERATE_HOUR = 0x5601,
LISTENED_TO_IZA_SPIRIT_DURING_TWILIGHT_WHILE_DOMAIN_IS_STILL_FROZEN = 0x5604,
CAUGHT_A_REEKFISH = 0x5608,
TALKED_TO_THE_WEST_CT_DOG = 0x5710,
TALKED_WITH_BLACKWHITE_CAT_AFTER_SAVING_JOVANI = 0x5740,
TALKED_TO_SHOE_SHINER_IN_CENTRAL_CASTLE_TOWN = 0x5801,
TALKED_TO_RENADO_AFTER_RESTORING_ILIAS_MEMORY = 0x5804,
TALKED_TO_SOUTH_STARING_MAN_IN_EAST_CASTLE_TOWN = 0x5810,
TALKED_TO_NORTH_STARING_MAN_IN_EAST_CASTLE_TOWN = 0x5820,
TALKED_TO_FRUIT_SHOP_SELLER_IN_SOUTH_CASTLE_TOWN = 0x5840,
TALKED_TO_THE_CT_SHOE_SHINER = 0x5901,
IZA_2_MINIGAME_DONE = 0x5908,
UNK_5920 = 0x5920,
ENCOUNTER_POSTMAN_FOR_THE_FIRST_TIME = 0x5940,
TRIED_TO_ENTER_CENTRAL_CASTLE_TOWN_SHOP_WITH_DIRTY_SHOES = 0x5980,
AGREED_TO_DO_CAT_MINIGAME = 0x5B02,
TALKED_TO_HIDDEN_VILLAGE_CUCCO = 0x5B04,
CAT_MINIGAME_DONE = 0x5B08,
TALKED_TO_OWL_ORDON_WOLF_NIGHT = 0x5B10,
GENEROUS_WITH_TRILL_1 = 0x5C01,
TALKED_TO_SERA_ORDON_DAY_3 = 0x5C02,
CHEAP_WITH_TRILL_TEXT_AFTER_LEAVING = 0x5C04,
STOLE_FROM_TRILL_OR_TALKED_WITH_HIM_AS_WOLF = 0x5C08,
UNK_5C10 = 0x5C10,
TALKED_TO_IZA_SPIRIT_AFTER_MELTING_ZORAS_DOMAIN_TWILIGHT = 0x5C20,
SCOOPED_COROS_NASTY_SOUP = 0x5C80,
CAN_NOW_WARP_METEOR = 0x5D01,
GENEROUS_WITH_TRILL_2 = 0x5D02,
CHEAP_WITH_TRILL_TEXT_AFTER_PAYING = 0x5D04,
MIDNA_TEXT_AFTER_FROZEN_ZORAS_DOMAIN_TWILIGHT_INTRO_CS = 0x5D10,
MIDNA_TEXT_AFTER_TWILIGHT_KAGOROK_FLIGHT = 0x5D20,
MIDNA_TEXT_AFTER_LANDING_IN_LAKE_HYLIA_DURING_LANAYRU_TWILIGHT = 0x5D40,
ILIA_TEXT_AFTER_HORSE_CALL_CS = 0x5E04,
MIDNA_TEXT_AFTER_FOREST_TEMPLE_DONE = 0x5E10,
UNK_5E20 = 0x5E20,
FORCED_MIDNA_TEXT_AFTER_TOUCHING_FOG_IN_PALACE_OF_TWILIGHT = 0x5E40,
FORCED_MIDNA_TEXT_AFTER_LANDING_ON_THE_FLIGHT_BY_FOUL_PLATFORM = 0x5E80,
GOT_AN_APPLE_FROM_FRUIT_STAND_IN_SOUTH_CASTLE_TOWN = 0x5F02,
TALKED_TO_ZORA_BY_WATERFALL_IN_ZORAS_DOMAIN = 0x5F04,
FYER_REACTS_TO_SPECIAL_REPAIRS = 0x5F08,
WATCHED_FIRST_CANNON_CS_IN_BASEMENT = 0x5F10,
SHAD_LEAVES_SO_YOU_CAN_WARP = 0x5F20,
ANCIENT_SKYBOOK_FROM_IMPAZ = 0x5F80,
TALKED_TO_FYER_AFTER_LANAYRU_TWILIGHT = 0x6001,
ASKED_FYER_FOR_SPECIAL_REPAIRS_BEFORE_WARPING_THE_CANNON = 0x6002,
SHAD_COMES_BACK_AFTER_ALL_LETTERS_WERE_GOTTEN = 0x6004,
LAKE_HYLIA_SKY_LETTER = 0x6008,
BRIDGE_OF_ELDIN_SKY_LETTER = 0x6010,
GORGE_SKY_LETTER = 0x6020,
DESERT_SKY_LETTER = 0x6040,
FARON_SKY_LETTER = 0x6080,
BOUGHT_HYLIAN_SHIELD_AT_MALO_MART = 0x6102,
MIDNA_TEXT_AFTER_YOU_ENTERED_ELDIN_TWILIGHT = 0x6104,
TRILL_WILL_TRY_TO_KILL_YOU = 0x6110,
GOT_REEKFISH_SCENT = 0x6120,
REMOVE_MIDNA_FROM_Z = 0x6140,
TALKED_TO_LAZY_GORON = 0x6180,
AMPITHEATER_SKYLETTER = 0x6204,
STARTED_STAR_1 = 0x6208,
GOT_POE_SCENT = 0x6210,
GIRLS_IN_CASTLE_TOWN_START_CHASING_LINK = 0x6220,
TALKED_TO_COLIN_ORDON_DAY_1 = 0x6280,
HENA_BEAT_ROLLGOAL_8_8 = 0x6302
};
+82
View File
@@ -0,0 +1,82 @@
#include "stages.h"
const char allStages[78][8] = {
"D_MN01", // 0
"D_MN01A", // 1
"D_MN01B", // 2
"D_MN04", // 3
"D_MN04A", // 4
"D_MN04B", // 5
"D_MN05", // 6
"D_MN05A", // 7
"D_MN05B", // 8
"D_MN06", // 9
"D_MN06A", // 10
"D_MN06B", // 11
"D_MN07", // 12
"D_MN07A", // 13
"D_MN07B", // 14
"D_MN08", // 15
"D_MN08A", // 16
"D_MN08B", // 17
"D_MN08C", // 18
"D_MN08D", // 19
"D_MN09", // 20
"D_MN09A", // 21
"D_MN09B", // 22
"D_MN09C", // 23
"D_MN10", // 24
"D_MN10A", // 25
"D_MN10B", // 26
"D_MN11", // 27
"D_MN11A", // 28
"D_MN11B", // 29
"D_SB00", // 30
"D_SB01", // 31
"D_SB02", // 32
"D_SB03", // 33
"D_SB04", // 34
"D_SB05", // 35
"D_SB06", // 36
"D_SB07", // 37
"D_SB08", // 38
"D_SB09", // 39
"D_SB10", // 40
"F_SP00", // 41
"F_SP102", // 42
"F_SP103", // 43
"F_SP104", // 44
"F_SP108", // 45
"F_SP109", // 46
"F_SP110", // 47
"F_SP111", // 48
"F_SP112", // 49
"F_SP113", // 50
"F_SP114", // 51
"F_SP115", // 52
"F_SP116", // 53
"F_SP117", // 54
"F_SP118", // 55
"F_SP121", // 56
"F_SP122", // 57
"F_SP123", // 58
"F_SP124", // 59
"F_SP125", // 60
"F_SP126", // 61
"F_SP127", // 62
"F_SP128", // 63
"F_SP200", // 64
"R_SP01", // 65
"R_SP107", // 66
"R_SP108", // 67
"R_SP109", // 68
"R_SP110", // 69
"R_SP116", // 70
"R_SP127", // 71
"R_SP128", // 72
"R_SP160", // 73
"R_SP161", // 74
"R_SP209", // 75
"R_SP300", // 76
"R_SP301" // 77
};
+85
View File
@@ -0,0 +1,85 @@
#pragma once
enum StageIDs
{
Lakebed_Temple = 0x0,
Morpheel = 0x1,
Deku_Toad,
Goron_Mines,
Fyrus,
Dangoro,
Forest_Temple,
Diababa,
Ook,
Temple_of_Time,
Armogohma,
Darknut,
City_in_the_Sky,
Argorok,
Aeralfos,
Palace_of_Twilight,
Zant_Main_Room,
Phantom_Zant_1,
Phantom_Zant_2,
Zant_Fight,
Hyrule_Castle,
Ganondorf_Castle,
Ganondorf_Field,
Ganondorf_Defeated,
Arbiters_Grounds,
Stallord,
Death_Sword,
Snowpeak_Ruins,
Blizzeta,
Darkhammer,
Lanayru_Ice_Puzzle_Cave,
Cave_of_Ordeals,
Eldin_Long_Cave,
Lake_Hylia_Long_Cave,
Eldin_Goron_Stockcave,
Grotto_1,
Grotto_2,
Grotto_3,
Grotto_4,
Grotto_5,
Faron_Woods_Cave,
Ordon_Ranch,
Title_Screen,
Ordon_Village,
Ordon_Spring,
Faron_Woods,
Kakariko_Village,
Death_Mountain,
Kakariko_Graveyard,
Zoras_River,
Zoras_Domain,
Snowpeak,
Lake_Hylia,
Castle_Town,
Sacred_Grove,
Bulblin_Camp,
Hyrule_Field,
Outside_Castle_Town,
Bulblin_2,
Gerudo_Desert,
Mirror_Chamber,
Upper_Zoras_River,
Fishing_Pond,
Hidden_Village,
Hidden_Skill,
Ordon_Village_Interiors,
Hyrule_Castle_Sewers,
Faron_Woods_Interiors,
Kakariko_Village_Interiors,
Death_Mountain_Interiors,
Castle_Town_Interiors,
Fishing_Pond_Interiors,
Hidden_Village_Interiors,
Castle_Town_Shops,
Star_Game,
Kakariko_Graveyard_Interiors,
Light_Arrows_Cutscene,
Hyrule_Castle_Cutscenes
};
extern const char allStages[78][8];
+15
View File
@@ -1,4 +1,5 @@
#include "tools.h"
#include "stages.h"
#include "d/d_com_inf_game.h"
#include "d/actor/d_a_alink.h"
#include "d/d_item.h"
@@ -91,4 +92,18 @@ int initCreatePlayerItem(u32 item, u32 flag, const cXyz* pos, int roomNo, const
{
u32 params = 0xFF0000 | ((flag & 0xFF) << 0x8) | (item & 0xFF);
return fopAcM_create(539, params, pos, roomNo, angle, scale, -1);
}
int getStageID(const char* stage)
{
int loopCount = sizeof(allStages) / sizeof(allStages[0]);
for (int i = 0; i < loopCount; i++)
{
if (daAlink_c::checkStageName(allStages[i]))
{
return i;
}
}
// Didn't find the current stage for some reason
return -1;
}
+1
View File
@@ -7,3 +7,4 @@ void checkTransformFromWolf();
u8 setNextWarashibeItem();
void offWarashibeItem(u8 item);
int initCreatePlayerItem(u32 item, u32 flag, const cXyz* pos, int roomNo, const csXyz* angle, const cXyz* scale);
int getStageID(const char* stage);