Commit Graph
2385 Commits
Author SHA1 Message Date
aerinon 8719a4919d Door pairing system initial pass complete
Sucessfully de-coupling of Big Key doors with dumb small key doors behind
Added a bit to trap door fixer so that we can hit the 3rd door in the door list
Added door list position info
2019-10-01 11:26:10 -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
AmazingAmpharos bbc71a208f A few inverted fixes
A few inverted fixes
2019-09-30 18:40:44 -05:00
aerinon f12659af9d Fixes to Aga Tower staircases
Lots of initial work on key doors and other door pairs
2019-09-27 22:00:45 -06:00
aerinon 3df4fe08b3 More fixes for problems with staircases (quads 01 & 02) 2019-09-23 23:55:05 -06:00
aerinon 8e50c6d8eb Several fixes for problems with staircases in Hera/AgaTower 2019-09-21 22:15:51 -06:00
cassidoxa f8628337bb One more vanilla/dungeons ROM fix 2019-09-21 22:15:12 -04: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 1aa2d904d3 Spirals Can "connect" to the same direction now. Screws with maps.
Some initial work on key doors. Namely altering the reverse side of Big Key doors that were unreachable in vanilla.
2019-09-19 14:58:50 -06:00
aerinon e66908816d Kill Landing/Warp End "Doors" 2019-09-19 14:44:33 -06:00
aerinon 6534aaecc6 Tower of Hera Door
Logical Doors
2019-09-19 14:40:16 -06:00
randall.rupper 2f659da39f Update to latest baserom (has some MSU-1 stuff)
Minor fix to Armory S door - can't seem to get it right
Minor fix to spirals that cross the horiz quadrant boundary while traversing
2019-09-18 13:01:35 -06:00
randall.rupper 292af3241c Minor logging problem 2019-09-17 14:02:21 -06:00
randall.rupper 27ea522499 Experimental and Crossed mode updated with monte carlo division of sectors 2019-09-17 13:53:30 -06:00
aerinon a38ef2820a Incremental improvements to algorithm.
Can get stuck in loop because it ran into a dead end only option early, not sure how to avoid that.
Also, some landings are considered outstanding doors, that shouldn't happen.
2019-09-16 22:10:25 -06:00
randall.rupper 49e782b050 Intermediate commit to switch from work to home 2019-09-16 21:12:55 -06:00
randall.rupper 6f5121c028 Updated desert to be more compatible with logic changes (no logic yet)
Refactored doors to clean up builder flags.
2019-09-16 15:10:37 -06:00
randall.rupper dc74df793c Merge branch 'DoorDev' into DoorExtension
# Conflicts:
#	DoorShuffle.py
#	Doors.py
#	Regions.py
2019-09-16 14:02:32 -06:00
aerinon ada06cb519 Merge pull request #9 from aerinon/DoorShuffleStandardModeDev
Logic!
2019-09-16 13:06:19 -06:00
tolmar 64bdedf1e3 Loosen EP rules
EP boss rules no longer need BK+bow, since those were actually requirements of the rooms leading up to the boss.
2019-09-15 23:41:08 -07:00
tolmar dda7dbaad4 "Ugly door" support
Ugly doors are doors that we don't want to see from the front:
- south-facing side of a BK door
- other side of one of those keyed staircases that don't actually have a matching key on the other side

This rejects layouts where one would appear.
2019-09-15 23:40:06 -07:00
AmazingAmpharos 4246a8b876 Various hint updates/improvements
This update makes the hint system work much better with simpler shuffles, fixes a bug by which two of the paradox cave entrances had reversed instructions in hints, and prevents the useless hint of there being a skull woods small key in the skull woods pinball room. Progressive Bow is added to the important item list for hints. Further tweaks to some hint language may still be incoming, but this should address the structure of the hint system pretty completely.
2019-09-16 00:51:24 -05:00
AmazingAmpharos a02f1e172d Update my dev branch for v31
Update my dev branch for v31
2019-09-16 00:39:14 -05:00
tolmar 9fa26ef067 Handle multiple startpoints and some blocked doors
Better blocked door handling:
- Start dungeon layout at the entrance
- Hold off on linking from blocked doors until the end of the dungeon, so they either point deeper in, or get added as a loop.
- Now that we care what the start is, properly handle the fact that dungeons have multiple starts.
2019-09-15 21:14:51 -07:00
tolmar 6ac00c2968 Eastern Palace Logic
Works sometimes. Either needs a south-facing big key door hack, or a way to avoid placing big key doors in places where you can see their back.
2019-09-15 11:35:35 -07:00
tolmar 40f345df13 Simple key logic for Escape
Adds ability to make a location for required keys (enemy drops and pots), so the filler knows about them.

Uses the most pessimistic possible rule to make sure you can't keylock yourself in Escape.
2019-09-15 02:28:04 -07:00
tolmar 3a872723b0 Use connect_one_way when doors are blocked
Shuffler doesn't respect blocked doors yet so it may create an unbeatable layout, and the item placer will panic. But that's better than silently giving the player something impossible
2019-09-15 02:24:48 -07:00
tolmar b1e20c9c94 Revert forced keys change
I think I found a better way to do it
2019-09-15 00:27:51 -07:00
tolmar cce2ef12fa Add lamp rules to door entrances 2019-09-15 00:08:56 -07:00
tolmar c8bd17042e More door fixes 2019-09-15 00:08:30 -07:00
tolmar b4028f429a Merge branch 'DoorDev' into DoorShuffleStandardModeDev 2019-09-14 22:15:55 -07:00
tolmar fcd810b4f3 Force pair keydoors 2019-09-14 22:09:21 -07:00
tolmar 8513dff636 Fix some incorrect door keyness 2019-09-14 22:08:32 -07:00
aerinon 4982ef0d9c Starting thinking about a backtracking algorithm 2019-09-14 22:27:38 -06:00
cassidoxa 99a4ea17b0 Fix swordless vanilla shuffle TR keys issue 2019-09-14 10:02:38 -04:00
cassidoxa ec865e67e6 Fix inverted retro take anys
Removed 'Dark Sanctuary Hint' from take any pool if mode is inverted
2019-09-14 10:02:38 -04: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
aerinon e739bf94bb Merge pull request #6 from aerinon/DoorShuffleStandardModeDev
Clean up shuffle_dungeon
2019-09-11 13:13:15 -06:00
randall.rupper ec5e8614bc Started addressing trap doors to help indicate when they should be open
Sped up the gfx fixer stuff by moving the dungeon load room to execute only once
Minor optimization to spiral
Moved normal doors to separate file
2019-09-11 12:17:20 -06:00
tolmar b07c71a487 Merge branch 'DoorDev' into DoorShuffleStandardModeDev 2019-09-07 16:44:26 -07:00
tolmar 861195eb8b Add internal key data
Adds forced keys (enemy and pot drops) to regions, adds key doors within supertiles.
2019-09-07 16:39:39 -07:00
aerinon ed6ad04fa0 Fix to spiral stairs outside of dungeons. 2019-09-06 20:32:59 -06:00
tolmar a0b9b1fefe Clean up shuffle_dungeon
Use logger instead of print, loop shuffling until it works.
2019-09-06 18:14:48 -07:00
aerinon 46b7a3a12f Merge remote-tracking branch 'origin/DoorDev' into DoorDev
# Conflicts:
#	asm/spiral.asm
2019-09-06 17:36:33 -06:00
randall.rupper 48f29b3aa5 Merge branch 'Dev' into DoorDev 2019-09-06 14:22:42 -06:00
randall.rupper 1ec963f162 Moved spiral warp point during dark transition (fixed $53 logic)
More spiral layers fixed by adding a 'from layer' bit.
Several edge cases addressed (a couple stairs crossed quadrant boundaries during transition)
2019-09-06 14:21:19 -06:00
aerinon fe8b3e4252 Merge pull request #5 from KevinCathcart/Dev
Keeping up with Dev
2019-09-06 11:02:46 -06:00
randall.rupper 02b3ca5d52 Some spiral layers fixed
Some spiral camera bounds fixed
2019-09-06 09:13:49 -06:00
aerinon 4c49f7a7c2 Another refactor of camera bounds logic 2019-09-05 22:17:35 -06:00