View Single Post
Old 24th May 2014, 03:16 AM   #1
Pia Carrot
Orange Developer
Pia Carrot's Avatar
Join Date: Aug 2010
Location: Valencia Island
Age: 23
Posts: 811
Pia Carrot Pia Carrot Pia Carrot Pia Carrot Pia Carrot
Default Pokemon Gold: Editing Pokedex Data

I'm trying to teach myself about how this works as I could not find any documentation about it. In Pokemon Gold, Pokedex data starts at offset 1A0000. It is a pretty confusing format with very limited space to work with. I have not looked into adding new Pokedex data, although I'm sure it's very possible.

I'm going to take ONIX as an example here.
ROCK SNAKE/4###It twists and#squirms through#the ground. The/thunderous roar of#its tunneling#echoes a long way.
I'm still trying to find out what the 4### (which is FA 0A 16 12 in hex) means, but I assume it is height and weight, could be way off on that, this will require more looking into.
EDIT: It is indeed the Height and Weight, first two bytes are height, second two are weight, the game adds a decimal automatically for you.

Now, each # (4E) in the text denotes a line break, and / (50) in the text signifies a new page. I am pretty certain you can only have two pages.

Now, if you notice something, each line can have a maximum of 18 characters, just like normal text. Any more will cause text overflow, and I wouldn't risk having any less, so fill anything extra with a space(s).

That's really all there is to it, I will look more into Footprints and H/W before I update this guide. I still cannot find what makes Footprints on the dex. EDIT: According to Mateo they are uncompressed images in the It begins at offset F930E.

EDIT: Height and Weight data here thanks to shinyquagsire

[00:44] <shinyquagsire> Pia: It literally takes the full 16 bit number
[00:44] <shinyquagsire> and throws a decimal between the first number and the second
[00:45] <shinyquagsire> Pia: Try inserting D2 04
[00:45] <shinyquagsire> to confirm my theory
[00:45] <shinyquagsire> should be 123.4
[00:47] <shinyquagsire> insert decimal number minus decimal point
[00:47] <shinyquagsire> take hexadecimal
[00:47] <shinyquagsire> pad with 0's
[00:47] <shinyquagsire> and flip
[00:47] <shinyquagsire> so 4D2 -> 04D2 -> D2 04

To get this weight, Cranidos' weight bytes would be B6 02.
The decimal value of it originally was 694.
The hex value was 2B6, or 02 B6. Now all you do is flip them and you've got your bytes.

If you are rewriting the Pokedex, you can find the pointers for data at offset 44360.
Pia Carrot is offline   Reply With Quote
Sponsored Links