Commit Graph

109 Commits

Author SHA1 Message Date
aerinon
3b4e19b5de Fixes for compatibility with compiling perf
Couple fixes for standard+ER
2020-05-29 16:19:32 -06: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
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
aerinon
1ea5c1f4b2 Fix for Full ER Shuffle so that Hyrule Castle cannot be crossworld when doors are shuffled. 2020-02-12 09:25:06 -07:00
compiling
1a2c83be4c Update insanity shuffle hole targets (and legacy shuffles).
Update hole target addresses.
2020-01-28 20:35:08 +11:00
compiling
b5ea688847 Add inverted door shuffle 2020-01-23 19:53:04 +11:00
compiling
9803515315 Merge remote-tracking branch 'remotes/door_rando/DoorDev' into Dev 2020-01-04 21:33:42 +11:00
Bonta-kun
0de0467b5c Inverted: connect lake hylia island to lw 2020-01-01 18:12:23 +01:00
Bonta-kun
7ccab4bf44 simple inverted: update old_man_entrances after links house shuffle 2019-12-28 01:10:52 +01:00
Bonta-kun
52b05c0b4f dont touch the smith single cave doors again please 2019-12-27 19:08:04 +01:00
Bonta-kun
8721310cf7 World: include can_access_trock_eyebridge can_access_trock_front can_access_trock_big_chest can_access_trock_middle and fix_fake_world in the player specific attributes 2019-12-18 20:45:51 +01:00
Bonta-kun
ec1b9eca43 Individual settings: shuffle 2019-12-16 18:24:34 +01:00
Bonta-kun
ab28858a8f Individual settings: mode 2019-12-16 16:54:46 +01:00
Bonta-kun
4cf7412b51 EntranceShuffle: remove default castle connections to light world 2019-12-10 20:00:56 +01:00
aerinon
48494a09ba TR Crystal Maze adjustments
Fixed key door candidate finder to stay within own dungeon
Standard mode support added
Added missed Pre-moldorm chest
Started work on new key logic analyzer
2019-11-19 10:50:44 -07:00
aerinon
093746a0c7 Ganon's Tower added
Some key logic work
2019-11-15 13:50:31 -07:00
aerinon
5718018982 Added Turtle Rock.
Fixed clock -> process_time for Python 3.8
Fixed interior blocked doors
Vanilla logical connections for Ice Cross (Push block)
Dungeon entrance enhancement for TR, Skull, HC (Standard)
Kill on invalid dungeons during key door shuffle
Key logic improvements (Smallkey restrictions, Logic Min/Logic Max for key doors, Big Chest doesn't count for small keys if BK not found yet)
Key door candidate now accounts for "overworld" dungeon traversal
Path checking added some Crystal Logic (Blind's Cell to Boss mostly)
Kill on dungeon gen if taking too long
2019-11-07 12:16:13 -07:00
aerinon
f8abf1fe81 Implemented mire 2019-11-05 11:39:13 -07:00
aerinon
e08bf3776a Ice Palace added
Dynamic logical doors added for ice cross w/ push block
Improved crystal switch pathing
Minor update to PoD
2019-11-01 16:13:23 -06:00
aerinon
050ae66bf6 Thieves Town 2019-10-25 13:50:37 -06:00
aerinon
beb15951a0 Skull Woods added
Fixed polarity for stairs
Some swamp fixes
Prep work for dungeons that can require traversal through overworld - like skull woods
Special case for pinball room so it can be in Skull 2 or Skull 1
2019-10-17 16:35:13 -06:00
aerinon
a0fdb25b43 Spirals for Swamp
Swamp Logic
Door definition cleanup
Stabs at Swamp events and Crystal Switches
2019-10-11 16:53:46 -06:00
aerinon
5cc4fdfa1f Added PoD
Added Logic for Desert,Hera,Aga,PoD
Revamped Logic for HC, Eastern
2019-10-03 09:24:27 -06:00
aerinon
fd11e8cde1 Merge branch 'Dev' into DoorDev 2019-10-01 14:35:30 -06:00
AmazingAmpharos
e6793e36f2 Inverted logic improvements
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.
2019-10-01 03:17:40 -05:00
cassidoxa
2859acef7d Swordless rom writes and inverted fixes
* 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
2019-09-21 21:59:16 -04:00
aerinon
5eb0e6e379 Aga Tower preliminary check in 2019-09-20 21:24:46 -06:00
aerinon
6534aaecc6 Tower of Hera Door
Logical Doors
2019-09-19 14:40:16 -06:00
randall.rupper
97c225ab2f Desert Regions, Doors, and fixes associate with the new stuff
Updated generation algorithm to use new Sector object
Moved Dungeon items back for now
Created region lists for ease of grouping
2019-09-13 16:38:23 -06:00
randall.rupper
48f29b3aa5 Merge branch 'Dev' into DoorDev 2019-09-06 14:22:42 -06:00
cassidoxa
d393657eac Fix mixup of DM Return caves East and West 2019-09-02 15:36:30 -04:00
randall.rupper
02f4ad956d Merge branch 'Dev' into DoorDev 2019-08-26 15:11:11 -06:00
cassidoxa
3d64e2bef3 Put player on HC ledge after dying to Ganon in inverted 2019-08-24 10:14:57 -04:00
randall.rupper
ad3770e534 An initial commit.
ASAR asm patch included with test tables.
Eastern and Hyrule Castle regions created from a while ago.
Currently broken because boss prizes are unreachable.
2019-08-22 12:03:55 -06:00
Kevin Cathcart
72d4e6c76a Fix standard mode for madness+ 2019-08-17 15:13:47 -04:00
cassidoxa
46be1fb482 Fix Old Man Cave Exit region connections 2019-08-16 23:00:17 -04:00
cassidoxa
18f1275050 Inverted Mode (#5)
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.
2019-07-27 09:13:13 -04:00
Kevin Cathcart
0b9e144f8e Minor fixes and clarifications for Bonta's Multiworld code 2019-07-11 20:39:08 -04:00
Bonta-kun
1a62b1da28 Multiworld core implementation By Bonta0
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>
2019-07-11 20:39:08 -04:00
AmazingAmpharos
d6babfe222 Fix Fairy Ascension as bunny
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.
2019-04-22 16:41:33 -05:00
AmazingAmpharos
4d16559fae TR Logic Fix
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.
2019-04-18 16:11:11 -05:00
AmazingAmpharos
a89c01f917 Fix inconsistent gen and fix retro
This fixes two issues:

-The same seed number was producing (subtly) different seeds. This was caused by misplaced random calls in the changes to the entrance shuffle; these calls to the rng were happening before the random seed was decided. Re-arranging that function should solve this. Thanks to hycutype for both noticing this and providing a solution.

-Retro mode was broken with the addition of hints. This was caused by the retro exclusive regions not having defined hints (for reasons I truly question myself over, they are defined in ItemList.py...) and then further by an obscure function in copy_world that builds the playthrough and deals with the sword cave not being updated for the new three parameter regions (region objects used to only require two parameters). This has been fixed.
2019-02-22 05:59:46 -06:00
AmazingAmpharos
6294d5f831 Fix bug with Swamp hint and remove some debug code 2019-02-21 00:22:46 -06:00
Devin H. Smith
6e8b60817c Copying logic from local repo for debiasing connectors to must-exit locations 2019-02-03 23:03:02 +00:00
Kevin Cathcart
9bd9bb4f93 Shop implementation
Also a few retro mode fixes
2018-03-18 21:01:45 -04:00
Kevin Cathcart
e100b5cd93 Rename Very misleading entrance/region 2018-03-02 19:07:55 -05:00
Kevin Cathcart
0c486593c5 Fix performance 2018-03-01 21:34:19 -05:00
AmazingAmpharos
caffd7e34c GT filler and smith locations fixes
GT now pre-fills with junk if it's in the vanilla location regardless of the state of the shuffleganon flag.

The smith is now allowed to be in multi-entrance cave locations in the appropriate shuffles. A duplicate Old Man Cave (West) from bomb shop multis was also removed.
2018-02-24 22:42:18 -06:00
Kevin Cathcart
eb8cff4d5a Model Link's house and Houlihan room
This is mostly to have all the interesting exits actually included in
the source
2018-02-24 14:22:36 -05:00