Item Generation Tutorial for Patch 1.11
The Table of Contents
3. Short Explanation of Drop Process
4. Game data files
4.3. MagicPrefix.txt and MagicSuffix.txt
5. Area, monster and item levels
6. TC selection and number of dropped items
7. Item type selection
8. Item quality selection
9. Set and unique item selection
10. Sockets' number selection
11. Affix selection
12. Item generation at shops
14. Ethereal items
15. Rune and charm generation
16. Quest drop and Andariel bug
17. Object drops
22. Circlets and Magic Level
23. Runes in Hell Forge
24. Magic Find
25. 1.11 Drop Changes
The goal of most players in Diablo II is to kill enemies while staying alive. This trivial concept is based on three things that determine your effectiveness: 1) your tactics, 2) the build of your character, 3) the items, that you use. All this things have great impact on gameplay, you'll quickly die at hell difficulty if you play without any tactics, you'll be killing slowly without wise skill distribution, but many people find, that the most important aspect of Diablo II is its unique item system. Almost any character reckon on its items, for example a Mage becomes very powerful after doubling his skill levels, using items, and a Warrior almost completely cannot be separated from his weapon. Many peoples spend a lot of hours, trying to find certain items, and most dedicated players makes item hunting the goal of their playing.
This guide is trying to answer most popular question about item generation, most aspects of item creation in the game.
If you have any other questions, feel free to post them in Single Player Forum or Statistics Forum.
Item Type it is a kind of item, e.c. a cap, a gem, a short sword, a ring.
Item Quality it is a kind of item properties: low quality, normal, superior, magic, rare, set, unique.
Affixes it is item magic properties: prefixes and suffixes. Note, that not all item properties are affixes. For example: stuffmods, predefined properties of crafted items and some special mods of set and unique items. E.c. "+60 to Mana" on magic ring is affix, "+20% crushing blow" isn't affix.
Qlvl Quality level. 1) A level of item type. All this levels are stored in weapons.txt, armor.txt and misc.txt data files. 2) A level of set or unique item. All this levels are stored in UniqueItems.txt and SetItems.txt data files.
Ilvl Item Level. All items in the game have levels, that is generated when it is created. For some strange reason Blizzard decided to hide it from players. Don't confuse Item Level with Required Level, it is different things.
Mlvl Monster Level. All monsters in the game have levels as well as players.
Area Level Area Level. All areas in the game also have levels.
Alvl Affix Level. It is a level of prefix or suffix. They are stored in MagicPrefix.txt and MagicSuffix.txt in "Level" column. The name "Affix Level" is used to differ them from other "Levels".
TC Treasure Class. All item type in the game is organised in the game into treasure classes. They are recursive. This means, that one treasure class may include another treasure class. E.c. Hell Baal drop all his items from "Baal (H)" treasure class, which consists of "Act 5 (H) Equip B", "Act 5 (H) Junk" and "Act 5 (H) Good" treasure classes. Each of them consists of several other treasure classes.
Clvl Character Level. It is one of few levels, that you can actually see in the game.
Rarity it is value, assigned to every set and unique item in the game. Higher the rarity of an item, more common it is in the game. So you may see that "Rarity" is quite bad name. E.c. Stone of Jordan has Rarity=1, Manald Heal has Rarity=15.
SP Single Player mode.
3. Short Explanation of Drop Process
When you kill a monster or open a chest the game may generate items to reward you. Their properties are also generates at the same moment. The item may be unidentified, however if it is dropped it already has certain properties, that isn't depends on who will identify it or when.
The game creates dropped items with algorithm of such kind:
1) At the beginning it finds treasure class (TC), that describes all drops of the monster you killed or a chest, you opened, rock, you touched, etc. All drop sources have treasure classes.
2) Then it makes one or several iterations, that are called "Picks", when it selects one chose from several possibilities.
2.1) One of this possibilities often is so called "NoDrop", when it simply no drop items at all. However, note, that the game may do several picks, so one of them may select NoDrop, but all other selects some items. Most normal monsters have only one pick, though.
2.2) If it selects to pick from another TC, than it starts another cycle of picks from the selected TC, which may again contain several picks from different TCs and may also have NoDrop chance.
3) At some iteration the game may eventually select certain item type. If this item may have several qualities, the game starts algorithm of quality determination. E.c. Keys, runes, potions may only be normal quality, but rings, short swords, helms, bucklers may have different qualities like magic or unique. Note that Magic Finding works only here.
4) For every selected item it calculates item level.
5) If it selects unique or set quality, the game creates the list of all such items according to item level. Then it selects one of item from the list randomly according to rarity. If there are no any items in the list, then it will create double durability magic or triple durability rare item.
6) After it selects item type and item quality, it generates item affixes if needed. Also it generates all other properties of an item, that may vary. E.c. El runes, mana potions, identify scrolls doesn't have variable properties, but magic rings, rare kite shields, cracked sashes needs property generation.
You may find this algorithm a bit complicated, but it is actually quite simple. I'll show you it in the next chapters, when I'll explain every step in details.
If you want, I'll simplify it even more. When, say you kill Mephisto, the game:
- calculates the number of items to drop;
- selects item types;
- selects item qualities;
- selects certain unique or set items if needed;
- selects item properties.
4.Game data files
At this chapter I'll explain several data files, that are used in item generation process.
Many parameters of drops are stored in txt files, that are packed to MPQ files in your Diablo II directory. If you have installed ATMA you may find that files unpacked in its data folder.
This files is stored in CSV format, it is plain text tables, you may open them in Excel or OpenOffice.org.
You don't need to know everything about them to be effective in item hunting, that files are a bit complicated. However it would be better to know their structure.
If you are crazy dedicated item hunter like me, I suggest you to look at Diablo II 1.10 file guides, that are published at Phrozen Keep.
Note, that I will not explain the fields, that are not needed for item generation.