Old man glitch

From Bulbapedia, the community-driven Pokémon encyclopedia.
Jump to: navigation, search

The old man glitch is a well-known glitch in Pokémon Red and Blue, and an extension of the Fight Safari Zone Pokémon trick. It is one of the methods by which the player can encounter MissingNo. and 'M (00), and almost certainly the most famous method. Its name comes from the old man in Viridian City, who is required to begin the glitch. It should not be confused with the related item duplication glitch, which is most easily performed by first performing the old man glitch.

This glitch was not present in the Japanese Pokémon Red, Green, or Pokémon Blue. This glitch was fixed in the Spanish and Italian versions of Pokémon Red and Blue by making the shore tiles act as water tiles, but still remains in the German and French versions of Pokémon Red and Blue; however, in the French version, the game freezes upon encountering a MissingNo. or 'M (00). This glitch was removed in all versions of Pokémon Yellow by blanking the data for wild Pokémon before overwriting it, and reprogramming the shore tiles to not call any wild Pokémon.

Performing the glitch

The glitch is a special case of the Fight Safari Zone Pokémon trick. 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.

By Old_Stigma
This video is not available on Bulbapedia; instead, you can watch the video on YouTube here.


The wild Pokémon that appear are based on the index numbers of the characters in the player's name. The third, fifth, seventh, ninth, and eleventh slots of the player's name are the species of Pokémon that will appear (see table 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, the sixth slot for the seventh slot, the eighth slot for the ninth slot, and the tenth slot for the eleventh slot. However, due the seven character name limit, only the first seven slots can be directly chosen by the player; the remaining slots contain filler data that varies with the method that was used to choose the player's name. Regardless of the method used, the player's name is terminated by a special character to mark the end of the name which has the index number 80.

If the player uses a custom name, all characters after the end of name marker are blank (00). This causes 'M (00) to appear at level 0, and if the player's name has an odd number of characters, at level 80 as well (due to the positioning of the end of name marker). Due to the ninth through eleventh slots necessarily being blank for custom names (due to the character limit for names), 'M (00) can always appear for custom names.

If the player uses a preset name, instead of the following bytes being blank, they are filled by the sequence of other preset names 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.


Custom name

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; the null character (0) cannot be inserted by the player, but instead fills the remaining slots after the end of name marker (80) at the end of the player's name. Glitch Trainers are in bold.

Pokémon Level
AniMS Missingno I.png
'M (00) 0
AniMS Missingno I.png
MissingNo. 80
AniMS Missingno I.png
MissingNo. 127
A Golduck Golduck 128
B Hypno Hypno 129
C Golbat Golbat 130
D Mewtwo Mewtwo 131
E Snorlax Snorlax 132
F Magikarp Magikarp 133
AniMS Missingno I.png
MissingNo. 134
AniMS Missingno I.png
MissingNo. 135
I Muk Muk 136
AniMS Missingno I.png
MissingNo. 137
K Kingler Kingler 138
L Cloyster Cloyster 139
AniMS Missingno I.png
MissingNo. 140
N Electrode Electrode 141
O Clefable Clefable 142
P Weezing Weezing 143
Q Persian Persian 144
R Marowak Marowak 145
AniMS Missingno I.png
MissingNo. 146
T Haunter Haunter 147
U Abra Abra 148
V Alakazam Alakazam 149
W Pidgeotto Pidgeotto 150
X Pidgeot Pidgeot 151
Y Starmie Starmie 152
Z Bulbasaur Bulbasaur 153
( Venusaur Venusaur 154
) Tentacruel Tentacruel 155
AniMS Missingno I.png
MissingNo. 156
; Goldeen Goldeen 157
[ Seaking Seaking 158
AniMS Missingno I.png
MissingNo. 159
AniMS Missingno I.png
MissingNo. 160
AniMS Missingno I.png
MissingNo. 161
AniMS Missingno I.png
MissingNo. 162
d Ponyta Ponyta 163
e Rapidash Rapidash 164
f Rattata Rattata 165
g Raticate Raticate 166
h Nidorino Nidorino 167
i Nidorina Nidorina 168
j Geodude Geodude 169
k Porygon Porygon 170
l Aerodactyl Aerodactyl 171
AniMS Missingno I.png
MissingNo. 172
n Magnemite Magnemite 173
AniMS Missingno I.png
MissingNo. 174
AniMS Missingno I.png
MissingNo. 175
q Charmander Charmander 176
r Squirtle Squirtle 177
s Charmeleon Charmeleon 178
t Wartortle Wartortle 179
u Charizard Charizard 180
AniMS Missingno I.png
MissingNo. 181
AniMS Missingno I.png
MissingNo. (Kabutops Fossil form) 182
AniMS Missingno I.png
MissingNo. (Aerodactyl Fossil form) 183
AniMS Missingno I.png
MissingNo. (Ghost form) 184
z Oddish Oddish 185
PK Rival Blue 225
MN Pokémon Prof. 226
Chief 227
? Rocket 230
! Cooltrainer♂ 231
Blaine 239
× Gentleman 241
. Rival Blue 242
/ Champion Blue 243
, Lorelei 244
Channeler 245

Preset names

Choosing a preset name will result in different results to inputting a custom name. Inputting a custom name which is the same as a preset name will not cause the glitch to behave as if a preset name was chosen.

Preset names function differently because they are stored one after the other in the game data, separated by the end of name marker, whereas custom names are succeeded by zeros after the end of name marker. In English Pokémon Red, the player's name is stored as "RED<end>ASH<end>JACK<end>NEW NAME", starting from the selected name; in English Pokémon Blue, the player's name is stored as "BLUE<end>GARY<end>JOHN<end>NEW NAME", likewise starting from the selected name.

Due to the names extending past the usual seven character limit, the ninth and eleventh characters are also used to determine the wild Pokémon, and their levels are determined by the eighth and tenth characters, respectively. These characters are usually null, so cause 'M (00) to appear, and Pokémon to appear at level 0, respectively. Because of this, unlike when inputting a custom name, 'M (00) do not appear when using a preset name. Characters after the eleventh are ignored.

Pokémon Red

The numbers in parentheses are the index number of the specific MissingNo. in hexadecimal.

Name Level 1 Pokémon 1 Level 2 Pokémon 2 Level 3 Pokémon 3 Level 4 Pokémon 4 Level 5 Pokémon 5
RED 132 Mewtwo 80 Golduck 146 MissingNo. (87) 80 MissingNo. (89) 128 Golbat
ASH 146 MissingNo. (87) 80 MissingNo. (89) 128 Golbat 138 MissingNo. (50) 141 Snorlax
JACK 128 Golbat 138 MissingNo. (50) 141 Snorlax 150 MissingNo. (7F) 141 Golduck

Pokémon Blue

The numbers in parentheses are the index number of the specific MissingNo. in hexadecimal.

Name Level 1 Pokémon 1 Level 2 Pokémon 2 Level 3 Pokémon 3 Level 4 Pokémon 4 Level 5 Pokémon 5
BLUE 139 Abra 132 MissingNo. (50) 134 Golduck 145 Starmie 80 MissingNo. (87)
GARY 128 Marowak 152 MissingNo. (50) 137 Clefable 135 Electrode 80 Electrode
JOHN 142 MissingNo. (87) 141 MissingNo. (50) 141 Snorlax 150 MissingNo. (7F) 141 Golduck


When the game sets up the battle between the old man and a wild Weedle, it needs to temporarily change the player's name to "OLD MAN" so that it will display that name, rather than the player's entered name, during the battle.

The programmers decided to use the space where data for wild Pokémon found in the grass is stored (which is completely blank in Viridian City, as only Surfing and Fishing data is used) to save the player's name temporarily. Normally, this would cause no abnormal activity, as this data is overwritten when the player moves to a different area.

In all cities, however, this data remains blank, and so the data is never overwritten (as there is nothing new to overwrite it with), and thus, the data that was last entered (be it the player's name or the wild Pokémon data from another area) remains in place. This itself still causes no harm; however, an oversight in the programming of the tiles used to denote the shore of Cinnabar Island marks them as equivalent to grass. As all water routes have no real grass on them, likewise, the data is not overwritten, and so whatever data is in the slots for wild Pokémon found in the grass is used, be it the player's name or wild Pokémon found elsewhere, such as the Safari Zone.

The name of the player has six hexadecimal values in it. The game needs only three "slots" of wild Pokémon data to store this.

The species of wild Pokémon the player encounters along the coast are determined by the third, fifth, and seventh characters of the player's name, while their levels are determined by the second, fourth, and sixth characters, respectively. The game also reads the ninth and eleventh slots as wild Pokémon and the eighth and tenth slots as their respective levels; however, due to the seven character name limit, these slots are not used unless using a preset name, so are blank (00), causing 'M (00) to appear at level 0.

Other coast related exploits

See also: Fight Safari Zone Pokémon trick
A Golbat affected by the glitch in Pokémon Stadium

Because Cinnabar Island has no wild Pokémon data but the potential for wild Pokémon to appear, and that wild Pokémon data is not formatted when entering a new area, any location that can be flown from can have its wild Pokémon available on the coast.

This includes the Safari Zone, so players can encounter Safari Pokémon under normal battling circumstances. Since the old man only writes to the first eleven wild Pokémon addresses, it means that extra Pokémon may be accessible even if the player's name is eleven characters long (which is possible with preset names). This grass Pokémon data is mapped to three 'uncommon encounters' and two 'rare encounters'.

Due to being able to find Pokémon over level 100, it is possible to trigger glitches relating to Pokémon with levels that are too high. If Pokémon over level 100 receives experience by battle, it will automatically go to level 100; Rare Candies will level up the Pokémon normally. If the Pokémon's remaining HP is already low, dropping to level 100 can cause the HP to drop to negative number, but it will be interpreted as a very high number, similarly to the Pomeg glitch. In Pokémon Stadium, HP is shown as the actual amount; in Pokémon Stadium 2, it will act as if its HP was full.

Reportedly, the first coast exploit discovered involved performing an in-game trade with an NPC and surfing on the coast.[1] This results in five level 80 hex:50 MissingNo. because the encounters are affected by the trade Pokémon's OT name. Specifically, grass data is overwritten with "5D 50 50 50 50 50 50 50 50 50 50". The 5D byte is a control character that prints "TRAINER" and the rest of the bytes are 'end name' characters.

Trading or fighting in the Cable Club overwrites the wild Pokémon data with the opponent's name, and by using the poison method of the Cable Club escape glitch one may escape from the Cable Club and keep the stored grass Pokémon data that normally disappears after resetting the game (even after trading). Note that battling heals the user's Pokémon, meaning that the player has to do this glitch by bringing up the trade screen.

This Cable Club coast exploit has an unexplained complication of affecting encounters further than uncommon Pokémon 1 (D891); for example, glitch Trainer FD can appear on the coast through this method.

Video of the trade NPC exploit:

By ChickasaurusGL
This video is not available on Bulbapedia; instead, you can watch the video on YouTube here.

Video of the Cable Club trade exploit (which requires the Cable Club escape glitch)

By ChickasaurusGL
This video is not available on Bulbapedia; instead, you can watch the video on YouTube here.


Cloning glitchesGlitch PokémonGlitch Trainers
Error messagesArbitrary code execution
Generation I: --0 ERRORBroken hidden itemsCable Club escape glitchExperience underflow glitch
Fight Safari Zone Pokémon trickGlitch CityItem duplication glitchItem underflowMew glitch
Old man glitchPewter Gym skip glitchPokémon merge glitchRhydon glitch
Select glitches (dokokashira door glitch, second type glitch) • Super GlitchTime Capsule exploitZZAZZ glitch
Generation II: Bug-Catching Contest data copy glitchCelebi Egg glitchCoin Case glitchesExperience underflow glitch
Glitch dimensionGlitch EggSketch glitchTeru-samaTime Capsule exploitTrainer House glitchesGS Ball mail glitch
Generation III: Berry glitchDive glitchPomeg glitchGlitzer Popping
Generation IV: Acid rainGTS glitchesMimic glitch
Pomeg glitchRage glitchSurf glitchTweakingPal Park Retire glitch
Generation V: Sky Drop glitchFrozen Zoroark glitchChoice item lock glitchCharge move replacement glitch
Generation VI: Lumiose City save glitchSymbiosis Eject Button glitchChoice item lock glitchCharge move replacement glitch
Generation VII: Choice item lock glitchCharge move replacement glitch
Generation VIII: Charge move replacement glitch
Glitch effects: Game freezeGlitch battleGlitch song
Gen I only: Glitch screenTMTRAINER effectInverted sprites
Gen II only: Glitch dimension
Lists: Glitch movesGlitch types
Glitch Pokémon (Gen IGen IIGen IIIGen IVGen VGen VIGen VIIGen VIII)
Glitches (Gen IGen IIGen IIIGen IVGen VGen VIGen VIIGen VIIISpin-off)

Project GlitchDex logo.png This article is part of Project GlitchDex, a Bulbapedia project that aims to write comprehensive articles on glitches in the Pokémon games.