-
Notifications
You must be signed in to change notification settings - Fork 236
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Setting to shuffle Ganon's tower into the boss entrance pool #2063
Conversation
Logic Review You need to handle FW warping:
Some of the logic for MQ Ganon's was relying on the assumption that some kind of weapon was needed in the first hallway:
Rather than exiting from Castle main back to lobby, you might consider using the savewarp, for consistency with what was done outside of the other boss doors? I think this is all of it but I can't guarantee I didn't miss anything since I didn't go in and take a look around. * You'll have to test to see what all works to lower the water jet. My best guess without any testing at all is can_jumpslash or has_explosives. Probably Boomerang works too, but it might be trick level, and it's not worth adding a trick just for something that it would only take sticks to do. (Suggestion to shuffle the order of the rooms of the collapse as a bonus surprise if you have tower shuffled and collapse on.) |
8ca6787
to
680fe49
Compare
Review addressed except for testing the water jet in-game. Will have to do that later. |
Validation checks can pass through the first hallway in MQ Ganon's back to front but not front to back, despite it not needing any items as adult. There's an option here to extend the 'bypass events' hack by checking is_adult as an option outside of the event. You can decide whether you want that. This passthrough was probably the next thing on the bubble for me, as far as deciding how far to take that hack, but it wasn't a passthrough on main branch yet so I didn't have to decide. |
My suggested change to the definition of |
@fenhl Is the waiting for author tag still applicable? |
Yes, the water jet still needs to be tested. |
If anyone else wants to do this testing, please feel free to do so. |
Explosives/jumpslash is likely enough to be correct that you could probably shoot first if you wanted >_> |
76e3bb1
to
c3ddcf8
Compare
Finally got around to testing boomerang and wasn't able to get it. So definitely trick level if it's even possible at all. |
(I'm very sure it's possible. But yeah no need to include it.) |
770bccd
to
a89b9ab
Compare
a89b9ab
to
d70b7f9
Compare
I guess if it wasn't clear, I have no issues with the logic in this PR. |
Just need someone to give the rest of the code a review then. |
# Ganon boss key | ||
elif location.vanilla_item == 'Boss Key (Ganons Castle)': | ||
if world.settings.shuffle_ganon_bosskey == 'vanilla': | ||
shuffle_item = False | ||
elif world.settings.shuffle_ganon_bosskey == 'remove': | ||
world.state.collect(ItemFactory(item, world)) | ||
item = get_junk_item()[0] | ||
shuffle_item = True | ||
elif world.settings.shuffle_ganon_bosskey in ('any_dungeon', 'overworld', 'keysanity', 'regional'): | ||
shuffle_item = True | ||
else: | ||
dungeon = [dungeon for dungeon in world.dungeons if dungeon.name == 'Ganons Castle'][0] | ||
dungeon.boss_key.append(ItemFactory(item, world)) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the purpose of this code? (In relation to this PR)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the tower is no longer tagged as part of Ganon's Castle (to make it count as part of the hint area of the dungeon it's shuffled into, like other boss arenas), the code handling other boss keys no longer handles the Gbk.
This PR adds a checkbutton setting “Shuffle Ganon's Tower Entrance”, which shuffles the entrance from Ganon's Castle to Ganon's Tower, just behind the trials barrier, into the adult boss entrance pool if “Shuffle Boss Entrances” is set to “Age-Restricted”, or the boss entrance pool if it's set to “Full”. The setting is disabled if boss entrances are unshuffled, much like hideout ER with no interior ER.
The main reason I decided to use this entrance instead of Ganon's boss door is that the pots being reachable from both sides could get weird. It also has the advantage of keeping Ganon's boss key as a requirement for beating the game even with the setting on.
The entrance is sometimes hinted with 1–3 trials active, and always hinted with 4+ trials active. If the castle entrance is unshuffled, the tower entrance is also hinted based on the bridge condition.