Pokémon level up learnset data structure (Generation IV)

The Pokémon level up learnset data structure is a sequence of 2-byte units representing the moves a Pokémon learns naturally, without the use of egg moves, tutors, TMs or HMs.

Structure

The structure is made of substructures, each 2 bytes long and representing a single move the Pokémon learns. It's terminated by FF FF, which is followed by 2 bytes of padding (00 00) if there's an even number of moves on the list to ensure the next Pokémon's learnset is aligned to the 4-byte.

The substructure

The first byte of the substructure is the lower 8 bits of the move index. The highest bit is stored as the least significant bit in the second byte, while the rest is the level when the Pokémon learns the move. For example, Plusle's structure starts with 2D 02, since its first move, at level 1, is Growl. Its fourth substructure is 0E 15, since the move is Helping Hand (number is 0×010E), which is learned at level 10 (0×15 is 21).

Fingerprint

Below is a sample of the data for the first Pokémon level up learnset structures.

FF 00 // ?????????? (used for unknown/glitch Pokémon)
21 02 2D 06 49 0E 16 12 4D 1A 4F 1A 24 1E 4B 26 E6 2A 4A 32 26 36 84 3F EB 42 92 4B FF FF 00 00 // BULBASAUR 
21 02 2D 02 49 02 2D 06 49 0E 16 12 4D 1A 4F 1A 24 1E 4B 28 E6 2E 4A 38 26 3E 84 49 EB 4E 4C 58 FF FF 00 00 // IVYSAUR 
21 02 2D 02 49 02 16 02 2D 06 49 0E 16 12 4D 1A 4F 1A 24 1E 4B 28 E6 2E 4A 38 26 3E 50 40 84 4F EB 5A 4C 6A FF FF 00 00 // VENUSAUR 
0A 02 2D 02 34 0E 6C 14 52 20 B8 26 A8 33 A3 38 35 44 53 4A FF FF 00 00 // CHARMANDER 
0A 02 2D 02 34 02 34 0E 6C 14 52 22 B8 2A A8 39 A3 40 35 4E 53 56 FF FF // CHARMELEON 
...


Data structure in the Pokémon games
Generation I Pokémon speciesPokémonPoké MartCharacter encodingSave
Generation II Pokémon speciesPokémonTrainerCharacter encoding (Korean) • Save
Generation III Pokémon species (Pokémon evolutionPokédexType chart)
Pokémon (substructures) • MoveContestContest moveItem
Trainer TowerBattle FrontierCharacter encodingSave
Generation IV Pokémon species (Pokémon evolutionLearnsets)
PokémonSaveCharacter encoding
Generation V-present Character encoding
TCG GB and GB2 Character encoding


  This data structure article is part of Project Games, a Bulbapedia project that aims to write comprehensive articles on the Pokémon games.