Main Menu
Main Page
New pages
Recent changes
Random page

Arbitrary code execution
Pokémon cloning
Pomeg glitch and Glitzer Popping
Tweaking and voiding
Glitches by generation
Other glitch categories

Disassembly projects
The Big HEX List
Interactive tools
Reference documents

Legendary Star Blob 2 (Hakuda) (日本語/Japanese)
Pokémon Speedruns wiki (English)
PRAMA Initiative (Français/French)
MissingNo. Glitch City (Italiano/Italian)
Become an affiliate!

Site source code

Search Wiki


Search Forums


Author Topic: pokemon inter-gen trading glitches?  (Read 1331 times)

0 Members and 1 Guest are viewing this topic.


  • GCLF Member
  • Offline Offline
  • Gender: Male
  • IV's and EV's? Ain't nobody got time for that!
    • View Profile
pokemon inter-gen trading glitches?
« on: September 18, 2014, 06:16:39 am »
Is there any glitch in RBY where if you trade a pokemon to GSC it will be holding an item? (Note that in gen 1 pokemon couldnt hold items)

Show your support by following my (yet empty) Newgrounds Profile!


  • aka GlitcherRed, azum4roll
  • Member+
  • *
  • Offline Offline
  • Gender: Male
  • 975642dx║'r DExsfoF▓1 error.
    • View Profile
Re: pokemon inter-gen trading glitches?
« Reply #1 on: September 18, 2014, 07:23:41 am »
All Pokemon, when transferred from a gen 1 game and a gen 2 game, will hold an item. The item depends on the "catch rate" of the traded Pokemon. (Yes, catch rate was stored in independent Pokemon for some reason)

Guess where this is?

Evie (retired from head adminship)

  • Veteran Contributor
  • *
  • Online Online
  • Gender: Female
    • View Profile
Re: pokemon inter-gen trading glitches?
« Reply #2 on: September 18, 2014, 09:04:53 am »
Additionally, it's possible to change the item via glitching. Like what camper says, catch rate is stored in memory (specifically in WRAM) in a Pokémon's data structure, just before the move 1 memory address (at D172 for party Pokémon 1). So if you were to use the code 01xx72D1, you could change the first Pokémon's catch rate; and hence held item.

The index number of the held item is often equal to the catch rate, but not always; certain index numbers correspond to item with different index numbers.

Glitches to get wrong items:

1) I think it's possible to use the ZZAZZ glitch to get a hex:99 Teru-Sama IIRC.

2) Another way of 'registering' a glitch item should be with the 'storage box bytes shifting back' glitch with a remaining PP of 63 (possible with the PP underflow glitch, or you could theretically use a Trainer ID with a FF byte in it, etc.)

Note though that this messes up the types, so the Pokémon will be considered 'abnormal' even if you make the species bytes equal and the Pokémon less than level 101 (actually I need to double check if level counts. I think it does). Paco81 said you can fix this by taking the Pokémon into Stadium 2, but this may revert the catch rate back to normal?

3) You can use arbitrary code execution to get any held item you want.

This is my Red/Blue 8F code (for Pigdevil2010 or TheZZAZZGlitch's bootstrap codes), which changes the index number of the catch rate of stored Pokémon 1 to the quantity of item 2.

Poké Ball x250
Thunderstone x211
TM34 x157
TM18 x201
04 | inc b
FA 21 D3 |ld a, D321
EA 9D DA |ld DA9D, a
C9           |ret

To port to Yellow (requires ws m), change Thunderstone into Fire Stone, and x157 into x156.

The reason why I chose stored Pokémon 1 was because 8F requires specific party Pokémon, so you probably wouldn't want to trade these away.

For ws m this applies to stored Pokémon, not party Pokémon, so changing party Pokémon 1 would be a better idea there.

So, a better code for Yellow would be:

Poké Ball x250
Fire Stone x211
TM34 x114
TM09 x201
04 | inc b
FA 20 D3 |ld a, D320
EA 72 D1 |ld D172, a
C9           |ret

What are invalid held items useful for? Some Key Items are potentially really useful for the duplicate key items glitch in GSC, because this lets you expand the key items pocket, and then the balls pocket to use boxed PC items there from anywhere.

I need to revise the glitch again, but the quantity of an item in certain circumstances may never decrease. In addition to stored PC items, the radio tunage address can be accessed past the end of the last valid key item address, and it can be $20; allowing you to use infinite Rare Candies.

The most useful application of duplicate key items glitch is arbitrary code execution. Certain TMs and HMs execute code from the memory when they are not in the TM/HM pocket.

It's arguably not worth it, but in Crystal TM33 can execute arbitrary code from F418 (essentially D418, the third character of fifth enemy Pokémon's nickname). You can access TM33 from the balls pocket if you had one in the stored PC items and set up balls pocket expansion via duplicate key items glitch.

With Generation I arbitrary code you can put C3 F2 D8 in the third character of a Pokémon's nickname; which is a jump to D8F2 (Crystal PC item 1). To put that data where it should, you can battle another Generation II game.

From PC items, you can set up code to do things like get Celebi, as I've done here.

But, I think it would be easier to just do Coin Case arbitrary code execution on Gold/Silver then transfer the Celebi to Crystal.

Coincidentally, you can use duplicate key items to get Celebi with no Crystal arbitrary code or a second Generation II game, however, it messes up event flags.

4) FE corruption, I think.
« Last Edit: September 18, 2014, 09:11:44 am by Torchickens »

Here have some free flowers on every post :)

(Images © Sanrio, Nintendo, Pokémon, HAL Laboratory) Sorry I don't know who made the Eevee butterfly fan art :(

✿ Hi, I'm Evie. No longer active here other than to answer questions, messages. Sorry I've had to step down and have demoted myself (will explain later). I suggest contacting Photon-Phoenix/Yuzihax, and Abwayax.

Forgiveness. I feel that the more people pray to our greatest source/God/mathematical equality for world peace, the more and more it manifests into reality (until our next spiritual death).

Thank you Nyapon for this lovely artwork. :3