@Jipo
See, I knew it wouldn't be too hard to understand.
Offsets for Data Structures (like SaveGameData) are usually hardcoded.
Offsets for Variable Structures (like GameTextBlocks [language differences]) are normaly at the start of the Block.
That means that the Pointer points to the offsetlist .
Example 1 (hardcoded in gamecode):
The pointer for savedata does point to the start of the block.
And there are 20-30 places of interest in there. (money,pokke,exp,etc..)
and each has it's own offset, of course.
The game now loads the pointer into a variable. (s0,v0,a0,etc)
and uses the hardcoded offsets (fixed in the code as intermidiate values)
to adress the spot: 770,s0 (offset,pointer stored in variable)
like this it can store or load from there (sb,sh,sw,lb,lh,lw) [store & load asm instructions (8/16/32bit)].
Example 2 (pointer to offsetlist)
Let's use a textblock from mhfu (english language) as an example.
They can be found @ 1CC4A4-238BC0
There are 23 TextBlocks in this area each with it's own offsetlist.
In this case offsets are 32bit values and
the offsetlist is terminated by FFFFFFFF
Text is always terminated by a 0 byte.
The TextBlock is also terminated by a 0 byte.
(Meaning two 0 bytes signal the end of a block)
Code:
The Pointer points to the start of the offsetlist.
(In this case it's the Adress of the ItemDescriptions TextBlock)
1DAB1F
and now we want to find the 7th text entry.
For this we use the Pointer, and add 6*4 as the offset.
6 because 0 is the first offset and 4 because each is 4 bytes (32bit) long
0x6 * 0x4 = 0x18
Now we add that to the Pointer:
0x1DAB1F + 0x18 = 0x1DAB37
We recieve the Adress of the offset for the 7th Text entry.
Now we need to see what's there:
0x1DAB37 -> 0x152F
Next we can add this to the Pointer:
0x1DAB1F + 0x152F = 0x1DC04E
And finally we have the Adress we were looking for:
0x1DC04E -> "With this book, you too
can use alchemy. What will
you create?"
Now there is also another way the game uses.
For Cat Names & Cat Decriptions it loads all languages at once
and adds a pointerlist below them to adress each entry.
I guess that was a bit technical,again... as usual... 
Just ask if something is still unclear
Bookmarks