Pokédex data structure (Generation III): Difference between revisions

(separated "Description pointers" into two to be more clear)
Line 32: Line 32:
* '''Height''' is measured in decimeters (10<sup>-1</sup> meters), and is then converted to other units in specific versions of games.
* '''Height''' is measured in decimeters (10<sup>-1</sup> meters), and is then converted to other units in specific versions of games.
* '''Weight''' is measured comes in hectograms (10<sup>-1</sup> kilograms), and is then converted to other units in specific versions of games.
* '''Weight''' is measured comes in hectograms (10<sup>-1</sup> kilograms), and is then converted to other units in specific versions of games.
* '''Description pointers''' show the game where the description for the particular Pokémon is. Remember that the GBA is Little Endian, and that a ROM file is loaded at an offset of 0x08000000.
* '''Description pointers''' show the game where the description for the particular Pokémon is. The GBA is Little Endian, and that a ROM file is loaded at an offset of 0x08000000.
:Ruby, Sapphire, FireRed and LeafGreen have two pages of text while Emerald has only one-- "Description pointer #2" simply does not exist.
:Ruby, Sapphire, FireRed and LeafGreen have two pages of text while Emerald has only one-- "Description pointer #2" simply does not exist.
* '''Pokémon offset''' is a signed 16-bit integer-- as a result, if the raw value is 0x8000 or greater, then it is negative, with 0x8000 as -32,768 and 0xFFFF as -1.
* '''Pokémon offset''' is a signed 16-bit integer; therefore, if the raw value is 0x8000 or greater, then it is negative, with 0x8000 as -32,768 and 0xFFFF as -1.


==Size compare function==
==Size compare function==