Union Room wrong-warping glitch

From Glitch City Wiki
Jump to navigation Jump to search
This article is incomplete. Please feel free to add any missing information about the subject.
Reason: initial triggering procedure
The position to talk to the lady to enter the Union Room.

The Union Room wrong-warping glitch is a Generation IV glitch that is triggered by talking to the Union Room NPC from an unintended position (i.e. from a direction other than below). It can usually only be performed after entering the void with another glitch, such as tweaking. It allows the player to take two related wrong warps, one to a fixed location in the void of the Pokémon Center top floor map, and the other to any location the player can set up by using the Explorer Kit. Furthermore, it breaks the script in the Pokémon Center top floor map, causing the player to step into the void on the next visit to the top floor. As such, it can enable itself, allowing the player to do multiple void trips in the same playthrough by only tweaking once.

A variation of the Union Room wrong-warping glitch is the broken escalator glitch, which only exists on older revisions of Japanese Pokémon Diamond and Pearl. On those versions, the player is erroneously considered to be in an "unintended position" when talking to the Union Room NPC in the top floor the Pokémon League normally, allowing this glitch to be performed without first entering the void in another way, but also causing many players to inadvertently trigger this glitch and be stuck in the void without the knowledge to navigate it.

An important requirement is that the player must have received the Tuxedo/Dress from the Contest Hall. The Contest Hall is on the initial void route to the NPC, and it has a cutscene giving the player the Tuxedo/Dress on the first visit, so if this cutscene isn't cleared, visiting it on a void route would crash the game.

This glitch was discovered by RETIRE.

Union Room warp

The Union Room warp happens when the player talks to the Union Room NPC from above, enters and then leaves the Union Room. It can be used for some very specific glitches.

When the player talks to the NPC from above, 3 tiles higher than normal, the subsequent map script will cause the player to warp to the Union Room with Y = FFFF FFFF, instead of the normal Y = 0000 0002. This will cause a coordinate warp.

Namely, since warp coordinates are stored in 16-bit integers, this will be stored as Y = FFFF, and when leaving the Union Room, the player will be warped to Y = 0000 FFFF. Since this location is in the void, and has a different map ID than the real Pokémon Center top floor, the map script won't run, and the game is still in a state that allows a reset wrong warp (see below).

Reset wrong warp

The reset wrong warp happens when the player resets the game, after saving by talking to the Union Room NPC from above, left, or right.

When the player talks to the NPC, a map and coordinate check is done. Since the player's coordinates are not an expected value, the game does not store them as the location to warp to when resetting the game. The bytes it should overwrite are located at [Base]+1488 which is also used for the Explorer Kit, elevators and some other warps. Therefore, this glitch can cause a wrong warp to where the player last used the Explorer Kit, as long as that is when those bytes are last set.

Since the player can use the Explorer Kit almost anywhere in the void, this allows the player to warp to many different locations in the game (although only the first quadrant of the void, since all warps use 16-bit values).

Subsequent void trips

A side effect of the Union Room wrong-warping glitch is that, the next time the player enters the top floor of a Pokémon Center, a map script will push the player down into the void.

The map script should have been ran when the player leaves the Union Room or resets, but since in both cases the player don't warp to the top floor of a Pokémon Center, the map script flag is never cleared. This has a slight downside, namely that map 7 (Pokémon Center top floor) would crash the game in void routing, but they are easy to route around.

More importantly, this is useful as a fast method to enter the void. By following the void route below, the player can trigger the wrong warp again within less than a minute, without tweaking again.

Void route

  1. Enter the top floor of any Pokémon Center. The map script pushes the player into the void.
  2. 4 W
  3. 15 N (if the player gets stuck on 13 N, graphic reload, then move 2 N further)
  4. 6 E
  5. Graphic reload
  6. Run down full speed
  7. Graphic reload
  8. Talk to middle NPC

On Japanese versions pre revision 6

Main article: Broken escalator glitch

On older revisions of Japanese Pokémon Diamond and Pearl, the Pokémon League is not in the list of expected values in the aforementioned map and coordinate check. Therefore, the reset wrong warp can be triggered even when talking to the Union Room NPC in the intended way, as long as the player does it from the top floor of the Pokémon League. Furthermore, if the player does reset in the Union Room instead of leaving, the map script would be broken as above, causing the player to enter the void on the next visit to any Pokémon Center top floor. This is known as the broken escalator glitch.

Notably, this variation of the glitch does not need the player to access the void in the first place. Therefore it can provide the initial void access, similar to the Elite Four door glitch and tweaking.

Credits

YouTube demonstration

YouTube video by RETIRE