Updated July 25, 2003
This page gives a detail of each magical property an item can have. See the Item Format page for a view of the complete item structure.
Following the itemspecific data are a variable number of variable length bit fields describing any magical enhancements placed on the item. Each property begins with a 9bit identifier. An identifier of 0x1ff (all 1's) indicates the end of the property list ... except in the event the item belongs to a set, in which case there will be another one or two groups of magical properties following. I have yet to determine how the length of the list is determined for set items.
To read a magical property, first look up its 9bit ID in the first column. The second column shows you how many bits to read to get the value associated with that property (e.g., the amount of fire resistance). The bias field, if present, tells you the amount to subtract from that value to get the actual amount shown in the game; for example, if the field for Extra Gold from Monsters has a value of 150, and the bias is 100, your property is 50% Extra Gold. A few of the items require a little more math; these will be explained in the Contents column.
Several magical properties have two or more data fields. Read these in the order listed in the table. Each magical property ID is associated with a fixed number and size of data fields.
ID (9 bits)  Size of the Following Field  Bias  Contents  

0  7  32  +X to Strength  
1  7  32  +X to Energy  
2  7  32  +X to Dexterity  
3  7  32  +X to Vitality  
7  8  32  +X to Life  
9  8  32  +X to Mana  
11  8  32  +X to Maximum Stamina  
16  9  +X% Enhanced Defense  
17  9  +X% Enhanced Damage
Note: In all of the items I've examined, the two data fields have
the same value.
"Jesus on Bass" suggests that one data field enhances minimum
damage while the other field enhances maximum damage. I have
experimented and confirmed that the first field enhances your maximum
damage, and the second field enhances the minimum damage. 

9  
19  10  +X to Attack Rating  
20  6  X% Increased Chance of Blocking  
21  6  +X to Minimum Damage  
22  7  +X to Maximum Damage  
23  6  +X to Minimum Damage Note: I've often, but not always, seen this property and 21 together, and only one copy shows up in the game. I'm not sure what the difference is. 

24  7  +X to Maximum Damage Note: I've often, but not always, seen this property and 22 together, and only one copy shows up in the game. I'm not sure what the difference is. 

27  8  Regenerate Mana X%  
28  8  Heal Stamina X%  
31  10  10  +X Defense  
32  10  10  +X Defense vs. Missile  
33  10  10  +X Defense vs. Melee  
34  6  Damage Reduced by X  
35  6  Magic Damage Reduced by X  
36  8  Damage Reduced by X%  
37  8  Magic Resist +X%  
38  8  +X% to Maximum Magic Resist A huge thanks goes to Gollen of Hungary for providing a table that revealed this and many other codes in this table. 

39  8  Fire Resist +X%  
40  5  +X% to Maximum Fire Resist  
41  8  Lightning Resist +X%  
42  5  +X% to Maximum Lightning Resist  
43  8  Cold Resist +X%  
44  5  +X% to Maximum Cold Resist  
45  8  Poison Resist +X%  
46  5  +X% to Maximum Poison Resist  
48  8  Adds XY fire damage  
8  
50  6  Adds XY lightning damage  
9  
52  6  Adds XY magic damage contributed by Clement Lau  thanks! 

7  
54  6  Adds XY cold damage  
8  
8  This seems to be the duration of the cold/freeze effect. Divide the value by 25 to get the number of seconds.  
57  9  Adds XY poison damage over Z seconds This property is a tricky one to figure out. For the mathematically inclined, the first two fields give the minimum and maximum, respectively, of ^{1}/_{256}^{th} of a unit of damage every ^{1}/_{25}^{th} of a second. The third field gives the duration of the poison; you divide by 25 to get the number of seconds. Therefore, to compute the amount of damage shown in the game, multiply the first field by the third and divide by 256. (Repeat with the second field.) For example, if the field values are 30, 60, and 75, you get 30*75/256=8, 60*75/256=17, and 75/25=3, so the displayed property is "Adds 817 Poison Damage over 3 seconds". 

9  
8  
60  7  X% Life stolen per hit  
62  7  X% Mana stolen per hit  
73  8  30  +X Maximum Durability  
74  6  30  Replenish Life +X  
75  7  20  Increase Maximum Durability X%  
76  6  10  Increase Maximum Life X%  
77  6  10  Increase Maximum Mana X%  
78  7  Attacker Takes Damage of X  
79  9  100  X% Extra Gold from Monsters  
80  8  100  X% Better Chance of Getting Magic Items  
81  7  Knockback I have no idea what the data field is used for. 

83  3  +X to Amazon Skill Levels  
84  3  +X to Paladin Skill Levels  
85  3  +X to Necromancer Skill Levels  
86  3  +X to Sorceress Skill Levels  
87  3  +X to Barbarian Skill Levels  
89  4  4  +X to Light Radius  
90  5  This property is not displayed on the item, but its effect is
to alter the color of the ambient light. The possible colors are:


91  8  100  Requirements X% Note that after subtracting the bias, X is (usually) a negative number. 

93  7  20  X% Increased Attack Speed  
96  7  20  X% Faster Run/Walk  
99  7  20  X% Faster Hit Recovery  
102  7  20  X% Faster Block Rate  
105  7  20  X% Faster Cast Rate  
107, 108, 109, 181, 182, 183, 184, 185, 186, 187 
9  +Y to spell X (character class
Only) This property is usually applied to classspecific items found in the Expansion Set. The first value selects the skill; there are too many to list here, but I may provide them on another table if people ask nicely. The second value determines how many additional skill points are given. Note that these three properties are all the same. I presume different ID's are used because you can have up to three of these (ten in an Expansion Set game), but no two properties for an item may have the same ID. 

5  
110  8  20  Poison Length Reduced by X%  
111  7  20  Damage +X  
112  7  Hit Causes Monster to Flee X%  
113  7  Hit Blinds Target +X  
114  6  X% Damage Taken Goes to Mana  
115  1  Ignore Target Defense The value of the data field is always 1. 

116  7  X% Target Defense  
117  7  Prevent Monster Heal The value of the data field is 1; I don't know if it means anything. 

118  1  Half Freeze Duration The value of the data field is always 1. 

119  9  20  X% Bonus to Attack Rating  
120  7  128  X to Monster Defense Per Hit  
121  9  20  +X% Damage to Demons  
122  9  20  +X% Damage to Undead Note that many types of weapon have a certain amount of this property inherent in the weapon class, usually with values of 50% or 150%. This property is added on top of the weapon's base Damage to Undead. For example, a flail may have a base rating of 50% Damage to Undead. If this magic property is added to it with a value of 121, then the displayed value is 12120+50=151%. 

123  10  128  +X to Attack Rating against Demons  
124  10  128  +X to Attack Rating against Undead  
126  4  +X to Fire Skills  
127  3  +X to All Skill Levels  
128  5  Attacker Takes Lightning Damage of X  
134  5  Freezes Target  
135  7  X% Chance of Open Wounds  
136  7  X% Chance of Crushing Blow  
137  7  +X Kick Damage  
138  7  +X to Mana After Each Kill  
139  7  +X Life after each Demon Kill  
140  7  Unknown. This property actually doesn't show up in the item's description. Found it on the Swordback Hold Spiked Shield.  
141  7  X% Deadly Strike  
142  7  Fire Absorb X% A huge thanks goes to Gollen of Hungary for providing a table that revealed this and many other codes in this table. 

143  7  X Fire Absorb  
144  7  Lightning Absorb X%  
145  7  X Lightning Absorb  
146  7  Magic Absorb X%  
147  7  X Magic Absorb  
148  7  Cold Absorb X%  
149  7  X Cold Absorb  
150  7  Slows Target by X%  
151  7  Blessed Aim  
152  7  Defiance  
153  1  Cannot Be Frozen  
154  7  X% Slower Stamina Drain  
155  7  X% Chance to Reanimate Target  
156  7  Piercing Attack  
157  7  Fires Magic Arrows contributed by Chris Moore  thanks! 

158  7  Fires Explosive Arrows or Bolts  
159  6  +X to Minimum Damage I've never seen this by itself; it's always been accompanied by properties 21 and 23. 

160  7  +X to Maximum Damage I've never seen this by itself; it's always been accompanied by properties 22 and 24. 

179  3  +X to Druid Skill Levels  
180  3  +X to Assassin Skill Levels  
188, 189, 190, 191, 192, 193 
5  +Y to skill set X Skills
(character class Only) Skill sets are as follows:


5  
194  4  Adds X extra sockets to the item. This is simply added to the item's natural number of sockets. It has no effect if the item is not already socketed. This property may allow an item to have more sockets than the maximum normally permitted on the item. Warning: If you give an item too many sockets, you run the risk of being unable to load the character with strange errors! And even if the game does load successfully, it could crash when you add too many gems to the item! 

195, 196, 197 
9  Z% Chance to cast level Y spell X
on attack The first value selects the spell, which coincidentally matches the class skills as used in property #107 above. 

5  
7  
198, 199, 200 
9  Z% Chance to cast level Y spell X
on striking The first value selects the spell, which coincidentally matches the class skills as used in property #107 above. 

5  
7  
201, 202, 203 
9  Z% Chance to cast level Y spell X
when struck The first value selects the spell, which coincidentally matches the class skills as used in property #107 above. 

5  
7  
204, 205, 206, 207, 208, 209, 210, 211, 212, 213 
9  level X spell W (Y/Z
Charges) The first value selects the spell, which coincidentally matches the class skills as used in property #107 above. The second value selects the level, the third gives the number of charges remaining in the item, and the last is the total number of charges the item started with. This property is usually applied to rings or amulets. 

5  
8  
8  
Note:  Unless otherwise noted, all values Based on Character Level are stored in eighths, so take the number, divide by 8, multiply by the character level, and round down to get the result.  
214  6  +X to Defense (Based on Character Level)  
215  6  X% Enhanced Defense (Based on Character Level)  
216  6  +X to Life (Based on Character Level)  
217  6  +X to Mana (Based on Character Level)  
218  6  +X to Maximum Damage (Based on Character Level)  
219  6  X% Enhanced Maximum Damage (Based on Character Level) A huge thanks goes to Gollen of Hungary for providing a table that revealed this and many other codes in this table. 

220  6  +X to Strength (Based on Character Level)  
221  6  +X to Dexterity (Based on Character Level)  
222  6  +X to Energy (Based on Character Level)  
223  6  +X to Vitality (Based on Character Level)  
224  6  +X to Attack Rating (Based on Character Level) This value is in halves, so take the number, divide by 2, multiply by the character level, and round down to get the attack rating. 

225  6  X% Bonus to Attack Rating (Based on Character Level) This value is in halves, so take the number, divide by 2, multiply by the character level, and round down to get the attack rating bonus. 

226  6  +X Cold Damage (Based on Character Level)  
227  6  +X Fire Damage (Based on Character Level)  
228  6  +X Lightning Damage (Based on Character Level)  
229  6  +X Poison Damage (Based on Character Level)  
230  6  Cold Resist +X% (Based on Character Level)  
231  6  Fire Resist +X% (Based on Character Level)  
232  6  Lightning Resist +X% (Based on Character Level)  
233  6  Poison Resist +X% (Based on Character Level)  
234  6  +X Cold Absorb (Based on Character Level)  
235  6  +X Fire Absorb (Based on Character Level)  
236  6  +X Lightning Absorb (Based on Character Level)  
237  6  X Poison Absorb (Based on Character Level)  
Note:  Unless otherwise noted, all values Based on Character Level are stored in eighths, so take the number, divide by 8, multiply by the character level, and round down to get the result.  
238  6  Attacker Takes Damage of X (Based on Character Level)  
239  6  X% Extra Gold from Monsters (Based on Character Level)  
240  6  X% Better Chance of Getting Magic Items (Based on Character Level)  
241  6  Heal Stamina Plus X% (Based on Character Level)  
243  6  X% Damage to Demons (Based on Character Level)  
244  6  X% Damage to Undead (Based on Character Level)  
245  6  +X to Attack Rating against Demons (Based on Character Level)  
246  6  +X to Attack Rating against Undead (Based on Character Level)  
247  6  X% Chance of Crushing Blow (Based on Character Level)  
248  6  X% Chance of Open Wounds (Based on Character Level)  
249  6  +X Kick Damage (Based on Character Level)  
250  6  X% to Deadly Strike (Based on Character Level) contributed by Chris Moore 

252  5  Repairs 1 durability in X seconds The value of the data field is not actually a time period, but a frequency in terms of the number of times durability is repaired over a period of 100 seconds. For example, if the value is 5, then this property repairs 1 durability in 100/5=20 seconds. 

253  5  Replenishes Quantity As in the previous property, the value of the data field is a frequency in terms of the number of items replenished over a period of 100 seconds. For example, if the value is 4, then this property replenishes 1 item in 100/4=25 seconds. 

254  8  Increased Stack Size The value is the number of additional items that can be placed on the stack (beyond the base limit). 

268 through 303 
2  Note:  This range of magic properties change value depending on
the time of day in the game. The format of the bit fields is the same
in all cases. The first 2bit field specifies the time of day when
the value is at its maximum:
A huge thanks goes to Gollen of Hungary for providing a table that revealed these and many other codes in this table.  
10  
10  
268  2, 10, 10  +X Defense (Increases by time)  
269  2, 10, 10  X% Enhanced Defense (Increases by time)  
270  2, 10, 10  +X to Life (Increases by time)  
271  2, 10, 10  +X to Mana (Increases by time)  
272  2, 10, 10  +X to Damage (Increases by time)  
273  2, 10, 10  X% Enhanced Damage (Increases by time)  
274  2, 10, 10  +X to Strength (Increases by time)  
275  2, 10, 10  +X to Dexterity (Increases by time)  
276  2, 10, 10  +X to Energy (Increases by time)  
277  2, 10, 10  +X to Vitality (Increases by time)  
278  2, 10, 10  X% Enhanced Attack Rating (Increases by time)  
279  2, 10, 10  +X to Attack Rating (Increases by time)  
280  2, 10, 10  +X Cold Damage (Increases by time)  
281  2, 10, 10  +X Fire Damage (Increases by time)  
282  2, 10, 10  +X Lightning Damage (Increases by time)  
283  2, 10, 10  +X Poison Damage (Increases by time)  
284  2, 10, 10  X% Cold Resist (Increases by time)  
285  2, 10, 10  X% Fire Resist (Increases by time)  
286  2, 10, 10  X% Lightning Resist (Increases by time)  
287  2, 10, 10  X% Poison Resist (Increases by time)  
288  2, 10, 10  +X Cold Absorb (Increases by time)  
289  2, 10, 10  +X Fire Absorb (Increases by time)  
290  2, 10, 10  +X Lightning Absorb (Increases by time)  
291  2, 10, 10  +X Poison Absorb (Increases by time)  
2  Note:  All by Time magic properties change value depending on
the time of day in the game. The format of the bit fields is the same
in all cases. The first 2bit field specifies the time of day when
the value is at its maximum:
 
10  
10  
292  2, 10, 10  X% Extra Gold from Monsters (Increases by time)  
293  2, 10, 10  X% Better Chance of Getting Magic Items (Increases by time)  
294  2, 10, 10  Heal Stamina Plus X% (Increases by time)  
295  2, 10, 10  +X to Stamina (Increases by time)  
296  2, 10, 10  X% Damage to Demons (Increases by time)  
297  2, 10, 10  X% Damage to Undead (Increases by time)  
298  2, 10, 10  +X to Attack Rating against Demons (Increases by time)  
299  2, 10, 10  +X to Attack Rating against Undead (Increases by time)  
300  2, 10, 10  X% Chance of Crushing Blow (Increases by time)  
301  2, 10, 10  X% Chance of Open Wounds (Increases by time)  
302  2, 10, 10  +X Kick Damage (Increases by time)  
303  2, 10, 10  X% Deadly Strike (Increases by time)  
511 (0x1ff)  0  End of the (current) property list. If this is a set item, more property lists may follow; otherwise the last byte of item data is zeropadded. 
Please send any additions or corrections to me using my webbased mail form.