Skip to content

Prevent Special hints and skipped Impa's song from being Gossip Stone hints.#3060

Closed
Pepper0ni wants to merge 16 commits intoHarbourMasters:develop-randofrom
Pepper0ni:NoDupeHints
Closed

Prevent Special hints and skipped Impa's song from being Gossip Stone hints.#3060
Pepper0ni wants to merge 16 commits intoHarbourMasters:develop-randofrom
Pepper0ni:NoDupeHints

Conversation

@Pepper0ni
Copy link
Contributor

@Pepper0ni Pepper0ni commented Jul 3, 2023

THIS PR NOW INCLUDES #3110 DUE TO CONFLICTS. Please either review and merge that one first or close that one once this has been reviewed.

A series of changes that aims to prevent duplication of hints between special hints and gossip stones, except in the case where the hinted item is blocking the special hint.

This only prevents the hinted locations from being the target of location and WotH hints (by marking IsHinted) but not always hints, including conditional always hints whose condition is met. The exception to this is when the Special hint always points at the same location as an always hint (E.G., high skull hints), in which case the always is removed by adding the special hint setting to the conditions.

Full change-list:

  • Special hint handling is moved to before gossip stone handling, so that special hints can be claim priority over regular hints
  • Conditional Always hints will now be placed even if IsHinted is already checked for that hint. This is so the always hint still spawns even if a special hint item is placed in that location, as the always hint will be more precise and potentially more available.
  • If Light arrows hint is on, and Ganondorf or Ganon's castle Sheik can be reached without light arrows, then light arrows cannot be hinted elsewhere.
  • The altar hints were previously hardcoded to never be hintable elsewhere, I added a check that allows them to be hinted in the case that ToT access is locked behind them AND dungeon rewards are shuffled among other item (so not rewards at the end of dungeons)
  • If Dampe's diary is on, and it can be reached without the hookshot it hints, then that hookshot cannot be hinted elsewhere.
  • If the Greg hint is on, and it can be reached without Greg, then Greg cannot be hinted elsewhere.
  • If the Final Frogs hint is on, the always hint is removed
  • If the Saria's magic hint is on, and either Saria in SFM or playing Sarias Song are reachable without magic, The magic hinted by Saria cannot be hinted elsewhere
  • If 30,40 or 50 skulls special hints are on, the appropriate always hint does not spawn, and they cannot be hinted elsewhere.
  • if the 10 and 20 special hints are on, they cannot be hinted elsewhere.
  • If Child Skip Zelda is on, Impa's Song cannot be hinted

While I can test the obvious things like the skulls always hints spawning, I cannot (or do not know how to) easily test the negative cases where hints shouldn't be able to spawn, so I am making this PR now for testing but it should not be merged until it has been played with a bit and checked for obvious issues.

Additionally, I have Added a fix for a random crash when generating seeds caused by the granny's shop check not having hint text.

Build Artifacts

@Pepper0ni
Copy link
Contributor Author

merged in a change currently on develop-sulu that is needed to test this feature properly, but it is not the same commit ID so should be removed before trying to merge to avoid a conflict later

@Pepper0ni Pepper0ni force-pushed the NoDupeHints branch 5 times, most recently from 0258789 to d347ffe Compare August 8, 2023 14:03
@Pepper0ni
Copy link
Contributor Author

Pepper0ni commented Aug 8, 2023

OK, should be good to merge now, i removed the testing commit as well as the granny fix as that is in #3108 instead

@Pepper0ni Pepper0ni changed the title Prevent Special hints from also being Gossip Stone hints. Prevent Special hints and skipped Impa's song from being Gossip Stone hints. Sep 8, 2023
@Pepper0ni
Copy link
Contributor Author

Added a small semi-related change that makes it so Impa's song can no longer be hinted if you skip zelda because you already have it. This is not a separate PR because it would likely conflict with this and the scope is related.

@briaguya0 briaguya0 added the merge conflicts PR has conflicts that need to be resolved before it can be merged label Sep 12, 2023
@Pepper0ni Pepper0ni force-pushed the NoDupeHints branch 3 times, most recently from 55c51ae to 7a425c7 Compare October 8, 2023 22:48
Archez and others added 3 commits October 13, 2023 23:12
* typo on asset attribute

* base address fix
* Color and Invisible Checkbox

GI model crashes when talking to mask salesman

* Update z_player.c

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>

* Update z_player.c

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>

* Move bunny hood coloring to patch

---------

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
@garrettjoecox garrettjoecox removed the merge conflicts PR has conflicts that need to be resolved before it can be merged label Oct 15, 2023
@Pepper0ni Pepper0ni changed the base branch from develop to develop-rando October 15, 2023 21:39
@mergify
Copy link
Contributor

mergify bot commented Oct 16, 2023

⚠️ The sha of the head commit of this PR conflicts with #3110. Mergify cannot evaluate rules on this PR. ⚠️

@Pepper0ni
Copy link
Contributor Author

Closed due to accidental merger with #3110, merge that as both

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.

5 participants