-
Notifications
You must be signed in to change notification settings - Fork 498
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
Rando: Master Sword Shuffle #2981
Rando: Master Sword Shuffle #2981
Conversation
Known issues so far:
|
"Master Sword" Items now actually give MS
updated GIMESSAGE (should stop crashing on non-Windows); re-added MS in item list
cihld -> adult no longer gives MS; ToT Master Sword now gives correct item
Add Master Sword GI draw func based on ToT MS object
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.
Looking good so far. I've skipped over the locacc_xxx
logic for now, hoping others can chime in there.
Something else that stands out, you most likely need to make changes in z_boss_ganon2
to prevent the player from getting a free MS sword. Could probably "kill" the spawned sword, or something.
Check Tracker changes; Gave RAND_INF and ice trap logic to ToT MS check; Fixed swordless behavior for HBA/fishing
We might want something along the lines of
where this section is Shipwright/soh/src/code/z_parameter.c Line 1440 in 778bf5a
I think what this does is stops the master sword slot from being highlighted in the pause menu but please double check |
Works as expected, will include in the next commit. Thanks! |
Visual bug where box hovers over non-existent MS gone; Fixed RAND_INF check with ToT MS pedestal; Ganon no longer gives free MS
@inspectredc Could you also look into the location access logic files to confirm that everything makes sense there? I mostly copied off 3d rando changes for their MS shuffle, except where you already modified logic for tricks. |
Yeah will do that today 👍🏼 |
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.
Few changes here, I realised when suggesting the hammer gold skull changes that it's definitely outside the scope of this PR to address those so feel free to not change them.
Mostly just adding some kokiri sword as adult checks here and there. If not hopefully I've left enough comments or it's clear enough as is
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_lost_woods.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_lost_woods.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_lost_woods.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_spirit_temple.cpp
Outdated
Show resolved
Hide resolved
soh/soh/Enhancements/randomizer/3drando/location_access/locacc_zoras_domain.cpp
Outdated
Show resolved
Hide resolved
Co-authored-by: inspectredc <78732756+inspectredc@users.noreply.github.com>
getting master sword no longer highlights box
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.
Did a few randos and everything was functional; the only things I'd say are that when turning into adult, link visually pulls out the master sword and then stashes it away even if you don't have it, if it's possible I think it'd be better if either the sword was invisible or the animation was changed to another one (standing for example) and that in the ganon fight something similar happens where link visually takes out the sword even if you don't have it before ganon knocks it away
Those are just minor nitpicks tho and I think this is perfectly fine to merge
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.
Looking good so far, very close to the finish line! I have provided a few more suggestions/fixes below.
Other than that, the only thing that still has me uneasy is all the swordless management, especially knowing there is still some issues with it regarding Epona. At the moment, I don't really have an idea on how to address that, so may just need to think on that for a bit.
EventAccess(&NutPot, {[]{return NutPot || ((LogicSpiritTrialHookshot || CanUse(HOOKSHOT)) && HasBombchus && Bow && (MirrorShield || (SunlightArrows && CanUse(LIGHT_ARROWS))) && IsAdult);}}), | ||
EventAccess(&SpiritTrialClear, {[]{return CanUse(LIGHT_ARROWS) && (MirrorShield || SunlightArrows) && HasBombchus && (LogicSpiritTrialHookshot || CanUse(HOOKSHOT));}}), | ||
EventAccess(&NutPot, {[]{return NutPot || (((LogicSpiritTrialHookshot && CanJumpslash) || CanUse(HOOKSHOT)) && HasBombchus && CanUse(BOW) && (CanUse(MIRROR_SHIELD) || (SunlightArrows && CanUse(LIGHT_ARROWS))));}}), | ||
EventAccess(&SpiritTrialClear, {[]{return CanUse(LIGHT_ARROWS) && (CanUse(MIRROR_SHIELD) || SunlightArrows) && HasBombchus && ((LogicSpiritTrialHookshot && CanJumpslash) || CanUse(HOOKSHOT));}}), | ||
}, { | ||
//Locations | ||
LocationAccess(GANONS_CASTLE_SPIRIT_TRIAL_CRYSTAL_SWITCH_CHEST, {[]{return LogicSpiritTrialHookshot || CanUse(HOOKSHOT);}}), |
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.
So unless you can hit this thing's crystal switch with the hookshot, you might need to include logic conditions for having a sword as adult. I think it assumes right now that being able to use hookshot also means you have a sword, since you'd be adult, and a spin attack will hit it through the wall.
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.
yeah the line would need to be
LocationAccess(GANONS_CASTLE_SPIRIT_TRIAL_CRYSTAL_SWITCH_CHEST, {[]{return (LogicSpiritTrialHookshot || CanUse(HOOKSHOT)) && CanJumpslash;}}),
I imagine
* better swordless handling with temp B * prevent auto save in fishing pond * prevent auto save during bombchu bowling
Copying description from stratomaster64#11 for visibility/history This PR includes improvements for swordless state handling during minigames/epona by hijacking tempB with a "marker" value to allow us to restore the B button as empty without "disabling" the B button in the HUD. This should resolve all remaining issues with the HUD. Additionally, an old swordless hack for child fishing can be removed in favor of the new handling, which should remove any possible cases that a kokiri sword is accidentally given to the player. This required preventing auto save in the fishing pond to avoid the fishing rod on B being saved to file. A similar auto save restriction for bombchu bowling was needed. Shooting gallery did not have issues with auto save though. The following scenarios have been tested:
Behind the scenes, rather than storing |
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.
Bravo. I know this one sat in the oven for a while but it's turned out great and playtested quite a lot.
As discussed in the discord we need to swap the instances of 0x72
for 0xE0
, but assuming that is complete dropping an approval 👍
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.
Beautiful! So excited to have this in. Thanks for working through the feedback.
If you get a chance, it would be nice to have something in the PR description listing roughly what was done for historical purposes, but not a blocker for merge 👍
Adds the Master Sword to the item pool, requiring Adult Link to be more creative in his offensive strategies until he finds it.
Because of this:
Build Artifacts