--- title: "ITM file format" ---
Header: Size = 114 Bytes | Ext. Header: Size = 56 Bytes | Feature Block: Size = 48 Bytes |
Offset | Size (datatype) | Description |
---|---|---|
0x0000 | 4 (char array) | Signature ('ITM ') |
0x0004 | 4 (char array) | Version ('V1.1') |
0x0008 | 4 (strref) | Unidentified Name (strref) |
0x000c | 4 (strref) | Identified Name (strref) |
0x0010 | 8 (resref) | Drop sound - played when the item is dropped in the inventory (WAV) |
0x0018 | 4 (dword) | Flags |
0x001c | 2 (word) | Item type |
0x001e | 1*4 (byte) | Usability bitmask |
0x0022 | 2 (char array) | Weapon animation (Nameless character only)
|
0x0024 | 2 (word) | Min Level |
0x0026 | 2 (word) | Unused |
0x0028 | 2 (word) | Unused |
0x002a | 2 (word) | Unused |
0x002c | 2 (word) | Unused |
0x002e | 2 (word) | Unused |
0x0030 | 2 (word) | Unused |
0x0032 | 2 (word) | Unused |
0x0034 | 4 (dword) | Price |
0x0038 | 2 (word) | Stack amount |
0x003a | 8 (resref) | Inventory icon (BAM) |
0x0042 | 2 (word) | Lore to ID |
0x0044 | 8 (resref) | Ground icon (BAM) |
0x004c | 4 (dword) | Weight |
0x0050 | 4 (strref) | Unidentified Description (strref) |
0x0054 | 4 (strref) | Identified Description (strref) |
0x0058 | 8 (resref) | Pickup sound - played when the item is picked up in the inventory (WAV) |
0x0060 | 4 (dword) | Enchantment |
0x0064 | 4 (dword) | Offset to extended headers |
0x0068 | 2 (word) | Count of extended headers |
0x006a | 4 (dword) | Offset to feature blocks |
0x006e | 2 (word) | Index into equipping feature blocks |
0x0070 | 2 (word) | Count of equipping feature blocks |
0x0072 | 8 (resref) | Dialog (DLG) |
0x007a | 4 (strref) | Conversable label (strref) |
0x007e | 2 (word) | Paperdoll animation colour |
0x0080 | 2 (word) | Unknown |
0x0082 | 4 (dword) | Unknown |
0x0086 | 4 (dword) | Unknown |
0x008a | 4 (dword) | Unknown |
0x008e | 4 (dword) | Unknown |
0x0092 | 4 (dword) | Unknown |
0x0096 | 4 (dword) | Unknown |
Offset | Size (datatype) | Description |
---|---|---|
0x0000 | 1 (char) | Attack type
|
0x0001 | 1 (char) | ID Req.
|
0x0002 | 1 (char) | Location
|
0x0003 | 1 (char) | Alternative dice sides |
0x0004 | 8 (resref) | Use icon |
0x000c | 1 (char) | Target type
|
0x000d | 1 (char) | Target count |
0x000e | 2 (word) | Range |
0x0010 | 1 (byte) | Projectile type
|
0x0011 | 1 (byte) | Alternative dice thrown |
0x0012 | 1 (byte) | Speed |
0x0013 | 1 (byte) | Alternative damage bonus |
0x0014 | 2 (word) | THAC0 bonus |
0x0016 | 1 (byte) | Dice sides |
0x0017 | 1 (byte) | Primary type |
0x0018 | 1 (byte) | Dice thrown |
0x0019 | 1 (byte) | Secondary type |
0x001a | 2 (word) | Damage bonus |
0x001c | 2 (word) | Damage type
|
0x001e | 2 (word) | Count of feature blocks |
0x0020 | 2 (word) | Index into feature blocks |
0x0022 | 2 (word) | Charges |
0x0024 | 2 (word) | Charge depletion behaviour
|
0x0026 | 4 (dword) | Flags |
0x002a | 2 (word) | Projectile animation (projectl.ids/missile.ids) |
0x002c | 2*3 (word) | Melee animation |
0x0032 | 2 (word) | Unused |
0x0034 | 2 (word) | Unused |
0x0036 | 2 (word) | Unused |
Offset | Size (datatype) | Description |
---|---|---|
0x0000 | 2 (word) | Opcode number |
0x0002 | 1 (char) | Target type
|
0x0003 | 1 (char) | Power |
0x0004 | 4 (dword) | Parameter 1 |
0x0008 | 4 (dword) | Parameter 2 |
0x000c | 1 (char) | Timing mode
|
0x000d | 1 (char) | Resistance The default behaviour is that effects cannot be dispelled and ignore resistance.
This can also be presented in the more traditional way:
|
0x000e | 4 (dword) | Duration |
0x0012 | 1 (char) | Probability 1 |
0x0013 | 1 (char) | Probability 2 Note: The BG1 engine treats probability as a single word, effects are applied in the range 0-probability. Note: Other engines treat probability as two values, effects are applied in the range probability <= x <= probability. Probability range is 0-99 |
0x0014 | 8 (resref) | Resource |
0x001c | 4 (dword) | Dice Thrown |
0x0020 | 4 (dword) | Dice Sides |
0x0024 | 4 (dword) | Saving throw type
|
0x0028 | 4 (dword) | Saving throw bonus |
0x002c | 4 (dword) | Special |
Bit | Byte 1 | Byte 2 | Byte 3 | Byte 4 |
---|---|---|---|---|
0 | Unsellable (critical item) | Silver | Unused | Unused |
1 | Two-handed | Cold-Iron | Unused | Unused |
2 | Movable | Steel | Unused | Unused |
3 | Displayable | Conversable | Unused | Unused |
4 | Cursed | Pulsating | Unused | Unused |
5 | Cannot scribe to spellbook (scrolls) | Unused | Unused | Unused |
6 | Magical | Unused | Unused | Unused |
7 | Unused | Unused | Unused | Unused |
Code | Item type |
---|---|
0x0000 | Books/misc |
0x0001 | Amulets and necklaces |
0x0002 | Armor |
0x0003 | Belts and girdles |
0x0004 | Boots |
0x0005 | Arrows |
0x0006 | Bracers and gauntlets |
0x0007 | Helms, hats, and other head-wear |
0x0008 | Keys (not in Icewind Dale?) |
0x0009 | Potions |
0x000a | Rings |
0x000b | Scrolls |
0x000c | Shields (not in IWD) |
0x000d | Food |
0x000e | Bullets (for a sling) |
0x000f | Bows |
0x0010 | Daggers |
0x0011 | Maces (in BG, this includes clubs) |
0x0012 | Slings |
0x0013 | Small swords |
0x0014 | Large swords (in BG, this includes 2-handed and bastard swords) |
0x0015 | Hammers |
0x0016 | Morning stars |
0x0017 | Flails |
0x0018 | Darts |
0x0019 | Axes (specifically, 1-handed axes -- halberds and 2-handed polearms not included) |
0x001a | Quarterstaff |
0x001b | Crossbow |
0x001c | Hand-to-hand weapons (fist, fist irons, punch daggers, etc) |
0x001d | Spears |
0x001e | Halberds (2-handed polearms) |
0x001f | Crossbow bolts |
0x0020 | Cloaks and robes |
0x0021 | Gold pieces (not an inventory item, but can appear as "monster dropped" treasure) |
0x0022 | Gems |
0x0023 | Wands |
0x0024 | Containers/eye/broken armor |
0x0025 | Broken shields/bracelets |
0x0026 | Broken swords/earrings |
0x0027 | Tattoos (PST) |
0x0028 | Lenses (PST) |
0x0029 | Bucklers/teeth |
0x002a | Candles |
0x002b | Unknown |
0x002c | Clubs (IWD) |
0x002d | Unknown |
0x002e | Unknown |
0x002f | Large Shields (IWD) |
0x0030 | Unknown |
0x0031 | Medium Shields (IWD) |
0x0032 | Notes |
0x0033 | Unknown |
0x0034 | Unknown |
0x0035 | Small Shields (IWD) |
0x0036 | Unknown |
0x0037 | Telescopes (IWD) |
0x0038 | Drinks (IWD) |
0x0039 | Great Swords (IWD) |
0x003a | Container |
0x003b | Fur/pelt |
0x003c | Leather Armor |
0x003d | Studded Leather Armor |
0x003e | Chain Mail |
0x003f | Splint Mail |
0x0040 | Half Plate |
0x0041 | Full Plate |
0x0042 | Hide Armor |
0x0043 | Robe |
0x0044 | Unknown |
0x0045 | Bastard Sword |
0x0046 | Scarf |
0x0047 | Food (IWD2) |
0x0048 | Hat |
0x0049 | Gauntlet |
Bit | Byte 1 | Byte 2 | Byte 3 | Byte 4 |
---|---|---|---|---|
0 | Unusable by Chaotic | Unusable by Godsmen | Unusable by Indeps | Unusable by Ignus |
1 | Unusable by Evil | Unusable by Anarchist | Unusable by Fighter Thief | Unusable by Morte |
2 | Unusable by Good | Unusable by Chaosmen | Unusable by Mage | Unusable by Nordom |
3 | Unusable by Good-Evil Neutral | Unusable by Fighter | Unusable by Mage Thief | Unknown |
4 | Unusable by Lawful | No Faction | Unusable by Dak'kon | Unusable by Annah |
5 | Unusable by Lawful-Chaotic Neutral | Unusable by Fighter Mage | Unusable by Fall-From-Grace | Unknown |
6 | Unusable by Sensates | Unusable by Dustmen | Unusable by Thief | Unusable by Nameless One |
7 | Unusable by Priest | Unusable by Mercykillers | Unusable by Vhailor | Unknown |
Bit | Byte 1 | Byte 2 |
---|---|---|
0 | Add strength bonus | Unknown |
1 | Breakable | Unknown |
2 | Unknown | Hostile |
3 | Unknown | Recharges |
4 | Unknown | Unknown |
5 | Unknown | Unknown |
6 | Unknown | Unknown |
7 | Unknown | Unknown |