- The 'Dokokashira Door' glitch is the roofie of the Pokemon world. This has 'good idea' written ALL OVER IT. This glitch is only accessible in Pokemon Red and Green, the original two Japanese titles.
- Slot machine bugs and oversights fixed so now you can actually win big; A pokemon having Pay Day will tip you off to the lucky slot machine and when it's in a special payout mode; An NPC will pay COINS for showing him pokemon as an alternative to slots; After the elite-4, a new vendor opens up in celadon allowing the purchase of normally unique.
|
Quick Links
Rules
Inspect an alien gun and look for that specific attachment it should be a buff better than any regular one, and I’ve noticed the “red guns” have good stats. UkyoSonoda (Ukyo Sonoda) September 21, 2019, 1:13pm.
General Rules
Refer to the rules here: https://www.speedrun.com/pkmnredblue#Catch_Em_All
Technical Rules
If you don't understand what any of the Technical Rules mean, you probably aren't in any danger of breaking them. These are intended for people who understand GBZ80 programming to let them know what they can and can't do in terms of developing new strategies/glitches for the category.
- Timing is real-time due to required saving and quitting for many glitches. Timing ends after Oak evaluates your Pokédex and sees 151, just before the credits.
- Runs must be done on the English version, because of language exclusive glitches.
- Modifying or corrupting Pokédex flags manually is not allowed, as it would completely invalidate the entire category.
- Arbitrary Code Execution (ACE) is not allowed, as it would trivialize the category.
- ACE is defined as the game executing bytes whose values can be controlled by the player, or equivalently, any bytes whose values do not come from ROM (where all game code normally resides). For example, using the glitch item named '8F' is banned as it causes the program counter to jump to RAM (specifically, the Pokémon party data). This includes running code from SRAM, WRAM (ECHO RAM), VRAM, HRAM, and so on.
- Arbitrary Jump Pointer Modification (AJPM) is not allowed, as it falls under the same reasoning as ACE.
- AJPM is defined as the execution of an address that was jumped to through the user modification of RAM Values which have a direct influence on the Program Counter. For example, changing the Map Script Pointer in Item Underflow to a desirable value is considered AJPM, as you modify the Map Script Pointer to any value you want, whereas the PC will jump to the value of the Map Script Pointer.
- The particular save corruption setup used in the 0:00 run is not allowed as it directly sets Pokédex flags.
- Save corruption that does not corrupt the Pokédex flags directly is allowed, such as the cloning glitch.
- Arbitrary RAM Modification (ARM) is not allowed, for the same reason as ACE.
- ARM is defined as writing to any address, where the byte written and the address specified are user-specified (i.e. RAM based).
- Overflowing the party Pokémon counter is currently not allowed, as it is believed that there is no way to use it usefully without also corrupting Pokédex flags. This may be up for further discussion.
- Other glitches (Trainer-Fly, Old Man, etc.) that do not breach the above rules are allowed.
- Having a preexisting save file is not allowed.
FAQ
Can be found here.
Trainer-Fly
This is the one of the secondary catching glitches used in the run. It is done by finding a trainer with max sight range that isn't normally facing south. By walking towards them and pressing the menu as you move into range of them, you can then fly/teleport/dig away. This lets the trainer see you, but you immediately leave, disabling your interactions with anything but the PC. To fix this you fight another trainer, making sure they walk at least one tile to see you. When you return to the original route where you Flew/Dug/Teleported from, a Pokémon will appear. The Special Value of the last Pokémon you encountered determines the Pokemon that shows up. This means you can theoretically make any Pokémon in the game show up. While this is irrelevant to the current route, the level is determined by the attack stage of the Pokémon. The default attack stage is 7, which means the Pokémon will usually appear at level 7. However, Growl can be used 6 times to cause a level 1 Pokémon to appear.
With the current route, there are only two Pokémon that you must make appear through this glitch in order to catch them during the run, as well as setting up two T-Flys to encounter Missingno twice to obtain a x255 stack.
And this is a list of all Pokémon encountered through Trainer Fly.
Pokemon | Info | Trainer Location(s) |
---|---|---|
Missingno | Gotten twice but not caught | Lowest Blackbelt in Saffron Dojo |
Box Underflow T-Fly Variant
Memory sections in Box Items Underflow correspond to a saved index (called the Map Script Index) used to execute different scripts. If the Map Script Index of a map with trainers is modified to 01, the game will execute a script that will initiate a battle upon entering the route, which uses the same mechanics of a Trainer-Fly. This means that it is possible to have Trainer Flies set up on routes without needing to set them up beforehand.
In the current route, there are two Pokémon that are caught using Box Underflow Trainer-Fly, listed down below:
Pokemon | Info | Trainer Location(s) |
---|---|---|
Mew | Always Get | First Trainer facing up on Route 25 (note: there is a special way in the route to get Mew) |
Mr. Mime | Always Get | Activate a T-Fly after doing Growlithe CT |
Experience Underflow
If a Pokémon in the medium-slow experience group (list below) and is level 1 the game will think this Pokémon has 16777162 experience points due to the way the game handles experience combined with the fact level 1 Pokémon can't exist normally. Therefore if you give a Pokémon meeting this description 54 or less experience the Pokémon will jump straight to level 100.
This glitch is no longer used in the Current Route.
All Pokémon in Generation 1 in the medium-slow experience group are part of three-stage evolution trees, except Mew. Additionally, the Dratini/Dragonair/Dragonite, the Caterpie/Metapod/Butterfree and the Weedle/Kakuna/Beedrill family are not medium-slow despite being three-stage evolution trees.
For reference, here is the list of Pokémon that can be underflowed to level 100.
Pokémon Stage 1 | Stage 2 | Stage 3 |
---|---|---|
Bulbasaur | Ivysaur | Venusaur |
Charmander | Charmeleon | Charizard |
Squirtle | Wartortle | Blastoise |
Pidgey | Pidgeotto | Pidgeot |
Nidoran♀ | Nidorina | Nidoking |
Nidoran♂ | Nidorino | Nidoqueen |
Oddish | Gloom | Vileplume |
Poliwag | Poliwhirl | Poliwrath |
Abra | Kadabra | Alakazam |
Machop | Machoke | Machamp |
Bellsprout | Weepinbell | Victreebel |
Geodude | Gravler | Golem |
Gastly | Haunter | Gengar |
Mew | - | - |
Old Man Glitch
To perform the glitch, the player must talk to the old man located in the north of Viridian City and allow him to demonstrate how to catch a Pokémon. After the demonstration, the player should immediately Fly to Cinnabar Island. Here, the player should surf up and down along the east coast of the island where the water is touching the land without leaving Cinnabar Island. Wild Pokémon will appear, based on the player's name. The wild Pokémon that appear are based on the player's name. The third, fifth and seventh slots of the player's name are the species of Pokémon that will appear (see below). The second slot of the player's name becomes the level of the Pokémon caused to appear by the third slot, the fourth slot for the fifth slot, and the sixth slot for the seventh slot. The game also reads the ninth and eleventh slots as wild Pokémon and the eighth and tenth slots as levels; however, due to the seven character name limit, these slots are not used, so are blank (00), causing 'M (00) to appear at level 0. At the end of the player's name, there is a special character to mark the end of the name. This character can either cause Missingno. to appear, or create the possibility for wild 'M (00) to be at level 80. The eighth through eleventh bytes are only 00 if using a custom name; using a preset name results in these extra bytes being filled by the series of other preset name separated by end of name markers (with NEW NAME after the last preset name). As such, 'M (00) will not appear when using a preset name.
If you want to try out a different route, this table demonstrates what Pokémon specific characters in the player's name will cause to appear, or the level of the Pokémon that they will cause to appear. Only characters possible to include in the player's name are included. Glitch Trainers are in bold.
This glitch is no longer used in the Current Route.
Text Pointer Manipulation Glitch
This glich allows us to catch Pokémon from item balls by manipulating the Text Pointer of the Current Map. By changing the Text Pointer of a map and talking to an item, it is possible to have trainer text printed which starts a battle, and will use the item's index value as the Pokémon to fight.
Example: Gengar has an index value of 014. Awakenings have an index value of 014.
By changing the pointer of the map which the Awakening is on, you can start a battle with a wild Gengar.
Instructions
- Acquire a set of items that is needed to make the glitch work (chart located here)
- Walk until your character is in a position to pick up the item.
- Swap the new Text Pointer with the Pointer Manip Item.
- Pick up the item, but instead of getting the item a battle will begin with the wild Pokémon.
Refer to this image if you are struggling to find the pointer item.
Video Tutorial: Tutorial
Text Pointer List
Pokémon | Text Pointer Item | Item From | Location | Item Ball |
---|---|---|---|---|
Cubone | 77 Carbos | Slot above TP slot | Pokemon Mansion 3F | Max Potion |
Gengar | 72 Antidotes | Inventory | Pokemon Tower 4F | Awakening |
Electabuzz | 100 TM42s | Rival name | Viridian Gym | Revive |
Golem | 73 TM37 | Rival name (only after Electabuzz) | Unknown Dungeon 1F | Nugget |
Koffing (optional) | 63 Candies | Inventory | Victory Road 2F | Guard Spec. |
Eevee* | 93 Poké Dolls | Rival name (swapped in first menu) | Power Plant | Electrode* |
Note: The Eevee text pointer manip is different to all the others. Instead of encountering Eevee, you manipulate the Electrode ball (the first one you come to walking from the entrance by Zapdos) to instead use the script from the Celadon Mansion gift Eevee, except it doesn't disappear when you take it. So you swap in the Poké Dolls, pick up 3 Eevees to evolve into each of the Eeveelutions, then swap back in the original text pointer (TM23 x98) to catch Electrode itself and move on as normal. The 93 Poké Dolls can then be used for the Dratini instaLG later on with no problems.
Cooltrainer♀ Mutation Glitch (NOW BANNED)
The Cooltrainer glitch (or simply Cooltrainer or CT for short) is a glitch that 'mutates' a wild Pokémon into another Pokémon by viewing the Cooltrainer move (move #00). The Pokémon mutated depends on the screen tiles shown when the Pokémon or Item Menu was last opened.
The easiest way to get the Cooltrainer move is to transform into a Pokémon, swap the first and last moves of your Pokémon, and successfully end the battle. (Catch, Defeat, or Run from the opposing Pokémon)
Procedure
- Make sure the Pokémon with Cooltrainer is in front of the party AND does not have a SLP or FRZ status. (note: other status ailments can mask a SLP/FRZ status)
- Move to a location that has specific tiles which will mutate for the desired Pokémon.
- Open your Pokémon Menu and make your way to Diglett's Cave. (Do not open any submenu from here on until mutation)
- Encounter a wild Diglett or Dugtrio
- Continuously click on Fight to view the Cooltrainer move and press B to return to the main fight selection menu (do this over and over until the opposing Pokémon mutates)
- Once the Pokémon mutates throw a Master Ball!
- Flash the Start Menu and walk or dig out of Diglett's Cave.
Note: Some Cooltrainers are referred to as 'Good' Cooltrainers. If the Cooltrainer is Good, then the encounter to mutate can be at any location. Otherwise the Cooltrainer must be done in Diglett's Cave.
Video Tutorial: Tutorial
Cooltrainer♀ Distorts
Pokemon | Level | Status?* | Good or Bad? | Location | Notes |
---|---|---|---|---|---|
'M | Copy | Yes | Good |
| |
Horsea | 127 | No | Bad | N/A |
|
Hitmonchan | 44 | No | Good |
| |
Mankey | 57 | Yes | Bad |
| |
Rhyhorn | 57 | Yes | Good |
| |
Venonat | Copy | No | Good |
| |
Growlithe | 35 | Yes | Good |
|
Instant Glitch City Distorts
Pokemon | Level | Starting Point | Item Required | Status? | Good or Bad? | Instructions | Video |
---|---|---|---|---|---|---|---|
Dratini | 80 | Poke Doll x<odd num> | No | Bad |
| N/A |
Double Distort Cooltrainers
Note: Double Distort Cooltrainers for the 151 speedrun as it stands refer to a very specific method for catching Cooltrainer Pokemon based off a double distort using the Hitmonchan cooltrainer on Route 11. In general, Double Distorting as a concept could eventually lead to even more crazy Cooltrainers, but these are the ones referred to in the current 151 route document.
Method for a Double Distort Cooltrainer:
This video shows the fastest method to get the 2 'compulsory' double distorts - Oddish and Magikarp. You can get others by following the method below.
(Edited: Full Healing Ditto is not necessary as the status is only a burn and not burn+sleep or burn+freeze)
- Go to the Hitmonchan cooltrainer location on Route 11 (on the upper of the two tiles that it is possible from) and flash items/Pokemon.
- Bike up into the grass for an encounter.
- Perform a normal Cooltrainer mutation, but instead of immediately catching it, instead swap out Ditto for a different Pokemon. If you want to get a Double Distort from Ditto's nickname, this can be any Pokemon, otherwise swap in the Pokemon with the correct nickname for the Double Distort you want.
- Regardless of what you sent out, immediately swap back in Ditto.
- If you want the Pokemon corresponding to Ditto's name, flash your items now. If you want the Pokemon from the name of your switchin, do not flash items.
- Mutate using the Cooltrainer move again.
- Throw a Master Ball and catch your Pokemon!
This will give you a Pokemon corresponding to the second letter of your Pokemon's nickname, using the same relationship as the Old Man Glitch. It will always come at Level 127 and have 13 DV special.
Pokemon you can get from Double Distort
- Blue-colored rows are always used in runs, normal-colored runs are just here for reference or backup strats.
Pokemon | Name Character | Example Nickname/Name |
---|---|---|
Oddish | z | zz |
Magikarp | F | FF |
Snorlax | E | GENGAR (unnicknamed) |
Goldeen | ; | ;; (two semicolons) |
Mewtwo | D | DD |
Outdated Cooltrainers
Main article: Cooltrainers
For reference, here is a list of all Cooltrainers that were formerly used in older routes. Most of these have been obsoleted because of the LG-Fly Glitch.
LOL Glitch (CT Varient)
TBA.
LG-Fly
This is one of the primary catching glitches used in the run. TBA.
Brock Through Walls
When the Brock Fan's script activates as you try to leave Pewter City, the game searches through a table of coordinates and pointers to figure out your movement pattern in the cutscene. However, the developers didn't account for you standing to the right of him, so there's no path defined. Usually, if you try to speak to him without any preparation, the game will softlock, since it can't find your coordinates anywhere in memory. However, with a little setup, you can prepare the game to find your position and read an invalid path. This position happens to be (y = 16, x = 36).
The method used in this run requires having a Pokémon (Bulbasaur) with 16 Special and a Pidgey with 8, 10, 13, 15, 16 or 17 Current HP, having Bulbasaur in Slot 1 and Pidgey in Slot 2. This results in the game finding the player coordinates in memory as the 16 Special from Bulbasaur, and the Pokémon Identifier (h24 = 36) from Pidgey, and reading the next two bytes (which make up Pidgey's current HP, with the first byte always being 00 in this situation) as a pointer to the path. All of the HP values above happen to yield useful glitch paths, which overflow and overwrite the 'disallowed buttons' variable, letting you walk through walls.
This glitch is used right after Brock Skipping, allowing the runner to head straight to Saffron City, skipping a large portion of the early game.
Glitch item 'JACK' (and others)
Some glitch items (usually related to default names) have an odd property with them. (It is referred as 'JACK' here)
When you use JACK, it brings up the Pokémon Menu, and it will either act like a potion or show 'NOT ABLE' next to each Pokémon (supposed to be acting like an Evolutionary Stone, maybe it's the secret Evo Stone everyone's talking about). After backing out, sprites are removed from the screen including yours but the Pokémon sprites will stay on the screen. If you face a direction where there is a non-solid tile, you can clip through solid tiles 1-2 spaces long.
Since it also removes Trainer sprites, you can use JACK, walk in front of any trainer with sight range (so no using Blaine's trainers) fly/teleport/dig away, and you'll have a regular Trainer-Fly set up.
If you do not let any space between the trainer and you, the trainer fly would activate instantly after going back to the route, since the game thinks you already are in a battle.
The reason this happens is that glitch item opens your menu, but since the game doesn't know it's an item that opens your menu, it doesn't close the menu, which makes it so the game thinks you're in the Pokémon Menu and the Overworld at the same time, which makes it so the game doesn't update direction, and since collision data only checks if the block in front of you is solid. Since the game thinks you are in the Pokémon Menu, trainer sprites don't appear.
Here is a list of some of the items that give the effect:
- JACK (BLUE version) or JOHN (RED version)
- GARY (BLUE version) or ASH (RED version)
- RIVAL's
- NAME?
- NICKNAME?
- CANCEL (used in the current route)
- [] E[][]tE[]
Item Underflow
When you have a stack of 255 of an item and you toss an item above it in your inventory the game duplicates the Item with a 255 stack instead of shifting the end of inventory item up. The game also sees that you tossed an item (even though your inventory is unaffected) so it decreases your item count by one. If you were to toss stacks of candies equal to the amount of items you have the game will think you have 0 items. From here if you have an item removed from your inventory the game will think you have -1 items. Due to the game's use of unsigned integers, having -1 items is displayed as 11111111 (binary), FF (hexadecimal) or 255 items. The game then needs to fill those item slots with something, and it just happens that the 'something' it is filled with is pieces of memory. Note that only 128 of the '255' items are accessible because of how the inventory accesses RAM, corresponding to the first 256 bytes from the start of the real inventory (each item uses 2 bytes, one for the item ID and one for the quantity). This gives you access to a decent amount of memory, but not as much as if you actually had access to 255 items.
By changing some of these pieces of memory you can:
- Warp to different map locations.
- Get certain items early (like Master Balls, HMs or key items)
- Change items into other items (usually items with similar item IDs)
- Change which badges you have.
- Make text speed faster (0 frames per letter/instant text boxes).
- Distort the player location.
- Warp to Glitch Cities for Cooltrainer.
- Make Instant Glitch Cities for Cooltrainer.
The way this is activated in the 151 run is by making the game think you have 0 items (by tossing the TM29 stacks until you can't toss any more) then having the guard remove a Fresh Water/Soda Pop/Lemonade from your inventory.
This is the main glitch used throughout the run, and it can be intimidating at first. It is very important to be comfortable with this glitch before incorporating it into your runs. Underflow is covered in the 151 Tutorial Video here and here
You can see what values you can edit here, starting at 'wPlayerMoney': Link
Warping
After activating Item Underflow you can manipulate the location you warp to through your item list. This is done by placing an item with a quantity equal to Map ID and exiting a building with an Index equal to the location you want to go to. You can use this map to check these values.
Certain locations are used due to their warp index. These are the locations that are used in the current route.
Pokemon Slot Machine Cheat
Warp Index Values
Index Value | 'Best' Location* | Notable Others |
---|---|---|
0 | Vermillion Pokémon Center | Lavender Center, Celadon Mart Left Exit, Fuchsia Mart, Cinnabar Mansion |
1# | Vermillion Pokémon Fan Club | Bottom of Right Side Saffron Guardhouse, Celadon Mart Right Exit |
2 | Vermillion Pokémon Mart | Cerulean Center, Fuchsia Center, Cinnabar Island Pokémon Lab, Celadon Mansion Front Door |
3# | Vermillion Gym (access w/ Jack) | Cerulean Gym, Left Side Of Saffron Guardhouse, Vermillion Gym, Lavender Mart |
4# | House below Mart in Vermillion | Cinnabar Mart |
5# | Celadon Pokémon Center | Cerulean Mart |
6 | Saffron Pokémon Center | Pewter Center, Fuchsia Safari Zone 'Admin' Building, Celadon Gym |
7# | Vermillion City DUX trade house | Saffron - Psychic Guy's House |
8# | Vermillion - Old Rod Guy's House | Topleft house in Cerulean |
9# | Celadon Game Corner Prize Building | N/A |
10# | Left house in bottom row in Celadon | N/A |
11# | Middle house in bottom row in Celadon | N/A |
12# | Right house in bottom row in Celadon | N/A |
- The best location is only the fastest under general circumstances, working from the Vermillion Dig hub etc. Depending on where you are in the run you're on, it might be faster to use a different warp.
- Warps with * are currently only used for Cooltrainer Pokémon. Warps with # are not used at all and are just listed for reference.
- You can 'index change' Vermillion Center to access any warp index by scrolling down in the menu a little from the warp destination and tossing from a stack of 'Great Ball' x0 (in different warps, the item depends on the X Coord of the warp). This is usually slower than just going to the appropriate building for the index you want, but it is usable on occasion (and is also the only way to access Glitch City indexes above 12)
Helpful Warps
Usually for the run you will swap the Ultra Balls in the screen darkness slot or the 198 TMs 8-10 slots below with the Master Balls or glitch item located in the Map ID item slot explained here After swapping the Ultraballs with the Master Balls you can toss the following amounts to reach certain locations. Keep in mind the index values.
NOTE: After tossing the Ultra Balls and exiting your item menu you must immediately exit the building you are in to warp. Walking around before exiting will mess up your coordinates and make you unable to walk outside.
Index | Ultra Balls/TMs Tossed | End Location |
---|---|---|
0 | 248 Ultra Balls | Cinnabar Island |
249 Ultra Balls | Fuchsia City | |
0 TMs (swap but don't toss) | Victory Road | |
29 Ultra Balls | Cerulean Cave | |
80 TMs | Hall of Fame (at end of game) | |
36 Ultra Balls | Safari Zone | |
241 Ultra Balls | Mt. Moon Center ('Puff Warp') | |
2 | 8 TM42s in Cinnabar Lab | Power Plant (next to Zapdos) |
37 TMs | Seafoam Island | |
53 TMs | Pokemon Tower (Floor with Gengar TP) | |
21 Ultra Balls | Top floor of Silph Co. (closest warp to Lapras) |
Guides
Route is the route most currently updated with modern strategies. This document will probably also be updated with future developments, though there is normally time lag between route changes & the notes being updated. This route requires fairly extensive knowledge of the glitches involved with the run, as detailed in the document itself. The latest update includes routing which incorporates the RNG manipulation discovered in the Summer of 2016.
Link is the final version of the route that was used before the 2016 RNG manip was added in. The last major change to this route was made in mid-August 2016.
Outdated Routes
These routes are really outdated, from before important glitches were discovered (including Brock Through Walls, Cooltrainer, and JACK-class items). They should not be used for runs, and are just provided for reference.
Pokemon Red Slot Machine Glitch Codes
Link - First Route (about 1.5 hours slower) If you are comfortable with Underflow and Trainer Fly mechanics see Advanced Route. (This route is Outdated)
First Pokémon Blue 151 Tutorial by SheNanagans_ - This is more of a beginner's tutorial. This Route is extremely outdated. (I will make an Advanced route tutorial soon!)
Link - Second Route. They require extensive knowledge of the (now outdated) glitches. If you aren't comfortable with the glitches watch SheNanagans' tutorial first. (This route is outdated)
Link - Third Route. Not many differences from the fourth route.
Link - Fourth Route. This route is pre-New Cooltrainers/InstaCTs.
Link - Fifth Route. This route is pre-Eevee Factory, major CoolTrainer overhaul, and other minor changes.
Pokemon Fire Red Slot Machine Cheat
Link - Sixth Route. This route is pre Double Distort, and has a re-routed early game section including Money Manipulation.
Link - Seventh Route. This was the route most currently updated with modern strategies prior to oobLG. This route still requires fairly extensive knowledge of the modern glitches involved with the run, and tolerance of the Cooltrainer♀ glitch.
Link - Old Modern route. This was the most modern route before OOBLG, LG fly and Cooltrainer were banned.