diff --git a/src/dusk/randomizer/generator/data/macros.yaml b/src/dusk/randomizer/generator/data/macros.yaml index e6d803ab2e..3b2a0fdc0d 100644 --- a/src/dusk/randomizer/generator/data/macros.yaml +++ b/src/dusk/randomizer/generator/data/macros.yaml @@ -21,10 +21,6 @@ Can Sniff: Wolf_Link Can Midna Jump: Wolf_Link Can Use Tightrope: Wolf_Link Not Twilight: Human_Link or Wolf_Link -# You can only use warp portals from certain stages. -# 'Can_Warp' is an event added to any logical area -# which is part of a stage that players can warp from. -Can Use Warp Portals: Wolf_Link and 'Can_Warp' Slingshot: Slingshot and 'Can_Refill_Slingshot_Seeds' and Human_Link Lantern: Lantern and 'Can_Refill_Lantern_Oil' and Human_Link @@ -210,6 +206,11 @@ Can Defeat Zant: Master_Sword and Gale_Boomerang and (Iron_Boots or (Can_Do_Nich Can Open North Faron Woods Gate: North_Faron_Woods_Gate_Key or Small_Keys == Keysy Can Complete Prologue: Skip_Prologue == On or (Sword and Slingshot and Can_Open_North_Faron_Woods_Gate) +# You can only use warp portals from certain stages. +# 'Can_Warp' is an event added to any logical area +# which is part of a stage that players can warp from. +Can Use Warp Portals: Wolf_Link and 'Can_Warp' and Can_Complete_Prologue + Can Free All Monkeys in Forest Temple: "'Can_Free_Monkey_in_Entrance_Room' and 'Can_Free_Monkey_on_Totem' and 'Can_Free_Monkey_in_Big_Baba_Room' and 'Can_Free_Monkey_in_West_Tileworm_Room' and 'Can_Free_Monkey_in_East_Tileworm_Room' and 'Can_Free_Monkey_in_Dark_Spider_Room' and diff --git a/src/dusk/randomizer/generator/data/world/overworld/Ordona Province.yaml b/src/dusk/randomizer/generator/data/world/overworld/Ordona Province.yaml index 29d9f3a94e..ff80eda567 100644 --- a/src/dusk/randomizer/generator/data/world/overworld/Ordona Province.yaml +++ b/src/dusk/randomizer/generator/data/world/overworld/Ordona Province.yaml @@ -38,13 +38,6 @@ Map Sector: Ordona Province Region: Ordon Can Warp: True - Locations: - # We can't assume repeatable non-twilight access to any of faron woods until after the prologue and twilight sections - # are finished. We put this location here when the prologue is on because the north faron woods gate key gets placed - # here as a vanilla item when the prologue is on. This allows the search algorithm to find the key for logical progression - # without needing to assume repeatable access to Faron Woods. Entrance randomizer doesn't need to be taken into account - # because entrance randomizer with the prologue on is not allowed. - Faron Mist Cave Open Chest: Skip_Prologue == Off Exits: South Faron Woods: Can_Complete_Prologue Ordon Spring: Skip_Prologue == On or ('Can_Access_Outside_Links_House' and Sword and Slingshot) diff --git a/src/dusk/randomizer/generator/logic/fill.cpp b/src/dusk/randomizer/generator/logic/fill.cpp index 1322105851..f2b4991fad 100644 --- a/src/dusk/randomizer/generator/logic/fill.cpp +++ b/src/dusk/randomizer/generator/logic/fill.cpp @@ -234,6 +234,7 @@ namespace randomizer::logic::fill { return item->GetName() == "Slingshot" || item->GetName() == "Progressive Sword" || item->GetName() == "Lantern" || item->GetName() == "Progressive Fishing Rod" || + item->GetName() == "North Faron Woods Gate Key" || item->IsShadowCrystal(); }); auto completeItemPool = item_pool::GetCompleteItemPool(worlds); diff --git a/src/dusk/randomizer/generator/logic/world.cpp b/src/dusk/randomizer/generator/logic/world.cpp index 9c578c617d..cc1899871b 100644 --- a/src/dusk/randomizer/generator/logic/world.cpp +++ b/src/dusk/randomizer/generator/logic/world.cpp @@ -586,8 +586,6 @@ namespace randomizer::logic::world (this->Setting("Hidden Rupees") == "Off" && location->HasCategories("Rupee - Hidden")) || // Freestanding Rupees (this->Setting("Freestanding Rupees") == "Off" && location->HasCategories("Rupee - Freestanding")) || - // North Faron Woods Gate Key - (this->Setting("Skip Prologue") == "Off" && locationName == "Faron Mist Cave Open Chest") || // Warp Portals (location->HasCategories("Warp Portal")) || // Some locations which will always be vanilla for the time being