You are not logged in.
Pages: 1
does anyone know the table or offsets that point to the trainer sprites?
i must have accidentally overwrote some data with tilesets and so either agixp shows them glitched or not at all. i should have originally used manual offset insertion. but now im stuck, i cant repplace the sprites with agixp nor do i know where it stored these sprites. so my only chance is to repoint it myself to an empty space where i could insert it. thus the reason why i need to know where the pointers are.
Pokemon Blue DX is reborn!
It's really not
Offline
http://hax.iimarck.us/topic/173/
Trainers
x518A6 - How many trainer groups
x80000 - Pointer table to trainer pictures
x3993E - Pointer table to where trainer data starts. 2 byte pointer for each trainer group in order, starting with Falkner
xE9027 - Table with which song plays when you are "seen" by a trainer
x27283 - Table that determines DVs for each trainer class. 2 bytes per trainer class.With this, you can do a lot of neat things. You could repoint the trainer groups for gym leaders, allowing them to have multiple entries so you could script rematches with them, or if you wanted to change their name to be longer or give them more Pokemon than they had to begin with. Also handy for adding more trainers of a certain type, or if you wanted to give Professor Oak his own trainer data (by default, his data points to the same location as Elite Four Will)
x39562 - Table that determines how much money is given by each trainer
For calculating the given money of any battle, a value from that table is picked and is multiplied by (8 * [highest leveled pokemon of enemy]). For example, the third byte in the list (19) is used for given money for trainer group "Leader (Falkner)".
Following it are six bytes you don't have to worry about and another "19" used for given money for trainer group "Leader (Whitney)" and so on...
Basically, you can find the "given money" byte for each trainer with the following calculation:
0x39564 + ([Trainer Group] - 1) * 7(Credit to Miksy91)
I am not very active on this forum. I only pop in from time to time.
Offline
yyes thanks. i always find these things before given an answer..im just tired and out of it to look though i had a feeling i saw it before.
Pokemon Blue DX is reborn!
It's really not
Offline
Is teh pointer 2 bytes or 3?
Pokemon Blue DX is reborn!
It's really not
Offline
don't answer that
Offline
I've been in such a noobish mood lately :)
Pokemon Blue DX is reborn!
It's really not
Offline
Usually pointer tables have a really obvious pattern. Also keep in mind where the trainer pics actually are.
Offline
The thing is I can never discern pointers unless I'm the one that worked with specific ones. The pointers already established, I don't know how to "reverse engineer" them.
Pokemon Blue DX is reborn!
It's really not
Offline
Really obvious.
Offline
How. Instead of a short sighted answer why not just say it.
Pokemon Blue DX is reborn!
It's really not
Offline
I want you to stare at the pointers for ten minutes and tell me you don't see a pattern.
Offline
Don't see it lol
Pokemon Blue DX is reborn!
It's really not
Offline
To the left are your trainer pic pointers, to the right are some text pointers from a random bank in a different game.
Guess which are two-byte and which are three-byte.
EDIT: fixed former pic
Offline
The left is 2 byte. But that doesn't explain how I find the orignal offset.
Pokemon Blue DX is reborn!
It's really not
Offline
Sanky's pic is wrong.
Offline
Holy fuck I think I do see it. It's 3 bytes, the last byte must be the bank?
Pokemon Blue DX is reborn!
It's really not
Offline
The first byte is the bank.
Offline
Why are they stretched out across many banks?
Pokemon Blue DX is reborn!
It's really not
Offline
Here's the first line of bytes at $80000 in gold:
19 6e 44 1c 3b 50 19 e0 68 1b 34 79 1d 95 5e 1c
Now, if they were two bytes long they would look like:
19 6e 44 1c 3b 50 19 e0 68 1b 34 79 1d 95 5e 1c ...
6e19 1c44 503b e019 1b68 7934 951d 1c5e
If they were three bytes, it would look more like:
19 6e 44 1c 3b 50 19 e0 68 1b 34 79 1d 95 5e 1c ...
19:446e 1c:503b 19:68e0 1b:7934 1d:5e95
Since the only valid rom addresses are between $0000-$7fff, and we can assume that they're not in bank 0, we can write off the first option. There's no way the pointers are 2 bytes.
The trainer pics are mixed in with monster pics in an effort to fill up each bank as much as possible. Many banks are completely full, which usually never happens. This turns out to be totally useless here because there is plenty of free space. In crystal, the last pic bank was accidentally duplicated, which wasted more space than they saved.
Last edited by comet (2013-02-11 21:18:54)
Offline
This turns out to be totally useless here because there is plenty of free space.
How much? In Gold/Silver, not Crystal. Could an argument be made that potentially they were only given 1MB, which was later increased to 2MB?
You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.
Offline
Pages: 1