Mirror Door

From ALttP Speedrunning Wiki
Revision as of 13:05, 16 December 2018 by Kan (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Mirror Doors are a type of Door Glitch performed by using the Magic Mirror on the same frame as a subtile transition. These can only be performed to useful effect on subtile doors. Mirror doors can be performed on all normal doors, and both west and north auto doors.

Execution

  1. Pick up a pot within the supertile to glitch in
  2. Snap into a subtile door with bombs or a somaria block
    • To gain access to item usage in east/south doors, buffer to the pixel before the transition, lift the object you used to snap, and press the dpad in a direction perpendicular to the door.
  3. Press Y and directional on the same frame

Mechanics

Mirror doors do 2 things:

  1. Behave as a door juke, bringing you into the next room without a transition
  2. Execute the "Open Triforce Room" script

When the Open Triforce Room script executes, it begins a countdown (decrements by 1 each frame) with whatever the current value of $C8[0x2] is. During this countdown, most other scripts are stopped, including sprites and a full loss of player control. When the value reaches 0x00FF, it jumps to 0 and the game continues as normal. In the north-east quadrant of the super tile, a graphically busted hole will appear in the middle of the north wall. This is the Triforce door, and it can be used as a normal transition.

This value fluctuates throughout gameplay (it changes every supertile transition) and is generally a very high value. This address is also used to temporarily store Link's Y-position when picking up a pot. This ultimately means that the farther south Link is on the underworld map, the longer this glitch will take to complete. However, even from the lowest row, picking up a pot allows mirror doors to resolve in a time reasonable enough to be used in a run.

Caveats

If a pot is not picked up or the value of $C8[0x2] changes from another action (such as using the map), then the countdown will take incredibly long. Long enough that a run might as well be dead, as the timer can take upwards of 65535 frames, or about 18.2 minutes. Also, as the timer counts down to 255 rather than 0, a value that is too small is functionally worse than other arbitrarily high values. However, the only pots that are affected by this are those on the upper quadrants of the highest row. In terms of functionality, no mirror door with a practical use is lost to this caveat.