* Front to Middle requires 3 keys, or only 2 if the back is inaccessible
* Middle to Front requires 4 keys, or only 2 if the back is inaccessible and the TR Big Key is in the front
* Back to Middle requires 0 keys
* Middle to Back requires 3 keys
TR will violate 100% locations accessibility if it is only accessible via the middle section - this is required to have enough keys for the rest of the dungeon.
* Fix Waterfall entrance being inaccessible with the flippers.
Fix Spectacle Rock and Bombos Tablet requiring moon pearl
* Inverted - make the blacksmith, purple chest, bottle merchant and master sword pedestal accessible without the moon pearl.
* Fix moon pearl checks to avoid requiring moon pearl for mirror accessible locations.
* Dark Desert Teleporter requires the mitts
* Fix OWG bunny rules
* Fix another bunny rule bug.
* Separate superbunny cave into 2 regions.
For OWG, allow superbunny in superbunny cave with no mirror when entering from the bottom
Fix boots clip logic to desert teleporter ledge and TR teleporter
Fix mirror wrap logic for pyramid fairy
For insanity shuffle, exiting Superbunny Cave bottom is now in logic.
* Always require pearl for Swamp (Superbunny cannot do anything)
* Allow clipping into the GT entrance
* Add OWG tests from vt_randomizer
* Add some extra vanilla test cases
* Allow superbunny into the Blind's Hideout entrance.
* More moon pearl / superbunny fixes
Use the Catfish region properly, so Catfish Descent works.
* Allow superbunny into tavern
Fix inverted Kings Grave logic
* Inverted OWG tests
* Update unit tests for King's Tomb clip.
* All superbunny to spiral cave item (with sword)
* Bunny revive is not possible in Sanctuary.
* More inverted tests
* Add/fix test cases
* Fix logic for Magic Bat
* Fix merge to multiworld
* Fix Floodgate superbunny rule
* Require bunny revival for all dungeons except for Swamp/TR Main/Hera/Sanctuary, which have extra requirements
* Require a weapon for Castle Tower.
* Test case fixes
* Update test case - superbunny into Kakariko Tavern is in logic
This reformats the Rules.py file to no longer have quite so many totally redundant rules between inverted and non-inverted. In the process, it fixes an insanity only issue wherein the magic bat in inverted was set to always require Pearl (only in insanity can this not be true). Additionally, the inverted super bomb rules are completely reworked to be a lot more accurate (including preventing Desert Palace (East) from having the bomb shop at all in inverted insanity) and an obscure case involving non-inverted insanity super bomb return has a logic fix.
* Update Swordless rom writes
* Remove swordless as possible mode in ItemList.py
* Fix inverted HC Ledge access
Added collection state helper methods for determining lw/dw access
Restricted locations where Link's House can be in inverted
Dark Sanc and Link's House can no longer be at the back of Skull Woods
Fixed minor error in inverted bunny rules
* Update Link's House Shuffling in inverted insanity
* More isolated entrances not to put Link's House at
* Fix Link's House in dungeons shuffles
* More dungeons shuffle stuff I forgot
Now works roughly like VT, except that swords are somwhat more common
and bombs-only escape is not supported (because I don't want to make
'Bombs (10)' an advancement item)
Swordless Standard Mode should also work now
Assured and Vanilla weapons still need to be implemented.
Replaces existing check_only_beatable, which became the "none" option.
TR can run out of key placement options, with the 100% locations
option, but I really don't care enough. It exists mostly for people who
want to 100% a seed, or to point to if they ask about keys locked behind
themselves.
Partial support for Progressive bow
- Still needs to be added to item pool
- Silver hint handling remains TBD even for VT
Added weapons selection.
- Vanilla needs to be implemented
- Assured needs to be implemented
- Inverted swordless is almost certainly messed up.
- Swordless standard mode will likely softlock
- Random weapon standard mode is currently treated as uncle assured
Deleted removed difficulties
- Remaining difficulties still need to be adjusted
Added locked property to locations:
- This is used for preplaced items etc so that multiworld balancing
knows they cannot be moved.
Made a few of the difficulty changes from V31, but not all.
Added required text changes to handle crystals requirements
- More changes will likely me made in future
- Currently there is is no way to tell ganon requirement in
Inverted mode
Merging in Cassidoxa's inverted mode.
I've still not fully reviewed the logic used in this mode, so it should be considered experimental, pending an in depth review by either myself or AA.
Does not include the server/client code or the rom writes
specific to it. Indeed it cannot write multiworld roms at
all right now, pending addition future updates to support
the official ALTTPR Multiworld client.
Includes some GUI changes by Alaszun
Co-authored-by: Alaszun <koelze@google.com>
A longstanding issue is that Fairy Ascension Cave has been treated as a simple two way connector, but in reality bunny cannot "logically" go through the cave in reverse as it requires lifting some pots with super bunny. This super bunny state is effectively unavoidable and can really only be lost if you have Boots and foolishly bonk before lifting a pot, but for logical consistency fixing this is the right thing to do. The logic should now correctly see that the cave is a two way connection with no particular item requirements in general but that the reverse direction isn't bunny transversable.
Forever in ER, erroneously, the Map Chest in Ganon's Tower erroneously required Hookshot instead of correctly accepting Hookshot or Boots like the item randomizer. The root cause involved how regional connections were strung together with the assumption Map Chest would have the same requirements as the four DMs Room chests. This fixes that and allows that chest to be accessed by logic with Boots.
This update should fully fix the key logic for Turtle Rock. This involved fixing several longstanding bugs in the program we didn't realize we had until trying to really fix this issue. Notable inclusions are that now seeds generated with a count will be identical to similarly numbered seeds generated individually and that now the always allows actually work (key for key apparently actually never happened in ER before and we didn't notice!). This also required refactoring the item pool generation before rule setting and individually moving pendant/crystal placement out of item pool generation (it's not a separate step between rule setting and normal item fill). A few exotic seed generation fails are still possible involving multi-entrance dungeons being really, really inaccessible in non-keysanity, but they're now appropriately super rare instead of being as common as they were before.
This is just for review and isn't tested beyond seeing that it runs. In theory, this should fix the TR based seed generation failures and make TR Small Key requirements as precise as possible.