Tool-assisted game movies
When human skills are just not enough

Game Information

GBC Pokémon: Gold Version

  • Platform: GBC (Game Boy Color)
  • Abbreviation: pokegold
  • Display name: Pokémon: Gold Version
  • Goodtools name: Pokemon - Gold Version
  • Game resources: GameResources/GBx/PokemonGen2
  • In group: Pokémon

[Tier: Moons]GBC Pokémon: Gold Version (USA/Europe) in 2:54:27.15 by FractalFusion.
VBA movie (.vbm) (date: 2006-07-17)
MP4 file via BitTorrent (size: 96.8 MB, length: 2:58:42)
MKV file via BitTorrent (Modern HQ) (size: 107.43 MB, length: 2:58:42)
Mirror www.archive.org
Mirror www.archive.org (MKV Modern HQ)
Watch on (www.dailymotion.com)
Watch on (www.youtube.com)
Submission #1123 — Author's comments
Discuss this movie
Rating: 5.7 (43 votes)
View Publication
- Takes damage to save time
- Forgoes major skip glitch
- Forgoes final boss skip glitch
- Uses a game restart sequence
- Forgoes time-saving glitches
- Foregoes memory corruption
- Heavy luck manipulation
- Genre: RPG
Pokémon Gold and Silver form the second generation of Pokémon, after Pokémon Red and Blue. The main differences between the generations is that the game is now in full color, and that there are 251 Pokémon instead of 151.

This movie plays through Pokémon Gold in a fairly fast manner, catching only a half dozen Pokémon in the process, but acquiring all the gym badges, and ultimately beating the protagonist of the previous generation of Pokémon games.

The author of this movie, FractalFusion, has written very extensive details of anything regarding this movie, including even some of the mathematical formulas used by the game. As usual, we recommend reading these comments.

This movie requires VBA1.7.2 v17 to synchronize. See the submission text for details.

[Tier: Moons]GBC Pokémon: Gold Version (USA/Europe) "save glitch" in 54:24.96 by bobmario511.
lsnes movie (.lsmv) (date: 2013-12-30)
MKV file via BitTorrent (Modern HQ) (size: 38.93 MB, length: 57:24)
MP4 file via BitTorrent (Compatibility) (size: 47.84 MB, length: 57:24)
Mirror archive.org (MKV Modern HQ)
Mirror archive.org (MP4 Compatibility)
Watch on (www.youtube.com)
Submission #4140 — Author's comments
Discuss this movie
Rating: 7.1 (7 votes)
View Publication
- Takes damage to save time
- Major skip glitch
- Uses a game restart sequence
- Heavy glitch abuse
- Corrupts save data
- Corrupts memory
- Heavy luck manipulation
- Genre: RPG

This movie has been obsoleted!

Click here to see the movie that obsoleted it.
Pokémon: Gold Version and Silver Version form the second generation of Pokémon, after Red Version and Blue Version. New features include full color, a new region called Johto, and 100 all new Pokémon.

This run by bobmario511 completes the game in under an hour by manipulating luck and abusing bugs to corrupt the memory and save data. One of these bugs allows him to bring up the Pokémon menu to distort map tiles into garbage blocks that are sometimes possible to walk on, allowing the player character to get to places he normally shouldn't. For more information, see the author's comments.

We also have a run of this game that avoids all use of memory corruption.

#47500104950339689 - Pokemon Gold: Spaceworld 1997 Demo TAS
Pokémon Gold - Spaceworld 1997 Demo (Debug) (Header Fixed).bk2 (1.88kB bk2 movie [GB])
Uploaded 2018-06-01 03:55:11 by dekutony (331 files)
For GBC Pokémon: Gold Version (2 files)
In 01:28.23 [5270 frames], 239 rerecords)
5274 views, 319 downloads
what you read in the title. Might do the pikachu music minigame, but it's an autoscroller so...
Info Download

#13184606113877724 - Pokémon: Gold Version any%
MrWint_pokemongold_112335.bkm (1.39MB bkm movie [GBC])
Uploaded 2014-03-08 18:06:09 by MrWint (7 files)
For GBC Pokémon: Gold Version (2 files)
In 31:20.79 [112335 frames], 18773013 rerecords)
9116 views, 838 downloads
Updated version that fixed various small mistakes.
Info Download

The purpose of this page is to document all known tricks of the Pokemon generation 2 games on Game Boy Color, which include Gold, Silver, and Crystal.

Table of contents [expand all] [collapse all]

  • G/S = Gold/Silver
  • C = Crystal

Luck Manipulation

The timing of a button press has a high influence on random factor. The duration of a button press (how long it is held down) has a mild influence on random factor. For example, holding a button down for different durations usually (but not always) preserves a critical hit while randomizing damage. Mashing the A button during dialog slows down the text a little, so it can be used to luck-manipulate.

When catching Pokémon, timing of entering squares has a high influence on random factor. Walking around in the grass without stopping has a mild influence; the desired type of Pokémonis not likely to change, but its DVs are likely to change. Duration of a button press also has a mild influence.

Most actions are determined when they are needed; for example, critical hits are determined when the damage is calculated, and attack misses are determined at the end of the attack message. However, there are a few things to watch out for:

(Game Mechanics)

  • When both Pokémon have the same speed, all things being equal, the one going first is decided when the attack is selected in the menu.
  • When using Quick Claw (1/4 chance to go first if slower, all other things being equal), the chance is determined when the attack is selected.
  • Paralyze effect (unable to move) is determined just before the attack is attempted, and confusion effect (self-damage) is determined after "(Pokémon) is confused!"
  • Added effects of attacks (flinch, stat boost, confusion, paralyze, etc.) are determined when calculating damage.


  • Enemy Pokémon moves are determined when the attack is selected.
  • Trainer moves are determined before the menu appears.
    • Smart trainers will always use stronger attacking moves over weaker ones.
    • Smart trainers will always try to use moves that knock out your Pokémon if it is possible.
    • Smart trainers may also do things like use potions or switch to a Pokémon that resists your last attack.
  • It may be possible to manipulate the trainer Pokémon order. The choice of Pokémon is determined after experience dialogs from knocking out the previous Pokémon.
    • The first Pokémon is always fixed.
    • Smart trainers will always bring in a Pokémon that can knock out your Pokémon if it is possible, and will always avoid bringing in a Pokémon that is weak to yours.


  • Some things like the direction that a randomly looking trainer looks, as well as people movement, can be manipulated.
  • Wild Pokémon encounters are determined when you step into a patch of grass.

(Pokémon personal stats)

  • Personal stats (DVs, nature, ability, shiny, Pokérus, etc) for the starter Pokémon are determined when you obtain the Pokémon.
  • Personal stats for wild Pokémon are determined on encounter.

Useful memory addresses (GSC)[1]

D0F5-D0F6: DVs of current opponent. This is used to determine the DVs of wild Pokémon that you want to catch.

D0FF-D10C: Stats of current opponent. Each value is two-byte big-endian in the following order: current HP, total HP, attack, defense, speed, special attack, special defense. The current HP is the most important.
(Note: Focus on D100, D102, ... instead of D0FF, D101, ...)

D141-D142: Amount of damage (big-endian) that an attack is about to do. How this address works is rather convoluted. Calculations begin after the dialog “X used attack”.

  1. The base damage is calculated (if critical hit, it is considered) and placed in D142.
  2. If attack is super-effective or not-very-effective or such, multiply D142 appropriately.
  3. If a multiplying factor such as Rage is involved, multiply D142 appropriately.
  4. If any other factors, multiply D142 appropriately.
  5. Random reduction factor, multiply D142 by a random number between 217 and 255, and integer divide by 255.
    1. The number before this step is the max damage possible and is only achieved rarely (if the random number is 255).
  6. If miss, set D142 to 0.
  7. The value in D142 now is the damage inflicted.
  8. If it would knock out Pokémon, set to current HP of that Pokémon (after HP bar begins to decrease).

Note that not all these values appear, but the base damage, max damage, and damage inflicted will usually appear on a frame-by-frame basis.
(Note: Focus on D142 instead of D141)

D151: If using Magnitude, the Magnitude number appears here right after “X used attack” appears.

In-game time:
D1EC: Hours
D1ED: Minutes, one byte
D1EE: Seconds, one byte
D1EF: Frames, one byte

D9BC/D9EC: One-byte values for the overworld step count (mod 256). Useful for going through dark tunnels without having to mash the arrow buttons.

DA02-DA03: X-Y coordinates of character on overworld map. Going right increases X and going down increases Y.

DA3F-DA40: DVs of first Pokémon in party. This is for your starting Pokémon.

[1] Credit goes to primorial#soup who found the memory addresses.