Pokémon data structure (Generation IV)
Pokémon in the games Diamond and Pearl are all stored the same way in a 136-byte structure.
Need to figure out how checksum is computed
Need to figure out the encryption algorithm for bytes 08-87
00-03 Personality value 04-05 Unknown 06-07 Checksum
Block A
08-09 Species ID 0A-0B Held Item 0C-0D OT ID 0E-0F OT Secret ID 10-13 Experience points 14 Friendship/Egg Steps to Hatch 15 Ability 16 Markings 17 Country of Origin 18-1D Effort values 1E-23 Contest stats 24-27 Ribbons
Block B
28-2F Moveset 30-33 Move PP 34-37 Move PP Ups 38-3B Individual values 3C-3F Unknown 40 Gender 41-47 Unknown
Block C
48-5D Nickname 5E Unknown 5F Hometown 60-62 Contests 63-67 Unknown
Block D
68-77 OT Name 78-7A Date Egg Received 7B-7D Date Met 7E-7F Egg Location 80-81 Met At Location 82 Unknown 83 PokeBall 84 Met At Level 85-87 Unknown