Skip to content

Fix Skull Tokens from Chests locking you in place#5198

Merged
aMannus merged 3 commits intoHarbourMasters:developfrom
leggettc18:fix/rando/skulltula-token-freeze
Mar 24, 2025
Merged

Fix Skull Tokens from Chests locking you in place#5198
aMannus merged 3 commits intoHarbourMasters:developfrom
leggettc18:fix/rando/skulltula-token-freeze

Conversation

@leggettc18
Copy link
Contributor

@leggettc18 leggettc18 commented Mar 24, 2025

This is a quick fix, the proper fix would require a bit much to be able to get in before 9.0, and there's already a lot of work towards that happening in PR #5101, in which I will be able to load the vanilla message into a Custom Message and edit it there. That is much harder to do without the other changes made already in that PR, so for now I have the Inject Item Count behavior forced on in rando, which was already set to force the no-freeze message in rando if skull tokens were shuffled, but that code path wasn't getting hit before if Inject Item Counts was off.

Build Artifacts

@aMannus
Copy link
Contributor

aMannus commented Mar 24, 2025

Does this still work when tokens aren't shuffled then? Because the item queue doesn't really care where the tokens come from, which is different from before the item queue was introduced.

Also if this is the way we want to temporarily solve it, we should add to the tooltip for inject skulltulla counts that it's enabled by default for rando.

@leggettc18
Copy link
Contributor Author

I actually went ahead and just did the proper thing. The more I thought about it the more I realized I could just do the loading vanilla messages into a Custom Message thing without all the extra stuff from my Custom Message Hooks branch. So currently this now has everything it needs to load the vanilla message, insert the autodismiss codes when needed (i.e. tokens aren't shuffled and no skulltula freeze is on), and also prevent unshuffled tokens from going through the item queue system in rando (Currently unshuffled tokens are still going through the item pool and all the rando stuff, since they needed to be there for logic, so I had to add in an exception to them going through the item queue system).

Still lots of room for improvement here post 9.0 once Actor Extensions and Custom Message Hooks branches are in (specifically I can think of a few ways to signal to the game using Actor Extensions that the item we're getting is from a skulltula so it can do all this for any item that came from a skulltula location), but this should suffice to fix the linked issue for now.

Copy link
Contributor

@aMannus aMannus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works as advertised!

@aMannus aMannus merged commit 43510e5 into HarbourMasters:develop Mar 24, 2025
5 checks passed
@leggettc18 leggettc18 deleted the fix/rando/skulltula-token-freeze branch March 24, 2025 21:42
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.

Rando - Skulltulla token messages inherit the freeze from vanilla textbox

2 participants