View Single Post
Old 10-22-11, 01:57 AM   #165
TheDarkWraith
Black Magic
 
Join Date: Jun 2007
Posts: 11,962
Downloads: 147
Uploads: 5


Default

I was puzzled for the longest time as to how the GrannyViewer knew how many embedded strings to read for an item's extended data. I was also puzzled by how it knew the data type for those items. I'm not puzzled any longer

Another careful look at the pointers showed the error in my ways. The pointer for an item's extended data always had an unknown of 0x6 (my pointer structure is offsetinsectiondata, unknown, offsetinsectionvalue) and the offsetinsection value made absolutely no sense. Once you know what the unknown value is for it all makes perfect sense This unknown will now get its proper name!

That unknown is used along with that offsetinsectionvalue to read another set of pointers. These pointers are how the GrannyViewer knows a) how many embedded strings to read and b) what the data type is for those embedded strings. Mystery solved

wow this clears up many things...

Overall I'm very impressed with the GR2 format. It's slick, it's elegant, and it's beautiful from a programmer's perspective!
TheDarkWraith is offline   Reply With Quote