From b0809ea78c7817286c59b2e910677c27c11a4de7 Mon Sep 17 00:00:00 2001 From: roeming Date: Thu, 30 Apr 2026 11:02:18 -0400 Subject: [PATCH] Add area flags --- src/dusk/imgui/ImGuiEventFlags.hpp | 2557 ++++++++++++++++++++++++++++ 1 file changed, 2557 insertions(+) diff --git a/src/dusk/imgui/ImGuiEventFlags.hpp b/src/dusk/imgui/ImGuiEventFlags.hpp index 694336da03..e759d46b8d 100644 --- a/src/dusk/imgui/ImGuiEventFlags.hpp +++ b/src/dusk/imgui/ImGuiEventFlags.hpp @@ -3,6 +3,9 @@ #include #include +#include +#include +#include struct duskImguiEventFlagEntry { uint8_t byteIndex; @@ -839,4 +842,2558 @@ inline const MultiBitEventFlag duskImguiSwappedU16Events[] = { { 0xfd, "Rupees owed to Trill" }, }; +struct EventAreaFlags +{ + uint8_t byteIndex; + uint8_t bitIndex; + uint16_t flagID; + std::string description; +}; + +inline EventAreaFlags eventAreaFlagsAG[] = +{ + { 0x00, 0x80, 0x0080, "Ooccoo Map Flag" }, + { 0x00, 0x40, 0x0040, "fourth small chest epic spinner room" }, + { 0x00, 0x20, 0x0020, "third small chest epic spinner room" }, + { 0x00, 0x10, 0x0010, "first small chest epic spinner room" }, + { 0x00, 0x08, 0x0008, "second small chest epic spinner room" }, + { 0x00, 0x04, 0x0004, "PoH first big chest epic spinner room" }, + { 0x00, 0x02, 0x0002, "small chest first west room" }, + { 0x00, 0x01, 0x0001, "small key big chest elevator room B1" }, + { 0x01, 0x80, 0x0180, "small key big chest first room" }, + { 0x01, 0x20, 0x0120, "small key small chest fouth east room" }, + { 0x01, 0x10, 0x0110, "big key chest" }, + { 0x01, 0x08, 0x0108, "PoH right big chest main room" }, + { 0x01, 0x04, 0x0104, "map left big chest main room" }, + { 0x01, 0x02, 0x0102, "west small chest in second west room" }, + { 0x01, 0x01, 0x0101, "north east small chest in second west room" }, + { 0x02, 0x08, 0x0208, "Spinner big chest" }, + { 0x03, 0x40, 0x0340, "small key small chest first east room B1" }, + { 0x03, 0x20, 0x0320, "small key big chest second east room 2F" }, + { 0x03, 0x10, 0x0310, "compass big chest second east room 2F" }, + { 0x03, 0x08, 0x0308, "big chest first west room" }, + { 0x08, 0x80, 0x0880, "killed second poe (triggers flame getting lit cs)" }, + { 0x08, 0x40, 0x0840, "killed first poe" }, + { 0x08, 0x08, 0x0808, "open gate to spinner in mini-boss room cs" }, + { 0x08, 0x04, 0x0804, "unlock exit in mini-boss room (despawns mini-boss)" }, + { 0x08, 0x01, 0x0801, "unlocked boss door" }, + { 0x09, 0x10, 0x0910, "started pulling chain in second east room 1F (stays set)" }, + { 0x09, 0x04, 0x0904, "stairs to lower east room appeared in main room" }, + { 0x09, 0x02, 0x0902, "risen tracks on pillar before boss" }, + { 0x09, 0x01, 0x0901, "unlocked door in second west room" }, + { 0x0A, 0x10, 0x0A10, "killed second poe (duplicate)" }, + { 0x0A, 0x02, 0x0A02, "Tiny bugs spawn in first room small key area (duplicate)" }, + { 0x0A, 0x01, 0x0A01, "Tiny bugs spawn in first room small key area" }, + { 0x0B, 0x80, 0x0B80, "stairs to lower west room appeared in main room cs" }, + { 0x0B, 0x20, 0x0B20, "turn walls in third room 2B cs" }, + { 0x0B, 0x10, 0x0B10, "turn walls in third room 2B" }, + { 0x0B, 0x08, 0x0B08, "open gates in first room" }, + { 0x0B, 0x04, 0x0B04, "open gates in first room cs" }, + { 0x0B, 0x01, 0x0B01, "Stallord Phase 2" }, + { 0x0C, 0x80, 0x0C80, "killed third poe (triggers flame getting lit cs)" }, + { 0x0C, 0x40, 0x0C40, "Main Hall Dig Spot" }, + { 0x0C, 0x01, 0x0C01, "turned walls in first east room (stays set)" }, + { 0x0D, 0x02, 0x0D02, "turned slab in first east room B1 (stays set)" }, + { 0x0E, 0x10, 0x0E10, "Intro Cutscene" }, + { 0x0F, 0x80, 0x0F80, "unlocked door in second east room 2F" }, + { 0x0F, 0x40, 0x0F40, "open poe door once all poe flames are present (removes poe bodies)" }, + { 0x0F, 0x20, 0x0F20, "poe flame top left present" }, + { 0x0F, 0x10, 0x0F10, "poe flame bottom right present" }, + { 0x0F, 0x08, 0x0F08, "poe flame top right present" }, + { 0x0F, 0x04, 0x0F04, "poe flame bottom left present" }, + { 0x0F, 0x02, 0x0F02, "killed fourth poe (triggers flame getting lit cs)" }, + { 0x0F, 0x01, 0x0F01, "flame from third poe leaving lantern cs" }, + { 0x10, 0x40, 0x1040, "killed third poe (duplicate)" }, + { 0x10, 0x20, 0x1020, "flame from second poe leaving lantern cs" }, + { 0x10, 0x10, 0x1010, "open walls in third east room" }, + { 0x10, 0x08, 0x1008, "unlocked door in elevator room 2B" }, + { 0x10, 0x04, 0x1004, "unlocked door in first room" }, + { 0x10, 0x02, 0x1002, "killed stalfos in second west room" }, + { 0x11, 0x80, 0x1180, "killed gibdo in first east room B1" }, + { 0x11, 0x20, 0x1120, "reach boss door (unset once you enter)" }, + { 0x11, 0x04, 0x1104, "killed third poe (duplicate)" }, + { 0x11, 0x02, 0x1102, "unlock door in second room" }, + { 0x11, 0x01, 0x1101, "lit right torch in second room" }, + { 0x12, 0x80, 0x1280, "lit left torch in second room" }, + { 0x12, 0x40, 0x1240, "close spinner slot for walls in third room 2B" }, + { 0x12, 0x20, 0x1220, "unlocked door in first east room 1F" }, + { 0x12, 0x08, 0x1208, "risen tracks on pillar before boss cs" }, + { 0x12, 0x04, 0x1204, "pushed block in first west room" }, + { 0x12, 0x01, 0x1201, "taken down the cube in the second east room 1F" }, + { 0x13, 0x80, 0x1380, "placed cube at the right spot in the second east room 1F" }, + { 0x13, 0x40, 0x1340, "unlock door in fouth east room" }, + { 0x13, 0x20, 0x1320, "close poe door (unsets after lighting torches)" }, + { 0x13, 0x08, 0x1308, "main room poes taking flames cs" }, + { 0x14, 0x10, 0x1410, "explored first room" }, + { 0x14, 0x08, 0x1408, "open exit door in boss room" }, + { 0x15, 0x80, 0x1580, "Midna Text after defeating boss" }, + { 0x15, 0x08, 0x1508, "killed first stalfos in room before mini-boss" }, + { 0x15, 0x04, 0x1504, "killed second stalfos in room before mini-boss" }, + { 0x15, 0x02, 0x1502, "killed third stalfos in room before mini-boss" }, + { 0x15, 0x01, 0x1501, "extend platform to exit in boss room" }, + { 0x16, 0x80, 0x1680, "open gate to spinner in mini-boss room cs" }, + { 0x16, 0x40, 0x1640, "open gate to spinner in mini-boss room" }, + { 0x16, 0x10, 0x1610, "open wall in third west room cs (unset once you leave)" }, + { 0x16, 0x08, 0x1608, "pulled chain in main room" }, + { 0x16, 0x04, 0x1604, "pulled the chain in first room (triggers cs)" }, + { 0x16, 0x02, 0x1602, "open wall in third west room" }, + { 0x17, 0x40, 0x1740, "killed gibdos in third east room" }, + { 0x17, 0x20, 0x1720, "Ooccoo Rescued" }, + { 0x17, 0x10, 0x1710, "opened gates in room before mini-boss" }, + { 0x17, 0x08, 0x1708, "killed fourth poe (duplicate)" }, + { 0x17, 0x02, 0x1702, "dig spot in third east room" }, + { 0x17, 0x01, 0x1701, "Spinner big chest (set after)" }, +}; + +inline EventAreaFlags eventAreaFlagsCastleTown[] = +{ + { 0x03, 0x02, 0x0302, "small chest on doctor's balcony" }, + { 0x06, 0x10, 0x0610, "tear of light next to Telma's bar" }, + { 0x08, 0x80, 0x0880, "killed poe in Jovani's house (set if you dig into the house)" }, + { 0x08, 0x04, 0x0804, "explored 3nd room Jovani-Sewers " }, + { 0x08, 0x02, 0x0802, "explored 2nd room Jovani-Sewers " }, + { 0x08, 0x01, 0x0801, "?" }, + { 0x09, 0x80, 0x0980, "?" }, + { 0x09, 0x40, 0x0940, "?" }, + { 0x09, 0x20, 0x0920, "?" }, + { 0x09, 0x02, 0x0902, "intro cs twlight" }, + { 0x09, 0x01, 0x0901, "midna text after listening to Telma and Ilia spirits during twilight" }, + { 0x0A, 0x80, 0x0A80, "midna breaking castle barrier cs" }, + { 0x0A, 0x20, 0x0A20, "warp you to Lanayru spring (trigger twilight end)" }, + { 0x0A, 0x10, 0x0A10, "fan girl text next to star tent" }, + { 0x0A, 0x04, 0x0A04, "star tent intro cs" }, + { 0x0A, 0x02, 0x0A02, "invisible wall behind doctor gone" }, + { 0x0A, 0x01, 0x0A01, "?" }, + { 0x0B, 0x80, 0x0B80, "water is back in town (twilight)" }, + { 0x0B, 0x40, 0x0B40, "explored east alley that leads south" }, + { 0x0B, 0x20, 0x0B20, "star tent has double clawshot mini-game" }, + { 0x0B, 0x10, 0x0B10, "explored area with star tent" }, + { 0x0B, 0x08, 0x0B08, "explored alley with entrance to Jovani's house" }, + { 0x0B, 0x04, 0x0B04, "explored alley with entrance to agitha's house" }, + { 0x0B, 0x02, 0x0B02, "explored area with entrance to Telma's bar" }, + { 0x0B, 0x01, 0x0B01, "STAR 1 Completed" }, + { 0x0D, 0x04, 0x0D04, "map marker hero's shade" }, + { 0x0E, 0x10, 0x0E10, "malo mart posters on shop" }, + { 0x0E, 0x08, 0x0E08, "magic armor bought malo mart" }, + { 0x0E, 0x04, 0x0E04, "?" }, + { 0x0E, 0x02, 0x0E02, "enter Telma's bar from top intro cs" }, + { 0x0E, 0x01, 0x0E01, "first right door to castle pushed once (default)" }, + { 0x0F, 0x80, 0x0F80, "first left door to castle pushed once (default)" }, + { 0x0F, 0x40, 0x0F40, "first right door to castle pushed twice" }, + { 0x0F, 0x20, 0x0F20, "first right door to castle half closed" }, + { 0x0F, 0x10, 0x0F10, "first left door to castle closed" }, + { 0x0F, 0x08, 0x0F08, "first left door to castle pushed twice" }, + { 0x0F, 0x04, 0x0F04, "Jovani's house intro cs" }, + { 0x0F, 0x02, 0x0F02, "Jovani text after killing poe" }, + { 0x0F, 0x01, 0x0F01, "open path to sewers (Jovani's house)" }, + { 0x10, 0x80, 0x1080, "?" }, + { 0x16, 0x80, 0x1680, "killed light bug next to Telma's bar" }, + { 0x17, 0x08, 0x1708, "Gengle free (Jovani's house)" }, + { 0x17, 0x04, 0x1704, "Midna opens map to look for the last light bug" }, +}; + +inline EventAreaFlags eventAreaFlagsCitS[] = +{ + { 0x00, 0x08, 0x0008, "south east underwater big chest outside shop" }, + { 0x00, 0x04, 0x0004, "big chest east wing second room 2F" }, + { 0x00, 0x02, 0x0002, "big chest west wing main room 2F" }, + { 0x00, 0x01, 0x0001, "small chest main room 4F outside" }, + { 0x01, 0x80, 0x0180, "small chest west wing north room 2F" }, + { 0x01, 0x40, 0x0140, "center small chest west wing main room 1F" }, + { 0x01, 0x20, 0x0120, "small chest west wing main room B1" }, + { 0x01, 0x10, 0x0110, "north east small chest west wing main room 1F" }, + { 0x01, 0x08, 0x0108, "small chest east wing second room 1F" }, + { 0x01, 0x04, 0x0104, "small chest east wing second room 2F" }, + { 0x01, 0x02, 0x0102, "big chest ouside north wing" }, + { 0x02, 0x80, 0x0280, "small chest west wing main room 3F" }, + { 0x02, 0x40, 0x0240, "small chest main room 3F inside" }, + { 0x02, 0x20, 0x0220, "big key chest" }, + { 0x02, 0x10, 0x0210, "big chest main room 4F outside" }, + { 0x02, 0x08, 0x0208, "small chest west wing main room 2F" }, + { 0x02, 0x02, 0x0202, "PoH big chest west wing main room 3F" }, + { 0x03, 0x80, 0x0380, "small chest west wing north room 3F" }, + { 0x03, 0x40, 0x0340, "PoH big chest west wing north room 2F" }, + { 0x03, 0x20, 0x0320, "small key big chest west wing main room 1F" }, + { 0x03, 0x10, 0x0310, "compass big chest east wing first room B1" }, + { 0x03, 0x08, 0x0308, "south west underwater big chest outside shop" }, + { 0x03, 0x04, 0x0304, "map big chest east wing fourth room 1F" }, + { 0x03, 0x01, 0x0301, "double clawshot big chest east wing fifth room B3" }, + { 0x08, 0x80, 0x0880, "turn on wind in east wing second room 2F" }, + { 0x08, 0x40, 0x0840, "open gate in east wing second room 2F" }, + { 0x08, 0x20, 0x0820, "explored west wing main room 1F (unset if you enter main room)" }, + { 0x08, 0x10, 0x0810, "explored east wing first room 1F (unset if you enter main room)" }, + { 0x08, 0x04, 0x0804, "killed big baba west wing north room 1F" }, + { 0x08, 0x02, 0x0802, "double clawshot big chest east wing fifth room B3 (set after)" }, + { 0x08, 0x01, 0x0801, "west bridge broken" }, + { 0x09, 0x80, 0x0980, "east wing fifth room B3 intro cs" }, + { 0x09, 0x40, 0x0940, "open gate in east wing third room 2F" }, + { 0x09, 0x20, 0x0920, "spawn baba serpants under east bridge" }, + { 0x09, 0x08, 0x0908, "extended east bridge (spinner slot needs to be closed)" }, + { 0x09, 0x04, 0x0904, "extended west bridge (spinner slot needs to be closed)" }, + { 0x09, 0x02, 0x0902, "small key big chest west wing main room 1F (set after)" }, + { 0x0A, 0x80, 0x0A80, "explored main room 1F" }, + { 0x0A, 0x20, 0x0A20, "turn on wind in east wing third room 2F" }, + { 0x0A, 0x10, 0x0A10, "open door in east wing third room 1F" }, + { 0x0A, 0x04, 0x0A04, "fan on ceiling of main room active" }, + { 0x0A, 0x02, 0x0A02, "open gate in east wing fourth room 1F" }, + { 0x0B, 0x80, 0x0B80, "unlock boss door" }, + { 0x0B, 0x40, 0x0B40, "unlock east bridge door 1F" }, + { 0x0B, 0x08, 0x0B08, "east bridge extended (close east spinner slot)" }, + { 0x0B, 0x04, 0x0B04, "west bridge extended (close west spinner slot)" }, + { 0x0B, 0x02, 0x0B02, "open gate outside shop" }, + { 0x0C, 0x08, 0x0C08, "north wing main room intro cs" }, + { 0x0C, 0x04, 0x0C04, "east wing fourth room 2F intro cs" }, + { 0x0C, 0x02, 0x0C02, "went beyond first gate outside shop intro cs" }, + { 0x0C, 0x01, 0x0C01, "Intro CS" }, + { 0x0D, 0x80, 0x0D80, "killed left dynalfos in east wing third room 1F" }, + { 0x0D, 0x40, 0x0D40, "killed right dynalfos in east wing third room 1F" }, + { 0x0D, 0x20, 0x0D20, "?" }, + { 0x0D, 0x10, 0x0D10, "west bridge destroyed cs (triggered when you have a key)" }, + { 0x0D, 0x08, 0x0D08, "killed helmasaurus in main room 1F" }, + { 0x0D, 0x04, 0x0D04, "west bridge extented cs" }, + { 0x0D, 0x02, 0x0D02, "east bridge extented cs" }, + { 0x0E, 0x01, 0x0E01, "small key big chest west wing main room 1F (set after)" }, + { 0x0F, 0x80, 0x0F80, "exited dungeon with midna warp" }, + { 0x0F, 0x40, 0x0F40, "exited dungeon with midna warp" }, + { 0x0F, 0x20, 0x0F20, "save promt after boss" }, + { 0x0F, 0x10, 0x0F10, "open gate in west wing main room B2" }, + { 0x0F, 0x08, 0x0F08, "killed left aeralfos in north wing main room 1F" }, + { 0x0F, 0x04, 0x0F04, "killed right aeralfos in north wing main room 1F" }, + { 0x0F, 0x02, 0x0F02, "open gate in east wing fifth room B3" }, + { 0x0F, 0x01, 0x0F01, "stop fan in east wing fifth room B3" }, + { 0x10, 0x80, 0x1080, "killed third baba serpant under east bridge" }, + { 0x10, 0x10, 0x1010, "killed third tile worm in east wing second room 1F" }, + { 0x10, 0x08, 0x1008, "killed second tile worm in east wing second room 1F" }, + { 0x10, 0x04, 0x1004, "killed first tile worm in east wing second room 1F" }, + { 0x11, 0x20, 0x1120, "killed poe in main room 4F outside" }, + { 0x11, 0x10, 0x1110, "killed poe in west wing main room 2F" }, + { 0x12, 0x20, 0x1220, "small key big chest west wing main room 1F (set after)" }, + { 0x12, 0x02, 0x1202, "latched on to first pillar in east wing first room B2" }, + { 0x13, 0x40, 0x1340, "open door in east wing fifth room B3" }, + { 0x13, 0x10, 0x1310, "?" }, + { 0x15, 0x10, 0x1510, "activate north path fan " }, + { 0x17, 0x40, 0x1740, "killed east dynalfos in main room 3F outside" }, + { 0x17, 0x20, 0x1720, "killed north dynalfos in main room 3F outside" }, + { 0x17, 0x10, 0x1710, "killed dynalfos in west wing north room 3F" }, + { 0x17, 0x08, 0x1708, "killed first baba serpent in path to east spinner slot" }, + { 0x17, 0x04, 0x1704, "killed second baba serpent in path to east spinner slot" }, + { 0x17, 0x02, 0x1702, "killed first baba serpant under east bridge" }, + { 0x17, 0x01, 0x1701, "killed second baba serpant under east bridge" }, +}; + +inline EventAreaFlags eventAreaFlagsCoO[] = +{ + { 0x03, 0x01, 0x0301, "big chest Lanayru Ice Puzzle" }, + { 0x04, 0x80, 0x0480, "big chest right right right path Eldin Long Cave" }, + { 0x04, 0x40, 0x0440, "big chest right right left right path Eldin Long Cave" }, + { 0x04, 0x20, 0x0420, "small chest left right path Eldin Long Cave" }, + //{ 0x08, 0x80, 0x0880, "position of block 1 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x40, 0x0840, "position of block 1 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x20, 0x0820, "position of block 1 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x10, 0x0810, "position of block 1 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x08, 0x0808, "position of block 2 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x04, 0x0804, "position of block 2 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x02, 0x0802, "position of block 2 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x08, 0x01, 0x0801, "position of block 2 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x09, 0x80, 0x0980, "position of block 3 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x09, 0x40, 0x0940, "position of block 3 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x09, 0x20, 0x0920, "position of block 3 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x09, 0x10, 0x0910, "position of block 3 puzzle 2 Lanayru Ice Puzzle" }, + //{ 0x09, 0x04, 0x0904, "position of block 1 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x09, 0x02, 0x0902, "position of block 1 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x09, 0x01, 0x0901, "position of block 1 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0A, 0x80, 0x0A80, "position of block 1 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0A, 0x20, 0x0A20, "position of block 2 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0A, 0x10, 0x0A10, "position of block 2 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0A, 0x08, 0x0A08, "position of block 2 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0A, 0x04, 0x0A04, "position of block 2 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0B, 0x08, 0x0B08, "position of block 3 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0B, 0x04, 0x0B04, "position of block 3 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0B, 0x02, 0x0B02, "position of block 3 puzzle 1 Lanayru Ice Puzzle" }, + //{ 0x0B, 0x01, 0x0B01, "position of block 3 puzzle 1 Lanayru Ice Puzzle" }, + { 0x0D, 0x10, 0x0D10, "broke right ice blocking first doorway in Lanayru Ice Puzzle" }, + { 0x0D, 0x08, 0x0D08, "broke left ice blocking first doorway in Lanayru Ice Puzzle" }, + { 0x0D, 0x04, 0x0D04, "open fourth gate in Lanayru Ice Puzzle" }, + { 0x0D, 0x02, 0x0D02, "open third gate in Lanayru Ice Puzzle" }, + { 0x0D, 0x01, 0x0D01, "open second gate in Lanayru Ice Puzzle" }, + { 0x0E, 0x80, 0x0E80, "open first gate in Lanayru Ice Puzzle" }, + //{ 0x0E, 0x40, 0x0E40, "position of block 1 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x20, 0x0E20, "position of block 1 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x10, 0x0E10, "position of block 1 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x08, 0x0E08, "position of block 1 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x04, 0x0E04, "position of block 1 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x02, 0x0E02, "position of block 2 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0E, 0x01, 0x0E01, "position of block 2 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x80, 0x0F80, "position of block 2 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x40, 0x0F40, "position of block 2 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x20, 0x0F20, "position of block 2 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x10, 0x0F10, "position of block 3 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x08, 0x0F08, "position of block 3 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x04, 0x0F04, "position of block 3 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x02, 0x0F02, "position of block 3 puzzle 3 Lanayru Ice Puzzle" }, + //{ 0x0F, 0x01, 0x0F01, "position of block 3 puzzle 3 Lanayru Ice Puzzle" }, + { 0x10, 0x80, 0x1080, "spawn big chest right right left right path Eldin Long Cave" }, + { 0x10, 0x40, 0x1040, "lit torch 3 (right right right path) Eldin Long Cave" }, + { 0x13, 0x80, 0x1380, "killed poe on floor 44 in Cave of Ordeals" }, + { 0x13, 0x40, 0x1340, "killed poe on floor 33 in Cave of Ordeals" }, + { 0x13, 0x20, 0x1320, "killed poe on floor 17 in Cave of Ordeals" }, + { 0x13, 0x08, 0x1308, "Cave of Ordeals intro cs" }, + { 0x13, 0x04, 0x1304, "obtained fairy's tears (if unset, you can get it even if you already have some) (also spawns that extra darknut on floor 49)" }, + { 0x13, 0x02, 0x1302, "open floor 1 door in Cave of Ordeals cs" }, + { 0x13, 0x01, 0x1301, "broke ice on floor 21 in Cave of Ordeals" }, + { 0x14, 0x40, 0x1440, "explored section 2 right right left right path Eldin Long Cave" }, + { 0x14, 0x20, 0x1420, "explored section 1 right right left right path Eldin Long Cave" }, + { 0x14, 0x10, 0x1410, "explored section 2 right right left left path Eldin Long Cave" }, + { 0x14, 0x08, 0x1408, "explored section 1 right right left left path Eldin Long Cave" }, + { 0x14, 0x04, 0x1404, "explored section 3 right right left path Eldin Long Cave" }, + { 0x14, 0x02, 0x1402, "explored section 2 right right left path Eldin Long Cave" }, + { 0x14, 0x01, 0x1401, "explored section 1 right right left path Eldin Long Cave" }, + { 0x15, 0x80, 0x1580, "explored section 2 right right right path Eldin Long Cave" }, + { 0x15, 0x40, 0x1540, "explored section 1 right right right path Eldin Long Cave" }, + { 0x15, 0x20, 0x1520, "explored section 3 right right path Eldin Long Cave" }, + { 0x15, 0x10, 0x1510, "explored section 2 right right path Eldin Long Cave" }, + { 0x15, 0x08, 0x1508, "explored section 1 right right path Eldin Long Cave" }, + { 0x15, 0x04, 0x1504, "explored section 1 right left path Eldin Long Cave" }, + { 0x15, 0x02, 0x1502, "explored section 6 right path Eldin Long Cave" }, + { 0x15, 0x01, 0x1501, "explored section 5 right path Eldin Long Cave" }, + { 0x16, 0x80, 0x1680, "explored section 4 right path Eldin Long Cave" }, + { 0x16, 0x40, 0x1640, "explored section 3 right path Eldin Long Cave" }, + { 0x16, 0x20, 0x1620, "explored section 2 right path Eldin Long Cave" }, + { 0x16, 0x10, 0x1610, "explored section 1 right path Eldin Long Cave" }, + { 0x16, 0x08, 0x1608, "explored section 2 left right path Eldin Long Cave" }, + { 0x16, 0x04, 0x1604, "explored section 1 right right path Eldin Long Cave" }, + { 0x16, 0x02, 0x1602, "explored section 2 left left path Eldin Long Cave" }, + { 0x16, 0x01, 0x1601, "explored section 1 right right path Eldin Long Cave" }, + { 0x17, 0x80, 0x1780, "explored section 2 left path Eldin Long Cave" }, + { 0x17, 0x40, 0x1740, "explored section 1 right path Eldin Long Cave" }, + { 0x17, 0x20, 0x1720, "explored section 2 Eldin Long Cave" }, + { 0x17, 0x10, 0x1710, "explored section 1 Eldin Long Cave" }, + { 0x17, 0x08, 0x1708, "lit torch 2 (right path) Eldin Long Cave" }, + { 0x17, 0x04, 0x1704, "lit left torch right right left right path Eldin Long Cave" }, + { 0x17, 0x02, 0x1702, "lit right torch right right left right path Eldin Long Cave" }, + { 0x17, 0x01, 0x1701, "killed poe right right left left path Eldin Long Cave" }, +}; + +inline EventAreaFlags eventAreaFlagsEldin[] = +{ + { 0x00, 0x01, 0x0001, "Big chest from torches graveyard" }, + { 0x01, 0x80, 0x0180, "Small chest in the inn" }, + { 0x01, 0x40, 0x0140, "PoH big chest death mountain archer alcove" }, + { 0x01, 0x20, 0x0120, "PoH big chest underwater behind spring" }, + { 0x01, 0x10, 0x0110, "Big chest next to watch tower" }, + { 0x01, 0x04, 0x0104, "?" }, + { 0x01, 0x02, 0x0102, "Big chest watch house" }, + { 0x01, 0x01, 0x0101, "tear of light death mountain hot spring water" }, + { 0x02, 0x80, 0x0280, "tear of light next to howling stone death mountain " }, + { 0x02, 0x40, 0x0240, "tear of light death mountain base" }, + { 0x02, 0x10, 0x0210, "tear of light sancuary basement" }, + { 0x02, 0x08, 0x0208, "tear of light Barnes storage house" }, + { 0x02, 0x04, 0x0204, "tear of light watch tower" }, + { 0x02, 0x02, 0x0202, "tear of light at Malo mart" }, + { 0x02, 0x01, 0x0201, "tear of light inn fire room" }, + { 0x03, 0x80, 0x0380, "tear of light Barnes shop" }, + { 0x03, 0x40, 0x0340, "tear of light graveyard" }, + { 0x03, 0x20, 0x0320, "tear of light Barnes storage house" }, + { 0x03, 0x10, 0x0310, "tear of light Barnes storage house" }, + { 0x03, 0x08, 0x0308, "tear of light sancuary basement" }, + { 0x03, 0x04, 0x0304, "tear of light sancuary basement" }, + { 0x03, 0x02, 0x0302, "tear of light ant house" }, + { 0x03, 0x01, 0x0301, "tear of light inn back room" }, + { 0x08, 0x80, 0x0880, "Kakariko Village Portal" }, + { 0x08, 0x40, 0x0840, "kakariko shadow beasts barrier appears (unset after fight)" }, + { 0x08, 0x20, 0x0820, "DM big rock fell" }, + { 0x08, 0x10, 0x0810, "done midna jumps 4 death mountain (hot spring water)" }, + { 0x08, 0x08, 0x0808, "done midna jumps 3 death mountain (1st floor)" }, + { 0x08, 0x04, 0x0804, "killed death mountain shadow beasts cs (unset later?)" }, + { 0x08, 0x01, 0x0801, "done midna jumps 1 death mountain (entrance)" }, + { 0x09, 0x80, 0x0980, "Malo mart has banners inside" }, + { 0x09, 0x40, 0x0940, "DM proper human intro CS (Map marker GM)" }, + { 0x09, 0x20, 0x0920, "Death Mountain Portal" }, + { 0x09, 0x10, 0x0910, "death mountain dark beasts barrier appears" }, + { 0x09, 0x08, 0x0908, "?" }, + { 0x09, 0x04, 0x0904, "?" }, + { 0x09, 0x02, 0x0902, "killed HV bublins (unset when cats spawn)" }, + { 0x09, 0x01, 0x0901, "killed light bug death mountain hot spring water" }, + { 0x0A, 0x80, 0x0A80, "killed light bug next to howling stone death mountain " }, + { 0x0A, 0x40, 0x0A40, "killed light bug death mountain base" }, + { 0x0A, 0x20, 0x0A20, "trigger twilight end cs (vessel of light filled) (Hot Spring Water Present on map)" }, + { 0x0A, 0x10, 0x0A10, "killed light bug sancuary basement" }, + { 0x0A, 0x04, 0x0A04, "killed light bug watch tower" }, + { 0x0A, 0x02, 0x0A02, "killed light bug malo mart" }, + { 0x0A, 0x01, 0x0A01, "killed light bug inn fire room" }, + { 0x0B, 0x80, 0x0B80, "killed light bug Barnes shop" }, + { 0x0B, 0x40, 0x0B40, "killed light bug graveyard" }, + { 0x0B, 0x08, 0x0B08, "killed light bug sancuary basement" }, + { 0x0B, 0x04, 0x0B04, "killed light bug sancuary basement" }, + { 0x0B, 0x02, 0x0B02, "killed light bug ant house" }, + { 0x0B, 0x01, 0x0B01, "killed light bug inn bedroom" }, + { 0x0C, 0x80, 0x0C80, "saw light bug enter Barnes storage house twilight cs" }, + { 0x0C, 0x40, 0x0C40, "malo mart sells hawkeye (moves potion to the right) (set when starting bow mini-game)" }, + { 0x0C, 0x20, 0x0C20, "malo mart sells arrows" }, + { 0x0C, 0x10, 0x0C10, "broke sanctuary roof patch during twilight (duplicate)" }, + { 0x0C, 0x08, 0x0C08, "box moved ant house (spawns light bug)" }, + { 0x0C, 0x04, 0x0C04, "Unknown crashes if rocks are pushed" }, + { 0x0C, 0x02, 0x0C02, "malo mart hylian shield bought" }, + { 0x0C, 0x01, 0x0C01, "ant house explored" }, + { 0x0D, 0x80, 0x0D80, "entered sanctuary from roof during twilight" }, + { 0x0D, 0x40, 0x0D40, "enter Barnes shop through the window in twilight cs" }, + { 0x0D, 0x20, 0x0D20, "light bug comes out of box in ant house cs" }, + { 0x0D, 0x10, 0x0D10, "spawn PoH cat mini game hidden village" }, + { 0x0D, 0x08, 0x0D08, "malo mart hawkeye sold out (needs to be set for arrows to show up)" }, + { 0x0D, 0x04, 0x0D04, "lit all torches in sanctuary twilight (opens basment)" }, + { 0x0D, 0x02, 0x0D02, "light bug in inn fireplace jumps out cs" }, + { 0x0D, 0x01, 0x0D01, "lit inn fireplace" }, + { 0x0E, 0x80, 0x0E80, "knocked down dresser in Barnes shop twilight cs" }, + { 0x0E, 0x40, 0x0E40, "?" }, + { 0x0E, 0x20, 0x0E20, "? (malo mart explored)" }, + { 0x0E, 0x10, 0x0E10, "lit west torch in sanctuary twilight" }, + { 0x0E, 0x08, 0x0E08, "lit north east torch in sanctuary twilight" }, + { 0x0E, 0x04, 0x0E04, "lit east torch in sanctuary twilight" }, + { 0x0E, 0x02, 0x0E02, "lit north west torch in sanctuary twilight" }, + { 0x0F, 0x80, 0x0F80, "broke ant house roof patch (duplicate)" }, + { 0x0F, 0x40, 0x0F40, "moved death mountain rock to exit" }, + { 0x0F, 0x20, 0x0F20, "Eldin spirit talks to Link after getting kakariko Portal cs" }, + { 0x0F, 0x10, 0x0F10, "broke ant house roof patch" }, + { 0x0F, 0x08, 0x0F08, "broke window of Barnes shop twilight" }, + { 0x0F, 0x04, 0x0F04, "broke sanctuary roof patch during twilight" }, + { 0x0F, 0x02, 0x0F02, "Renado talks to Link after trying to go up death mountain trail" }, + { 0x0F, 0x01, 0x0F01, "killed kakariko shadow beasts cs" }, + { 0x10, 0x80, 0x1080, "Killed poe watch tower" }, + { 0x10, 0x40, 0x1040, "Killed poe Barnes storage house" }, + { 0x10, 0x20, 0x1020, "blown up rock underwater to lake hylia from graveward" }, + { 0x10, 0x10, 0x1010, "Graveyard intro cs" }, + { 0x10, 0x08, 0x1008, "explored zora tombstone area" }, + { 0x10, 0x04, 0x1004, "broke floor patch in graveyard during twilight" }, + { 0x10, 0x02, 0x1002, "Killed poe death mountain" }, + { 0x10, 0x01, 0x1001, "Killed poe graveyard center" }, + { 0x11, 0x80, 0x1180, "Killed poe graveyard tombstone" }, + { 0x11, 0x40, 0x1140, "gorons in kakariko hot spring water gone" }, + { 0x11, 0x20, 0x1120, "Map Marker Sanctuary" }, + { 0x11, 0x08, 0x1108, "Midna text after DM big rock fell" }, + { 0x11, 0x04, 0x1104, "done midna jumps 2 death mountain (base floor)" }, + { 0x11, 0x02, 0x1102, "death mountain proper intro cs twilight" }, + { 0x11, 0x01, 0x1101, "moved death mountain rock to hot spring water" }, + { 0x12, 0x80, 0x1280, "sanctuary basement canon room explored" }, + { 0x12, 0x40, 0x1240, "done Midna jumps in sanctuary basement" }, + { 0x12, 0x20, 0x1220, "Midna text before Midna jumps in sanctuary basement" }, + { 0x12, 0x10, 0x1210, "sanctuary twilight cs" }, + { 0x12, 0x08, 0x1208, "killed right shadow bulblin inside inn twilight" }, + { 0x12, 0x04, 0x1204, "killed left shadow bulblin inside inn twilight" }, + { 0x12, 0x02, 0x1202, "killed top shadow bulblin inside inn twilight" }, + { 0x12, 0x01, 0x1201, "enter central room of inn during twilight cs" }, + { 0x13, 0x80, 0x1380, "sanctuary basement hallway to canon explored" }, + { 0x13, 0x40, 0x1340, "Malo mart shield on counter (requires reload)" }, + { 0x13, 0x20, 0x1320, "Kakariko intro cs" }, + { 0x13, 0x10, 0x1310, "blown up rocks on kakariko cliff PoH" }, + { 0x13, 0x08, 0x1308, "Blown up rock to secret passage to back of spring (updates map)" }, + { 0x13, 0x04, 0x1304, "Barnes storage house not blown up (unset once you enter) (twilight)" }, + { 0x13, 0x02, 0x1302, "Barnes storage house blew up cs (also changes map)" }, + { 0x13, 0x01, 0x1301, "Killed poe hidden village" }, + { 0x14, 0x80, 0x1480, "Midna text after sanctuary twilight cs" }, + { 0x14, 0x20, 0x1420, "light bug comes out of dresser in Barnes shop twilight" }, + { 0x14, 0x10, 0x1410, "GM save prompt" }, + { 0x14, 0x08, 0x1408, "Barnes sells Bombs" }, + { 0x14, 0x04, 0x1404, "midna text after shad leaves canon room" }, + { 0x14, 0x02, 0x1402, "Hero's shade map marker" }, + { 0x14, 0x01, 0x1401, "done midna jumps to top of sanctuary (also unlocks it)" }, + { 0x15, 0x80, 0x1580, "blown up rock underwater behind spring" }, + { 0x15, 0x40, 0x1540, "malo mart sells red potion on right slot" }, + { 0x15, 0x20, 0x1520, "beat bow mini-game" }, + { 0x15, 0x10, 0x1510, "malo mart sells red potion on left slot (default)" }, + { 0x15, 0x08, 0x1508, "explored bedroom in the inn" }, + { 0x15, 0x04, 0x1504, "explored central room in the inn" }, + { 0x15, 0x02, 0x1502, "blown up right rock underwater zora tombstone area" }, + { 0x15, 0x01, 0x1501, "midna text after charging dominion rod" }, + { 0x16, 0x80, 0x1680, "Goron lets you enter elevator in sumo hall" }, + { 0x16, 0x40, 0x1640, "Midna text after blowing up Barnes storage house" }, + { 0x16, 0x20, 0x1620, "hit third target in bow mini-game" }, + { 0x16, 0x10, 0x1610, "saved Colin cs (malo mart now open)" }, + { 0x16, 0x04, 0x1604, "Midna text after meeting the kids after twilight" }, + { 0x16, 0x02, 0x1602, "Started Rutela escort" }, + { 0x16, 0x01, 0x1601, "hit second target in bow mini-game" }, + { 0x17, 0x80, 0x1780, "hit first target in bow mini-game" }, + { 0x17, 0x40, 0x1740, "rock to zora tombstone gone + Barnes sells water bombs" }, + { 0x17, 0x20, 0x1720, "Followed Rutela to graveyard" }, + { 0x17, 0x10, 0x1710, "death mountain path intro cs twilight" }, + { 0x17, 0x08, 0x1708, "owl statue possessed cs (sanctuary basement)" }, + { 0x17, 0x04, 0x1704, "done midna jumps ant house (also unlocks it)" }, + { 0x17, 0x02, 0x1702, "Impaz in her house (hidden village)" }, + { 0x17, 0x01, 0x1701, "can't transform in hidden village (if bit 2 is set you can)" }, + { 0x1A, 0x40, 0x1A40, "picked up rupees from right rock underwater zora tombstone area" }, + { 0x1A, 0x20, 0x1A20, "picked up rupees from rock underwater behind spring" }, + { 0x1A, 0x10, 0x1A10, "Free standing PoH kakariko cliff" }, + { 0x1A, 0x08, 0x1A08, "Free standing PoH cat mini game hidden village" }, + { 0x1A, 0x04, 0x1A04, "picked up silver rupee from bell above sanctuary" }, + { 0x1A, 0x02, 0x1A02, "picked up yellow rupee in box secret passage to spring" }, + { 0x1A, 0x01, 0x1A01, "picked up blue rupee in box secret passage to spring" }, + { 0x1B, 0x80, 0x1B80, "picked up yellow rupee in box next to kakariko hot spring water" }, + { 0x1B, 0x40, 0x1B40, "picked up yellow rupee behind dresser inn bedroom" }, + { 0x1B, 0x20, 0x1B20, "picked up red rupee in box on platform above ant house" }, + { 0x1B, 0x10, 0x1B10, "picked up blue rupee behind dresser inn 2nd floor" }, + { 0x1B, 0x08, 0x1B08, "picked up yellow rupee 1 on leadge of top of death montain" }, + { 0x1B, 0x04, 0x1B04, "picked up yellow rupee 2 on leadge of top of death montain" }, + { 0x1B, 0x02, 0x1B02, "picked up yellow rupee 3 on leadge of top of death montain" }, + { 0x1B, 0x01, 0x1B01, "picked up rupee in death montain in rock below pipe (need BaC and rang)" }, +}; + +inline EventAreaFlags eventAreaFlagsFaron[] = +{ + { 0x00, 0x80, 0x0080, "small chest in lantern cave" }, + { 0x00, 0x40, 0x0040, "HP Chest Coro-Mist shortcut" }, + { 0x00, 0x20, 0x0020, "big chest mist area" }, + { 0x00, 0x10, 0x0010, "small chest mist area trunk" }, + { 0x00, 0x08, 0x0008, "small chest mist area next to key cave" }, + { 0x00, 0x04, 0x0004, "PoH chest key cave" }, + { 0x00, 0x01, 0x0001, "Small key cave key chest" }, + { 0x01, 0x80, 0x0180, "Dig Tear #1" }, + { 0x01, 0x20, 0x0120, "Final Tear #1" }, + { 0x01, 0x10, 0x0110, "Final Tear #2" }, + { 0x01, 0x04, 0x0104, "Wall Tear #1 (Mist Area)" }, + { 0x01, 0x02, 0x0102, "Wall Tear #2 (Mist Area)" }, + { 0x02, 0x40, 0x0240, "Tree Tear #1" }, + { 0x02, 0x20, 0x0220, "Tree Tear #2" }, + { 0x02, 0x10, 0x0210, "Tree Tear #3" }, + { 0x02, 0x08, 0x0208, "Gate Tear #1" }, + { 0x02, 0x02, 0x0202, "Coro Tear #1 (inside)" }, + { 0x02, 0x01, 0x0201, "Dig Tear #2" }, + { 0x03, 0x40, 0x0340, "Tear #2" }, + { 0x03, 0x20, 0x0320, "Gate Tear #2" }, + { 0x03, 0x10, 0x0310, "Coro Tear #2 (inside)" }, + { 0x03, 0x02, 0x0302, "Tear #1" }, + { 0x03, 0x01, 0x0301, "Coro Tear (outisde)" }, + { 0x04, 0x80, 0x0480, "Yellow Rupee Chest (N-Faron)" }, + { 0x08, 0x80, 0x0880, "explored east section of mist area after midna jump 1 twilight (gets unset)" }, + { 0x08, 0x40, 0x0840, "explored section with south entrance of mist area (gets unset)" }, + { 0x08, 0x10, 0x0810, "went up east section of mist area after midna jump 1 twilight" }, + { 0x08, 0x08, 0x0808, "S Faron warp twilight fences fall cs" }, + { 0x08, 0x04, 0x0804, "Sky character under owl statue" }, + { 0x08, 0x02, 0x0802, "midna jump 1 mist area (duplicate)" }, + { 0x08, 0x01, 0x0801, "unlock midna jump 1 mist area" }, + { 0x09, 0x80, 0x0980, "Coro spirits talk after killing light bugs in his house" }, + { 0x09, 0x40, 0x0940, "midna jump to Coro's house" }, + { 0x09, 0x20, 0x0920, "Map marker owl statue" }, + { 0x09, 0x10, 0x0910, "opened mist area gate to N faron" }, + { 0x09, 0x08, 0x0908, "lit torch 2 in lantern cave" }, + { 0x09, 0x04, 0x0904, "Talked to Midna next to the deku babas before Coro" }, + { 0x09, 0x02, 0x0902, "Rescued Monkey from Puppets" }, + { 0x09, 0x01, 0x0901, "dug behind Coro gate in twilight" }, + { 0x0A, 0x80, 0x0A80, "took Midna back s warp fight" }, + { 0x0A, 0x40, 0x0A40, "S warp shadow beast revive cs" }, + { 0x0A, 0x20, 0x0A20, "trigger twilight end cs (vessel of light filled)" }, + { 0x0A, 0x10, 0x0A10, "unlocked Coro gate" }, + { 0x0A, 0x08, 0x0A08, "Explored path to sacred grove" }, + { 0x0A, 0x04, 0x0A04, "burned cobweb in front of forest temple" }, + { 0x0A, 0x02, 0x0A02, "see spirit in front of FT twilight cs" }, + { 0x0A, 0x01, 0x0A01, "enter twilight cs" }, + { 0x0B, 0x40, 0x0B40, "talked to the light spirit in twilight" }, + { 0x0B, 0x20, 0x0B20, "saw light bugs dig underground mist area exit twilight" }, + { 0x0B, 0x10, 0x0B10, "Blown up rock next to Coro" }, + { 0x0B, 0x08, 0x0B08, "n warp fight fences appear cs" }, + { 0x0B, 0x04, 0x0B04, "North Faron Portal" }, + { 0x0B, 0x02, 0x0B02, "FT save prompt" }, + { 0x0C, 0x80, 0x0C80, "got lantern back after monkey follow" }, + { 0x0C, 0x40, 0x0C40, "saw light bugs move inside Coro's house cs" }, + { 0x0C, 0x20, 0x0C20, "in monkey follow (gets unset afterwards)" }, + { 0x0C, 0x10, 0x0C10, "Trill lets you shop" }, + { 0x0C, 0x04, 0x0C04, "killed left bokoblin before Trill after twilight" }, + { 0x0C, 0x02, 0x0C02, "killed right bokoblin before Trill after twilight" }, + { 0x0C, 0x01, 0x0C01, "explored section 6 in lantern cave" }, + { 0x0D, 0x80, 0x0D80, "explored section 5 in lantern cave" }, + { 0x0D, 0x40, 0x0D40, "explored section 4 in lantern cave" }, + { 0x0D, 0x20, 0x0D20, "explored section 3 in lantern cave" }, + { 0x0D, 0x10, 0x0D10, "explored section 2 in lantern cave" }, + { 0x0D, 0x08, 0x0D08, "explored section 1 in lantern cave" }, + { 0x0D, 0x04, 0x0D04, "got Coro key from Coro" }, + { 0x0D, 0x02, 0x0D02, "?" }, + { 0x0D, 0x01, 0x0D01, "killed right bokoblin next to Talo's cage" }, + { 0x0E, 0x80, 0x0E80, "killed left bokoblin next to Talo's cage" }, + { 0x0E, 0x40, 0x0E40, "broke Talo's cage" }, + { 0x0E, 0x20, 0x0E20, "killed both bokoblins next to Talo's cage" }, + { 0x0E, 0x08, 0x0E08, "enter Faron intro cs" }, + { 0x0E, 0x04, 0x0E04, "lit Coro's soup" }, + { 0x0E, 0x02, 0x0E02, "saved Talo cs" }, + { 0x0E, 0x01, 0x0E01, "see light spirit from far away in twilight cs" }, + { 0x0F, 0x80, 0x0F80, "enter mist area twilight cs" }, + { 0x0F, 0x40, 0x0F40, "found Talo's stick (child chase)" }, + { 0x0F, 0x20, 0x0F20, "explored top of east slope mist area twilight" }, + { 0x0F, 0x10, 0x0F10, "talked to Coro spirit before killing bugs" }, + { 0x0F, 0x08, 0x0F08, "entered mist area as human" }, + { 0x0F, 0x04, 0x0F04, "Talked to midna before talking to Coro spirit" }, + { 0x0F, 0x02, 0x0F02, "explored section with north exit of mist area (gets unset)" }, + { 0x0F, 0x01, 0x0F01, "saw light bugs on trunk mist area (gets unset)" }, + { 0x10, 0x80, 0x1080, "Map marker Rusl" }, + { 0x10, 0x40, 0x1040, "lit torch 1 in lantern cave" }, + { 0x10, 0x20, 0x1020, "Killed poe mist area" }, + { 0x10, 0x10, 0x1010, "spawn PoH chest key cave" }, + { 0x10, 0x08, 0x1008, "lit right torch in key cave" }, + { 0x10, 0x04, 0x1004, "lit left torch in key cave" }, + { 0x10, 0x02, 0x1002, "explored section 15 in lantern cave" }, + { 0x10, 0x01, 0x1001, "add mist area mist to mini-map" }, + { 0x11, 0x80, 0x1180, "explored section 14 in lantern cave" }, + { 0x11, 0x40, 0x1140, "explored section 13 in lantern cave" }, + { 0x11, 0x20, 0x1120, "explored section 12 in lantern cave" }, + { 0x11, 0x10, 0x1110, "explored section 11 in lantern cave" }, + { 0x11, 0x08, 0x1108, "explored section 10 in lantern cave" }, + { 0x11, 0x04, 0x1104, "explored section 9 in lantern cave" }, + { 0x11, 0x02, 0x1102, "explored section 3 of branching path in lantern cave" }, + { 0x11, 0x01, 0x1101, "explored section 8 in lantern cave" }, + { 0x12, 0x80, 0x1280, "explored section 7 in lantern cave" }, + { 0x12, 0x20, 0x1220, "Midna text before jumping to Lost Woods" }, + { 0x12, 0x10, 0x1210, "killed light bug outside Coro's house (duplicate)" }, + { 0x12, 0x08, 0x1208, "saw light bug run behind Coro gate" }, + { 0x12, 0x04, 0x1204, "Midna text warp to N faron for bridge" }, + { 0x12, 0x02, 0x1202, "saw first 2 light bugs run away from you" }, + { 0x12, 0x01, 0x1201, "S warp shadow beasts are spawned" }, + { 0x13, 0x80, 0x1380, "South Faron Portal" }, + { 0x13, 0x40, 0x1340, "explored section 2 of branching path in lantern cave" }, + { 0x13, 0x20, 0x1320, "killed right bokoblin in front of FT after twilight" }, + { 0x13, 0x10, 0x1310, "killed left bokoblin in front of FT after twilight" }, + { 0x13, 0x08, 0x1308, "explored section 1 of branching path in lantern cave" }, + { 0x13, 0x01, 0x1301, "S warp shadow beasts killed" }, + { 0x14, 0x80, 0x1480, "lit torch 4 in lantern cave" }, + { 0x14, 0x40, 0x1440, "killed light bug mist area north exit" }, + { 0x14, 0x20, 0x1420, "did midna jump 2 mist area" }, + { 0x14, 0x10, 0x1410, "killed light bug mist area north exit" }, + { 0x14, 0x08, 0x1408, "explored section 4 of branching path in lantern cave" }, + { 0x14, 0x04, 0x1404, "killed light bug in front of Forest Temple" }, + { 0x14, 0x02, 0x1402, "killed light bug in front of Forest Temple" }, + { 0x14, 0x01, 0x1401, "killed both light bugs in front of FT cs (map marker FT)" }, + { 0x15, 0x80, 0x1580, "killed light bug mist area south entrance" }, + { 0x15, 0x40, 0x1540, "killed light bug mist area south entrance" }, + { 0x15, 0x20, 0x1520, "did midna jump 5 mist area" }, + { 0x15, 0x10, 0x1510, "did midna jump 3 mist area" }, + { 0x15, 0x08, 0x1508, "killed light bug mist area trunk" }, + { 0x15, 0x04, 0x1504, "killed light bug mist area trunk" }, + { 0x15, 0x02, 0x1502, "killed light bug mist area trunk" }, + { 0x15, 0x01, 0x1501, "killed light bug between latern cave and gate" }, + { 0x16, 0x80, 0x1680, "map marker Talo (only during child save)" }, + { 0x16, 0x40, 0x1640, "killed light bug outside Coro's house" }, + { 0x16, 0x20, 0x1620, "Map marker key cave (only during child save)" }, + { 0x16, 0x10, 0x1610, "remove map marker key cave" }, + { 0x16, 0x08, 0x1608, "did midna jump 4 mist area" }, + { 0x16, 0x04, 0x1604, "killed light bug hallway to Coro (closer to spring)" }, + { 0x16, 0x02, 0x1602, "killed light bug between latern cave and gate" }, + { 0x16, 0x01, 0x1601, "killed both light bugs in Coro's house cs" }, + { 0x17, 0x80, 0x1780, "killed light bug inside Coro's house" }, + { 0x17, 0x40, 0x1740, "killed light bug inside Coro's house" }, + { 0x17, 0x20, 0x1720, "killed light bug hallway to Coro (closer to Coro)" }, + { 0x17, 0x10, 0x1710, "did midna jump 6 mist area" }, + { 0x17, 0x08, 0x1708, "explored east section of mist area after midna jump 1 twilight (gets unset)" }, + { 0x17, 0x04, 0x1704, "lit torch 3 in lantern cave" }, + { 0x17, 0x02, 0x1702, "burned cobweb 2 in lantern cave" }, + { 0x17, 0x01, 0x1701, "burned cobweb 1 in lantern cave" }, + { 0x1B, 0x01, 0x1B01, "picked up rupees from rock next to Coro" }, +}; + +inline EventAreaFlags eventAreaFlagsFishingPond[] = +{ + { 0x1B, 0x01, 0x1B01, "free standing PoH" }, +}; + +inline EventAreaFlags eventAreaFlagsFT[] = +{ + { 0x00, 0x80, 0x0080, "PoH big chest behind Deku Like" }, + { 0x00, 0x04, 0x0004, "big chest underwater Tiny Cave" }, + { 0x00, 0x02, 0x0002, "small key big chest on pillar tile worm room" }, + { 0x00, 0x01, 0x0001, "Small Chest tile worm room" }, + { 0x01, 0x10, 0x0110, "big chest compass main room" }, + { 0x01, 0x08, 0x0108, "PoH big chest behind stairs tile worm room" }, + { 0x01, 0x02, 0x0102, "saved monkey in front of big pit" }, + { 0x02, 0x80, 0x0280, "saved monkey in boomerang bombling room" }, + { 0x02, 0x20, 0x0220, "saved monkey in tile worm room" }, + { 0x02, 0x10, 0x0210, "saved monkey in big baba room" }, + { 0x02, 0x08, 0x0208, "saved 2nd monkey" }, + { 0x02, 0x04, 0x0204, "first Monkey saved" }, + { 0x02, 0x02, 0x0202, "Small Chest 2nd Monkey room" }, + { 0x03, 0x80, 0x0380, "small chest first room" }, + { 0x03, 0x40, 0x0340, "Big Baba key acquired" }, + { 0x03, 0x10, 0x0310, "small key big chest in single wind bridge room" }, + { 0x03, 0x04, 0x0304, "small key big chest in boomerang bombling room" }, + { 0x03, 0x02, 0x0302, "Big Chest in broken stairs room" }, + { 0x06, 0x01, 0x0601, "Ooccoo map marker" }, + { 0x07, 0x80, 0x0780, "big chest with map main room" }, + { 0x07, 0x40, 0x0740, "Big Key Chest" }, + { 0x07, 0x20, 0x0720, "small chest behind bombable wall main room" }, + { 0x07, 0x04, 0x0704, "Outside Monkey saved" }, + { 0x07, 0x02, 0x0702, "saved monkey in spider cave room" }, + { 0x08, 0x40, 0x0840, "Midna Boomerang text seen" }, + { 0x08, 0x20, 0x0820, "midna text after bridge before Ook broken" }, + { 0x08, 0x08, 0x0808, "Big Baba killed cutscene (still spawned)" }, + { 0x08, 0x02, 0x0802, "hit totem of 2nd monkey once cs" }, + { 0x08, 0x01, 0x0801, "Midna first monkey text end" }, + { 0x09, 0x80, 0x0980, "Boss Door opened" }, + { 0x09, 0x40, 0x0940, "bridge before Ook broken" }, + { 0x09, 0x20, 0x0920, "burned cob web big key room" }, + { 0x09, 0x10, 0x0910, "bridge 2nd monkey room broken" }, + { 0x09, 0x02, 0x0902, "Compass Chest knocked down" }, + { 0x0A, 0x80, 0x0A80, "Monkey freed in spider room" }, + { 0x0A, 0x08, 0x0A08, "unlocked door to 2nd monkey room" }, + { 0x0A, 0x04, 0x0A04, "broke cage of 2nd monkey cs" }, + { 0x0A, 0x02, 0x0A02, "bokoblins see you in single wind bridge room cs" }, + { 0x0A, 0x01, 0x0A01, "turned wind bridge in single wind bridge room cs" }, + { 0x0B, 0x80, 0x0B80, "Unlock Windbridge East Door" }, + { 0x0B, 0x10, 0x0B10, "Girl Monkey helps Link" }, + { 0x0C, 0x40, 0x0C40, "opened cage of monkey in big baba room" }, + { 0x0C, 0x20, 0x0C20, "killed higher bokoblin in room before boss" }, + { 0x0C, 0x10, 0x0C10, "killed lower bokoblin in room before boss" }, + { 0x0C, 0x02, 0x0C02, "blown up rock to Ooccoo" }, + { 0x0D, 0x80, 0x0D80, "blown up rock blocking tile worm room" }, + { 0x0D, 0x40, 0x0D40, "blown up main room bombable wall" }, + //{ 0x0D, 0x20, 0x0D20, "small key big chest tile worm room position" }, + //{ 0x0D, 0x10, 0x0D10, "small key big chest tile worm room position" }, + //{ 0x0D, 0x08, 0x0D08, "small key big chest tile worm room position" }, + //{ 0x0D, 0x04, 0x0D04, "small key big chest tile worm room position" }, + { 0x0D, 0x02, 0x0D02, "Staircase rises main room" }, + { 0x0E, 0x20, 0x0E20, "tile worm room intro cs" }, + { 0x0E, 0x08, 0x0E08, "opened cage of monkey in tile worm room" }, + { 0x0E, 0x04, 0x0E04, "gate to big key opened" }, + { 0x0E, 0x02, 0x0E02, "2nd Monkey room intro cs" }, + { 0x0F, 0x80, 0x0F80, "lit bottom right torch main room" }, + { 0x0F, 0x40, 0x0F40, "lit bottom left torch main room" }, + { 0x0F, 0x20, 0x0F20, "lit upper right torch main room" }, + { 0x0F, 0x10, 0x0F10, "lit upper left torch main room" }, + { 0x0F, 0x08, 0x0F08, "big baba room intro cs" }, + { 0x0F, 0x04, 0x0F04, "enter room before boss Midna text" }, + { 0x0F, 0x02, 0x0F02, "Midna text after saveing a monkey after Ook" }, + { 0x0F, 0x01, 0x0F01, "Small Bridge breaks scene seen" }, + { 0x10, 0x10, 0x1010, "enter southwest door outside intro cs" }, + { 0x10, 0x04, 0x1004, "Midna text after compass" }, + { 0x10, 0x02, 0x1002, "boomerang obtained" }, + { 0x10, 0x01, 0x1001, "burned west cob web main room" }, + { 0x11, 0x08, 0x1108, "5th monkey added to room before boss" }, + { 0x11, 0x04, 0x1104, "4 Monkeys in main room cutscene" }, + { 0x11, 0x02, 0x1102, "turned wind bridge in single wind bridge room" }, + { 0x11, 0x01, 0x1101, "Monkeys regroup in Main Room" }, + { 0x12, 0x80, 0x1280, "4 Monkeys gather in Main Room" }, + { 0x12, 0x40, 0x1240, "blown up 1st rock in boomeang bombling room" }, + { 0x12, 0x10, 0x1210, "Ooccoo Freed" }, + { 0x12, 0x01, 0x1201, "2nd Monkey Bokoblins Killed" }, + { 0x13, 0x80, 0x1380, "Midna first Monkey text prompt (makes vines climbable)" }, + { 0x13, 0x40, 0x1340, "killed big baba cs" }, + { 0x13, 0x08, 0x1308, "?" }, + { 0x13, 0x04, 0x1304, "?" }, + { 0x13, 0x02, 0x1302, "Diababa killed" }, + { 0x13, 0x01, 0x1301, "Diababa Phase 2 (unset post kill)" }, + { 0x14, 0x20, 0x1420, "broke bridge over water that leads to big key" }, + { 0x14, 0x04, 0x1404, "monkeys form a rope in room before boss cs" }, + { 0x14, 0x02, 0x1402, "monkeys start to form a rope in room before boss" }, + { 0x15, 0x80, 0x1580, "All Monkeys form rope" }, + { 0x15, 0x40, 0x1540, "Ook exit door opened" }, + { 0x15, 0x20, 0x1520, "opened gate to monkey in broken stairs room" }, + { 0x15, 0x08, 0x1508, "blown up 2nd rock in boomerang bombling room" }, + { 0x15, 0x02, 0x1502, "saved 5th monkey cs" }, + { 0x15, 0x01, 0x1501, "killed bokoblin next to first monkey" }, + { 0x16, 0x20, 0x1620, "see locked monkey post Ook" }, + { 0x16, 0x10, 0x1610, "Ook defeated" }, + { 0x16, 0x08, 0x1608, "monkeys form a rope in room before boss cs" }, + { 0x16, 0x04, 0x1604, "Staircase rising cutscene for 4th Monkey" }, + { 0x16, 0x02, 0x1602, "Intro Cutscene" }, + { 0x16, 0x01, 0x1601, "2nd Monkey Pillar scene" }, + { 0x17, 0x80, 0x1780, "enter room before boss intro cs" }, + { 0x17, 0x40, 0x1740, "turned mill for the first time in Ook room cs" }, + { 0x17, 0x20, 0x1720, "big chest compass main room (set after)" }, + { 0x17, 0x01, 0x1701, "hit totem of 2nd monkey once" }, + { 0x1B, 0x10, 0x1B10, "picked up red rupee from deku like in spider room" }, +}; + +inline EventAreaFlags eventAreaFlagsGerudoDesert[] = +{ + { 0x02, 0x80, 0x0280, "big chest next to Arbiter's Grounds" }, + { 0x02, 0x20, 0x0220, "small chest next to camp entrance" }, + { 0x02, 0x08, 0x0208, "small chest on pillar weat of entrance to desert" }, + { 0x02, 0x04, 0x0204, "small chest under tower of left bulblin outside camp" }, + { 0x02, 0x02, 0x0202, "small chest under tower of right bulblin outside camp" }, + { 0x02, 0x01, 0x0201, "small chest next to fire outside camp" }, + { 0x03, 0x80, 0x0380, "small chest island north of cave of ordeals" }, + { 0x03, 0x40, 0x0340, "small chest east canyon" }, + { 0x03, 0x20, 0x0320, "small chest next to pillar in the middle of the messa" }, + { 0x03, 0x08, 0x0308, "small chest behind 2 breakable walls (the west one)" }, + { 0x03, 0x04, 0x0304, "small chest behind 2 breakable walls (the east one)" }, + { 0x03, 0x02, 0x0302, "big chest owl statue" }, + { 0x03, 0x01, 0x0301, "big chest in south secret path" }, + { 0x04, 0x80, 0x0480, "both small chests and key in camp (each one sets it)" }, + { 0x08, 0x80, 0x0880, "?" }, + { 0x08, 0x40, 0x0840, "?" }, + { 0x08, 0x20, 0x0820, "explored island north of cave of ordeals" }, + { 0x08, 0x10, 0x0810, "explored part 9 of bulblin camp (KB battle area)" }, + { 0x08, 0x08, 0x0808, "explored part 8 of bulblin camp" }, + { 0x08, 0x04, 0x0804, "explored part 7 of bulblin camp" }, + { 0x08, 0x02, 0x0802, "explored part 6 of bulblin camp" }, + { 0x08, 0x01, 0x0801, "explored part 5 of bulblin camp" }, + { 0x09, 0x80, 0x0980, "Desert Intro CS (PoT)" }, + { 0x09, 0x20, 0x0920, "Gerudo Messa Portal" }, + { 0x09, 0x08, 0x0908, "explored part 2 of bulblin camp" }, + { 0x09, 0x04, 0x0904, "explored part 4 of bulblin camp" }, + { 0x09, 0x02, 0x0902, "explored part 3 of bulblin camp" }, + { 0x09, 0x01, 0x0901, "?" }, + { 0x0A, 0x40, 0x0A40, "explored south secret path to big chest" }, + { 0x0A, 0x10, 0x0A10, "Mirror chamber intro cs" }, + { 0x0A, 0x04, 0x0A04, "save prompt after beating Arbiter's Grounds" }, + { 0x0A, 0x02, 0x0A02, "killed archer bulblin on bore outside camp" }, + { 0x0A, 0x01, 0x0A01, "killed rider bulblin on bore outside camp" }, + { 0x0B, 0x80, 0x0B80, "killed lone bulblin on bore outside camp" }, + { 0x0B, 0x40, 0x0B40, "killed bulblin on left tower outside camp" }, + { 0x0B, 0x20, 0x0B20, "killed bulblin on right tower outside camp" }, + { 0x0B, 0x10, 0x0B10, "watched outside AG cutscene after bublin camp" }, + { 0x0B, 0x04, 0x0B04, "destroyed fire outside camp" }, + { 0x0B, 0x02, 0x0B02, "destroyed bore meat in camp" }, + { 0x0D, 0x08, 0x0D08, "killed poe next to entrance to camp" }, + { 0x0D, 0x04, 0x0D04, "Hero's Shade map marker" }, + { 0x0D, 0x02, 0x0D02, "spawn big chest next to Arbiter's Grounds" }, + { 0x0D, 0x01, 0x0D01, "lit right torch for big chest next to Arbiter's Grounds entrance" }, + { 0x0E, 0x80, 0x0E80, "lit left torch for big chest next to Arbiter's Grounds entrance" }, + { 0x0E, 0x20, 0x0E20, "explored area with Arbiter's Gounds entrance" }, + { 0x0E, 0x02, 0x0E02, "mirror light stairs appear" }, + { 0x0E, 0x01, 0x0E01, "Mirror Chamber Portal" }, + { 0x0F, 0x04, 0x0F04, "sky character under owl statue" }, + { 0x0F, 0x02, 0x0F02, "map marker owl statue" }, + { 0x0F, 0x01, 0x0F01, "Mirror Raised Cutscene Flag (Places Boar at desert entrance)" }, + { 0x10, 0x40, 0x1040, "broke left wall that prevents access to east small chest (set once pieces despawn)" }, + { 0x10, 0x20, 0x1020, "killed poe next to cave of ordeals" }, + { 0x10, 0x10, 0x1010, "killed poe south of desert entrance" }, + { 0x10, 0x08, 0x1008, "killed poe on elevated platform with grotto (messa)" }, + { 0x10, 0x04, 0x1004, "killed poe next to Arbiter's Grounds entrance" }, + { 0x10, 0x02, 0x1002, "destroyed tower of right bulbin outside camp" }, + { 0x10, 0x01, 0x1001, "destroyed tower of left bulbin outside camp" }, + { 0x11, 0x20, 0x1120, "broke first right wall to camp (set once pieces despawn)" }, + { 0x11, 0x10, 0x1110, "broke first middle wall to camp (set once pieces despawn)" }, + { 0x11, 0x08, 0x1108, "broke first left wall to camp (set once pieces despawn)" }, + { 0x11, 0x04, 0x1104, "broke second right wall to camp (set once pieces despawn)" }, + { 0x11, 0x02, 0x1102, "broke second left wall to camp (set once pieces despawn)" }, + { 0x12, 0x10, 0x1210, "explored elavated section with poe over grotto" }, + { 0x13, 0x40, 0x1340, "Desert Intro CS" }, + { 0x14, 0x80, 0x1480, "started climbing stairs to mirror chamber" }, + { 0x14, 0x40, 0x1440, "exit Arbiters Grounds to go to mirror chamber" }, + { 0x14, 0x02, 0x1402, "map marker palace of twilight (explored mirror chamber)" }, + { 0x14, 0x01, 0x1401, "killed poe in bulblin camp" }, + { 0x17, 0x08, 0x1708, "broke right wall that prevents access to east small chest (set once pieces despawn)" }, + { 0x17, 0x04, 0x1704, "broke left wall that prevents access to west small chest (set once pieces despawn)" }, + { 0x17, 0x02, 0x1702, "broke right wall that prevents access to west small chest (set once pieces despawn)" }, + { 0x18, 0x80, 0x1880, "free standing PoH bore meat bulblin camp" }, +}; + +inline EventAreaFlags eventAreaFlagsGM[] = +{ + { 0x00, 0x40, 0x0040, "big chest main room top floor" }, + { 0x00, 0x10, 0x0010, "small chest next to switch in toadpoli room" }, + { 0x00, 0x08, 0x0008, "small chest first room" }, + { 0x00, 0x04, 0x0004, "big chest elder 3 room" }, + { 0x00, 0x02, 0x0002, "small chest elder 2 room" }, + { 0x00, 0x01, 0x0001, "small chest elder 1 room" }, + { 0x01, 0x40, 0x0140, "Ooccoo Map Flag" }, + { 0x01, 0x20, 0x0120, "big chest underwater outside room" }, + { 0x01, 0x10, 0x0110, "PoH big chest room 3" }, + { 0x01, 0x02, 0x0102, "map big chest elder 1 room" }, + { 0x01, 0x01, 0x0101, "small key underwater big chest toadpoli room" }, + { 0x02, 0x80, 0x0280, "small key small chest outside room" }, + { 0x02, 0x40, 0x0240, "big chest outside room clawshot" }, + { 0x02, 0x20, 0x0220, "small chest room leading to elder 2" }, + { 0x02, 0x10, 0x0210, "compass big chest" }, + { 0x02, 0x08, 0x0208, "small key big chest main room bottom floor" }, + { 0x02, 0x02, 0x0202, "PoH big chest toadpoli room (the one after the gate)" }, + { 0x03, 0x40, 0x0340, "big chest bow" }, + { 0x08, 0x10, 0x0810, "cut rope of door outside room cs" }, + { 0x08, 0x08, 0x0808, "pressed second button main room floor 2 cs" }, + { 0x08, 0x04, 0x0804, "pressed third button in first room cs" }, + { 0x08, 0x02, 0x0802, "pressed second button in first room cs" }, + { 0x08, 0x01, 0x0801, "cut rope of door in toadpoli room cs" }, + { 0x09, 0x80, 0x0980, "unlocked boss door" }, + { 0x09, 0x20, 0x0920, "pressed first button main room floor 2 cs" }, + { 0x09, 0x10, 0x0910, "killed beamos outside room" }, + { 0x0A, 0x40, 0x0A40, "unlock mini-boss doors" }, + { 0x0A, 0x08, 0x0A08, "pressed button outside room" }, + { 0x0A, 0x04, 0x0A04, "cut rope of door in room before boss" }, + { 0x0A, 0x02, 0x0A02, "cut rope of door in toadpoli room" }, + { 0x0A, 0x01, 0x0A01, "cut rope of door in bow room" }, + { 0x0B, 0x20, 0x0B20, "cut rope of door at top floor of main room" }, + { 0x0B, 0x10, 0x0B10, "pressed first button main room floor 2" }, + { 0x0B, 0x08, 0x0B08, "reach west locked door in main room bottom floor" }, + { 0x0B, 0x04, 0x0B04, "lowered platform to open gate in first room (read only)" }, + { 0x0C, 0x80, 0x0C80, "unlocked north door in toadpoli room" }, + { 0x0C, 0x40, 0x0C40, "pressed second button main room floor 2" }, + { 0x0C, 0x20, 0x0C20, "unlock west locked door in main room bottom floor" }, + { 0x0C, 0x08, 0x0C08, "killed right beamos in toadpoli room" }, + { 0x0C, 0x04, 0x0C04, "killed left beamos in toadpoli room" }, + { 0x0D, 0x80, 0x0D80, "pressed button outside room cs" }, + { 0x0D, 0x40, 0x0D40, "pressed button at top floor of main room" }, + { 0x0D, 0x08, 0x0D08, "unlocked east door outside room" }, + { 0x0D, 0x01, 0x0D01, "broke underwater wood barrier outside room" }, + { 0x0E, 0x80, 0x0E80, "replace tektites with toadpolis in toadpoli room (set after obtaining bow)" }, + { 0x0E, 0x20, 0x0E20, "main room intro cs" }, + { 0x0E, 0x10, 0x0E10, "main room intro cs" }, + { 0x0E, 0x08, 0x0E08, "broke second wood barrier in outside room" }, + { 0x0E, 0x04, 0x0E04, "broke first wood barrier in outside room" }, + { 0x0E, 0x02, 0x0E02, "Oocco Freed" }, + { 0x0E, 0x01, 0x0E01, "elder 2 lets you climb ladder in his room" }, + { 0x0F, 0x80, 0x0F80, "elder 1 lets you climb ladder in his room" }, + { 0x0F, 0x40, 0x0F40, "pulled beamos outside room" }, + { 0x0F, 0x20, 0x0F20, "outside room intro cs" }, + { 0x0F, 0x10, 0x0F10, "outside room getting shot at after mini-boss cs" }, + { 0x0F, 0x08, 0x0F08, "outside room getting shot at after mini-boss cs" }, + { 0x0F, 0x04, 0x0F04, "outside room intro cs" }, + { 0x10, 0x80, 0x1080, "room after bow intro cs" }, + { 0x10, 0x40, 0x1040, "pulled beamos outside room cs" }, + { 0x10, 0x20, 0x1020, "activate first force field in toadpoli room" }, + { 0x10, 0x10, 0x1010, "pressed first button in toadpoli room cs" }, + { 0x10, 0x08, 0x1008, "open gate in toadpoli room cs" }, + { 0x10, 0x04, 0x1004, "pressed second button in toadpoli room cs" }, + { 0x10, 0x02, 0x1002, "activate second force field in toadpoli room" }, + { 0x10, 0x01, 0x1001, "room before elder 1 intro cs" }, + { 0x11, 0x80, 0x1180, "room before elder 1 intro cs" }, + { 0x11, 0x20, 0x1120, "intro cs" }, + { 0x11, 0x10, 0x1110, "pressed first button in first room cs" }, + { 0x11, 0x08, 0x1108, "open gate in first room cs" }, + { 0x11, 0x04, 0x1104, "pressed button in room after bow" }, + { 0x11, 0x02, 0x1102, "hit switch in room after bow" }, + { 0x11, 0x01, 0x1101, "press button room 3" }, + { 0x12, 0x80, 0x1280, "killed south-east beamos bow room" }, + { 0x12, 0x40, 0x1240, "killed south-west beamos bow room" }, + { 0x12, 0x20, 0x1220, "killed west beamos bow room" }, + { 0x12, 0x10, 0x1210, "killed north-east beamos bow room" }, + { 0x12, 0x08, 0x1208, "killed north-west beamos bow room" }, + { 0x12, 0x04, 0x1204, "killed east beamos bow room" }, + { 0x12, 0x02, 0x1202, "killed south beamos bow room" }, + { 0x12, 0x01, 0x1201, "pulled south-east beamos bow room" }, + { 0x13, 0x80, 0x1380, "pulled south-west beamos bow room" }, + { 0x13, 0x40, 0x1340, "pulled west beamos bow room" }, + { 0x13, 0x08, 0x1308, "pulled east beamos bow room" }, + { 0x13, 0x04, 0x1304, "pulled south beamos bow room" }, + { 0x13, 0x02, 0x1302, "pressed first button in toadpoli room" }, + { 0x13, 0x01, 0x1301, "pressed second button in toadpoli room" }, + { 0x15, 0x01, 0x1501, "reached area past pullable wall in room 3 (first in path to elder 1)" }, + { 0x16, 0x10, 0x1610, "reached bottom of water in room before elder 1" }, + { 0x16, 0x08, 0x1608, "reached area past pullable wall in room 3 (first in path to elder 1)" }, + { 0x16, 0x04, 0x1604, "knocked down fence in room after bow" }, + { 0x16, 0x02, 0x1602, "pullable wall in room 3 closed itself" }, + { 0x17, 0x80, 0x1780, "outside room killed leader bulblin archer" }, + { 0x17, 0x20, 0x1720, "cut rope of door outside room" }, + { 0x17, 0x10, 0x1710, "pressed unerwater button in room before elder" }, + { 0x17, 0x08, 0x1708, "main room floor 2 intro cs" }, + { 0x17, 0x04, 0x1704, "main room floor 2 intro cs" }, + { 0x17, 0x02, 0x1702, "hit switch in room after bow cs" }, + { 0x17, 0x01, 0x1701, "room after bow intro cs" }, +}; + +inline EventAreaFlags eventAreaFlagsGrotto[] = +{ + { 0x01, 0x20, 0x0120, "big chest grotto 5-4" }, + { 0x01, 0x08, 0x0108, "big chest grotto 4-3" }, + { 0x01, 0x04, 0x0104, "left small chest grotto 2-0" }, + { 0x01, 0x02, 0x0102, "right small chest grotto 2-0" }, + { 0x01, 0x01, 0x0101, "small chest grotto 5-3" }, + { 0x02, 0x80, 0x0280, "big chest grotto 4-2" }, + { 0x02, 0x40, 0x0240, "big chest grotto 3-0" }, + { 0x02, 0x20, 0x0220, "south small chest grotto 2-1" }, + { 0x02, 0x10, 0x0210, "east small chest grotto 2-1" }, + { 0x02, 0x08, 0x0208, "north small chest grotto 2-1" }, + { 0x02, 0x04, 0x0204, "small chest grotto 1-1" }, + { 0x02, 0x01, 0x0201, "big chest grotto 4-1" }, + { 0x03, 0x80, 0x0380, "big chest grotto 1-2" }, + { 0x03, 0x40, 0x0340, "big chest grotto 1-1" }, + { 0x03, 0x20, 0x0320, "big chest grotto 5-2" }, + { 0x03, 0x10, 0x0310, "big chest grotto 4-0" }, + { 0x03, 0x08, 0x0308, "big chest grotto 2-2" }, + { 0x03, 0x04, 0x0304, "big chest grotto 2-0" }, + { 0x03, 0x02, 0x0302, "big chest grotto 5-0" }, + { 0x03, 0x01, 0x0301, "big chest grotto 1-0" }, + { 0x08, 0x80, 0x0880, "lit right torch grotto 1-1" }, + { 0x08, 0x40, 0x0840, "lit left torch grotto 1-1" }, + { 0x08, 0x20, 0x0820, "killed red chu-chu grotto 3-3" }, + { 0x08, 0x10, 0x0810, "killed chu-chu grotto 3-2" }, + { 0x08, 0x08, 0x0808, "killed blue chu-chu grotto 3-1" }, + { 0x08, 0x04, 0x0804, "killed chu-chu grotto 2-0" }, + { 0x08, 0x02, 0x0802, "killed chu-chu grotto 1-2" }, + { 0x08, 0x01, 0x0801, "killed right freezard grotto 4-2" }, + { 0x09, 0x80, 0x0980, "broke ice wall 1 grotto 4-2" }, + { 0x09, 0x40, 0x0940, "killed chu-chu grotto 1-1" }, + { 0x09, 0x20, 0x0920, "killed all enemies grotto 5-4 (spawm chest)" }, + { 0x09, 0x10, 0x0910, "killed left freezard grotto 4-2" }, + { 0x09, 0x08, 0x0908, "killed blue chu-chu grotto 3-3" }, + { 0x09, 0x04, 0x0904, "broke ice wall 2 grotto 4-2" }, + { 0x09, 0x02, 0x0902, "broke ice wall 4 grotto 4-2" }, + { 0x09, 0x01, 0x0901, "killed poe in the back entrance grotto 3-0" }, + { 0x0A, 0x80, 0x0A80, "killed poe next to entrance grotto 3-0" }, + { 0x0A, 0x40, 0x0A40, "broke ice wall 3 grotto 4-2" }, + { 0x0A, 0x20, 0x0A20, "broke ice wall 6 grotto 4-2" }, + { 0x0A, 0x10, 0x0A10, "broke ice wall 5 grotto 4-2" }, + { 0x0A, 0x08, 0x0A08, "killed middle poe grotto 1-3" }, + { 0x0A, 0x04, 0x0A04, "killed right poe grotto 1-3" }, + { 0x0A, 0x02, 0x0A02, "spawn big chest grotto 1-1" }, + { 0x0A, 0x01, 0x0A01, "killed all enemies grotto 4-1 (spawm chest)" }, + { 0x0B, 0x80, 0x0B80, "killed middle freezard grotto 4-2" }, + { 0x0B, 0x40, 0x0B40, "blown up rocks in grotto 3-2" }, + { 0x0B, 0x20, 0x0B20, "killed all enemies grotto 5-2 (spawm chest)" }, + { 0x0B, 0x10, 0x0B10, "killed all enemies grotto 4-0 (spawm chest)" }, + { 0x0B, 0x08, 0x0B08, "killed all enemies grotto 2-2 (spawm chest)" }, + { 0x0B, 0x04, 0x0B04, "killed all enemies grotto 2-0 (spawm chest)" }, + { 0x0B, 0x02, 0x0B02, "killed all enemies grotto 5-0 (spawm chest)" }, + { 0x0B, 0x01, 0x0B01, "killed all enemies grotto 1-0 (spawm chest)" }, + { 0x0E, 0x10, 0x0E10, "spawn big chest grotto 4-3" }, + { 0x0E, 0x08, 0x0E08, "lit torch 3 grotto 4-3" }, + { 0x0E, 0x04, 0x0E04, "lit torch 2 grotto 4-3" }, + { 0x0E, 0x02, 0x0E02, "lit torch 1 grotto 4-3" }, + { 0x0E, 0x01, 0x0E01, "spawn big chest grotto 3-0" }, + { 0x0F, 0x80, 0x0F80, "lit right torch grotto 3-0" }, + { 0x0F, 0x40, 0x0F40, "lit middle torch grotto 3-0" }, + { 0x0F, 0x20, 0x0F20, "lit left torch grotto 3-0" }, + { 0x0F, 0x10, 0x0F10, "spawn big chest grotto 1-2" }, + { 0x0F, 0x08, 0x0F08, "lit middle torch grotto 1-2" }, + { 0x0F, 0x04, 0x0F04, "lit right torch grotto 1-2" }, + { 0x0F, 0x02, 0x0F02, "lit left torch grotto 1-2" }, + { 0x1A, 0x02, 0x1A02, "picked up yellow rupee from pot grotto 1-2" }, + { 0x1A, 0x01, 0x1A01, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x80, 0x1B80, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x40, 0x1B40, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x20, 0x1B20, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x10, 0x1B10, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x08, 0x1B08, "picked up blue rupee from pot grotto 1-2" }, + { 0x1B, 0x04, 0x1B04, "picked up yellow rupee from pot grotto 1-2" }, + { 0x1B, 0x02, 0x1B02, "picked up red rupee from pot grotto 1-2" }, + { 0x1B, 0x01, 0x1B01, "picked up red rupee from pot grotto 1-2" }, +}; + +inline EventAreaFlags eventAreaFlagsHC[] = +{ + { 0x00, 0x40, 0x0040, "big chest behind first gate in graveyard" }, + { 0x00, 0x20, 0x0020, "second small chest treasure room" }, + { 0x00, 0x10, 0x0010, "eighth small chest treasure room" }, + { 0x00, 0x08, 0x0008, "seventh small chest treasure room" }, + { 0x00, 0x04, 0x0004, "sixth small chest treasure room" }, + { 0x00, 0x02, 0x0002, "big chest north room 2F" }, + { 0x01, 0x80, 0x0180, "fourth small chest treasure room" }, + { 0x01, 0x40, 0x0140, "fifth small chest treasure room" }, + { 0x01, 0x20, 0x0120, "third small chest treasure room" }, + { 0x01, 0x08, 0x0108, "fifth big chest treasure room" }, + { 0x01, 0x04, 0x0104, "fourth big chest treasure room" }, + { 0x01, 0x02, 0x0102, "third big chest treasure room" }, + { 0x01, 0x01, 0x0101, "second big chest treasure room" }, + { 0x02, 0x80, 0x0280, "first big chest treasure room" }, + { 0x02, 0x20, 0x0220, "north west big chest center room 2F" }, + { 0x02, 0x08, 0x0208, "small chest east garden" }, + { 0x02, 0x02, 0x0202, "north small chest west garden" }, + { 0x02, 0x01, 0x0201, "compass north east big chest center room 2F" }, + { 0x03, 0x80, 0x0380, "small key big chest behind third gate in graveyard" }, + { 0x03, 0x20, 0x0320, "center small chest west garden" }, + { 0x03, 0x10, 0x0310, "map big chest east garden" }, + { 0x03, 0x08, 0x0308, "king bulblin small key" }, + { 0x03, 0x04, 0x0304, "south west big chest center room 2F" }, + { 0x03, 0x02, 0x0302, "small key big chest outside 2F" }, + { 0x03, 0x01, 0x0301, "big key chest" }, + { 0x07, 0x08, 0x0708, "first small chest treasure room" }, + { 0x07, 0x04, 0x0704, "east small chest behind first gate in graveyard" }, + { 0x07, 0x02, 0x0702, "west small chest behind first gate in graveyard" }, + { 0x08, 0x10, 0x0810, "killed darknut in north room 2F (spawn big chest)" }, + { 0x08, 0x08, 0x0808, "reach end of specter maze 3F" }, + { 0x08, 0x04, 0x0804, "darknut 4F intro cs part 2" }, + { 0x08, 0x02, 0x0802, "darknut 4F intro cs part 1" }, + { 0x08, 0x01, 0x0801, "cut painting in north east room 2F cs" }, + { 0x09, 0x80, 0x0980, "cut painting in north east room 2F cs" }, + { 0x09, 0x40, 0x0940, "killed all enemies in center room 1F cs 1/2" }, + { 0x09, 0x20, 0x0920, "spawn north east big chest center room 2F" }, + { 0x09, 0x10, 0x0910, "killed lizalfos garding big key chest" }, + { 0x09, 0x08, 0x0908, "open third gate in graveyard cs" }, + { 0x09, 0x04, 0x0904, "blown up rock in graveyard" }, + { 0x09, 0x02, 0x0902, "lit torch behind first gate in graveyard (stops rain)" }, + { 0x09, 0x01, 0x0901, "graveyard intro cs" }, + { 0x0A, 0x80, 0x0A80, "open second gate in graveyard cs" }, + { 0x0A, 0x40, 0x0A40, "open first gate in graveyard cs" }, + { 0x0A, 0x20, 0x0A20, "open third gate in graveyard" }, + { 0x0A, 0x10, 0x0A10, "open first gate in graveyard" }, + { 0x0A, 0x04, 0x0A04, "open second gate in graveyard" }, + { 0x0B, 0x01, 0x0B01, "defeated dark beast Ganon" }, + { 0x0C, 0x40, 0x0C40, "cut first left painting in north west room 2F" }, + { 0x0C, 0x20, 0x0C20, "cut second left painting in north west room 2F" }, + { 0x0C, 0x10, 0x0C10, "cut third left painting in north west room 2F" }, + { 0x0C, 0x02, 0x0C02, "killed all enemies in center room 1F" }, + { 0x0D, 0x80, 0x0D80, "despawn yellow magic walls in center room 1F" }, + { 0x0D, 0x40, 0x0D40, "spawn yellow magic walls in center room 1F" }, + { 0x0D, 0x20, 0x0D20, "outside 4F intro cs" }, + { 0x0D, 0x10, 0x0D10, "outside 4F intro cs" }, + { 0x0D, 0x08, 0x0D08, "killed all east bokoblins in south garden" }, + { 0x0D, 0x04, 0x0D04, "killed all west bokoblins in south garden" }, + { 0x0D, 0x01, 0x0D01, "east room 2F intro cs" }, + { 0x0E, 0x80, 0x0E80, "east room 2F intro cs" }, + { 0x0E, 0x10, 0x0E10, "killed right lezalfos in north west room 2F" }, + { 0x0E, 0x08, 0x0E08, "killed left lezalfos in north west room 2F" }, + { 0x0E, 0x01, 0x0E01, "midna text at the end of east garden (talk about wall)" }, + { 0x0F, 0x80, 0x0F80, "explored graveyard" }, + { 0x10, 0x80, 0x1080, "killed both lizalfos in 4F (removes yellow magic barrior)" }, + { 0x10, 0x40, 0x1040, "killed both lizalfos in 3F (removes yellow magic barrior)" }, + { 0x10, 0x20, 0x1020, "south garden intro cs" }, + { 0x10, 0x02, 0x1002, "Midna text prompt after king bulblin" }, + { 0x10, 0x01, 0x1001, "killed all bokoblins in west garden" }, + { 0x11, 0x80, 0x1180, "prevent all torches form extinguishing north east room 2F" }, + { 0x11, 0x40, 0x1140, "unlock door in north east room 2F cs" }, + { 0x11, 0x10, 0x1110, "open second gate in west garden" }, + { 0x11, 0x08, 0x1108, "east garden intro cs" }, + { 0x11, 0x04, 0x1104, "east garden intro cs" }, + { 0x11, 0x02, 0x1102, "open gate in east garden" }, + { 0x11, 0x01, 0x1101, "open gate in east garden cs" }, + { 0x12, 0x80, 0x1280, "unlock door in north east room 2F" }, + { 0x12, 0x40, 0x1240, "lit all torches correctly in north east room 2F" }, + { 0x12, 0x20, 0x1220, "lit all torches correctly in north east room 2F cs" }, + { 0x12, 0x10, 0x1210, "unlock door outside 3F" }, + { 0x12, 0x08, 0x1208, "open gate to big key chest" }, + { 0x12, 0x04, 0x1204, "killed arealfos outside 2F" }, + { 0x12, 0x01, 0x1201, "killed all enemies in center room 1F cs 1/2" }, + { 0x13, 0x40, 0x1340, "Double Darknut room intro cs" }, + { 0x13, 0x08, 0x1308, "spawn north west big chest center room 2F" }, + { 0x13, 0x04, 0x1304, "west room 2F intro cs" }, + { 0x13, 0x02, 0x1302, "cut right painting in north west room 2F" }, + { 0x14, 0x40, 0x1440, "unlock boss door" }, + { 0x14, 0x10, 0x1410, "unlock door in south garden" }, + { 0x14, 0x08, 0x1408, "midna text seen after small key in graveyard" }, + { 0x14, 0x04, 0x1404, "midna text promt after small key in graveyard" }, + { 0x14, 0x02, 0x1402, "Midna text seen after king bulblin" }, + { 0x14, 0x01, 0x1401, "north west room 2F intro cs" }, + { 0x15, 0x40, 0x1540, "cut painting in north east room 2F" }, + { 0x15, 0x08, 0x1508, "second gate in west garden stops moving" }, + { 0x15, 0x04, 0x1504, "open second gate in west garden cs" }, + { 0x15, 0x01, 0x1501, "killed dynalfos in east room 2F (unlocks doors)" }, + { 0x16, 0x80, 0x1680, "unlock treasure room door 4F" }, + { 0x16, 0x04, 0x1604, "killed darknuts in west room 2F (unlocks doors)" }, + { 0x16, 0x02, 0x1602, "reach big chest in north room 2F" }, + { 0x16, 0x01, 0x1601, "lit south east torch north room 2F for the first time cs" }, + { 0x17, 0x80, 0x1780, "lit north east torch north room 2F for the first time cs" }, + { 0x17, 0x10, 0x1710, "unlock door in north west room 2F" }, + { 0x17, 0x01, 0x1701, "killed darknut 4F (removes yellow magic barrier)" }, +}; + +inline EventAreaFlags eventAreaFlagsHyruleField[] = +{ + { 0x02, 0x80, 0x0280, "Big chest owl statue hylia bridge" }, + { 0x02, 0x40, 0x0240, "Big chest spinner south of castle town" }, + { 0x02, 0x20, 0x0220, "Big chest double clawshot south of castle town" }, + { 0x02, 0x10, 0x0210, "Big chest tight rope south of castle town" }, + { 0x02, 0x08, 0x0208, "Big chest owl statue next to castle town" }, + { 0x02, 0x04, 0x0204, "Big chest on hylia bridge" }, + { 0x02, 0x02, 0x0202, "Big chest next to poe past hylia bridge" }, + { 0x02, 0x01, 0x0201, "Big chest spinner tracks (Lanayru)" }, + { 0x03, 0x80, 0x0380, "Big chest underwater Lanayru field" }, + { 0x03, 0x40, 0x0340, "Big chest under bridge faron field" }, + { 0x03, 0x20, 0x0320, "PoH big chest double clawshot Eldin gorge" }, + { 0x03, 0x10, 0x0310, "Big chest Eldin gorge owl statue" }, + { 0x03, 0x08, 0x0308, "PoH big chest owl statue Eldin bridge" }, + { 0x03, 0x04, 0x0304, "PoH big chest leage Eldin field after kakariko" }, + { 0x03, 0x02, 0x0302, "Map marker Telma carrage past hylia bridge" }, + { 0x03, 0x01, 0x0301, "Map marker Telma carrage west of castle town" }, + { 0x08, 0x80, 0x0880, "Lanayru field intro cs twilight" }, + { 0x08, 0x20, 0x0820, "blown up rock blocking Eldin long cave" }, + { 0x08, 0x10, 0x0810, "Hidden village path open" }, + { 0x08, 0x08, 0x0808, "East Castle Town Bridge Flag" }, + { 0x08, 0x04, 0x0804, "blown up rocks blocking path to zora's domain" }, + { 0x08, 0x01, 0x0801, "Midna pulls up the map to show you can warp" }, + { 0x09, 0x80, 0x0980, "midna text Eldin gorge bridge gone" }, + { 0x09, 0x40, 0x0940, "exit flight by foul after lanayru twilight cleared" }, + { 0x09, 0x20, 0x0920, "Kakariko Gorge Portal" }, + { 0x09, 0x10, 0x0910, "spawn barriers Eldin gorge dark beasts (unset once killed)" }, + { 0x09, 0x08, 0x0908, "bridge of Eldin placed (cs)" }, + { 0x09, 0x04, 0x0904, "Eldin bridge getting stolen cs trigger" }, + { 0x09, 0x02, 0x0902, "blown up rocks past Eldin bridge that lead to Lanayru" }, + { 0x09, 0x01, 0x0901, "see gorge gate cs" }, + { 0x0A, 0x80, 0x0A80, "blown up rocks to spinner tracks (Lanayru field side)" }, + { 0x0A, 0x40, 0x0A40, "blown up rocks to spinner tracks (hylia bridge side)" }, + { 0x0A, 0x20, 0x0A20, "entered Lanayru twilight cs" }, + { 0x0A, 0x10, 0x0A10, "entered Eldin twilight cs" }, + { 0x0A, 0x08, 0x0A08, "killed left shadow bulblin behind gorge gate twilight" }, + { 0x0A, 0x04, 0x0A04, "killed right shadow bulblin behind gorge gate twilight" }, + { 0x0A, 0x02, 0x0A02, "jumped over gorge fence after obtaining Epona" }, + { 0x0B, 0x80, 0x0B80, "Lanayru Main Feild has water on map" }, + { 0x0B, 0x40, 0x0B40, "seeing Lanayru twilight from up close cs" }, + { 0x0B, 0x20, 0x0B20, "seeing Eldin twilight from up close cs" }, + { 0x0B, 0x10, 0x0B10, "spawn dark beasts castle town portal (stays set)" }, + { 0x0B, 0x08, 0x0B08, "Castle Town Portal" }, + { 0x0B, 0x04, 0x0B04, "?" }, + { 0x0B, 0x01, 0x0B01, "blown up rocks from Eldin gorge to Eldin field" }, + { 0x0C, 0x80, 0x0C80, "blown up second rock to poe past hylia bridge" }, + { 0x0C, 0x20, 0x0C20, "Epona is accessible to Link (without calling her) (after lanayru twilight)" }, + { 0x0C, 0x08, 0x0C08, "killed poe past hylia bridge" }, + { 0x0C, 0x04, 0x0C04, "killed poe Eldin gorge" }, + { 0x0C, 0x02, 0x0C02, "killed poe faron field" }, + { 0x0D, 0x80, 0x0D80, "Midna text after warping gorge bridge back" }, + { 0x0D, 0x40, 0x0D40, "?" }, + { 0x0D, 0x10, 0x0D10, "spinner path next to hidden village explored" }, + { 0x0D, 0x08, 0x0D08, "killed poe Lanayru field" }, + { 0x0D, 0x02, 0x0D02, "enter field west of castle town from the east" }, + { 0x0D, 0x01, 0x0D01, "killed poe south of castle town" }, + { 0x0E, 0x80, 0x0E80, "bridge of Hylia intro cs twilight" }, + { 0x0E, 0x40, 0x0E40, "blown up rock blocking ice cave Lanayru field" }, + { 0x0E, 0x20, 0x0E20, "faron field intro cs" }, + { 0x0E, 0x10, 0x0E10, "blown up rock on leadge Eldin field after kakariko" }, + { 0x0E, 0x08, 0x0E08, "blown up first rock to poe past hylia bridge" }, + { 0x0E, 0x04, 0x0E04, "Hero's shade map marker (south castle town)" }, + { 0x0E, 0x02, 0x0E02, "Hero's shade map marker (west castle town)" }, + { 0x0E, 0x01, 0x0E01, "enter bridge east of castle town" }, + { 0x0F, 0x80, 0x0F80, "enter field south of castle town" }, + { 0x0F, 0x40, 0x0F40, "enter field west of castle town from the north" }, + { 0x0F, 0x20, 0x0F20, "?" }, + { 0x0F, 0x10, 0x0F10, "open path from faron field to south of castle town" }, + { 0x0F, 0x08, 0x0F08, "Midna text after Lanayru field twilight cs" }, + { 0x0F, 0x04, 0x0F04, "blown up rocks Eldin field after kakariko" }, + { 0x0F, 0x02, 0x0F02, "Eldin gorge bridge placed cs" }, + { 0x0F, 0x01, 0x0F01, "see Ilia's bag from far away" }, + { 0x10, 0x01, 0x1001, "Zora rivver boat path on map (Eldin)" }, + { 0x11, 0x80, 0x1180, "Sky letter next to castle town" }, + { 0x11, 0x40, 0x1140, "Map marker owl stature next to castle town" }, + { 0x11, 0x20, 0x1120, "Sky letter hylia bridge" }, + { 0x11, 0x10, 0x1110, "Map marker owl stature Hylia bridge" }, + { 0x11, 0x08, 0x1108, "Sky letter Eldin bridge" }, + { 0x11, 0x04, 0x1104, "Map marker owl stature Eldin bridge" }, + { 0x11, 0x02, 0x1102, "Sky letter Eldin gorge" }, + { 0x11, 0x01, 0x1101, "Map marker owl stature Eldin gorge" }, + { 0x12, 0x10, 0x1210, "blown up northern rock in field west of castle town" }, + { 0x12, 0x08, 0x1208, "blown up most northern rock in field west of castle town" }, + { 0x12, 0x04, 0x1204, "blown up rock south of castle town" }, + { 0x12, 0x02, 0x1202, "killed poe next to owl statue next to castle town" }, + { 0x13, 0x80, 0x1380, "killed poe east of castle town" }, + { 0x13, 0x10, 0x1310, "?" }, + { 0x13, 0x08, 0x1308, "?" }, + { 0x13, 0x04, 0x1304, "Epona isn't accessible to Link (without calling her) (after lanayru twilight)" }, + { 0x13, 0x02, 0x1302, "?" }, + { 0x13, 0x01, 0x1301, "Map marker hidden village" }, + { 0x14, 0x80, 0x1480, "blown up southern rock underwater Lanayru field" }, + { 0x14, 0x40, 0x1440, "blown up northern rock underwater Lanayru field" }, + { 0x14, 0x20, 0x1420, "blown up eastern rock Lanayru field " }, + { 0x14, 0x10, 0x1410, "blown up rock next to hylia bridge owl statue" }, + { 0x14, 0x08, 0x1408, "blown up rock closest to faron after hylia bridge" }, + { 0x14, 0x04, 0x1404, "blown up rock next to free standing PoH Elding gorge" }, + { 0x14, 0x01, 0x1401, "blown up rock next to Eldin gorge owl statue" }, + { 0x15, 0x80, 0x1580, "blown up rock past Eldin bridge" }, + { 0x16, 0x20, 0x1620, "Midna text after getting Ilia's scent" }, + { 0x16, 0x10, 0x1610, "Midna text after entering Lanayru twilight" }, + { 0x16, 0x08, 0x1608, "Midna text when seeing Lanayru twilight from far away" }, + { 0x16, 0x04, 0x1604, "Midna text after getting Youth's scent" }, + { 0x16, 0x02, 0x1602, "Midna text after entering Eldin twilight" }, + { 0x16, 0x01, 0x1601, "Midna text when seeing Eldin twilight from far away" }, + { 0x17, 0x80, 0x1780, "got Ilia's scent cs" }, + { 0x17, 0x40, 0x1740, "got youth's scent cs" }, + { 0x17, 0x20, 0x1720, "Epona can't cross Eldin bridge (set when stolen, unset when fixed)" }, + { 0x17, 0x10, 0x1710, "see broken wooden sword from far away cs" }, + { 0x17, 0x08, 0x1708, "Bridge of Eldin Portal" }, + { 0x1A, 0x80, 0x1A80, "picked up rupees from rock past Eldin bridge" }, + { 0x1A, 0x40, 0x1A40, "picked up rupees from rock next to free standing PoH Elding gorge" }, + { 0x1A, 0x20, 0x1A20, "picked up rupees from rock next to Eldin gorge owl statue" }, + { 0x1A, 0x10, 0x1A10, "picked up rupees from rock closest to faron after hylia bridge" }, + { 0x1A, 0x08, 0x1A08, "picked up rupees from rock next to hylia bridge owl statue" }, + { 0x1A, 0x04, 0x1A04, "picked up rupees from rocks to spinner tracks (hylia bridge side)" }, + { 0x1A, 0x02, 0x1A02, "picked up rupees from rocks to spinner tracks (Lanayru field side)" }, + { 0x1A, 0x01, 0x1A01, "picked up rupees from eastern rock Lanayru field " }, + { 0x1B, 0x80, 0x1B80, "picked up rupees from northern rock underwater Lanayru field" }, + { 0x1B, 0x40, 0x1B40, "picked up rupees from southern rock underwater Lanayru field" }, + { 0x1B, 0x20, 0x1B20, "picked up rupees from northern rock in field west of castle town" }, + { 0x1B, 0x10, 0x1B10, "picked up rupees from most northern rock in field west of castle town" }, + { 0x1B, 0x08, 0x1B08, "picked up rupees from rock south of castle town" }, + { 0x1B, 0x04, 0x1B04, "free standing PoH Elding gorge" }, + { 0x1B, 0x02, 0x1B02, "free standing PoH faron field" }, + { 0x1B, 0x01, 0x1B01, "free standing PoH goron Eldin field" }, +}; + +inline EventAreaFlags eventAreaFlagsLanayru[] = +{ + { 0x00, 0x40, 0x0040, "small chest next to mother and child iles zora's domain" }, + { 0x00, 0x20, 0x0020, "big chest fountain back room" }, + { 0x00, 0x10, 0x0010, "left small chest fountain back room" }, + { 0x00, 0x08, 0x0008, "right small chest fountain back room" }, + { 0x00, 0x04, 0x0004, "small chest midna jumps zora's domain" }, + { 0x01, 0x10, 0x0110, "west big chest zora's domain throne room" }, + { 0x01, 0x08, 0x0108, "east big chest zora's domain throne room" }, + { 0x02, 0x10, 0x0210, "small chest large underwater pillar in fountain" }, + { 0x02, 0x04, 0x0204, "small chest small underwater pillar in fountain" }, + { 0x02, 0x01, 0x0201, "small chest floor 3 flight by foul" }, + { 0x03, 0x80, 0x0380, "small chest floor 2 flight by foul" }, + { 0x03, 0x40, 0x0340, "big chest right pillar in front of fountain Lake Hylia" }, + { 0x03, 0x20, 0x0320, "big chest underwater next to Lake Hylia warp" }, + { 0x03, 0x10, 0x0310, "east big chest fountain" }, + { 0x03, 0x08, 0x0308, "west big chest fountain" }, + { 0x03, 0x04, 0x0304, "big chest floor 4 flight by foul" }, + { 0x03, 0x02, 0x0302, "small chest left pillar in front of fountain Lae Hylia" }, + { 0x03, 0x01, 0x0301, "big chest floor 5 flight by foul" }, + { 0x04, 0x40, 0x0440, "tear of light throne room zora's domain" }, + { 0x04, 0x20, 0x0420, "first tear of light flying" }, + { 0x04, 0x10, 0x0410, "tear of light midna jumps zora's domain" }, + { 0x04, 0x08, 0x0408, "tear of light on top of water zora's domain" }, + { 0x04, 0x04, 0x0404, "third tear of light flying" }, + { 0x04, 0x02, 0x0402, "fourth tear of light flying" }, + { 0x05, 0x80, 0x0580, "tear of light next to Iza's shop" }, + { 0x05, 0x40, 0x0540, "second tear of light flying" }, + { 0x05, 0x20, 0x0520, "final tear of light" }, + { 0x05, 0x04, 0x0504, "tear of light behind of Fyer's canon" }, + { 0x05, 0x02, 0x0502, "tear of light island east of Lake Hylia" }, + { 0x05, 0x01, 0x0501, "tear of light southmost island Lake Hylia" }, + { 0x06, 0x80, 0x0680, "tear of light next to fountain Lake Hylia" }, + { 0x06, 0x40, 0x0640, "tear of light on top of water zora's domain" }, + { 0x06, 0x20, 0x0620, "tear of light next to mother and child iles zora's domain" }, + { 0x08, 0x80, 0x0880, "see frozen zora spirits in domain twilight" }, + { 0x08, 0x40, 0x0840, "Lake hylia intro cs twilight" }, + { 0x08, 0x20, 0x0820, "blown up underwater rock in center of fountain" }, + { 0x08, 0x10, 0x0810, "the two zoras in upper zora river went down stream (twilight)" }, + { 0x08, 0x08, 0x0808, "saw light bug come out next to Iza spirit cs" }, + { 0x08, 0x02, 0x0802, "blown up rock to Lake hylia long cave" }, + { 0x08, 0x01, 0x0801, "spawned UZR portal fight barriers" }, + { 0x09, 0x80, 0x0980, "opened Upper Zora's River Portal cs" }, + { 0x09, 0x40, 0x0940, "talked to Iza before UZR portal" }, + { 0x09, 0x20, 0x0920, "Upper Zora's River Portal" }, + { 0x09, 0x10, 0x0910, "spawn big chest fountain back room" }, + { 0x09, 0x08, 0x0908, "lit left torch fountain back room" }, + { 0x09, 0x04, 0x0904, "lit right torch fountain back room" }, + { 0x09, 0x02, 0x0902, "seeing Twilight Bloat with sense cs" }, + { 0x09, 0x01, 0x0901, "Twilight Bloat comes out of water cs" }, + { 0x0A, 0x80, 0x0A80, "seeing Twilit Bloat move from far away cs" }, + { 0x0A, 0x40, 0x0A40, "Save Prompt after Lakebed (if disabled, triggers MDH after Lakebed)" }, + { 0x0A, 0x20, 0x0A20, "twilight end cs trigger (also map marker Lakebed Temple)" }, + { 0x0A, 0x10, 0x0A10, "obtained vessel of light (unset after twilight)" }, + { 0x0A, 0x08, 0x0A08, "spawn dark beasts Lake Hylia (unset once killed)" }, + { 0x0A, 0x04, 0x0A04, "Lake Hylia Portal" }, + { 0x0A, 0x02, 0x0A02, "Zora's river intro cs during twilight (flying with bird)" }, + { 0x0A, 0x01, 0x0A01, "midna text promt saying you can call down Kargarok to fly" }, + { 0x0B, 0x80, 0x0B80, "Rutella cs in domain twilight" }, + { 0x0B, 0x40, 0x0B40, "Zora river boat path on map" }, + { 0x0B, 0x20, 0x0B20, "entered Twilight Bloat arena (unset once killed)" }, + { 0x0B, 0x10, 0x0B10, "explored entrance to snowpeak" }, + { 0x0B, 0x08, 0x0B08, "got PoH flight by foul" }, + { 0x0B, 0x04, 0x0B04, "Zora's Domain Portal" }, + { 0x0B, 0x02, 0x0B02, "spawn barriers Zora's domain dark beasts fight" }, + { 0x0B, 0x01, 0x0B01, "Zora's domain intro cs twilight (frozen)" }, + { 0x0C, 0x08, 0x0C08, "blown up south underwater rock zora's domain " }, + { 0x0C, 0x04, 0x0C04, "blown up north underwater rock zora's domain" }, + { 0x0C, 0x02, 0x0C02, "blown up underwater rock in back of fountain" }, + { 0x0C, 0x01, 0x0C01, "Midna text after landing in Lake hylia twilight" }, + { 0x0D, 0x80, 0x0D80, "Iza text after Upper Zora's River Portal" }, + { 0x0D, 0x40, 0x0D40, "can now exit from the sides of zora's domain inside (set during domain outside cs after melting it)" }, + { 0x0D, 0x20, 0x0D20, "Midna text after domain outside cs after melting it" }, + { 0x0D, 0x10, 0x0D10, "domain outside cs after melting it" }, + { 0x0D, 0x08, 0x0D08, "map marker Auru" }, + { 0x0D, 0x04, 0x0D04, "Upper zora's river intro cs during twilight" }, + { 0x0D, 0x02, 0x0D02, "Midna text after leaving lake hylia after Lanayru twilight" }, + { 0x0D, 0x01, 0x0D01, "Zora's domain waterfall is going fast (during twilight only) (unset when you come back to Lake hylia)" }, + { 0x0E, 0x80, 0x0E80, "blown up rock blocking lakebed entrance cs" }, + { 0x0E, 0x40, 0x0E40, "opened stream next to lakebed entance" }, + { 0x0E, 0x20, 0x0E20, "Midna text after arriving at upper zora's river twilight" }, + { 0x0E, 0x10, 0x0E10, "melted zora's domain (Lake Hylia water on map (top part))" }, + { 0x0E, 0x08, 0x0E08, "twilight end cs watched" }, + { 0x0E, 0x04, 0x0E04, "map marker Snowpeak" }, + { 0x0E, 0x01, 0x0E01, "Midna text after coming back to lake after filling it (twilight)" }, + { 0x0F, 0x80, 0x0F80, "blown up rock blocking lakebed entrance" }, + { 0x0F, 0x40, 0x0F40, "went down the fast water in zora's domain (void out) (unset after twilight)" }, + { 0x0F, 0x20, 0x0F20, "Lake hylia filled twilight intro cs (domain water level normal)" }, + { 0x0F, 0x10, 0x0F10, "blown up first rock to throne room zora's domain" }, + { 0x0F, 0x08, 0x0F08, "Midna text prompt to tell you to look under the ice in zora's domain twilight" }, + { 0x0F, 0x04, 0x0F04, "Midna text before midna jumps fozen zora's domain twilight" }, + { 0x0F, 0x02, 0x0F02, "Midna text before midna jumps melted zora's domain twilight" }, + { 0x0F, 0x01, 0x0F01, "Midna text after melting domain (water everywhere on map)" }, + { 0x10, 0x80, 0x1080, "blown up underwater rock zora river town path" }, + { 0x10, 0x40, 0x1040, "spawn west big chest zora's domain throne room" }, + { 0x10, 0x20, 0x1020, "spawn east big chest zora's domain throne room" }, + { 0x10, 0x10, 0x1010, "lit east torch zora's domain throne room" }, + { 0x10, 0x08, 0x1008, "extingushed north torch zora's domain throne room" }, + { 0x10, 0x04, 0x1004, "lit west torch zora's domain throne room" }, + { 0x10, 0x02, 0x1002, "blown up west underwater rock Lakebed area" }, + { 0x10, 0x01, 0x1001, "blown up south underwater rock Lakebed area" }, + { 0x11, 0x80, 0x1180, "saw the two zora spirits from far away in upper zora river cs (twilight)" }, + { 0x11, 0x40, 0x1140, "saw light bug moving after exiting lanayru spring" }, + { 0x11, 0x20, 0x1120, "went down zora's river with bird during twilight" }, + { 0x11, 0x10, 0x1110, "blown up underwater rock zora river lake path" }, + { 0x11, 0x08, 0x1108, "midna text after seeing the frozen zoras in domain twilight" }, + { 0x11, 0x02, 0x1102, "paid Fyer to launch you to the flight by foul platform (unset once you enter the canon)" }, + { 0x11, 0x01, 0x1101, "blown up north underwater rock throne room zora's domain" }, + { 0x12, 0x80, 0x1280, "Lanayru spring map marker" }, + { 0x12, 0x40, 0x1240, "Midna Text after frozen zora's domain twilight intro cs" }, + { 0x12, 0x20, 0x1220, "killed poe underneath flight by foul" }, + { 0x12, 0x10, 0x1210, "killed poe next to watch tower to desert" }, + { 0x12, 0x08, 0x1208, "killed poe east of lake Hylia" }, + { 0x12, 0x04, 0x1204, "killed poe next to mother and chile iles Zora's Domain" }, + { 0x12, 0x02, 0x1202, "killed poe midna jumps Zora's Domain" }, + { 0x12, 0x01, 0x1201, "killed poe in Upper Zora's River" }, + { 0x13, 0x80, 0x1380, "killed poe on flight by foul prizes" }, + { 0x13, 0x40, 0x1340, "killed poe next to fountain Lake Hylia" }, + { 0x13, 0x20, 0x1320, "blew up rock in Iza's house" }, + { 0x13, 0x10, 0x1310, "Iza text after blowing the rocks inside her house" }, + { 0x13, 0x01, 0x1301, "blew up rock in Iza's house cs" }, + { 0x14, 0x40, 0x1440, "killed light bug throne room zora's domain" }, + { 0x14, 0x20, 0x1420, "killed first light bug flying" }, + { 0x14, 0x10, 0x1410, "killed light bug midna jumps zora's domain" }, + { 0x14, 0x08, 0x1408, "killed light bug on top of water zora's domain" }, + { 0x14, 0x04, 0x1404, "killed third light bug flying" }, + { 0x14, 0x02, 0x1402, "killed fourth light bug flying" }, + { 0x14, 0x01, 0x1401, "killed light bug behind of Fyer's canon" }, + { 0x15, 0x80, 0x1580, "killed light bug next to Iza's shop" }, + { 0x15, 0x40, 0x1540, "killed second light bug flying" }, + { 0x15, 0x20, 0x1520, "killed final light bug (Twilight Bloat)" }, + { 0x15, 0x10, 0x1510, "killed light bug island east of Lake Hylia" }, + { 0x15, 0x02, 0x1502, "killed light bug next to mother and child iles zora's domain" }, + { 0x15, 0x01, 0x1501, "?" }, + { 0x16, 0x80, 0x1680, "Watched CS of Ooccoo running to Sky Cannon" }, + { 0x16, 0x40, 0x1640, "killed light bug on top of water zora's domain" }, + { 0x16, 0x20, 0x1620, "killed light bug southmost island Lake Hylia" }, + { 0x16, 0x10, 0x1610, "killed light bug next to fountain Lake Hylia" }, + { 0x16, 0x02, 0x1602, "talked to light spirit during twilight" }, + { 0x16, 0x01, 0x1601, "went up zora's river after melting domain in twilight" }, + { 0x17, 0x80, 0x1780, "blown up rock zora river on land" }, + { 0x17, 0x40, 0x1740, "went up zora's river after melting domain in twilight (also set when failing to do so)" }, + { 0x17, 0x20, 0x1720, "blown up second rock to throne room zora's domain" }, + { 0x17, 0x10, 0x1710, "?" }, + { 0x17, 0x02, 0x1702, "Midna text after Zora's domain portal" }, + { 0x17, 0x01, 0x1701, "blown up underwater rock zora river middle" }, + { 0x18, 0x08, 0x1808, "picked up rupees from south underwater rock Lakebed area" }, + { 0x18, 0x04, 0x1804, "picked up rupees from west underwater rock Lakebed area" }, + { 0x18, 0x02, 0x1802, "picked up green rupees domain midna jumps twilight" }, + { 0x18, 0x01, 0x1801, "picked up fourth green rupee domain midna jumps twilight" }, + { 0x19, 0x80, 0x1980, "picked up third blue rupee midna jumps zora's domain" }, + { 0x19, 0x40, 0x1940, "picked up second blue rupee midna jumps zora's domain" }, + { 0x19, 0x20, 0x1920, "picked up first blue rupee midna jumps zora's domain" }, + { 0x19, 0x10, 0x1910, "picked up rupees from rock zora river on land" }, + { 0x19, 0x08, 0x1908, "picked up rupees from underwater rock zora river lake path" }, + { 0x19, 0x04, 0x1904, "picked up rupees from underwater rock zora river town path" }, + { 0x19, 0x02, 0x1902, "picked up rupees from underwater rock zora river middle" }, + { 0x19, 0x01, 0x1901, "picked up rupees from underwater rock back fountain" }, + { 0x1A, 0x80, 0x1A80, "picked up rupees from underwater rock center fountain" }, + { 0x1A, 0x40, 0x1A40, "picked up rupees from south underwater rock zora's domain " }, + { 0x1A, 0x20, 0x1A20, "picked up rupees from north underwater rock zora's domain" }, + { 0x1A, 0x10, 0x1A10, "picked up rupees from first rock to throne room zora's domain" }, + { 0x1A, 0x08, 0x1A08, "picked up rupees from second rock to throne room zora's domain" }, + { 0x1A, 0x04, 0x1A04, "picked up east blue rupees behind underwater bridge throne room zora's domain" }, + { 0x1A, 0x02, 0x1A02, "picked up west blue rupees behind underwater bridge throne room zora's domain" }, + { 0x1A, 0x01, 0x1A01, "picked up south yellow rupee unerwater throne room zora's domain" }, + { 0x1B, 0x80, 0x1B80, "picked up north yellow rupee unerwater throne room zora's domain" }, + { 0x1B, 0x40, 0x1B40, "picked up east yellow rupee unerwater throne room zora's domain" }, + { 0x1B, 0x20, 0x1B20, "picked up yellow rupee above north underwater rock throne room zora's domain" }, + { 0x1B, 0x10, 0x1B10, "picked up first yellow rupee midna jumps zora's domain" }, + { 0x1B, 0x08, 0x1B08, "picked up second yellow rupee midna jumps zora's domain" }, + { 0x1B, 0x02, 0x1B02, "picked up yellow rupee from broken pillar lakebed area" }, + { 0x1B, 0x01, 0x1B01, "picked up yellow rupee from broken pillar lakebed area" }, +}; + +inline EventAreaFlags eventAreaFlagsLBT[] = +{ + { 0x00, 0x40, 0x0040, "small chest first west room 1F" }, + { 0x00, 0x20, 0x0020, "south small chest first room" }, + { 0x00, 0x10, 0x0010, "west small chest first room" }, + { 0x00, 0x08, 0x0008, "small chest second east room 4F" }, + { 0x00, 0x02, 0x0002, "underwater big chest in first west room 2F" }, + { 0x00, 0x01, 0x0001, "small chest first east room 2F" }, + { 0x01, 0x40, 0x0140, "Ooccoo Map Flag" }, + { 0x01, 0x20, 0x0120, "small chest second west room 4F" }, + { 0x01, 0x10, 0x0110, "compass big chest second west room 4F" }, + { 0x01, 0x08, 0x0108, "center small chest first west room 2F" }, + { 0x01, 0x04, 0x0104, "small chest in room before big key" }, + { 0x01, 0x02, 0x0102, "map big chest main room 1F" }, + { 0x01, 0x01, 0x0101, "big chest under boss door main room B1" }, + { 0x02, 0x80, 0x0280, "south underwater big chest in room before mini-boss" }, + { 0x02, 0x40, 0x0240, "north underwater big chest in room before mini-boss" }, + { 0x02, 0x20, 0x0220, "north west big chest first west room 2F" }, + { 0x02, 0x10, 0x0210, "big key chest" }, + { 0x02, 0x08, 0x0208, "big chest second east room 4F" }, + { 0x02, 0x04, 0x0204, "small key big chest first east room 2F" }, + { 0x02, 0x01, 0x0201, "PoH big chest behind gate in first east room 1F" }, + { 0x03, 0x80, 0x0380, "south small chest in first west room 2F" }, + { 0x03, 0x40, 0x0340, "small key big chest first east room 1F" }, + { 0x03, 0x20, 0x0320, "PoH big chest main room 2F" }, + { 0x03, 0x08, 0x0308, "small chest second room" }, + { 0x03, 0x04, 0x0304, "small key big chest room before mini-boss" }, + { 0x03, 0x02, 0x0302, "small chest main room 1F" }, + { 0x03, 0x01, 0x0301, "clawshot big chest mini-boss room" }, + { 0x08, 0x80, 0x0880, "raised water in first east room 1F" }, + { 0x08, 0x40, 0x0840, "water flowing into first east room 1F cs" }, + { 0x08, 0x20, 0x0820, "?" }, + { 0x08, 0x02, 0x0802, "Midna Stalactite text second room" }, + { 0x09, 0x80, 0x0980, "water flowing into first east room 1F" }, + { 0x09, 0x20, 0x0920, "west water flowing into stairs in main room" }, + { 0x09, 0x10, 0x0910, "east water flowing into stairs in main room" }, + { 0x09, 0x08, 0x0908, "water flowing into east wing 1F" }, + { 0x09, 0x04, 0x0904, "water flowing into west wing 1F" }, + { 0x09, 0x02, 0x0902, "water in main room raised twice" }, + { 0x09, 0x01, 0x0901, "water in main room raised once" }, + { 0x0A, 0x80, 0x0A80, "west water not flowing into stairs in main room" }, + { 0x0A, 0x40, 0x0A40, "east water not flowing into stairs in main room" }, + { 0x0A, 0x20, 0x0A20, "west water is flowing into main room" }, + { 0x0A, 0x10, 0x0A10, "staircase top is west main room" }, + { 0x0A, 0x08, 0x0A08, "staircase top is east main room" }, + { 0x0A, 0x04, 0x0A04, "east water is flowing into main room" }, + { 0x0A, 0x02, 0x0A02, "let water flow out of room west wing 2F" }, + { 0x0A, 0x01, 0x0A01, "let water flow out of room east wing 2F" }, + { 0x0B, 0x10, 0x0B10, "spawn clawshot big chest" }, + { 0x0B, 0x08, 0x0B08, "set staircase top is east main room" }, + { 0x0B, 0x04, 0x0B04, "set staircase top is north main room" }, + { 0x0B, 0x02, 0x0B02, "set staircase top is west main room" }, + { 0x0B, 0x01, 0x0B01, "set staircase top is south main room (default)" }, + { 0x0D, 0x40, 0x0D40, "PoH big chest behind gate in first east room 1F (set after)" }, + { 0x0D, 0x20, 0x0D20, "horizontal wheel is turning in first east room" }, + { 0x0D, 0x10, 0x0D10, "unlock east door main room 2F" }, + { 0x0D, 0x08, 0x0D08, "vertical wheel is turning in first east room 2F" }, + { 0x0D, 0x04, 0x0D04, "small key big chest first east room 1F (set after)" }, + { 0x0D, 0x02, 0x0D02, "east wing water switch 4F" }, + { 0x0D, 0x01, 0x0D01, "west wing water switch 4F" }, + { 0x0E, 0x04, 0x0E04, "opened north gate first east room 2F" }, + { 0x0E, 0x01, 0x0E01, "opened gate in first room" }, + { 0x0F, 0x80, 0x0F80, "blown up second rock in room before big key" }, + { 0x0F, 0x40, 0x0F40, "blown up first rock in room before big key" }, + { 0x0F, 0x10, 0x0F10, "unlocked door in second east room 2F" }, + { 0x0F, 0x08, 0x0F08, "unlocked door in room before mini-boss" }, + { 0x0F, 0x02, 0x0F02, "horizontal wheel is turning in first east room cs" }, + { 0x0F, 0x01, 0x0F01, "horizontal wheels turning in first west room" }, + { 0x10, 0x80, 0x1080, "killed lizalfos in south hallway to main room 2F" }, + { 0x10, 0x40, 0x1040, "killed lizalfos behind gate in first east room 1F " }, + { 0x10, 0x04, 0x1004, "blown up rock in room before mini-boss" }, + { 0x11, 0x80, 0x1180, "Ooccoo Freed" }, + { 0x11, 0x20, 0x1120, "unlocked boss door" }, + { 0x11, 0x10, 0x1110, "a stalactite fell in second room (other than the first one)" }, + { 0x11, 0x04, 0x1104, "stalactite fell in first west room 2F" }, + { 0x11, 0x02, 0x1102, "stalactite falls by itself in second room" }, + { 0x11, 0x01, 0x1101, "left stalactite fell in first east room 2F" }, + { 0x12, 0x80, 0x1280, "right stalactite fell in first east room 2F" }, + { 0x12, 0x40, 0x1240, "blown up rock in first east room 2F" }, + { 0x12, 0x20, 0x1220, "south stalactite fell in first east room 1F" }, + { 0x12, 0x10, 0x1210, "north stalactite fell in first east room 1F" }, + { 0x12, 0x08, 0x1208, "south-east stalactite fell second room" }, + { 0x12, 0x04, 0x1204, "north east stalactite fell in second room" }, + { 0x12, 0x02, 0x1202, "south Stalactite fell second room" }, + { 0x12, 0x01, 0x1201, "north west stalactite fell in second room" }, + { 0x13, 0x80, 0x1380, "south west stalactile fell in second room" }, + { 0x13, 0x20, 0x1320, "killed first shell blade in room before big key" }, + { 0x13, 0x10, 0x1310, "killed second shell blade in room before big key" }, + { 0x13, 0x04, 0x1304, "opened north gate in first west room 2F" }, + { 0x13, 0x02, 0x1302, "opened south gate in first west room 2F" }, + { 0x13, 0x01, 0x1301, "opened gates in mini-boss room" }, + { 0x14, 0x10, 0x1410, "explore main room" }, + { 0x14, 0x04, 0x1404, "main room intro cs" }, + { 0x14, 0x02, 0x1402, "south Hallway to Main room intro cs" }, + { 0x14, 0x01, 0x1401, "first room intro cs" }, + { 0x15, 0x20, 0x1520, "move staircase main room cs" }, + { 0x15, 0x08, 0x1508, "west water flowing into staircase main room cs" }, + { 0x15, 0x04, 0x1504, "east water flowing into staircase main room cs" }, + { 0x15, 0x02, 0x1502, "water in main room raised rwice cs" }, + { 0x15, 0x01, 0x1501, "west water is flowing into main room cs" }, + { 0x16, 0x80, 0x1680, "water in main room raised once cs" }, + { 0x16, 0x40, 0x1640, "east water is flowing into main room cs" }, + { 0x16, 0x20, 0x1620, "big key chest (set after)" }, + { 0x16, 0x10, 0x1610, "compass big chest second west room 4F (set after)" }, + { 0x16, 0x08, 0x1608, "bubble worm cs second east room 2F" }, + { 0x16, 0x01, 0x1601, "enter/exit mini-boss room from 1F door (spawns enemies in room before)" }, + { 0x17, 0x04, 0x1704, "killed right lizalfos in first west room 2F" }, + { 0x17, 0x02, 0x1702, "killed left lizalfos in first west room 2F" }, + { 0x17, 0x01, 0x1701, "killed lizalfos in first east room 2F" }, +}; + +inline EventAreaFlags eventAreaFlagsLHLC[] = +{ + { 0x02, 0x40, 0x0240, "big chest room 5 lake hylia long cave" }, + { 0x02, 0x20, 0x0220, "east big chest room 10 Lake Hylia Long Cave" }, + { 0x02, 0x10, 0x0210, "north small chest room 9 Lake Hylia Long Cave" }, + { 0x02, 0x08, 0x0208, "east small chest room 8 Lake Hylia Long Cave" }, + { 0x02, 0x04, 0x0204, "north small chest room 6 Lake hylia Long Cave" }, + { 0x02, 0x02, 0x0202, "south small chest room 7 Lake Hylia Long Cave" }, + { 0x02, 0x01, 0x0201, "north small chest room 5 Lake hylia Long Cave" }, + { 0x03, 0x80, 0x0380, "north small chest room 4 Lake Hylia Long Cave" }, + { 0x03, 0x40, 0x0340, "west small chest room 2 Lake hylia Long Cave" }, + { 0x03, 0x20, 0x0320, "west big chest room 7 Lake Hylia Long Cave" }, + { 0x03, 0x10, 0x0310, "north big chest room 8 Lake Hylia Long Cave" }, + { 0x03, 0x08, 0x0308, "big chest room 11 lake hylia long cave" }, + { 0x03, 0x04, 0x0304, "north small chest room 1 Lake hylia Long Cave" }, + { 0x03, 0x02, 0x0302, "west small chest room 1 Lake hylia Long Cave" }, + { 0x03, 0x01, 0x0301, "east small chest room 3 Lake Hylia Long Cave" }, + { 0x04, 0x80, 0x0480, "small chest Goron Stock Cave" }, + { 0x04, 0x40, 0x0440, "big chest in front of exit Goron Stock Cave" }, + { 0x04, 0x20, 0x0420, "big chest spawned form torches Goron Stock Cave" }, + { 0x08, 0x80, 0x0880, "explored section 18 Lake hylia Long Cave" }, + { 0x08, 0x40, 0x0840, "explored section 15 Lake hylia Long Cave" }, + { 0x08, 0x20, 0x0820, "explored section 12 Lake hylia Long Cave" }, + { 0x08, 0x10, 0x0810, "explored section 11 Lake hylia Long Cave" }, + { 0x08, 0x08, 0x0808, "explored section 9 Lake hylia Long Cave" }, + { 0x08, 0x04, 0x0804, "explored section 6 Lake hylia Long Cave" }, + { 0x08, 0x02, 0x0802, "explored section 4 Lake hylia Long Cave" }, + { 0x08, 0x01, 0x0801, "explored section 27 (room 11) Lake hylia Long Cave" }, + { 0x09, 0x80, 0x0980, "explored section 24 (room 10) Lake hylia Long Cave" }, + { 0x09, 0x40, 0x0940, "explored section 23 (room 9) Lake hylia Long Cave" }, + { 0x09, 0x20, 0x0920, "explored section 22 Lake hylia Long Cave" }, + { 0x09, 0x10, 0x0910, "explored east area room 8 Lake hylia Long Cave" }, + { 0x09, 0x08, 0x0908, "explored north area room 8 Lake hylia Long Cave" }, + { 0x09, 0x04, 0x0904, "explored section 21 (room 8) Lake hylia Long Cave" }, + { 0x09, 0x02, 0x0902, "explored section 17 Lake hylia Long Cave" }, + { 0x09, 0x01, 0x0901, "explored south area room 7 Lake hylia Long Cave" }, + { 0x0A, 0x80, 0x0A80, "explored west area room 7 Lake hylia Long Cave" }, + { 0x0A, 0x40, 0x0A40, "explored section 16 (room 7) Lake hylia Long Cave" }, + { 0x0A, 0x20, 0x0A20, "explored section 14 Lake hylia Long Cave" }, + { 0x0A, 0x10, 0x0A10, "explored north area room 6 Lake hylia Long Cave" }, + { 0x0A, 0x08, 0x0A08, "explored section 13 (room 6) Lake hylia Long Cave" }, + { 0x0A, 0x04, 0x0A04, "explored section 10 (room 5) Lake hylia Long Cave" }, + { 0x0A, 0x02, 0x0A02, "explored section 8 Lake hylia Long Cave" }, + { 0x0A, 0x01, 0x0A01, "explored north area room 4 Lake hylia Long Cave" }, + { 0x0B, 0x80, 0x0B80, "explored section 7 (room 4) Lake hylia Long Cave" }, + { 0x0B, 0x40, 0x0B40, "explored section 5 (room 3) Lake hylia Long Cave" }, + { 0x0B, 0x20, 0x0B20, "explored section 3 (room 2) Lake hylia Long Cave" }, + { 0x0B, 0x10, 0x0B10, "explored section 2 Lake hylia Long Cave" }, + { 0x0B, 0x08, 0x0B08, "explored north area room 1 Lake hylia Long Cave" }, + { 0x0B, 0x04, 0x0B04, "explored west area room 1 Lake hylia Long Cave" }, + { 0x0B, 0x02, 0x0B02, "explored section 1 (room 1) Lake hylia Long Cave" }, + { 0x0C, 0x80, 0x0C80, "blown up north rock room 7 Lake hylia long cave" }, + { 0x0C, 0x10, 0x0C10, "blown up north rock room 3 Lake hylia long cave" }, + { 0x0C, 0x04, 0x0C04, "blown up north rock room 4 Lake hylia long cave" }, + { 0x0C, 0x01, 0x0C01, "blown up south rock room 8 Lake hylia long cave" }, + { 0x0D, 0x40, 0x0D40, "blown up east rock room 6 Lake Hylia Long Cave" }, + { 0x0D, 0x20, 0x0D20, "blown up west rock room 6 Lake Hylia Long Cave" }, + { 0x0D, 0x04, 0x0D04, "blown up north rock room 5 Lake Hylia Long Cave" }, + { 0x0D, 0x02, 0x0D02, "blown up north rock room 9 Lake Hylia Long Cave" }, + { 0x0D, 0x01, 0x0D01, "blown up east rock room 3 Lake hylia long cave" }, + { 0x0E, 0x80, 0x0E80, "lit right torch room 5 lake hylia long cave" }, + { 0x0E, 0x40, 0x0E40, "lit left torch room 5 lake hylia long cave" }, + { 0x0E, 0x20, 0x0E20, "spawn big chest room 11 lake hylia long cave" }, + { 0x0E, 0x10, 0x0E10, "lit right torch room 11 Lake Hylia Long Cave" }, + { 0x0E, 0x08, 0x0E08, "lit left torch room 11 Lake Hylia Long Cave" }, + { 0x0E, 0x04, 0x0E04, "explored south area room 11 Lake hylia Long Cave" }, + { 0x0E, 0x02, 0x0E02, "explored east area room 10 Lake hylia Long Cave" }, + { 0x0E, 0x01, 0x0E01, "explored north area room 9 Lake hylia Long Cave" }, + { 0x0F, 0x80, 0x0F80, "explored east area room 6 Lake hylia Long Cave" }, + { 0x0F, 0x40, 0x0F40, "explored north area room 5 Lake hylia Long Cave" }, + { 0x0F, 0x20, 0x0F20, "explored east area room 3 Lake hylia Long Cave" }, + { 0x0F, 0x10, 0x0F10, "explored west area room 2 Lake hylia Long Cave" }, + { 0x0F, 0x08, 0x0F08, "explored section 25 Lake hylia Long Cave" }, + { 0x0F, 0x04, 0x0F04, "explored section 26 Lake hylia Long Cave" }, + { 0x0F, 0x02, 0x0F02, "explored section 20 Lake hylia Long Cave" }, + { 0x0F, 0x01, 0x0F01, "explored section 19 Lake hylia Long Cave" }, + { 0x10, 0x80, 0x1080, "killed poe in room 11 Lake Hylia Long Cave" }, + { 0x10, 0x40, 0x1040, "killed poe in room 3 Lake Hylia Long Cave" }, + { 0x10, 0x20, 0x1020, "killed poe in room 8 Lake Hylia Long Cave" }, + { 0x10, 0x04, 0x1004, "lit torch 9 (room 7) Lake hylia Long Cave" }, + { 0x10, 0x01, 0x1001, "lit torch 5 (room 4) Lake hylia Long Cave" }, + { 0x11, 0x40, 0x1140, "lit torch 3 (room 2) Lake hylia Long Cave" }, + { 0x11, 0x20, 0x1120, "lit torch 2 (room 1) Lake hylia Long Cave" }, + { 0x11, 0x08, 0x1108, "lit torch 12 (room 10) Lake hylia Long Cave" }, + { 0x11, 0x04, 0x1104, "lit torch 10 (room 8) Lake hylia Long Cave" }, + { 0x11, 0x02, 0x1102, "spawn big chest room 5 lake hylia long cave" }, + { 0x11, 0x01, 0x1101, "lit torch 4 (room 3) Lake hylia Long Cave" }, + { 0x12, 0x80, 0x1280, "blown up east rock room 9 Lake hylia long cave" }, + { 0x12, 0x40, 0x1240, "blown up west rock room 2 Lake hylia Long Cave" }, + { 0x12, 0x20, 0x1220, "blown up east rock room 2 Lake hylia Long Cave" }, + { 0x12, 0x10, 0x1210, "blown up north rock room 6 Lake hylia Long Cave" }, + { 0x12, 0x08, 0x1208, "blown up west rock room 5 Lake hylia Long Cave" }, + { 0x12, 0x04, 0x1204, "blown up east rock room 8 Lake Hylia Long Cave" }, + { 0x12, 0x02, 0x1202, "blown up east rock room 10 Lake Hylia Long Cave" }, + { 0x12, 0x01, 0x1201, "blown up north rock room 8 Lake hylia Long Cave" }, + { 0x13, 0x80, 0x1380, "blown up west rock room 7 Lake hylia Long Cave" }, + { 0x13, 0x40, 0x1340, "blown up south rock room 7 Lake hylia Long Cave" }, + { 0x13, 0x20, 0x1320, "blown up south rock room 10 Lake hylia Long Cave" }, + { 0x13, 0x10, 0x1310, "blown up west rock room 4 Lake hylia Long Cave" }, + { 0x13, 0x08, 0x1308, "blown up west rock room 1 Lake hylia Long Cave" }, + { 0x13, 0x04, 0x1304, "blown up north rock room 1 Lake hylia Long Cave" }, + { 0x13, 0x02, 0x1302, "blown up east rock room 1 Lake hylia Long Cave" }, + { 0x14, 0x80, 0x1480, "spawn big chest bottom floor Goron Stock Cave" }, + { 0x14, 0x40, 0x1440, "lit right torch bottom floor Goron Stock Cave" }, + { 0x14, 0x20, 0x1420, "lit left torch bottom floor Goron Stock Cave" }, +}; + +inline EventAreaFlags eventAreaFlagsOrdon[] = +{ + { 0x03, 0x10, 0x0310, "wooden sword big chest" }, + { 0x03, 0x04, 0x0304, "iron boots big chest" }, + { 0x03, 0x02, 0x0302, "Big chest link's basement" }, + { 0x08, 0x80, 0x0880, "despawn Bo and Jaggle after scaring them away (wolf night)" }, + { 0x08, 0x40, 0x0840, "scare away Bo and Jaggle after hearing them (wolf night)" }, + { 0x08, 0x20, 0x0820, "started sword training" }, + { 0x08, 0x10, 0x0810, "obtained wooden sword" }, + { 0x08, 0x08, 0x0808, "midna text after getting ordon shield (spawns sword)" }, + { 0x08, 0x04, 0x0804, "got ordon shield (will despawn it if set)" }, + { 0x08, 0x02, 0x0802, "midna text after getting ordon sword" }, + { 0x08, 0x01, 0x0801, "got ordon sword" }, + { 0x09, 0x80, 0x0980, "exit shield house as wolf cs" }, + { 0x09, 0x40, 0x0940, "Goats 2" }, + { 0x09, 0x20, 0x0920, "day 3 intro cs (spawn in ranch)" }, + { 0x09, 0x08, 0x0908, "knocked down bee's nest day 2 cs" }, + { 0x09, 0x04, 0x0904, "? (wolf in village night)" }, + { 0x09, 0x02, 0x0902, "Ranch first time CS" }, + { 0x0A, 0x80, 0x0A80, "Rusl moving during wolf night" }, + { 0x0A, 0x40, 0x0A40, "killed spider on top of Link's house" }, + { 0x0A, 0x20, 0x0A20, "spawn 2 spiders around Link,s house (day 2) (set after buying slingshot)" }, + { 0x0A, 0x10, 0x0A10, "Ilia spring CS watched" }, + { 0x0A, 0x08, 0x0A08, "Ilia spring CS started" }, + { 0x0A, 0x04, 0x0A04, "Ordon Village first time CS" }, + { 0x0A, 0x02, 0x0A02, "Ilia spring CS Trigger" }, + { 0x0A, 0x01, 0x0A01, "killed spider on ladder to link's house" }, + { 0x0B, 0x80, 0x0B80, "Epona being in spring" }, + { 0x0B, 0x20, 0x0B20, "finished slingshot training" }, + { 0x0B, 0x10, 0x0B10, "Entered spring Area first time" }, + { 0x0B, 0x08, 0x0B08, "Intro CS watched" }, + { 0x0B, 0x02, 0x0B02, "finished sword training" }, + { 0x0C, 0x80, 0x0C80, "killed bulblin ordon woods" }, + { 0x0C, 0x40, 0x0C40, "killed second bulblin Link's house" }, + { 0x0C, 0x20, 0x0C20, "killed first bulblin Link's house" }, + { 0x0C, 0x10, 0x0C10, "spawn wooden sword big chest" }, + { 0x0C, 0x08, 0x0C08, "Day 2 intro CS" }, + { 0x0C, 0x04, 0x0C04, "talked to owl as wolf for the first time" }, + { 0x0C, 0x02, 0x0C02, "Goats 1" }, + { 0x0C, 0x01, 0x0C01, "set after getting ordon shield" }, + { 0x0D, 0x80, 0x0D80, "approach faron twilight to enter it with midna cs" }, + { 0x0D, 0x20, 0x0D20, "spawn shadow beast" }, + { 0x0D, 0x10, 0x0D10, "Ordon Spring Portal" }, + { 0x0D, 0x08, 0x0D08, "hear Bo and Jaggle talk about shield from far away (wolf night)" }, + { 0x0D, 0x02, 0x0D02, "entered shield house as wolf cs" }, + { 0x0D, 0x01, 0x0D01, "ordon shield fell down cs" }, + { 0x0E, 0x80, 0x0E80, "midna text leaving spring" }, + { 0x0E, 0x20, 0x0E20, "started midna jump to ordon shield inside house" }, + { 0x0E, 0x08, 0x0E08, "Hanch started attacking (unlocks midna jump to top of shop)" }, + { 0x0E, 0x04, 0x0E04, "midna cs after hearing Bo and Jaggle talk about shield" }, + { 0x0E, 0x02, 0x0E02, "day 3 Fado intro text" }, + { 0x0F, 0x80, 0x0F80, "Allows Link to stop goat in Village" }, + { 0x0F, 0x20, 0x0F20, "started midna jumps to top of shop" }, + { 0x0F, 0x08, 0x0F08, "midna text before doing jumps to top of shop" }, + { 0x0F, 0x04, 0x0F04, "Rusl talking to his wife cs (wolf night)" }, + { 0x0F, 0x02, 0x0F02, "unlock midna jumps to shield house" }, + { 0x0F, 0x01, 0x0F01, "scared Hanch" }, + { 0x12, 0x02, 0x1202, "torch next to Hanch is lit (wolf night)" }, + { 0x12, 0x01, 0x1201, "? (wolf in village night)" }, + { 0x13, 0x80, 0x1380, "iron boots big chest (duplicate)" }, + { 0x13, 0x40, 0x1340, "spawn iron boots chest in Bo's house" }, + { 0x13, 0x20, 0x1320, "brigthen up area under Hanch after getting spoted" }, + { 0x13, 0x10, 0x1310, "set after midna text after getting ordon shield" }, + { 0x13, 0x08, 0x1308, "Hanch spoted you cs (wolf night)" }, + { 0x13, 0x04, 0x1304, "randomly set during wolf night (often during Hanch part)" }, + { 0x13, 0x02, 0x1302, "Hero's shade map marker" }, + { 0x13, 0x01, 0x1301, "Ordon day 1 (save promt)" }, + { 0x14, 0x80, 0x1480, "set after midna text after getting ordon sword" }, + { 0x14, 0x01, 0x1401, "Jump to eagle grass next to Jaggle day 2 (removes Jaggle text)" }, + { 0x15, 0x10, 0x1510, "did midna jumps to top of shop" }, + { 0x16, 0x01, 0x1601, "King Bulblin cs" }, + { 0x17, 0x80, 0x1780, "enter village as wolf intro cs" }, + { 0x17, 0x20, 0x1720, "explored area with link's house (wolf)" }, + { 0x19, 0x80, 0x1980, "picked up yellow rupee on top of Hanch's house" }, + { 0x19, 0x40, 0x1940, "picked up green rupee in grass in front of Bo's house" }, + { 0x19, 0x20, 0x1920, "picked up green rupees in pond next to Rusl's house (day 2)" }, + { 0x19, 0x10, 0x1910, "picked up purple rupee behind Jaggle's house" }, + { 0x19, 0x01, 0x1901, "picked up green rupee in the back of the grass to the right of Link's house" }, + { 0x1A, 0x80, 0x1A80, "picked up green rupee in grass right of gate to village " }, + { 0x1A, 0x40, 0x1A40, "picked up green rupee next to rock in the grass to the right of Link's house" }, + { 0x1A, 0x20, 0x1A20, "picked up green rupee in grass to the right of Link's house" }, + { 0x1A, 0x10, 0x1A10, "picked up first green rupee in crawl space" }, + { 0x1A, 0x08, 0x1A08, "picked up yellow rupee on top of Bo's house" }, + { 0x1A, 0x02, 0x1A02, "picked up blue rupee on top of Hanch's house" }, + { 0x1A, 0x01, 0x1A01, "Picked up Orange Rupee by Rusl's house" }, + { 0x1B, 0x80, 0x1B80, "picked up green rupees on top of Hanch's house (day 2)" }, + { 0x1B, 0x40, 0x1B40, "picked up green rupees on top of Bo's house (day 2)" }, + { 0x1B, 0x08, 0x1B08, "Picked up Ordon Sword" }, + { 0x1B, 0x04, 0x1B04, "picked up green rupee under bridge (day 2)" }, + { 0x1B, 0x02, 0x1B02, "picked up yellow rupees on top of Rusl's house" }, + { 0x1B, 0x01, 0x1B01, "picked up yellow rupee on cliff next to Bo's house" }, +}; + +inline EventAreaFlags eventAreaFlagsPoT[] = +{ + { 0x00, 0x40, 0x0040, "PoH hidden big chest west room 1" }, + { 0x00, 0x20, 0x0020, "north west small chest east room 2" }, + { 0x00, 0x10, 0x0010, "north east small chest east room 2" }, + { 0x00, 0x08, 0x0008, "west small chest east room 1" }, + { 0x00, 0x04, 0x0004, "small key big chest north room 3" }, + { 0x00, 0x02, 0x0002, "south higher big chest west room 2" }, + { 0x00, 0x01, 0x0001, "small key big chest north room 2" }, + { 0x01, 0x80, 0x0180, "big key chest" }, + { 0x01, 0x40, 0x0140, "small key big chest north room 1" }, + { 0x02, 0x08, 0x0208, "placed west sol" }, + { 0x02, 0x04, 0x0204, "placed east sol" }, + { 0x03, 0x80, 0x0380, "small key east big chest east room 2" }, + { 0x03, 0x40, 0x0340, "small key north east big chest east room 1" }, + { 0x03, 0x20, 0x0320, "small key north big chest west room 2" }, + { 0x03, 0x10, 0x0310, "small key big chest west room 1" }, + { 0x03, 0x08, 0x0308, "compass lower south big chest west room 2" }, + { 0x03, 0x01, 0x0301, "PoH east big chest east room 1" }, + { 0x07, 0x10, 0x0710, "north west small chest east room 1" }, + { 0x07, 0x02, 0x0702, "map west big chest east room 2" }, + { 0x08, 0x10, 0x0810, "spawn south fence in east room 3" }, + { 0x08, 0x08, 0x0808, "spawn north fence in east room 3" }, + { 0x08, 0x04, 0x0804, "spawn south fence in west room 3" }, + { 0x08, 0x02, 0x0802, "spawn north fence in west room 3" }, + { 0x09, 0x80, 0x0980, "spawn in main room from midna warp" }, + { 0x09, 0x40, 0x0940, "save prompt after boss" }, + { 0x09, 0x20, 0x0920, "killed east phantom Zant (unlocks door)" }, + { 0x09, 0x10, 0x0910, "killed west phantom Zant (unlocks door)" }, + { 0x09, 0x04, 0x0904, "Phantom Zant 1 CS" }, + { 0x09, 0x02, 0x0902, "?" }, + { 0x09, 0x01, 0x0901, "?" }, + { 0x0A, 0x40, 0x0A40, "killed all Zant heads in east room 2 (spawn big chest)" }, + { 0x0A, 0x20, 0x0A20, "killed Zant head in east room 1 (spawn chest)" }, + { 0x0A, 0x10, 0x0A10, "killed Zant head in west room 2 (spawn 2 big chests)" }, + { 0x0A, 0x08, 0x0A08, "killed Zant head in west room 1 (spawn chest)" }, + { 0x0A, 0x02, 0x0A02, "unlock boss door" }, + { 0x0A, 0x01, 0x0A01, "unlock door in north room 3" }, + { 0x0B, 0x80, 0x0B80, "unlock door in east room 2" }, + { 0x0B, 0x40, 0x0B40, "unlock door in west room 2" }, + { 0x0B, 0x02, 0x0B02, "intro cs" }, + { 0x0B, 0x01, 0x0B01, "?" }, + { 0x0C, 0x80, 0x0C80, "get light master sword cs" }, + { 0x0C, 0x40, 0x0C40, "? (main room)" }, + { 0x0C, 0x20, 0x0C20, "? (main room)" }, + { 0x0C, 0x10, 0x0C10, "Watched CS of platform to east wing being activated" }, + { 0x0C, 0x08, 0x0C08, "Platform to east wing is active" }, + { 0x0C, 0x04, 0x0C04, "Midna text when west sol is placed" }, + { 0x0C, 0x02, 0x0C02, "Midna text when west hand steals sol" }, + { 0x0D, 0x80, 0x0D80, "killed south west Zant head in east room 2" }, + { 0x0D, 0x40, 0x0D40, "killed south east Zant head in east room 2" }, + { 0x0D, 0x20, 0x0D20, "killed center Zant head in east room 2" }, + { 0x0D, 0x10, 0x0D10, "killed first Zant head in east room 2" }, + { 0x0D, 0x08, 0x0D08, "unlock door in north room 2" }, + { 0x0D, 0x04, 0x0D04, "killed dark beasts in north room 3" }, + { 0x0D, 0x02, 0x0D02, "crossed black fog waterfall main room" }, + { 0x0D, 0x01, 0x0D01, "midna text black fog west room 1" }, + { 0x0E, 0x80, 0x0E80, "Midna text finding west sol" }, + { 0x0E, 0x40, 0x0E40, "midna text black fog waterfall main room" }, + { 0x0E, 0x20, 0x0E20, "midna text when seeing a civilian seen" }, + { 0x0E, 0x10, 0x0E10, "midna text after warping back to main room after boss" }, + { 0x0E, 0x02, 0x0E02, "killed second Zant head in north room 3 (spawn big chest)" }, + { 0x0E, 0x01, 0x0E01, "killed first Zant head in north room 3 (spawn head 2)" }, + { 0x0F, 0x80, 0x0F80, "midna text promt when seeing a civilian" }, + { 0x0F, 0x40, 0x0F40, "midna text after light master sword" }, + { 0x0F, 0x20, 0x0F20, "unlock door in north room 1" }, + { 0x0F, 0x10, 0x0F10, "unlock door in east room 1" }, + { 0x0F, 0x08, 0x0F08, "unlock door in west room 1" }, + { 0x10, 0x80, 0x1080, "killed south Zant head in north room 1 (wave 1)" }, + { 0x10, 0x40, 0x1040, "killed center Zant head in north room 1 (wave 1)" }, + { 0x10, 0x20, 0x1020, "killed north west Zant head in north room 1 (wave 1)" }, + { 0x10, 0x10, 0x1010, "killed north east Zant head in north room 1 (wave 1)" }, + { 0x10, 0x08, 0x1008, "?" }, + { 0x10, 0x04, 0x1004, "?" }, + { 0x10, 0x01, 0x1001, "? (main room)" }, + { 0x11, 0x80, 0x1180, "Heal Twili citizen outside west wing" }, + { 0x11, 0x40, 0x1140, "? (main room)" }, + { 0x11, 0x20, 0x1120, "Heal Twili near PoT entrance" }, + { 0x11, 0x10, 0x1110, "Heal Twili citizen outside east wing" }, + { 0x11, 0x08, 0x1108, "Heal Twili citizen next to west sol" }, + { 0x11, 0x04, 0x1104, "Heal Twili citizen next to east sol" }, + { 0x11, 0x02, 0x1102, "Heal Twili citizen north of Light Sword" }, + { 0x11, 0x01, 0x1101, "Heal Twili citizen near fog waterfall" }, + { 0x12, 0x08, 0x1208, "Opened Big Key Chest (causes fence to fall in room before Zant)" }, + { 0x12, 0x04, 0x1204, "Midna text after re-entering west wing after sol stolen" }, + { 0x12, 0x02, 0x1202, "remove fog in north room 4" }, + { 0x13, 0x40, 0x1340, "remove fog and spawn stairs in north room 1" }, + { 0x13, 0x20, 0x1320, "placed east sol in north room 1" }, + { 0x13, 0x10, 0x1310, "placed west sol in north room 1" }, + { 0x13, 0x02, 0x1302, "midna intro text" }, + { 0x15, 0x40, 0x1540, "killed all wave 4 Zant heads in north room 2 (spawn big chest)" }, + { 0x15, 0x20, 0x1520, "killed east Zant head north room 2 (wave 4)" }, + { 0x15, 0x10, 0x1510, "killed west Zant head north room 2 (wave 4)" }, + { 0x15, 0x08, 0x1508, "killed Zant head wave 3 in north room 2 (spawn wave 4)" }, + { 0x15, 0x04, 0x1504, "killed all wave 2 Zant heads in north room 2 (spawn wave 3)" }, + { 0x15, 0x02, 0x1502, "killed west Zant head north room 2 (wave 2)" }, + { 0x15, 0x01, 0x1501, "killed east Zant head north room 2 (wave 2)" }, + { 0x16, 0x80, 0x1680, "killed middle Zant head north room 2 (wave 2)" }, + { 0x16, 0x40, 0x1640, "killed first Zant head north room 2 (spawn wave 2)" }, + { 0x16, 0x10, 0x1610, "Watched east wing second room stairs CS" }, + { 0x16, 0x01, 0x1601, "?" }, + { 0x17, 0x80, 0x1780, "?" }, + { 0x17, 0x40, 0x1740, "killed dark beasts in east room 2" }, + { 0x17, 0x20, 0x1720, "spawn fog in east room 3" }, + { 0x17, 0x10, 0x1710, "spawn fog in west room 3" }, + { 0x17, 0x08, 0x1708, "killed all wave 2 Zant heads in north room 1 (spawn big chest)" }, + { 0x17, 0x04, 0x1704, "killed north west Zant head north room 1 (wave 2)" }, + { 0x17, 0x02, 0x1702, "killed north east Zant head north room 1 (wave 2)" }, + { 0x17, 0x01, 0x1701, "killed all wave 1 Zant heads in north room 1 (spawn wave 2)" }, + { 0x1B, 0x01, 0x1B01, "heart container" }, +}; + +inline EventAreaFlags eventAreaFlagsSacredGrove[] = +{ + { 0x03, 0x08, 0x0308, "Big chest lost woods 2 torches" }, + { 0x03, 0x04, 0x0304, "Big chest spinner in skull kid wolf battle area" }, + { 0x03, 0x02, 0x0302, "PoH big chest temple of time (past)" }, + { 0x08, 0x80, 0x0880, "lit left torch chest lost woods" }, + { 0x08, 0x40, 0x0840, "killed poe temple of time (past)" }, + { 0x08, 0x20, 0x0820, "midna text after pushing block human" }, + { 0x08, 0x10, 0x0810, "cs after pushing block human" }, + { 0x08, 0x08, 0x0808, "intro cs lost woods" }, + { 0x08, 0x02, 0x0802, "?" }, + { 0x08, 0x01, 0x0801, "?" }, + { 0x09, 0x80, 0x0980, "explored section after window before dungeon (includes map marker for dungeon)" }, + { 0x09, 0x40, 0x0940, "stairs to temple of time area near (dungeon)" }, + { 0x09, 0x20, 0x0920, "strike MS into pedestal in past" }, + { 0x09, 0x10, 0x0910, "window and stairs to dungeon work properly" }, + { 0x09, 0x02, 0x0902, "killed poe lost woods water" }, + { 0x09, 0x01, 0x0901, "killed poe in skull kid wolf battle area" }, + { 0x0A, 0x80, 0x0A80, "killed poe in master sword area (present)" }, + { 0x0A, 0x10, 0x0A10, "skull kid wolf battle area explored" }, + { 0x0B, 0x80, 0x0B80, "temple of time (present) main room explored" }, + { 0x0B, 0x40, 0x0B40, "temple of time (past) main room explored" }, + { 0x0B, 0x20, 0x0B20, "blown up rock in skull kid wolf battle area" }, + { 0x0B, 0x10, 0x0B10, "block pushed human" }, + { 0x0B, 0x04, 0x0B04, "Master Sword Puzzle Complete" }, + { 0x0B, 0x02, 0x0B02, "Master sword area explored" }, + { 0x0B, 0x01, 0x0B01, "Temple of time (present) human entrence explored" }, + { 0x0F, 0x02, 0x0F02, "spawn big chest lost woods 2 torches" }, + { 0x0F, 0x01, 0x0F01, "lit right torch chest lost woods" }, + { 0x16, 0x20, 0x1620, "Master Sword Pulled (does not despawn)" }, + { 0x16, 0x10, 0x1610, "Blocks entrance to Woods (auto-set upon re-entering Grove before Skull Kid 2" }, + { 0x16, 0x08, 0x1608, "Lost woods skull kid human chase (unset once done)" }, + { 0x16, 0x02, 0x1602, "skull kid human defeated" }, + { 0x16, 0x01, 0x1601, "lost woods turns to day after skull kid fight human" }, + { 0x17, 0x80, 0x1780, "Skull Kid Appears (set automatically)" }, + { 0x17, 0x40, 0x1740, "Transition to day after Skull Kid" }, + { 0x17, 0x20, 0x1720, "dark beasts spawned" }, + { 0x17, 0x10, 0x1710, "Sacred Grove Portal (removes statue blocking door of time (to past)" }, + { 0x17, 0x08, 0x1708, "Randomizer: remove statue to past" }, +}; + +inline EventAreaFlags eventAreaFlagsSewer[] = +{ + { 0x00, 0x80, 0x0080, "0" }, + { 0x00, 0x40, 0x0040, "1" }, + { 0x00, 0x20, 0x0020, "2" }, + { 0x00, 0x10, 0x0010, "3" }, + { 0x00, 0x08, 0x0008, "4" }, + { 0x00, 0x04, 0x0004, "5" }, + { 0x00, 0x02, 0x0002, "6" }, + { 0x00, 0x01, 0x0001, "7" }, + { 0x01, 0x80, 0x0180, "8" }, + { 0x01, 0x40, 0x0140, "9" }, + { 0x01, 0x20, 0x0120, "10" }, + { 0x01, 0x10, 0x0110, "11" }, + { 0x01, 0x08, 0x0108, "12" }, + { 0x01, 0x04, 0x0104, "13" }, + { 0x01, 0x02, 0x0102, "14" }, + { 0x01, 0x01, 0x0101, "15" }, + { 0x02, 0x80, 0x0280, "16" }, + { 0x02, 0x40, 0x0240, "17" }, + { 0x02, 0x20, 0x0220, "18" }, + { 0x02, 0x10, 0x0210, "19" }, + { 0x02, 0x08, 0x0208, "20" }, + { 0x08, 0x80, 0x0880, "twilight final cs" }, + { 0x08, 0x40, 0x0840, "Zelda cs twilight" }, + { 0x08, 0x20, 0x0820, "midna text after first gate sewers (how to fight)" }, + { 0x08, 0x10, 0x0810, "midna text after exiting to rooftops (twilight)" }, + { 0x08, 0x08, 0x0808, "wake up in jail cs" }, + { 0x08, 0x04, 0x0804, "midna promt to use sense to see gard (entrance to sewers)" }, + { 0x08, 0x02, 0x0802, "pushed box outside (MDH)" }, + { 0x08, 0x01, 0x0801, "pulled lever of first water gate in sewers" }, + { 0x09, 0x80, 0x0980, "dug up blue rupee after crawl space (sewers) (twilight)" }, + { 0x09, 0x40, 0x0940, "second water gate in sewers cs (unset afterwards)" }, + { 0x09, 0x20, 0x0920, "first water gate in sewers cs (unset afterwards)" }, + { 0x09, 0x10, 0x0910, "midna cs after diging out of jail" }, + { 0x09, 0x08, 0x0908, "midna intro cs" }, + { 0x09, 0x04, 0x0904, "waited long enough in jail" }, + { 0x09, 0x02, 0x0902, "broke fragile floor first jump of stairway (unlocks first midna jump)" }, + { 0x09, 0x01, 0x0901, "started midna jumps 3 stairway" }, + { 0x0A, 0x80, 0x0A80, "started midna jumps 2 stairway" }, + { 0x0A, 0x40, 0x0A40, "zelda tower intro cs" }, + { 0x0A, 0x20, 0x0A20, "midna went to the other side of the fence in sewers" }, + { 0x0A, 0x10, 0x0A10, "started midna jumps on rooftops" }, + { 0x0A, 0x08, 0x0A08, "started midna jumps 4 stairway (top to door)" }, + { 0x0A, 0x04, 0x0A04, "broke box inside Link's cell" }, + { 0x0A, 0x02, 0x0A02, "did midna jumps 1 stairway (broke small platform)" }, + { 0x0A, 0x01, 0x0A01, "outside top door intro cs" }, + { 0x0B, 0x80, 0x0B80, "broke fire in Zelda's room" }, + { 0x0B, 0x40, 0x0B40, "midna rejoinded link after crawl space" }, + { 0x0B, 0x20, 0x0B20, "went to the other side of the fence in sewers cs" }, + { 0x0B, 0x10, 0x0B10, "top of stairway intro cs" }, + { 0x0B, 0x08, 0x0B08, "stairway intro cs" }, + { 0x0B, 0x04, 0x0B04, "read midna promt to open door" }, + { 0x0B, 0x02, 0x0B02, "opened door in cell next to Link's" }, + { 0x0B, 0x01, 0x0B01, "dug out of Link's cell" }, + { 0x0D, 0x80, 0x0D80, "killed first bulblin outside (MDH)" }, + { 0x0D, 0x20, 0x0D20, "killed second bulblin outside (MDH)" }, + { 0x0D, 0x04, 0x0D04, "killed bulblin at top of stairway (on the patform) (MDH)" }, + { 0x0E, 0x80, 0x0E80, "killed fourth bulblin in stairway (MDH)" }, + { 0x0E, 0x20, 0x0E20, "killed third bulblin in stairway (MDH)" }, + { 0x0E, 0x04, 0x0E04, "killed second bulblin in stairway (MDH)" }, + { 0x0E, 0x02, 0x0E02, "killed first bulblin in stairway (MDH)" }, + { 0x0F, 0x20, 0x0F20, "talked to midna after using sense on first rooftop gard" }, + { 0x0F, 0x10, 0x0F10, "midna text when approching first rooftop gard" }, + { 0x0F, 0x08, 0x0F08, "listened to first gard in sewers" }, + { 0x0F, 0x04, 0x0F04, "saw first rooftop gard with sense" }, + { 0x0F, 0x02, 0x0F02, "saw first gard in sewers" }, + { 0x0F, 0x01, 0x0F01, "midna cs after diging out of jail" }, + { 0x1B, 0x08, 0x1B08, "picked up green rupee in box in secret passge next to fence (sewers) (twilight)" }, + { 0x1B, 0x04, 0x1B04, "picked up blue rupee in box in left secret way (sewers) (twilight)" }, + { 0x1B, 0x02, 0x1B02, "picked up purple rupee in boxes (first windy bridge) (MDH)" }, + { 0x1B, 0x01, 0x1B01, "picked up yellow rupee in Zelda's fire" }, +}; + +inline EventAreaFlags eventAreaFlagsSnowpeak[] = +{ + { 0x03, 0x01, 0x0301, "Big chest transition cave" }, + { 0x08, 0x40, 0x0840, "montain top explored" }, + { 0x08, 0x20, 0x0820, "Map marker Ashei" }, + { 0x08, 0x04, 0x0804, "montain top cs (pan towards tree)" }, + { 0x08, 0x02, 0x0802, "Post SPR Save Prompt" }, + { 0x09, 0x80, 0x0980, "?" }, + { 0x09, 0x40, 0x0940, "?" }, + { 0x09, 0x20, 0x0920, "Snowpeak top portal" }, + { 0x0B, 0x08, 0x0B08, "explored second section up montain" }, + { 0x0B, 0x04, 0x0B04, "explored first section up montain" }, + { 0x0B, 0x02, 0x0B02, "Midna text in front of SPR" }, + { 0x0B, 0x01, 0x0B01, "intro cs" }, + { 0x0D, 0x10, 0x0D10, "spawn big chest transition cave" }, + { 0x0D, 0x08, 0x0D08, "lit left torch transition cave" }, + { 0x0D, 0x04, 0x0D04, "lit right torch transition cave" }, + { 0x0F, 0x08, 0x0F08, "snow fell down next to howling stone" }, + { 0x14, 0x80, 0x1480, "killed poe transition cave" }, + { 0x14, 0x40, 0x1440, "killed poe next to snowpeak ruins" }, + { 0x14, 0x20, 0x1420, "killed first poe up the montain" }, + { 0x14, 0x10, 0x1410, "killed second poe next to lone tree on cliff" }, + { 0x14, 0x08, 0x1408, "killed third poe near 2 trees before howling stone" }, +}; + +inline EventAreaFlags eventAreaFlagsSPR[] = +{ + { 0x00, 0x02, 0x0002, "PoH big chest under broken ceiling" }, + { 0x01, 0x80, 0x0180, "left small chest behind armor in first room" }, + { 0x01, 0x40, 0x0140, "right small chest behind armor in first room" }, + { 0x01, 0x20, 0x0120, "PoH big chest in first room 2F" }, + { 0x01, 0x10, 0x0110, "west small chest behind ice in north west room" }, + { 0x01, 0x08, 0x0108, "east small chest behind ice in north west room" }, + { 0x01, 0x04, 0x0104, "small key small chest pumpkin room" }, + { 0x01, 0x01, 0x0101, "Ooccoo" }, + { 0x02, 0x80, 0x0280, "south east small chest in courtyard" }, + { 0x02, 0x40, 0x0240, "small key buried east small chest in courtyard" }, + { 0x02, 0x20, 0x0220, "small key buried west small chest in courtyard" }, + { 0x02, 0x08, 0x0208, "big key chest" }, + { 0x02, 0x04, 0x0204, "pumpkin big chest" }, + { 0x03, 0x80, 0x0380, "small key big chest in compass room 2F" }, + { 0x03, 0x40, 0x0340, "cheese big chest" }, + { 0x03, 0x08, 0x0308, "south small chest behind ice in courtyard" }, + { 0x03, 0x04, 0x0304, "compass big chest" }, + { 0x03, 0x02, 0x0302, "small chest compass room 1F" }, + //{ 0x08, 0x80, 0x0880, "position of second block in ice puzzle room" }, + //{ 0x08, 0x40, 0x0840, "position of second block in ice puzzle room" }, + //{ 0x08, 0x20, 0x0820, "position of second block in ice puzzle room" }, + //{ 0x08, 0x10, 0x0810, "position of second block in ice puzzle room" }, + //{ 0x08, 0x08, 0x0808, "position of second block in ice puzzle room" }, + //{ 0x08, 0x04, 0x0804, "position of third block in ice puzzle room (frozen one)" }, + //{ 0x08, 0x02, 0x0802, "position of third block in ice puzzle room (frozen one)" }, + //{ 0x08, 0x01, 0x0801, "position of third block in ice puzzle room (frozen one)" }, + //{ 0x09, 0x80, 0x0980, "position of third block in ice puzzle room (frozen one)" }, + //{ 0x09, 0x40, 0x0940, "position of third block in ice puzzle room (frozen one)" }, + { 0x09, 0x20, 0x0920, "killed poe in armor in first room" }, + { 0x09, 0x08, 0x0908, "unlock west living room door" }, + { 0x09, 0x04, 0x0904, "unlock north living room door" }, + { 0x09, 0x02, 0x0902, "lowered ball transport (west hallway-freezard)" }, + { 0x09, 0x01, 0x0901, "lowered ball transport (courtyard 2F)" }, + { 0x0A, 0x80, 0x0A80, "dug first time west buried small chest in courtyard" }, + { 0x0A, 0x40, 0x0A40, "lowered ball transport (west hallway-courtyard)" }, + { 0x0A, 0x20, 0x0A20, "dug second time west buried small chest in courtyard" }, + { 0x0A, 0x10, 0x0A10, "talked to Yeta for the first time (gives map)" }, + { 0x0A, 0x04, 0x0A04, "destroyed ice in courtyard 2F" }, + { 0x0A, 0x02, 0x0A02, "Yeta enters bedroom cs (in courtyard)" }, + { 0x0A, 0x01, 0x0A01, "unlock bedroom door" }, + { 0x0B, 0x80, 0x0B80, "enter courtyard" }, + { 0x0B, 0x20, 0x0B20, "compass big chest (set after)" }, + { 0x0B, 0x10, 0x0B10, "broke ice in pumpkin room 2F" }, + { 0x0B, 0x08, 0x0B08, "dug up east small chest in courtyard" }, + { 0x0B, 0x04, 0x0B04, "open west door 2F in ice puzzle room" }, + { 0x0B, 0x02, 0x0B02, "open west door 1F in ice puzzle room" }, + { 0x0C, 0x80, 0x0C80, "destroyed first left armor in first room" }, + { 0x0C, 0x40, 0x0C40, "destroyed second left armor in first room" }, + { 0x0C, 0x20, 0x0C20, "destroyed third left armor in first room" }, + //{ 0x0C, 0x08, 0x0C08, "canon in north west room orientation" }, + //{ 0x0C, 0x04, 0x0C04, "canon in north west room orientation" }, + { 0x0C, 0x02, 0x0C02, "killed freezard in courtyard 1F" }, + { 0x0C, 0x01, 0x0C01, "explored compass room" }, + { 0x0D, 0x80, 0x0D80, "killed first freezard in cage" }, + { 0x0D, 0x40, 0x0D40, "killed freezard in courtyard 2F" }, + { 0x0D, 0x20, 0x0D20, "killed west freezard in room above livng room (2F)" }, + { 0x0D, 0x10, 0x0D10, "killed north freezard in room above livng room (2F)" }, + { 0x0D, 0x08, 0x0D08, "broke ice in first room 2F" }, + { 0x0D, 0x04, 0x0D04, "destroyed ice on block in ice puzzle room" }, + { 0x0D, 0x01, 0x0D01, "unlock door in south east room 2F" }, + { 0x0E, 0x80, 0x0E80, "unlocked door to first room in freezard cage room" }, + { 0x0E, 0x20, 0x0E20, "unlock doors in room before pumpkin" }, + { 0x0E, 0x10, 0x0E10, "unlock door in east outside hallway" }, + { 0x0E, 0x08, 0x0E08, "unlock west door in courtyard" }, + { 0x0E, 0x04, 0x0E04, "explored courtyard 1F" }, + { 0x0E, 0x02, 0x0E02, "explored room above ice puzzle (2F)" }, + { 0x0E, 0x01, 0x0E01, "explored room above pumpkin (2F)" }, + { 0x0F, 0x80, 0x0F80, "puched left block in room above living room (2F)" }, + { 0x0F, 0x40, 0x0F40, "puched right block in room above living room (2F)" }, + { 0x0F, 0x20, 0x0F20, "2nd floor block pushed down in ice puzzle room" }, + //{ 0x0F, 0x10, 0x0F10, "position of first block in ice puzzle room" }, + //{ 0x0F, 0x08, 0x0F08, "position of first block in ice puzzle room" }, + //{ 0x0F, 0x04, 0x0F04, "position of first block in ice puzzle room" }, + //{ 0x0F, 0x02, 0x0F02, "position of first block in ice puzzle room" }, + //{ 0x0F, 0x01, 0x0F01, "position of first block in ice puzzle room" }, + { 0x10, 0x80, 0x1080, "Picked up B&C" }, + { 0x10, 0x40, 0x1040, "?" }, + { 0x10, 0x20, 0x1020, "Yeta lets you open door to kitchen" }, + { 0x10, 0x10, 0x1010, "north west room 1F intro cs" }, + { 0x10, 0x08, 0x1008, "Midna big key text prompt" }, + { 0x10, 0x02, 0x1002, "pumpkin room ambush cs trigger" }, + //{ 0x10, 0x01, 0x1001, "courtyard 2F canon orientation" }, + //{ 0x11, 0x80, 0x1180, "courtyard 2F canon orientation" }, + //{ 0x11, 0x40, 0x1140, "courtyard 1F canon orientation" }, + //{ 0x11, 0x20, 0x1120, "courtyard 1F canon orientation" }, + { 0x11, 0x02, 0x1102, "unlock mini-boss doors" }, + { 0x11, 0x01, 0x1101, "pushed block in west outside hallway" }, + { 0x12, 0x40, 0x1240, "unlock doors in pumpkin room" }, + { 0x12, 0x20, 0x1220, "explored path to bedroom 2F & 3F" }, + { 0x12, 0x10, 0x1210, "killed second freezard in cage" }, + { 0x12, 0x08, 0x1208, "explored west outside hallway 2F (canon)" }, + { 0x12, 0x04, 0x1204, "unlock door to big key in big key room" }, + //{ 0x12, 0x02, 0x1202, "freezard cage canon orientation" }, + //{ 0x12, 0x01, 0x1201, "freezard cage canon orientation" }, + { 0x13, 0x40, 0x1340, "killed chilfos in pumpkin room (unlock south door)" }, + { 0x13, 0x20, 0x1320, "?" }, + { 0x13, 0x10, 0x1310, "killed chilfos in big key room" }, + { 0x13, 0x08, 0x1308, "broke center ice in Ice puzzle room" }, + { 0x13, 0x04, 0x1304, "broke first right armor in first room" }, + { 0x13, 0x02, 0x1302, "broke second right armor in first room (spawns poe)" }, + { 0x13, 0x01, 0x1301, "broke third right armor in first room" }, + { 0x14, 0x80, 0x1480, "killed poe in south east room 2F" }, + { 0x14, 0x40, 0x1440, "Midna big key text seen" }, + { 0x14, 0x10, 0x1410, "explored east outside hallway 2F " }, + { 0x14, 0x08, 0x1408, "explored west outside hallway 1F (canonballs)" }, + { 0x14, 0x04, 0x1404, "explored room above living room (2F)" }, + { 0x14, 0x02, 0x1402, "explored freezard in cages room 2F" }, + { 0x14, 0x01, 0x1401, "Intro Cutscene" }, + { 0x15, 0x80, 0x1580, "unlock west door in pumpkin room" }, + { 0x15, 0x40, 0x1540, "destroyed first right armor in cheese room" }, + { 0x15, 0x20, 0x1520, "freezard in cage cs" }, + { 0x15, 0x08, 0x1508, "courtyard intro cs" }, + { 0x15, 0x04, 0x1504, "killed poe in center of first room" }, + { 0x15, 0x02, 0x1502, "pumpkin room intro cs" }, + { 0x15, 0x01, 0x1501, "?" }, + { 0x16, 0x80, 0x1680, "?" }, + { 0x16, 0x40, 0x1640, "Yeta points to kitchen cs" }, + { 0x16, 0x20, 0x1620, "Midna Cheese text prompt" }, + { 0x16, 0x10, 0x1610, "Midna Cheese text seen" }, + { 0x16, 0x08, 0x1608, "Midna pumpkin text seen" }, + { 0x16, 0x04, 0x1604, "Darkhammer (unsets after defeat)" }, + { 0x16, 0x02, 0x1602, "Midna pumpkin text prompt" }, + { 0x16, 0x01, 0x1601, "unlock exit door in big key room" }, + { 0x17, 0x80, 0x1780, "map marker bedroom key" }, + { 0x17, 0x40, 0x1740, "map marker ordon cheese" }, + { 0x17, 0x20, 0x1720, "map marker ordon pumpkin" }, + { 0x17, 0x10, 0x1710, "Blizzeta Cutscene" }, + { 0x17, 0x08, 0x1708, "broke first ice south door in north west room 1F" }, + { 0x17, 0x04, 0x1704, "broke second ice south door in north west room 1F" }, + { 0x17, 0x02, 0x1702, "broke third ice south door in north west room 1F" }, + { 0x17, 0x01, 0x1701, "broke ice wall in compass room 2F" }, +}; + +inline EventAreaFlags eventAreaFlagsToT[] = +{ + { 0x00, 0x80, 0x0080, "map marker statue in room 2" }, + { 0x00, 0x40, 0x0040, "map marker statue will spawn in room 2" }, + { 0x00, 0x20, 0x0020, "map marker statue in room 3" }, + { 0x00, 0x10, 0x0010, "map marker statue will spawn in room 3" }, + { 0x00, 0x08, 0x0008, "map marker statue in room 4" }, + { 0x00, 0x04, 0x0004, "map marker statue will spawn in room 4" }, + { 0x00, 0x02, 0x0002, "map marker statue in room 5" }, + { 0x00, 0x01, 0x0001, "map marker statue will spawn in room 5" }, + { 0x01, 0x80, 0x0180, "map marker statue in room 6" }, + { 0x01, 0x40, 0x0140, "map marker statue will spawn in room 6" }, + { 0x01, 0x20, 0x0120, "map marker statue in room 7" }, + { 0x01, 0x10, 0x0110, "map marker statue will spawn in room 7" }, + { 0x02, 0x10, 0x0210, "PoH big chest room 4" }, + { 0x02, 0x02, 0x0202, "small key big chest room 6 7F" }, + { 0x02, 0x01, 0x0201, "big key chest" }, + { 0x03, 0x40, 0x0340, "compass big chest room 4" }, + { 0x03, 0x20, 0x0320, "PoH big chest south room 5F" }, + { 0x03, 0x10, 0x0310, "small key big chest south room 5F" }, + { 0x03, 0x04, 0x0304, "small chest room 2 2F" }, + { 0x03, 0x02, 0x0302, "map big chest room 2 3F" }, + { 0x03, 0x01, 0x0301, "dominion rod big chest" }, + { 0x04, 0x80, 0x0480, "Ooccoo" }, + { 0x05, 0x01, 0x0501, "small chest big key room" }, + { 0x06, 0x80, 0x0680, "small chest room 5 7F" }, + { 0x06, 0x40, 0x0640, "south small chest south room 5F" }, + { 0x06, 0x20, 0x0620, "small chest room 2 3F" }, + { 0x06, 0x10, 0x0610, "big chest room 5 6F" }, + { 0x06, 0x08, 0x0608, "big chest room 6 8F" }, + { 0x06, 0x02, 0x0602, "small key big chest room 1" }, + { 0x07, 0x02, 0x0702, "map marker statue in room 1" }, + { 0x07, 0x01, 0x0701, "map marker statue will spawn in room 1" }, + { 0x08, 0x80, 0x0880, "Midna text asking to look at missing statue room 1" }, + { 0x08, 0x40, 0x0840, "Midna text after looking at missing statue room 1" }, + { 0x08, 0x20, 0x0820, "unlock door in room 6 8F" }, + { 0x08, 0x10, 0x0810, "unlock door in room 3 5F (spawn baby and young gohmas in south room 5F)" }, + { 0x08, 0x08, 0x0808, "unlock door in room 1" }, + { 0x08, 0x04, 0x0804, "dominion rod big chest (set after)" }, + { 0x08, 0x02, 0x0802, "killed poe in room 3 3F" }, + { 0x08, 0x01, 0x0801, "killed poe in room 5 7F" }, + { 0x09, 0x20, 0x0920, "intro cs" }, + { 0x09, 0x10, 0x0910, "scale intro cs room 5 6F" }, + { 0x09, 0x08, 0x0908, "change balance of scale for the first time cs" }, + { 0x09, 0x04, 0x0904, "change balance of scale for the first time" }, + { 0x0A, 0x80, 0x0A80, "entered room 7" }, + { 0x0A, 0x40, 0x0A40, "spawn west big chest in south room 5F" }, + { 0x0A, 0x08, 0x0A08, "statue getting possessed for the first time cs" }, + { 0x0B, 0x40, 0x0B40, "deactivate statue slot in room 1 (opens door and deactivates statue)" }, + { 0x0B, 0x20, 0x0B20, "deactivate bell in room 2 (required to spawn in room 1)" }, + { 0x0B, 0x10, 0x0B10, "deactivate bell in room 3 (required to spawn in room 2)" }, + { 0x0B, 0x08, 0x0B08, "deactivate bell in room 4 (required to spawn in room 3)" }, + { 0x0B, 0x04, 0x0B04, "deactivate bell in room 5 (required to spawn in room 4)" }, + { 0x0B, 0x02, 0x0B02, "deactivate bell in room 6 (required to spawn in room 5)" }, + { 0x0B, 0x01, 0x0B01, "deactivate bell in room 7 (required to spawn in room 6)" }, + { 0x0C, 0x80, 0x0C80, "unlock door in south room 5F" }, + { 0x0C, 0x40, 0x0C40, "killed armos in room 2 3F (spawn big chest)" }, + { 0x0C, 0x20, 0x0C20, "killed armos in big key room (unlocks door)" }, + { 0x0C, 0x10, 0x0C10, "lit both torches in room 1 (unset if you leave) (spawn big chest)" }, + { 0x0C, 0x04, 0x0C04, "broke gate in room 2 3F" }, + { 0x0C, 0x02, 0x0C02, "broke fouth gate in room 2 2F" }, + { 0x0C, 0x01, 0x0C01, "broke first gate in room 2 2F" }, + { 0x0D, 0x80, 0x0D80, "broke third gate in room 2 2F" }, + { 0x0D, 0x40, 0x0D40, "broke second gate in room 2 2F" }, + { 0x0D, 0x20, 0x0D20, "broke second sliding door in room 4 4F" }, + { 0x0D, 0x10, 0x0D10, "broke third sliding door in room 4 5F" }, + { 0x0D, 0x08, 0x0D08, "broke second sliding door in room 4 5F" }, + { 0x0D, 0x04, 0x0D04, "broke first sliding door in room 4 5F" }, + { 0x0D, 0x02, 0x0D02, "broke first sliding door in room 4 4F" }, + { 0x0D, 0x01, 0x0D01, "broke first beamos in room before boss" }, + { 0x0E, 0x80, 0x0E80, "broke left beamos in room before boss" }, + { 0x0E, 0x40, 0x0E40, "broke right beamos in room before boss" }, + { 0x0E, 0x20, 0x0E20, "broke beamos in room 6 7F" }, + { 0x0E, 0x10, 0x0E10, "broke first beamos in room 4 4F" }, + { 0x0E, 0x08, 0x0E08, "broke second beamos in room 4 4F" }, + { 0x0E, 0x04, 0x0E04, "broke beamos in room 3 3F" }, + { 0x0E, 0x01, 0x0E01, "broke gate to bell in room 3 3F" }, + { 0x0F, 0x80, 0x0F80, "broke gate to poe in room 3 3F" }, + { 0x0F, 0x40, 0x0F40, "broke gate in room 6 8F" }, + { 0x0F, 0x20, 0x0F20, "open door to poe in room 3 3F" }, + { 0x0F, 0x10, 0x0F10, "spawn baby gohmas in beamos room 3 3F" }, + { 0x0F, 0x08, 0x0F08, "broke gate in room 6 8F cs" }, + { 0x0F, 0x01, 0x0F01, "unlock boss door" }, + { 0x10, 0x80, 0x1080, "open big door in room 1 cs part 2" }, + { 0x10, 0x40, 0x1040, "open big door in room 1 cs part 1" }, + { 0x10, 0x10, 0x1010, "killed a baby gohma in room 6 8F" }, + { 0x10, 0x08, 0x1008, "killed a baby gohma in room 6 8F" }, + { 0x10, 0x04, 0x1004, "killed a baby gohma in room 6 8F" }, + { 0x10, 0x02, 0x1002, "killed a baby gohma in room 6 8F" }, + { 0x10, 0x01, 0x1001, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x80, 0x1180, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x40, 0x1140, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x20, 0x1120, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x10, 0x1110, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x08, 0x1108, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x04, 0x1104, "killed a baby gohma in room 6 8F" }, + { 0x11, 0x02, 0x1102, "killed a baby gohma in room 6 8F" }, + { 0x12, 0x80, 0x1280, "pressed button in room 1 (or 6 8F) for the first time cs" }, + { 0x12, 0x40, 0x1240, "pressed button in room 6 7F for the first time cs" }, + { 0x12, 0x20, 0x1220, "killed both armos in room 6 8F (opens gate)" }, + { 0x12, 0x08, 0x1208, "pressed buttons in room 3 5F for the first time cs" }, + { 0x12, 0x04, 0x1204, "pressed buttons in room 2 3F for the first time cs" }, + { 0x12, 0x02, 0x1202, "pressed button in room 2 2F for the first time cs" }, + { 0x13, 0x40, 0x1340, "open gate to dominion rod in room 7" }, + { 0x13, 0x20, 0x1320, "statue spawning out of bell in room 1 cs trigger" }, + { 0x13, 0x10, 0x1310, "statue spawning out of bell in room 1 cs" }, + { 0x13, 0x08, 0x1308, "killed all baby gohmas in room 6 8F (spawn big chest)" }, + { 0x13, 0x04, 0x1304, "killed all enemies in room 5 6F (spawn big chest)" }, + { 0x13, 0x02, 0x1302, "killed west armos in south room 5F" }, + { 0x13, 0x01, 0x1301, "killed east armos in south room 5F" }, + { 0x14, 0x40, 0x1440, "unlock door in room 7" }, + { 0x14, 0x20, 0x1420, "statue getting in bell in room 7 cs first part" }, + { 0x14, 0x10, 0x1410, "statue getting in bell in room 7 cs second part" }, + { 0x14, 0x08, 0x1408, "statue getting in bell in room 7 cs trigger" }, + { 0x14, 0x04, 0x1404, "open gate to dominion rod in room 7 cs" }, + { 0x14, 0x02, 0x1402, "statue spawn out of bell in room 6" }, + { 0x14, 0x01, 0x1401, "statue spawning out of bell in room 6 cs trigger" }, + { 0x15, 0x80, 0x1580, "statue spawning out of bell in room 6 cs part 1" }, + { 0x15, 0x40, 0x1540, "statue getting in bell in room 6 cs trigger" }, + { 0x15, 0x20, 0x1520, "statue getting in bell in room 6 cs" }, + { 0x15, 0x10, 0x1510, "statue spawning out of bell in room 5 cs trigger" }, + { 0x15, 0x08, 0x1508, "statue spawning out of bell in room 5 cs" }, + { 0x15, 0x04, 0x1504, "statue getting in bell in room 5 cs trigger" }, + { 0x15, 0x02, 0x1502, "statue getting in bell in room 5 cs" }, + { 0x15, 0x01, 0x1501, "statue spawning out of bell in room 4 cs trigger" }, + { 0x16, 0x80, 0x1680, "statue spawning out of bell in room 4 cs" }, + { 0x16, 0x40, 0x1640, "statue getting in bell in room 4 cs trigger" }, + { 0x16, 0x20, 0x1620, "statue getting in bell in room 4 cs" }, + { 0x16, 0x10, 0x1610, "statue spawning out of bell in room 3 cs trigger" }, + { 0x16, 0x08, 0x1608, "statue spawning out of bell in room 3 cs" }, + { 0x16, 0x04, 0x1604, "statue getting in bell in room 3 cs trigger" }, + { 0x16, 0x02, 0x1602, "statue getting in bell in room 3 cs" }, + { 0x16, 0x01, 0x1601, "statue spawning out of bell in room 2 cs trigger" }, + { 0x17, 0x80, 0x1780, "statue spawning out of bell in room 2 cs" }, + { 0x17, 0x40, 0x1740, "statue getting in bell in room 2 cs trigger" }, + { 0x17, 0x20, 0x1720, "statue getting in bell in room 2 cs" }, + { 0x17, 0x10, 0x1710, "deactivate spawning bell in room 7" }, + { 0x17, 0x08, 0x1708, "big door in room 1 opens" }, + { 0x17, 0x04, 0x1704, "open big door in room 1 cs part 2 trigger" }, + { 0x17, 0x02, 0x1702, "open big door in room 1 cs part 1 trigger" }, + { 0x17, 0x01, 0x1701, "statue placed in slot in room 1" }, +}; + +struct MultiByteAreaFlag +{ + // flags treated as bool, shift left after checking bool + const char* name; + std::vector flags; + std::map enumValues; +}; + +inline MultiByteAreaFlag ForestTempleWormRoomPosition = +{ + "Worm Room position", + { 0x0D20, 0x0D10, 0x0D08, 0x0D04 }, + { + {0x0, "on totem", }, + {0x8, "north", }, + {0x7, "north north east", }, + {0x6, "north east", }, + {0x5, "east north east", }, + {0x4, "east", }, + {0x3, "east south east", }, + {0x2, "south south east", }, + {0x1, "south", }, + {0xF, "south south west", }, + {0xE, "south west", }, + {0xD, "west south west", }, + {0xC, "west", }, + {0xA, "west north west", }, + {0xB, "north west", }, + {0x9, "north north west", }, + }, +}; + +inline MultiByteAreaFlag SPR_Courtyard1FCannon = { + "Courtyard First Floor Cannon", + {0x1140, 0x1120}, + { + {1, "north"}, + {0, "south"}, + {2, "east"}, + {3, "west"} + }, +}; + +inline MultiByteAreaFlag SPR_Courtyard2FCannon = +{ + "Courtyard Second Floor Cannon", + {0x1001, 0x1180}, + { + {3, "north east"}, + {0, "south east"}, + {2, "south west"}, + {1, "north west"}, + }, +}; + +inline MultiByteAreaFlag SPR_FreezardCageRoomCannon = { + "Freezard Cage Room Cannon", + {0x1202, 0x1201}, + { + {0, "north"}, + {2, "east"}, + {1, "south"}, + {3, "west"}, + }, +}; + +inline MultiByteAreaFlag SPR_NorthWestRoomCannon = { + "North West Room Cannon", + {0x0C08, 0x0C04}, + { + {3, "north"}, + {0, "east"}, + {2, "south"}, + {1, "west"}, + }, +}; + +inline const std::map _IceBlockPuzzleLocations = +{ + {0x0C, "(-2, 2)"}, + {0x0B, "(-1, 2)"}, + {0x0A, "( 0, 2)"}, + {0x09, "( 1, 2)"}, + {0x08, "( 2, 2)"}, + + {0x0D, "(-2, 1)"}, + {0x14, "(-1, 1)"}, + {0x15, "( 0, 1)"}, + {0x16, "( 1, 1)"}, + {0x07, "( 2, 1)"}, + + {0x0E, "(-2, 0)"}, + {0x17, "(-1, 0)"}, + {0x1A, "( 0, 0)"}, + {0x17, "( 1, 0)"}, + {0x06, "( 2, 0)"}, + + {0x0F, "(-2, -1)"}, + {0x12, "(-1, -1)"}, + {0x19, "( 0, -1)"}, + {0x18, "( 1, -1)"}, + {0x05, "( 2, -1)"}, + + {0x10, "(-2, -2)"}, + {0x11, "(-1, -2)"}, + {0x02, "( 0, -2)"}, + {0x03, "( 1, -2)"}, + {0x04, "( 2, -2)"}, + + {0x01, "( 0, -3)"}, +}; + +inline MultiByteAreaFlag SPR_IcePuzzleBlock1 = { + "Ice Block 1 Location", + {0x0F10, 0x0F08, 0x0F04, 0x0F02, 0x0F01}, + _IceBlockPuzzleLocations +}; + +inline MultiByteAreaFlag SPR_IcePuzzleBlock2 = { + "Ice Block 2 Location", + {0x0880, 0x0840, 0x0820, 0x0810, 0x0808}, + _IceBlockPuzzleLocations +}; + +inline MultiByteAreaFlag SPR_IcePuzzleBlock3 = { + "Ice Block 2 Location", + {0x0804, 0x0802, 0x0801, 0x0980, 0x0940}, + _IceBlockPuzzleLocations +}; + +inline const std::map _CoOBlockPuzzle1Locations = { + {0xB, "(-1, 2)"}, + {0xC, "( 0, 2)"}, + {0x1, "( 1, 2)"}, + + {0xA, "(-1, 1)"}, + {0xD, "( 0, 1)"}, + {0x2, "( 1, 1)"}, + + {0x9, "(-1, 0)"}, + {0xE, "( 0, 0)"}, + {0x3, "( 1, 0)"}, + + {0x8, "(-1, -1)"}, + {0xF, "( 0, -1)"}, + {0x4, "( 1, -1)"}, + + {0x7, "(-1, -2)"}, + {0x6, "( 0, -2)"}, + {0x5, "( 1, -2)"}, +}; + +inline MultiByteAreaFlag CoOPuzzle1Block1 = { + "Puzzle 1 Block 1 Location", + {0x0904, 0x0902, 0x0901, 0x0880}, + _CoOBlockPuzzle1Locations +}; + +inline MultiByteAreaFlag CoOPuzzle1Block2 = { + "Puzzle 1 Block 2 Location", + {0x0A20, 0x0A10, 0x0A08, 0x0A04}, + _CoOBlockPuzzle1Locations +}; + +inline MultiByteAreaFlag CoOPuzzle1Block3 = { + "Puzzle 1 Block 3 Location", + {0x0B08, 0x0B04, 0x0B02, 0x0B01}, + _CoOBlockPuzzle1Locations +}; + +inline const std::map _CoOBlockPuzzle2Locations = { + {0x1, "(-1, 2)"}, + {0x2, "( 0, 2)"}, + {0x3, "( 1, 2)"}, + + {0xC, "(-1, 1)"}, + {0xD, "( 0, 1)"}, + {0x4, "( 1, 1)"}, + {0x5, "( 2, 1)"}, + + {0xB, "(-1, 0)"}, + {0xE, "( 0, 0)"}, + {0xF, "( 1, 0)"}, + {0x6, "( 2, 0)"}, + + {0xA, "(-1, -1)"}, + {0x9, "( 0, -1)"}, + {0x8, "( 1, -1)"}, + {0x7, "( 2, -1)"}, +}; + +inline MultiByteAreaFlag CoOPuzzle2Block1 = { + "Puzzle 2 Block 1 Location", + {0x0880, 0x0840, 0x0820, 0x0810}, + _CoOBlockPuzzle2Locations +}; + +inline MultiByteAreaFlag CoOPuzzle2Block2 = { + "Puzzle 2 Block 2 Location", + {0x0808, 0x0804, 0x0802, 0x0801}, + _CoOBlockPuzzle2Locations +}; + +inline MultiByteAreaFlag CoOPuzzle2Block3 = { + "Puzzle 2 Block 3 Location", + {0x0980, 0x0940, 0x0920, 0x0910}, + _CoOBlockPuzzle2Locations +}; + +inline const std::map _CoOBlockPuzzle3Locations = { + {0x01, "(-2, 2)"}, + {0x02, "(-1, 2)"}, + {0x03, "( 0, 2)"}, + {0x04, "( 1, 2)"}, + {0x05, "( 2, 2)"}, + + {0x10, "(-2, 1)"}, + {0x11, "(-1, 1)"}, + {0x12, "( 0, 1)"}, + {0x13, "( 1, 1)"}, + {0x06, "( 2, 1)"}, + + {0x0F, "(-2, 0)"}, + {0x18, "(-1, 0)"}, + {0x19, "( 0, 0)"}, + {0x14, "( 1, 0)"}, + {0x07, "( 2, 0)"}, + + {0x0E, "(-2, -1)"}, + {0x17, "(-1, -1)"}, + {0x16, "( 0, -1)"}, + {0x15, "( 1, -1)"}, + {0x08, "( 2, -1)"}, + + {0x0D, "(-2, -2)"}, + {0x0C, "(-1, -2)"}, + {0x0B, "( 0, -2)"}, + {0x0A, "( 1, -2)"}, + {0x09, "( 2, -2)"}, +}; + +inline MultiByteAreaFlag CoOPuzzle3Block1 = { + "Puzzle 3 Block 1 Location", + {0x0E40, 0x0E20, 0x0E10, 0x0E08, 0x0E04}, + _CoOBlockPuzzle3Locations +}; + +inline MultiByteAreaFlag CoOPuzzle3Block2 = { + "Puzzle 3 Block 2 Location", + {0x0E02, 0x0E01, 0x0F80, 0x0F40, 0x0F20}, + _CoOBlockPuzzle3Locations +}; + +inline MultiByteAreaFlag CoOPuzzle3Block3 = { + "Puzzle 3 Block 3 Location", + {0x0F10, 0x0F08, 0x0F04, 0x0F02, 0x0F01}, + _CoOBlockPuzzle3Locations +}; + +struct AreaFlagIter { + template + AreaFlagIter(T t) : span(t) {} + std::span span; +}; + +inline std::map areaFlagLookup = +{ + { 0x00, eventAreaFlagsOrdon }, + { 0x01, eventAreaFlagsSewer }, + { 0x02, eventAreaFlagsFaron }, + { 0x03, eventAreaFlagsEldin }, + { 0x04, eventAreaFlagsLanayru }, + { 0x06, eventAreaFlagsHyruleField }, + { 0x07, eventAreaFlagsSacredGrove }, + { 0x08, eventAreaFlagsSnowpeak }, + { 0x09, eventAreaFlagsCastleTown }, + { 0x0A, eventAreaFlagsGerudoDesert }, + { 0x0B, eventAreaFlagsFishingPond }, + { 0x10, eventAreaFlagsFT }, + { 0x11, eventAreaFlagsGM }, + { 0x12, eventAreaFlagsLBT }, + { 0x13, eventAreaFlagsAG }, + { 0x14, eventAreaFlagsSPR }, + { 0x15, eventAreaFlagsToT }, + { 0x16, eventAreaFlagsCitS }, + { 0x17, eventAreaFlagsPoT }, + { 0x18, eventAreaFlagsHC }, + { 0x19, eventAreaFlagsCoO }, + { 0x1A, eventAreaFlagsLHLC }, + { 0x1B, eventAreaFlagsGrotto }, +}; + #endif // !DUSK_IMGUI_EVENTFLAGS_HPP \ No newline at end of file