Jump to content

List of hex offsets


berelinde

Recommended Posts

Somewhere, there must be a list of hex offsets. I know this. I've seen it somewhere, but I haven't a clue where.

 

This sounds like the kind of thing that would be extremely useful to have available for those last minute "So *now* what" needs.

 

I've been searching various forums and the IESDP for several hours, and haven't had any luck so far.

Link to comment

Yeah, I saw that table in my searching, and it probalby answers my question, but I was probalby a bit too vague.

 

I'm bad at ordinary math. I haven't a hope of constructing any sort of hexadecimal offset on my own. I was looking for something that would tell me that WRITE_ASCII 0x248 assigns an override script whereas WRITE_ASCII 0x94 assigns an area script whereas WRITE_ASCII 0X34 assigns a small portrait.

 

Sorry this is such a nOOber question. I just figured that if I'm going to be slinging these numbers around, I should probalby have the list somewhere for easy reference.

 

NI I can work. I'll start there, if nobody else has done this before.

Link to comment

I do not know about anything descriptive however I did not tried to find it.

 

With little practice you'll be fine with those IESDP tables.

 

Briefly:

Open ITM V1.0 (for example). There are several tables with offset, size and description columns.

 

When you are deciding between WRITE_xxxxx, look to size column.

byte ~ WRITE_BYTE

word ~ WRITE_SHORT

dword ~ WRITE_LONG

resref ~ WRITE_ASCII

 

When you are trying to find offset you have to be more careful:

Header table offsets can be used as absolute values.

- example: if you wanted to set minimum charisma requirement to 14, you would type WRITE_BYTE 0x32 14

 

Extended header table and Effect table are more tricky. These have not fixed positions. Every item may have several extension headers and every extension header (and item itself) can have several effects.

You have to know how many of those tables they are and which one you want to correct. Then you have to calculate offset. There are algorithms to go through item effects and patch it based on conditions however it is not for me to explain at 5:00 AM.

Link to comment
I was looking for something that would tell me that WRITE_ASCII 0x248 assigns an override script whereas WRITE_ASCII 0x94 assigns an area script whereas WRITE_ASCII 0X34 assigns a small portrait.
Isn't that all listed here? ??? That's what I've been using anyway.
Link to comment
Yeah. That will do it. I can probalby get by with that. The idea of calculating them was making me feel faint. I am *really* bad at math.

Unfortunately you cannot avoid calculating a bit. I give you example (not in WeiDU) of modifying all item global effects:

for (i = 0; i < number_of_global_effects; i = i + 1)
{
 begin_of_effect_record = offset_to_feature_blocks + i * size_of_effect_record
 write_something (begin_of_effect_record + offset_in_effect_table) (value)
}

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...