Commit Graph
100 Commits
Author SHA1 Message Date
compiling ef08bf33d5 Reset Skull Pinball logical state between generation attempts. 2021-03-06 12:26:58 +11:00
compiling c02a890aba Fix logs indicating pots are shuffled when they aren't. 2020-12-01 18:29:38 +11:00
compiling 70a206fd22 Fix issue with copying locations (fixes moon pearl logic during playthrough generation). 2020-12-01 18:20:48 +11:00
compiling e6d9fc71a9 Fix FastEnum compatibility with normal enums - use IntFlag to allow bitwise operations and interpreting as raw integers. 2020-11-21 23:01:22 +11:00
compiling 3ee5f59a19 Add python and pip instructions to the readme. 2020-11-08 15:25:16 +11:00
compiling 3b32735e10 Fix enemizer - read the basepatch and update base2current.json before calling enemizer. 2020-11-08 15:17:28 +11:00
compiling bdddd3c0de Set location's parent_region when moving it.
Fix copy_world to handle moved locations
2020-11-08 12:33:31 +11:00
compiling af488e653e Allow key drop pots to be shuffled anywhere if they contain general items 2020-11-08 12:00:19 +11:00
compiling 793eb30dec Update PotShuffle.py for keydrop shuffle changes 2020-11-08 11:53:31 +11:00
compiling 8ca529aa6a Fix enemizer - read the basepatch and update base2current.json before calling enemizer. 2020-11-08 11:20:37 +11:00
compiling 078b5eeb85 Merge remote-tracking branch 'remotes/origin/DoorDevUnstable' into DoorDevUnstable 2020-11-07 18:48:26 +11:00
compiling fdcd179186 Fix copy_world for insanity shuffle (dungeon exits do not lead to the same place as the corresponding entrance) 2020-11-02 15:03:48 +11:00
compiling a5b1f228df Handle Sanctuary as an additional entrance in the middle of a dungeon. 2020-11-02 11:56:53 +11:00
compiling 5442f05a79 Update find_accessible_entrances to work with lobby shuffle 2020-11-02 11:22:03 +11:00
compiling 31c0540cc8 Merge remote-tracking branch 'remotes/origin/dungeon_entrance_fix' into DoorDevUnstable 2020-11-02 10:28:54 +11:00
compiling 6c531620e5 Make it possible to generate standard / retro / vanilla doors. 2020-11-02 10:21:34 +11:00
compiling 62e0981568 Fix entrances list for non-lobby shuffle. 2020-11-02 10:20:38 +11:00
compiling 138f047636 Create base2current.json from the bps patch for enemizer. 2020-10-26 18:38:55 +11:00
compiling 8f2b068313 Refine hints for crossed dungeon shuffle regardless of the hints setting, since they are also used for the Ganon silvers hint.
Move Hera Basement to the list of inconvenient dungeon locations to exclude it from crossed shuffle.
2020-10-26 18:02:42 +11:00
compiling c3c6cabea6 Find accessible entrances for key logic and later steps by exploring the entire world including other dungeons.
Dungeon generation will still use the old method, since it needs to dynamically change as dungeons are added.
2020-10-24 09:58:32 +11:00
compiling 2a2f72a360 Bps patching 2020-10-17 22:03:02 +11:00
compiling 7c9e02b182 Pot shuffle 2020-09-06 18:01:44 +10:00
compiling ce835aaee6 Pot Shuffle in-progress 2020-08-21 17:17:48 +10:00
compiling cd062d2165 dungeonsfull logic fix - prevent the desert prize from being required to reach desert main (unless keysanity allows access to the keys). 2020-05-30 22:51:56 +10:00
compiling cb66fba888 Split invalid connections into normal and inverted 2020-05-30 22:35:57 +10:00
compiling 9b4c86846f Enhance mandatory exit logic to ensure they do not block themselves, and also handle boundary conditions that often occur in inverted dungeonsfull 2020-05-30 22:35:57 +10:00
compiling b558c054e9 Inverted dungeonsfull fix - Force reusing an existing cave if there are not enough entrances to use a new one. 2020-05-30 22:35:56 +10:00
compiling cebd3bdd90 Stop inverted dungeonsfull from generating crossworld dungeon connections. 2020-05-24 10:18:53 +10:00
compiling 8b1bb810c1 Link requires flippers to exit the water from Diver Down state in Swamp. 2020-05-17 22:42:46 +10:00
compiling ac8cd92ab6 Remove logging line for missing module - seems to not work properly and CI should handle it. 2020-05-13 20:16:49 +10:00
compiling c817e9ce91 Fix issue with crossed generation (Save and Quit entrance is not handled) 2020-05-12 21:38:37 +10:00
compiling c7103e6919 Add fast-enum requirement to ci 2020-05-12 21:19:01 +10:00
compiling 0700af4dbd Logic updates to Spike Cave, Bosses
Fix Bomb rules to exclude Spectacle Rock Cave for inverted
Require a weapon for Castle Tower kill rooms
2020-05-12 21:03:35 +10:00
compiling 1217236621 Replace world exploration with a faster algorithm - use BFS and keep track of all entrances that are currently blocked by progression items.
New algorithm also obsoletes sweep_for_crystal_access
Set up door and entrance caches in advance
Replace CrystalBarrier with FastEnum for bitfield arithmetic
2020-05-12 21:03:35 +10:00
compiling cf70210ed1 Fix pre_validate rejecting Desert Palace when no chests are in the back. 2020-05-09 20:40:01 +10:00
compiling 7f2913fb35 Remove arrow capacity upgrade from retro 2020-04-23 19:08:21 +10:00
compiling 11a91b96c6 Set inverted blacksmith to require light world access using the mirror or a portal (via starting in Link's House / Old Man Cave doesn't work).
Set the flag allowing the blacksmith to visit Link's House in simple inverted shuffle.
2020-04-05 21:12:26 +10:00
compiling 7199c375d7 Fix inverted TR tests - ER requires access to Witches Hut for potions. 2020-04-05 21:12:25 +10:00
compiling b8f81ade67 Remove Spectacle Rock Cave ledges from inverted bomb shop locations, not normal bomb shop locations.
Update inverted bomb shop tests
2020-04-05 21:12:25 +10:00
compiling 0a882bdf4e Show text box on pickup for all dungeon items in keysanity mode. 2020-04-04 15:16:49 +11:00
compiling b3e84cc559 Basic test that inverted bomb shop logic covers all entrances. 2020-03-19 21:55:26 +11:00
compiling 6003d40ce2 Update inverted big bomb rules.
Add checks that will not allow unexpected entrances to get east dark world logic.
2020-03-19 21:54:13 +11:00
compiling e01983c494 Remove bad locations from inverted bomb shop locations (Spectacle Rock ledges and Desert East are inescapable and Bumper Cave Top is doubled in insanity). 2020-03-17 23:23:14 +11:00
compiling 6263c0d709 Update pyramid fairy tests 2020-03-17 23:19:23 +11:00
compiling 053aec4f26 Add unit tests for vanilla inverted layout, and dungeon logic. 2020-03-16 17:39:54 +11:00
compiling 270fbce516 Fix bombs check 2020-03-15 21:59:06 +11:00
compiling e8ee3de083 Mire key logic update - it is impossible to access the Map Chest key door without hitting a colour switch (or clipping through a rail). 2020-03-15 21:03:43 +11:00
compiling 9b5654ff4f Update boss requirements to match item randomizer
- Can defeat Armos with the bow
- Can defeat Lanmolas with the canes
- Require sword or bow for Helmasaur - hammer is possible for phase 2 but difficult
- Require extended magic for fighting Trinexx with master sword
2020-03-15 14:14:06 +11:00
compiling ab89f70fa3 Add 10 bombs as an uncle weapon for standard. 2020-03-15 11:09:34 +11:00
compiling 5c0d34a65d Require a weapon for Castle Tower. 2020-03-15 11:04:08 +11:00
compiling 18c10dc7ad Make retro arrows always require buying the wooden arrow.
The Silver Arrows grant the ability to shoot if they are non-progressive, but this is harder to model.
2020-03-15 10:12:22 +11:00
compiling 49e48eba1d Add warp between Waterfall Cave and Lake Hylia into inverted logic. 2020-03-14 13:37:21 +11:00
compiling 5c95cf8730 Fix Half Magic logic 2020-03-14 10:31:28 +11:00
compiling 6197b915a5 Fix inverted rule for old man house. 2020-03-14 00:39:29 +11:00
compiling 583380cad6 Support vanilla key layout in GT (copy item rando logic - firesnake room needs 2 keys if it contains a small key). 2020-03-09 09:59:54 +11:00
compiling d6db722d2e Fix silvers hint to point at the bow you didn't find.
Remove silvers hint if progressive bows do not give silvers.
2020-03-09 09:57:22 +11:00
compiling b5dccaba2c Update base2current 2020-03-08 17:27:26 +11:00
compiling 857c13849e Fix double counting keys during placement with keysanity. 2020-03-08 09:35:07 +11:00
compiling 0f3c9d62a6 Fix standard mode with default connections 2020-03-03 19:05:36 +11:00
compiling d7939e0296 Fix GT boss shuffle for crossed dungeons. 2020-02-28 23:32:12 +11:00
compiling 531a1d6423 Inverted Bomb Shop can't go on Spectacle Rock Cave bottom entrances
Fix inverted bomb rules for Inverted Big Bomb Shop, Inverted Dark Sanctuary, Inverted Links House.
2020-02-26 18:38:49 +11:00
compiling 8fc9132746 Ignore impossible key counters when checking key placement. 2020-02-19 22:20:14 +11:00
compiling ed3e2da663 Log all missing chests, not just non-keys. 2020-02-19 22:20:14 +11:00
compiling b321410e5a Keylock checks:
Big Chest only available after the big key is found
Bosses are always required locations
Don't check for 100% locations - failure rate is too high
2020-02-19 22:20:14 +11:00
compiling 8ad28542a4 Check for key locks after placing dungeon items. 2020-02-19 22:20:13 +11:00
compiling 320b06142f Make dungeon counters a config setting 2020-02-14 19:29:58 +11:00
compiling afe1cdf283 Always show dungeon chest counter with cross-dungeons. 2020-02-13 20:49:44 +11:00
compiling 6b0d1dd517 Revert change to Inverted Ganons Tower entrance hint (inverted is actually a different entrance). 2020-02-02 11:45:23 +11:00
compiling eb98f3d265 Inverted Ganons Tower dungeon was renamed. 2020-02-01 18:08:34 +11:00
compiling 710ed9b011 Require Hammer for Thieves' Town - Big Chest 2020-01-29 19:05:36 +11:00
compiling 1a2c83be4c Update insanity shuffle hole targets (and legacy shuffles).
Update hole target addresses.
2020-01-28 20:35:08 +11:00
compiling ba6c73861a Remove comments in yaml files.
Throw a meaningful error if the door-shuffle setting is invalid.
2020-01-26 21:46:18 +11:00
compiling 3150e0f161 No-Logic fix - don't try to spread crystal access if the current state is nothing 2020-01-26 18:16:00 +11:00
compiling a370b34aca Turn off vanilla TR key logic checks when TR can be entered from back
- will need to be based on which entrances are available and how the inaccessible entrances link
2020-01-26 15:29:14 +11:00
compiling ee8feaed55 Fix skull woods exit:
- Remove from list of unreachable exits (Moth may be in a different section)
- Fix vanilla check to account for multiworld
2020-01-26 14:15:43 +11:00
compiling 33b849a176 Speed hacks
- reduce the regions being checked every iteration when updating
- only sweep for crystal access when new locations are found, and when starting a new sphere
2020-01-23 20:08:37 +11:00
compiling b5ea688847 Add inverted door shuffle 2020-01-23 19:53:04 +11:00
compiling 6659965cd4 Check game is winnable before creating the rom. 2020-01-21 23:46:08 +11:00
compiling 4339c606be Reverse the normal and bk_restricted door rules, if the bk_restricted rule requires more small keys (prevents placing a big key from softlocking the game later). 2020-01-21 23:41:01 +11:00
compiling 0a8892806e Fix some dungeon generation errors:
TR fails if the Big Chest entrance is locked behind another dungeon
Hyrule Castle fails if the only available entrance is Sanctuary
2020-01-21 23:39:43 +11:00
compiling 1586267a80 Ban big keys from locations that will block required freestanding keys
TBD how to handle regular rules
2020-01-21 22:12:06 +11:00
compiling 2c3f5a9aff Recheck region access when sweeping for crystal state succeeds. 2020-01-21 22:09:30 +11:00
compiling d7beb1dfcf Re-add Sweep for crystal access in playthrough algorithm (might not be called when sweeping for keys) 2020-01-21 00:39:17 +11:00
compiling 138003912c Add all entrances as required paths (may be required for inaccessible regions). 2020-01-20 23:57:01 +11:00
compiling 123b49686a Sweep for crystal access instead of all events (since events are manually collected in beatability check) 2020-01-20 23:07:14 +11:00
compiling 74c515eb16 Handle standard mode, vanilla door shuffle. 2020-01-20 22:02:33 +11:00
compiling d3a6dd9138 Fix standard mode checks for per-player settings 2020-01-19 21:23:06 +11:00
compiling 49398fb454 Fix location table 2020-01-19 21:06:38 +11:00
compiling 93b9ebff6c Update base rom. 2020-01-19 18:26:35 +11:00
compiling e0eff76b9b Merge remote-tracking branch 'remotes/multi/multiworld_31' into multidoors 2020-01-19 18:18:43 +11:00
compiling 4f7aea7dde Sweep for events when checking beatability. 2020-01-19 15:04:11 +11:00
compiling db4ad1b3d0 Don't flood the keys in swamp when balancing multiworld 2020-01-18 15:59:14 +11:00
compiling 9033b5331f Optimise crystal checks a bit - only check regions with out of logic doors. 2020-01-18 14:01:06 +11:00
compiling b6d17e5f12 Reintroduce sweep_for_crystal_access - currently required in certain layouts (key door blocks flow of blue-state between reachable rooms) 2020-01-17 21:19:31 +11:00
compiling ee7d795780 Temp remove sweep_for_crystal_access - not required? 2020-01-16 22:15:55 +11:00
compiling ee8c629ac7 Merge commit 'c4ae75bc2b866e4a304614200eac678fd4da4aee' into multidoors 2020-01-16 20:23:43 +11:00
compiling 8aafbf2865 Fix skull woods pinball check 2020-01-16 19:25:10 +11:00
compiling 62e56bc9ee Check if spread_crystal_access should be called when each new region is reached. 2020-01-16 19:21:58 +11:00
compiling ead7c117a8 Skip the playthrough when run from the gui, if the spoiler isn't being created. 2020-01-12 21:20:14 +11:00
compiling d35c5f5d68 Open pinball room if it blocks the Skull Woods boss room. 2020-01-12 21:19:31 +11:00