From Bulbapedia, the community-driven Pokémon encyclopedia.
The Time Capsule exploit, also known as the Johto guard glitch, is a method used in Pokémon Gold, Silver, and Crystal that works around the programming checks put in place on the Time Capsule to prevent players from trading Generation II Pokémon to Pokémon Red, Green, Blue, and Yellow. The Pokémon sent over to the older game is either recognized as a glitch Pokémon or a Generation I Pokémon, depending on its index number.
To exploit the Time Capsule checks, a Generation I and II game as well as a Game Link Cable are required.
In-game, the player will need a ????? (FF). There are multiple ways to obtain a ????? with an index number of 0xFF. The Celebi Egg glitch can be used to get any version of ?????. To do this, the Celebi Egg glitch should be done with a Pokémon that has only two moves. This will produce an Egg that will hatch into a "bad clone" of ????? (00), likely ????? (00) though there are ways to obtain a ????? (FC) or ????? (FE). If the player has a ????? (00), the player must deposit said "bad clone" into the Pokémon Day Care on Route 34. Should everything go correctly, the "bad clone" will become a ????? (FF). If the Egg hatched into ????? (FC) or ????? (FE), the player will need to train them to level 3 or 18, respectively, to have them evolve into ????? (00) before depositing the "bad clone" into the Day Care. A second, though more random, method is to use a cloning glitch to create a "bad clone" on the save file. The "bad clone" must then be taken to the Day Care to attempt a ????? (00) "bad clone" after withdrawing it. If the withdrawn Pokémon is a ????? (00), it can be deposited back into the Day Care and withdrawn again to become a ????? (FF).
Hiding Generation II Pokémon
This exploit takes advantage of ????? (FF)'s "cloaking" capabilities. If the ????? (FF) is switched above a Generation II Pokémon, it is possible to bring Generation II Pokémon into the Time Capsule, as long as each Generation II Pokémon in the party is hidden below the ?????. This is because Pokémon below ????? (FF) are temporarily regarded as being of index number 0x00, and ????? (00), being number 0x00, is not considered as a Generation II Pokémon by the game. In addition, ????? (FF) is regarded as index number FF, which becomes the CANCEL function. As such, Pokémon below the ????? (FF) will be regarded as 'M (00)RB or 3TrainerPoké $Y.
However, the game will still block the Pokémon if it has any moves which originated from Generation II even if ????? (FF) is above it, so any moves which originated from Generation II must still be removed by the Move Deleter if they are known by a Pokémon to be hidden by the ????? (FF).
The exploit is useful for obtaining glitch Pokémon in Generation I games, and can be used to obtain almost any glitch Pokémon in Generation I, including glitch Pokémon previously unobtainable via the Ditto glitch and old man glitch because of a procedure where an equivalent Trainer class is fought if glitch Pokémon with index numbers of 200 and above are fought in the wild.
Reverting 'M (00)/3TrainerPoké $ into an equivalent species
If ????? (FF) is switched back underneath the Generation II Pokémon after entering the Time Capsule, its original species is restored, meaning that Generation II Pokémon can be taken into the Time Capsule.
If the Pokémon is traded as an 'M (00) or 3TrainerPoké $, it is actually an unstable hybrid of 'M (00) or 3TrainerPoké $ and the actual glitch Pokémon, with the actual Pokémon as the recipient and the 'M (00) or 3TrainerPoké $ as the donor. To stabilize an unstable hybrid Pokémon, a Pokémon can be evolved (in the way the recipient would), traded to Pokémon Stadium 2, or deposited and withdrawn from the Day Care. A stabilized hybrid will be the species and level of the recipient Pokémon (or its evolved form if it was evolved), but have the stats, nickname, and moves of the donor. Once stabilized, the Pokémon can be traded to the Generation II games.
Since Generation II Pokémon do not exist in Generation I, the received Generation I Pokémon is determined by a conversion table for index numbers 0x01-0xFA which is hardcoded in the ROM of Gold, Silver, and Crystal. It is currently unknown what determines the equivalent Pokémon in Generation I for a Generation II Pokémon with index numbers 0x00 and 0xFB-0xFF because the equivalent Generation I Pokémon is not consistent on the species for these Pokémon.
This requires arbitrary code execution, as if the Pokémon received from Generation I changes its type (except Magnemite and Magneton), the trade is considered illegal.
None of them can be traded between Generations I and II without arbitrary code execution because their type is Bird/NormalRB or Normal/999Y.
| This video is not available on Bulbapedia; instead, you can watch the video on YouTube here.