Skip to content

Change conditions for extended minimaps + dynamic load#2579

Open
djevangelia wants to merge 6 commits into
OoTRandomizer:Devfrom
djevangelia:extminimap
Open

Change conditions for extended minimaps + dynamic load#2579
djevangelia wants to merge 6 commits into
OoTRandomizer:Devfrom
djevangelia:extminimap

Conversation

@djevangelia

Copy link
Copy Markdown

Change the conditions for extended minimaps to fit randomizer and make loading dynamic. Implements/"fixes" #2403.

Changes have been made in line with the suggestions in the issue and comment:

  • Graveyard always shows extended minimap. This could be adjusted according to entrance randomization settings.
  • Gerudo Fortress now depends on Gerudo Card. If acquired while in Gerudo Fortress, the extended minimap will load when the textbox is closed. (I tried making it an item effect function, but the extended minimap would load and show before the textbox dims the interface, which was very ugly.)
  • Lake Hylia minimap on scene entry reflects current water level. Water level function calls minimap load function on switch toggle and loads the appropriate minimap.

Changes have been made to the Lake Hylia water functions, but nothing regarding gameplay function. Rather just things like setting action function DoNothing if Morpha not killed (instead of always setting and running the water level function) and not checking Morpha kill in the water level function (because it has already been checked by the gossip stone - and surely, it shouldn't be needed there either, because DoNothing would be set if not killed?).

Also, I added static asserts to the sizes of z64_game_t, z64_link_t and z64_file_t because it's so easy to get lost when replacing unknown chars with the real members and getting very amusing bugs that are totally impossible to debug until you remember you tinkered with one such file.

Disassembly

Map_InitData NTSC 1.0 matching disassembly here https://gist.github.com/djevangelia/cc1bfe60ad98f9d4c4c6fc6aa6793f39

Testing

Tested in Ares recent nightly build.
Looks like this: https://www.youtube.com/watch?v=GaAn8YkbORA
I removed the Morpha requirement here, but have tested with it both before and after killing.

@fenhl fenhl added Type: Enhancement New feature or request Component: ASM/C Changes some internals of the ASM/C libraries Status: Needs Review Someone should be looking at it labels May 20, 2026
@fenhl fenhl linked an issue May 20, 2026 that may be closed by this pull request
@fenhl

fenhl commented May 20, 2026

Copy link
Copy Markdown
Collaborator

For future reference, you can make GitHub link an issue using closes #2403 instead of fixes #2403 if you're not talking about a bug.

@djevangelia

Copy link
Copy Markdown
Author

Updated the Lake Hylia code, fixes #1567.
Apparently the display list is dependent on the water actor Y position. By setting the Y position to the vanilla value when water is at the lowest level, and otherwise in relation to water surface level, Gerudo water is drawn.

This has the unfortunate consequence that when the level reaches the lowest point, there is a sudden swap of the water texture due to Lake Hylia water having two different display lists of high and low water. This could be something to look at for someone who is interested in graphics hacking.

For easier testing, Morpha flag toggle (don't use with Iron Boots):

#define UNSET_EVENTCHKINF(flag) (z64_file.event_chk_inf[(flag) >> 4] &= ~(1 << ((flag) & 0xF)))

if (z64_game.common.input[0].pad_pressed.dl) {
        if (!GET_EVENTCHKINF(EVENTCHKINF_4A)) {
            SET_EVENTCHKINF(EVENTCHKINF_4A);
        } else {
            UNSET_EVENTCHKINF(EVENTCHKINF_4A);
        }
    }

@flagrama

Copy link
Copy Markdown

The linking commands (fixes/closes) only works in the main PR body, not in comments btw.

@fenhl fenhl linked an issue Jun 17, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Component: ASM/C Changes some internals of the ASM/C libraries Status: Needs Review Someone should be looking at it Type: Enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve alternate maps display in rando Glitchy water level at the entrance to lake from valley

3 participants