Pokémon in the games Pokémon Diamond, Pearl, and Platinum are stored in a 136 byte or 236 byte structures. All unencrypted values are stored in little-endian format. The game encrypts the data when it is stored in the save file. Party Pokémon have additional values to hold current battle stats and conditions. The information below describes the Pokémon data format.
The checksum serves two purposes:
It validates the data after decryption, and
It serves as the encry