Glitch item: Difference between revisions
>Torchickens No edit summary |
|||
(41 intermediate revisions by 5 users not shown) | |||
Line 1:
{{Arbitrary code execution}}
'''Glitch items''' are invalid items in the Pokémon games. Unavailable items such as {{FRLG}} key items in {{
Glitch items may have special uses (in Generations I and II), different names (in Generation I and to an extent Generation II) and Poké Mart buy and sell price data.
Line 8 ⟶ 9:
===In {{RGBY}}===
Glitch items occupy [[index numbers]] hex:00, hex:54 through to hex:C3 and hex:FB through to hex:FF.
Types of glitch items:
*[[Unterminated name glitch item]]s: These are items without a 0x50 byte in the first 20 characters of their name. They can be used for various [[buffer overflow]] techniques with specific tiles on the screen. When the A-Button is pressed on them without a [[0x50 sub-tile]] present on the screen, it is most likely the game will freeze.
*Lag name glitch items: These cause the items list to temporary freeze until the player taps A or B a specific number of times while scrolling up/down. It is advised to tap B instead of A due to the risk of a game freeze from an unterminated name glitch item, which could freeze the game, and potentially destroy the save data, especially on Nintendo 3DS Virtual Console versions.
*[[Rival's effect]] glitch items: These glitch items are capable of causing the Rival's effect; an effect that opens a menu and allows the player to walk through impassable tiles once it is closed with B.
*[[Partial escape glitch item]]s: These allow for the player to partially escape from a wild battle, or restart a Trainer battle.
*[[:Category:Screen data saving glitch items|Screen data saving glitch items]]: These allow for the player to create a copy of the screen while the items menu is open, which is useful for [[Rival LOL glitch]] or a similar glitch.
*String printing glitch items: These may include a variable string in the item's name
*[[Map distortion glitch item]]s: Documented by TheZZAZZGlitch, these glitch items have the capability of corrupting the map when their name is shown, in an area with a lot of grass. A player name that is four characters long or more is also required.
*[[Arbitrary code execution]] glitch items: These glitch items do not have hard coded effects; instead the effects are sourced from a pointer in rewritable memory, such as [[RAM]]. Depending on the source pointer, it is possible to manipulate the item to do almost anything in game. [[ItemDex/RB:093|8F (0x5D)]] and [[ItemDex/Y:099|ws m (0x63)]] are infamous examples in the English versions.
*RAM name glitch items: These are glitch items with randomized names. They are not known to exist in the English versions, but an example is [[ItemDexJP/B:000]] from {{JB}}.
How to obtain glitch items:
All glitch items:
*[[Dry underflow glitch]] or original [[item underflow glitch]]>[[Celadon looping map glitch]]
*[[Glitch City RAM manipulation (Cut abuse)]]: For expanded PC items
*Other [[expanded items pack]] glitches; namely, [[Super Glitch (Generation I)|Super Glitch]], [[255 Pokémon glitch]], [[ZZAZZ glitch]] and more
Some glitch items:
*[[Get glitch items using left-facing shore tile glitch (Red/Blue)]]
*[[Get glitch items using Trainer escape glitch (Yellow)]]
*[[Glitch City RAM manipulation (buffer overflow techniques)]]: For [[move 0x00 corruption]]
Many glitch items are available with the [[Celadon looping map trick]], [[Item creation glitch]] (a [[Closed menu Select glitch|Select glitch in Red/Green/Blue]]), [[Yami Shop glitch]] and other [[:Category:Poké Mart vendor glitches|Poké Mart vendor glitches]].
Line 14 ⟶ 49:
{|
|-
|
{| class="wikitable sortable"
| Name || Index number (hexadecimal) || Index number (decimal) || Game || Uses
|-
| [[ItemDex/RB:000|j.]] || 00 || 0 || Pokémon Red and Blue || One of the most common glitch items, which can be sold for a high price of 414925 Pokédollars.
|-
| [[ItemDex/Y:000|#×##]] || 00 || 0 || Pokémon Yellow || One of the most common glitch items, which can be sold for a high price of 414925 Pokédollars.
|-
| [[ItemDex/RGBY:022|CascadeBadge]] || 16 || 22 || Pokémon Red, Blue, Yellow || Throw a rock and double a wild Pokémon's catch rate.
|-
|
|-
|
|-
|
|-
|
|-
|
▲| ws m || 63 || 99 || Pokémon Yellow || Arbitrary code execution (initially runs DA7F; stored Pokémon data).
|-
|
|-
|
|-
| [[ItemDexJP/Y:101 (v1.1+)|はやぶさバッヂ (FalconBadge)]] || 65 || 101 || Pokémon Yellow (Japanese, v1.1+) || Causes arbitrary code execution at 0xD4CA (ninth PC item).
|-
| [[ItemDexJP/RGB:103|なかよしバッヂ (FriendBadge)]] || 67 || 103 || Pokémon Red, Green, and Pokémon Blue (Japanese) || Arbitrary code execution (initially runs D983, number of Safari Balls and the Day Care data, stored Pokémon data which follows. A special Day Care Pokémon name can be used to redirect the code directly to a location of the player's choice, otherwise if there is no Safari Ball/Day Care data, stored Pokémon data can be used like English Yellow's ws m and English Red/Blue's -g m.
▲| Lg- || 6E || 110 || Pokémon Yellow || Restart a Trainer battle. Partially escape from a wild battle (useful for [[LOL glitch]]). Make walking Pikachu stay (useful for Pikachu off-screen glitch).
|-
|
|-
| [[ItemDexJP/Y:106 (v1.1+)|ゴールドバッヂ (GoldBadge)]] || 6A || 106 || Pokémon Yellow (Japanese, v1.1+) || Acts as a Pokémon Center nurse.
| (blank) || 78 || 120 || Pokémon Red and Blue || Restart the music. Change to an overworld (02, 1F) sound bank from the sound bank (08). Play the music with ID at D35B with bank at D35C (D35B, D35C can be manipulated with expanded items pack).▼
|-
|
|-
|
|-
|
|-
| [[ItemDex/RGBY:007|?????]] || 07 || 07 || Pokémon Red, Blue, Yellow || Acts outside of battle like using the field move Surf. Can also be used to change to the wrong music bank inside of a battle if used in a battle facing water.
| PC || 80 || 128 || Pokémon Red and Blue || [[Unterminated name glitch item|Unterminated name lagless glitch item]] (useful for [[LOL glitch]]). Hex:00 item effect freeze.▼
|-
▲| [[ItemDex/RB:120|(blank)]] || 78 || 120 || Pokémon Red and Blue || Restart the music. Change to an overworld (02, 1F) sound bank from the sound bank (08). Play the music with ID at D35B with bank at D35C (D35B, D35C can be manipulated with expanded items pack).
| 2pゥ || 92 || 146 || Pokémon Yellow || [[Unterminated name glitch item|Unterminated name lagless glitch item]] (useful for [[LOL glitch]]). Acts as an Ultra Ball.▼
|-
| [[ItemDexJP/RG:123|てへ]] || 7B || 123 || Pokémon Red and Green || Arbitrary code execution (initially runs D806; wild Pokémon data or temporary player name storage for the old man battle) and an [[unterminated name glitch item]].
| o || 94 || 148 || Pokémon Yellow || Activate the Rival's effect. Otherwise if used on a Pokémon may act like an Awakening.▼
|-
| [[ItemDexJP/B:123|がつ円れにギぅ ぶ ぐどべぇ べあ゙ザ (etc.)]] || 7B || 123 || Pokémon Blue (Japanese) || [[Unterminated name glitch item]]. Arbitrary code execution (initially runs D806; wild Pokémon data or temporary player name storage for the old man battle).
| RIVAL'S || A2 || 164 || Pokémon Red and Blue || Activate the Rival's effect. Otherwise if used on a Pokémon may acts like an item with no noticeable effect.▼
|-
| [[ItemDexJP/Y:124 (v1.0)|♀へん]] || 7C || 124 || Pokémon Yellow (Japanese, v1.0) || Steal other Trainer's Pokémon.
|-
| [[ItemDex/RB:124|8 8]] || 7C || 124 || Pokémon Red and Blue || Create encounter chains from a Trainer escape glitch encounter by using it when the menu pops up in a specific map. Must be used indirectly via [[unterminated name glitch item]], or in combination with a unterminated name glitch item, to avoid a freeze when CFC4 is odd.
|-
▲| [[ItemDex/RB:128|PC]] || 80 || 128 || Pokémon Red and Blue || [[Unterminated name glitch item|Unterminated name lagless glitch item]] (useful for [[LOL glitch]]). Hex:00 item effect freeze.
|-
▲| [[ItemDex/Y:146|2pゥ]] || 92 || 146 || Pokémon Yellow || [[Unterminated name glitch item|Unterminated name lagless glitch item]] (useful for [[LOL glitch]]). Acts as an Ultra Ball.
|-
▲| [[ItemDex/Y:148|o]] || 94 || 148 || Pokémon Yellow || Activate the Rival's effect. Otherwise if used on a Pokémon may act like
|-
▲| [[ItemDex/Y:164|RIVAL'S]] || A2 || 164 || Pokémon Red and Blue || Activate the Rival's effect. Otherwise if used on a Pokémon may acts like an item with no noticeable effect.
|}
|}
Line 69 ⟶ 114:
{|
|-
|
{| class="wikitable sortable"
! Hex ID !! Dec ID !! Item
|-
| 00 || 0 || [[?]]
|-
| 06, 19, 2D, 32, 38, 46 (G/S only), 5A, 64, 73 (G/S only), 74 (G/S only), 78, 81 (G/S only), 87, 88, 89, 8D, 8E, 91, 93, 94, 95, 99, 9A, 9B, A2, AB, B0, B3, BE || 5, 19, 45, 32, 38, 46 (G/S only), 90, 100, 115 (G/S only), 116 (G/S only), 120 (G/S only), 129 (G/S only), 135, 136, 137, 141, 142, 145, 147, 148, 149, 153, 154, 155, 162, 171, 176, 179, 190 || [[Unused items#Unused items in Generation II|Teru-
|-
| C3 || 195 || [[TM04 (useless)]]
Line 84 ⟶ 127:
| DC || 220 || [[TM28 (useless)]]
|-
| FA || 250 || [[HM08 (
|-
| FB || 251 || [[HM09 (
|-
| FC || 252 || [[HM10 (
|-
| FD || 253 || [[HM11 (
|-
| FE || 254 || [[HM12 (
|-
| FF || 255 || [[HM13 (
|}
|}
Note that Teru-
====TMs and HMs outside of the correct pocket====
''Main article: [[Wrong pocket TMs and HMs]]''
In addition to the regular glitch items in Gold, Silver, Crystal, all of the normal TMs and HMs will serve as glitch items when used outside of the TM/HM pack, due to having invalid execution pointers.
Below are a number of useful TMs and HMs to use outside of the relevant pocket.
(Sources: [
{|
|-
|
{| class="wikitable sortable"
! Hex ID !! Dec ID !! Item !! Version !! Use
|-
Line 120 ⟶ 163:
|-
| D0 || 208 || TM17 || Crystal (English) || Executes arbitrary code from FA47 (Echo RAM for DA47, which is somewhere in the expanded Balls pocket.
|-
| D0 || 208 || TM17 || Gold/Silver (English) || Executes arbitrary code from FA47 (Echo RAM for DA47, which is the caught data for party Pokémon 1. The player can make a jump to somewhere more useful (via C3 yy xx), using Pokémon 1 as a [[slide Pokémon]] if necessary.
|-
| D4 || 212 || TM21 || Crystal (English) || Executes arbitrary code from FA69 (Echo RAM for DA69, which is somewhere in the expanded Balls pocket; like TM21.
Line 134 ⟶ 179:
===In {{RSE}}, {{FRLG}}===
There are many glitch items in these games named "[[????????]]" with no apparent use other than for arbitrary code execution setup. The hex:FFFF "????????" can be distinguished for having the 'return to menu' sprite as its sprite.
===In {{DPP}}, {{HGSS}}===
These games feature a hex:0000 glitch item which is referred to as "[[None]]" when forced as a Poké Mart gift. There are also glitch items with index numbers between hex:0071 and hex:0086, and a large number of other glitch items which may be nameless.
==External links==
*[[ItemDex|Link to the ItemDex item database]].
==See also==
*[[Glitch decoration]]
[[Category:Generation I glitches]]
[[Category:Generation II glitches]]
Line 149 ⟶ 195:
[[Category:Generation IV glitches]]
[[Category:Glitch things]]
[[Category:Glitch items|*]]
|
Latest revision as of 12:41, 3 July 2024
0x1500 control code arbitrary code execution (Crystal) | Cart-swap arbitrary code execution | Generation I custom map script pointer | Generation I invalid meta-map scripts | Generation I item ("8F", "ws m", "-g m", "5かい", "てへ" etc.) | Generation I move ("-", "TM42") | Generation I Trainer escape glitch text boxes | Generation II bad clone | Generation II Burned Tower Silver | Japanese Crystal Pokémon Communication Center SRAM glitches | Coin Case glitch | Generation II glitch Pokédex sortings | Pikachu off-screen glitch ACE | OAM DMA hijacking | Serial interrupt ACE | Pikachu glitch emote | Generation III glitch Pokémon summary | Generation III glitch move animation) | Remote code execution | TM/HMs outside of the TM/HM pocket | Type 0xFF mail arbitrary code execution (Japanese Crystal) | ZZAZZ glitch Trainer FC
List of arbitrary code execution programs
Glitch items are invalid items in the Pokémon games. Unavailable items such as Pokémon FireRed and LeafGreen key items in Pokémon Emerald may also be considered to be glitch items, as well as unused/unavailable items such as ????? (hex:07) and BoulderBadge (hex:15) — see unused items.
Glitch items may have special uses (in Generations I and II), different names (in Generation I and to an extent Generation II) and Poké Mart buy and sell price data.
Some glitch items such as "9F" (hex:5E) in Pokémon Red and Blue or Pokémon Yellow, or "RIVAL'S" (hex: A2) in Red and Blue, or "o" (hex:94) in Yellow always have the same use(s).
Other glitch items execute data in writable memory, with a select few glitch items such as such as "8F" in Pokémon Red and Blue (hex:5D) and "ws m" in Pokémon Yellow (hex:63) being ideal for arbitrary code execution.
In Pokémon Red, Green, Blue, and Yellow
Glitch items occupy index numbers hex:00, hex:54 through to hex:C3 and hex:FB through to hex:FF.
Types of glitch items:
- Unterminated name glitch items: These are items without a 0x50 byte in the first 20 characters of their name. They can be used for various buffer overflow techniques with specific tiles on the screen. When the A-Button is pressed on them without a 0x50 sub-tile present on the screen, it is most likely the game will freeze.
- Lag name glitch items: These cause the items list to temporary freeze until the player taps A or B a specific number of times while scrolling up/down. It is advised to tap B instead of A due to the risk of a game freeze from an unterminated name glitch item, which could freeze the game, and potentially destroy the save data, especially on Nintendo 3DS Virtual Console versions.
- Rival's effect glitch items: These glitch items are capable of causing the Rival's effect; an effect that opens a menu and allows the player to walk through impassable tiles once it is closed with B.
- Partial escape glitch items: These allow for the player to partially escape from a wild battle, or restart a Trainer battle.
- Screen data saving glitch items: These allow for the player to create a copy of the screen while the items menu is open, which is useful for Rival LOL glitch or a similar glitch.
- String printing glitch items: These may include a variable string in the item's name
- Map distortion glitch items: Documented by TheZZAZZGlitch, these glitch items have the capability of corrupting the map when their name is shown, in an area with a lot of grass. A player name that is four characters long or more is also required.
- Arbitrary code execution glitch items: These glitch items do not have hard coded effects; instead the effects are sourced from a pointer in rewritable memory, such as RAM. Depending on the source pointer, it is possible to manipulate the item to do almost anything in game. 8F (0x5D) and ws m (0x63) are infamous examples in the English versions.
- RAM name glitch items: These are glitch items with randomized names. They are not known to exist in the English versions, but an example is ItemDexJP/B:000 from Pokémon Blue (Japanese).
How to obtain glitch items:
All glitch items:
- Dry underflow glitch or original item underflow glitch>Celadon looping map glitch
- Glitch City RAM manipulation (Cut abuse): For expanded PC items
- Other expanded items pack glitches; namely, Super Glitch, 255 Pokémon glitch, ZZAZZ glitch and more
Some glitch items:
- Get glitch items using left-facing shore tile glitch (Red/Blue)
- Get glitch items using Trainer escape glitch (Yellow)
- Glitch City RAM manipulation (buffer overflow techniques): For move 0x00 corruption
Many glitch items are available with the Celadon looping map trick, Item creation glitch (a Select glitch in Red/Green/Blue), Yami Shop glitch and other Poké Mart vendor glitches.
Examples of particularly useful glitch items include:
|
In Pokémon Gold, Silver and Crystal
Glitch items in Pokémon Gold, Silver and Crystal occupy a number of index numbers, as such:
|
Note that Teru-sama items which are not Teru-sama in Crystal are the key items "Clear Bell" (hex:46), "GS Ball" (hex:73), "Blue Card" (hex:74) and "Egg Ticket" (hex:81) respectively.
TMs and HMs outside of the correct pocket
Main article: Wrong pocket TMs and HMs
In addition to the regular glitch items in Gold, Silver, Crystal, all of the normal TMs and HMs will serve as glitch items when used outside of the TM/HM pack, due to having invalid execution pointers.
Below are a number of useful TMs and HMs to use outside of the relevant pocket.
|
In Pokémon Ruby, Sapphire and Emerald, Pokémon FireRed and LeafGreen
There are many glitch items in these games named "????????" with no apparent use other than for arbitrary code execution setup. The hex:FFFF "????????" can be distinguished for having the 'return to menu' sprite as its sprite.
In Pokémon Diamond, Pearl and Platinum, Pokémon HeartGold and SoulSilver
These games feature a hex:0000 glitch item which is referred to as "None" when forced as a Poké Mart gift. There are also glitch items with index numbers between hex:0071 and hex:0086, and a large number of other glitch items which may be nameless.