English R/B/Y equivalent of Dokokashira door glitch
Posted by: TheZZAZZGlitch
Date: 2013-05-23 15:30:13
I was recently doing research on JP versions' Dokokashira door glitch, and I noticed something very interesting.
Prior to today, people have been explaining this glitch as either "switching a Pokemon with an item" or "switching an item with the current warp location", which without select glitches sounded impossible to perform on English versions. However, I accidentally noticed while opening up the memory viewer screen, that the switched Pokemon data has nothing to do with item data, nor the warp location byte.
Investigating further, I decided to check exactly what happens while pressing Select on the Pokemon screen, and it looks like it's nothing more than switching the first Pokemon with the second. Or in this particular early-game case, switching the end of list marker (0xFF) to the first position. This confuses the subroutine which applies the poison damage in the overworld, causing it to check way too many "Pokemon" for poison damage, decrementing massive amounts of RAM addresses while thinking they are your Pokemon's health points.
The fact is that no select glitches are necessary to do it - the only thing necessary is a way to either switch the first Pokemon with a end-of-list terminator, or somehow remove the 0xFF terminator from the list - as was beautifully shown by Torchickens' "Forcing select button glitches to work on Pokémon Red and Blue".
So the overall plan to do this in English versions is to either:
1. Get more than 6 Pokemon
2. Swap the (NumberOfPokemon+1)th Pokemon with the first
…or just corrupt the memory so the end-of-list terminator gets erased.
This means that the Dokokashira door glitch still exists in English versions, but it's not available in early game.
How to do it without select glitches or cheating? Well, the easiest possible way to do this is with Super Glitch (I feel like doing everything with Super Glitch recently, lolz). I'm pretty sure it should be possible with the save abuse/save corruption in Yellow as well.
Unfortunately, because English versions have different RAM layout, only some of the effects from Japanese versions could be seen in English games. For example, during the glitch, the "changing map tiles" effect is present in all versions (JP Red/JP Green/EN Red/EN Blue/EN Yellow), but changing the warp destination every 4 steps happens only in Japanese editions (JP Red/JP Green).
MEMORY HACKING METHOD OF GETTING "DOKOKASHIRA DOOR GLITCH" EFFECTS IN INTERNATIONAL RELEASES
FOR THOSE WHO WANT TO TRY IT WITHOUT DOING INSANELY COMPLICATED STUFF:
1. Overwrite addresses D163-D2F6 (Red/Blue) or D162-D2F5 (Yellow) with any value matching a hex number of $X0, $X1, $X2, $X3, $X4, $X5, $X6, $X7.
2. Have fun.
GETTING "DOKOKASHIRA DOOR GLITCH" EFFECTS IN INTERNATIONAL RED/BLUE WITHOUT CHEATING:
Requirements:
- A Pokemon meeting very specific moveset requirements:
a) It needs to have a Super Glitch as a 4th move,
b) Its three moves besides the Super Glitch have to contain 27 characters in total
(for example: BODY SLAM [9 chars], MEGA KICK [9 chars], WATER GUN [9 chars])
- At least 1 Escape Rope in bag
1. Go to the nearest Pokemon Center, turn on the PC and turn it off. This will copy the correct screen data.
2. Walk (!) to the Diglett's Cave. Do not open your start menu while going there.
3. Once you arrive to the cave, encounter a wild Pokemon.
4. Open your fight menu a couple of times, and run away from the battle.
5. There's a slight chance that Super Glitch won't work as expected. If you end up in a glitched copy of Pallet Town, reset the game and start from the beginning.
6. Open up the save menu and cancel the glitched yes/no dialog. Use an Escape Rope afterwards.
7. The English version Dokokashira door glitch is active.
A video is worth a thousand words:
http://www.youtube.com/watch?feature=player_detailpage&v=-h30Q83SUWA#t=0s
GETTING "DOKOKASHIRA DOOR GLITCH" EFFECTS IN YELLOW WITHOUT CHEATING:
In Yellow it is a little bit trickier, but still possible.
Requirements:
- A Pokemon meeting very specific moveset requirements:
a) It needs to have a Super Glitch as a 4th move,
b) Its three moves besides the Super Glitch have to contain 27 characters in total
(for example: BODY SLAM [9 chars], MEGA KICK [9 chars], WATER GUN [9 chars])
- Access to Safari Zone
1. Do the standard Safari Zone reset trick to make the game count your safari steps in the overworld
2. Go to the Pokemon Center, land your second to last step in front of the PC
3. Go to the Pokemon Storage System and continuously view stats of your Super Glitch Pokemon until it changes into Slowbro. This may require a lot of tries.
4. Walk a step more and you will get teleported to the Safari Gate. Walk out and the Yellow version Dokokashira door glitch is active.
A video is worth a thousand words:
http://www.youtube.com/watch?feature=player_detailpage&v=-h30Q83SUWA#t=284s
DOCUMENTED EFFECTS:
Here are some effects I noticed in English Red/Blue only:
- If Clefable is owned/caught (Pokédex), Pokédex byte #3 (Capture flags for Pokédex numbers 17-24) will get decremented every 4 steps
- Also, number of items decrements every 4 steps if the quantity of the first item in the bag matches a hex number of $X8, $X9, $XA, $XB, $XC, $XD, $XE, $XF
- If the 4th Pokémon in the party has a hex identifier of $X8, $X9, $XA, $XB, $XC, $XD, $XE, $XF, the identifier of Pokémon #2 will get decremented every 4 steps
- Some of the items in the PC (16th, 21st, 39th and 43rd to be exact) have their identifiers decremented every 4 steps
Here are some effects I noticed in Yellow only:
- After walking a huge amount of steps (around 300) the map connection byte gets decremented once. This may cause weird effects like entering Lavender Town through Vermilion City's map connection.
- The sprites will randomly teleport across the screen or change into Red sprites
- Sometimes, after entering a new location, the music will take a lot more time to fade out
- The walking speed becomes very slow
Those effects are present in both Red and Yellow:
- Random Pokemon keep fainting even though nothing is poisoned
- Sometimes artifacts appear on the screen
- Some of the map tiles get changed around every 4 steps
- In some locations (locations where music track ID matches a hex number of $X8, $X9, $XA, $XB, $XC, $XD, $XE, $XF) music gets screwed up after walking 4 steps
- Some event flags also get reset or set every 4 steps. Not sure which ones.
- If quantity of item #5 in bag matches a hex number of $X8, $X9, $XA, $XB, $XC, $XD, $XE, $XF, the quantity of item #4 will get decremented every 4 steps
- Certain maps turn into a mess of illegible tiles after walking 4 steps in them (caves, Pokemon Centres, Celadon Mansion…)
IMPORTANT ENDING REMARK
If you're using VisualBoyAdvance for emulating, make sure you have the most recent version.
Anything Dokokashira-related doesn't work in early VBA versions, as versions before VBA RR v20.0 didn't emulate echo RAM correctly.