Skip to content
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

Deku Nut upgrade fix works retroactively #4777

Open
wants to merge 6 commits into
base: develop
Choose a base branch
from

Conversation

JordanLongstaff
Copy link
Contributor

@JordanLongstaff JordanLongstaff commented Dec 30, 2024

The "Fix Deku Nut upgrade" enhancement previously only worked if it was set before getting the Poacher's Saw; if done after, the upgrade flag is still set erroneously and can only be cleared in the Save Editor. Now, toggling the fix enhancement will automatically reconcile the upgrade flag.

Build Artifacts

@JordanLongstaff
Copy link
Contributor Author

I'm sure this needs work. Rando especially is likely to be broken by this. So far I've only solved the issue that exists in vanilla.

One question I have is, is there a reason for this option not to be forced on in rando?

@Pepper0ni
Copy link
Contributor

I'd be very suprised if it had any effect on rando after V3. Maybe check the hook and see how it's implemented. I agree that it should be forced on in rando (or more likely, be made irellevent and grayed out).

@JordanLongstaff
Copy link
Contributor Author

Maybe check the hook and see how it's implemented.

There isn't a hook. I'm pretty sure this fix option predates VB and rando hooks. All it does at present is "If given Poacher's Saw and setting is not turned on, set flag".

I just learned something new, BTW: even in vanilla, Deku Nut capacity isn't unlocked until you acquire your first Deku Nut. ^_^ I'm guessing the same is true for rando, so I just need to make that adjustment.

@Malkierian
Copy link
Contributor

I just learned something new, BTW: even in vanilla, Deku Nut capacity isn't unlocked until you acquire your first Deku Nut. ^_^ I'm guessing the same is true for rando, so I just need to make that adjustment.

Yeah, this is why nut and stick bags were so easy to implement. Thy were just preventing that automatic first capacity give that the game hides like that.

@Pepper0ni
Copy link
Contributor

OK, I looked into the rando situation with deku theater and it looks like it just reacts to the vanilla flag, and this fix seems to have no safeguards to account for rando, because of this I think the best idea is to simply force the fix on in rando and prevent toggling this, as that both prevents the bug from doing something annoying and prevents this code from messing up rando saves.

@aMannus
Copy link
Contributor

aMannus commented Jan 11, 2025

I'm okay with the premise of this but it really should live inside a hook instead of the code living inside the checkbox in the ImGui code.

Take a look at #4819 for examples using the recently introduced hooks through ShipInit, that also handles applying hooks when toggling a cvar with a checkbox, so it's the perfect fit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants