Debugging features within Pokémon Red/Blue/Yellow

From Glitch City Wiki
Revision as of 20:37, 26 May 2014 by >Torchickens
This article is a summary page for different variations of a glitches, etc. when talked about as a whole.

It is likely that Pokémon Red and Green and its sequels and localizations, like most other modern video games featured debugging features at one time in their development. This can be supported in an "Iwata Asks" interview by Satoru Iwata with Tsunekaz Ishihara and Shigeki Morimoto regarding the release of Pokémon HeartGold and SoulSilver, where Shigeki Morimoto mentioned that "debugging features which weren't going to be included in the final version of the game were removed, creating a miniscule 300 bytes of free space." in which the developers managed to fit Mew later in the empty space.[1]

Further details of the mentioned debugging features however, are not known although there are a few 'hints' of their existence, such as the original first generation error codes which have not been officially explained by Nintendo.

Error codes

Main article: Error codes#In Generation I

ERROR codes in Pokémon Red/Blue/Yellow (known as "error" codes in Pokémon Yellow) appear in the form of "(X ERROR)" when there is a 00 character in the middle of a text box (normally only possible through glitch dialogue). The actual number, X, marks the 'text box ID' . All text after the error code is removed, but text, including numbers can appear before the error code, giving a false impression that the error code is of a higher value than it actually is.

An example of an error code in action without a cheating device is this:

  1. In Pokémon Yellow, perform the Trainer-Fly glitch to fly away from the long range Trainer on Route 6.
  2. Fight any Trainer on a route other than Route 6 and either win or lose. #Read the sign that says 'VERMILION CITY The Port of Exquisite Sunsets'.
  3. Return to Route 6 and an '8 error' will appear.

In Pokémon Red and Blue, the 'Port of Exquisite Sunsets' sign step can be replaced with the PokéMart sign to get a '9 error'.

Printer errors were added to Pokémon Yellow and the lowercase word "error" is used for an instance of printer error related text that is used when trying to print the player's high-score in the Summer Beach house (Surfing Pikachu minigame house), getting a highscore and exiting, however "PRINT error!" is part of a completely different text string, and has an "!" mark that the ("X error") phrase does not.

Placeholder terms

Placeholder terms here are names used for unused entries in a list that were 'dummied out', i.e. made valid.

  1. ?????: ????? is an item name for the unused items with index numbers of hex:07 (aka the 'surfboard') and hex:2C (an unusable item). The term is the same in the Japanese games.
2. Missingno.: Contrary to popular belief, Missingno. is not an error handler for invalid Pokémon in general. Only 39 invalid Pokémon are called Missingno. and all of the invalid Pokémon index numbers past hex:BE (dec:190), counting 00 as 256, have glitched names.

Though most data about Missingno. is invalid, not all of it is. For example, 30 Missingno. have blanked out cries and 9 have unused cries. At least some of these Pokémon may have been worked with before. According to a post from Zog on Smogon, Shigeki Morimoto confirmed that there were originally 190 Pokémon (151+39), and that the rest were saved for later.

The developers may have either added in 'Missingno.' as a placeholder for if they wanted to add more Pokémon into the game, or replaced a 'scrapped Pokémon' for Generation I with "Missingno." (the latter is more likely for the Missingno. with unused cries).