I dont think people are understanding what I mean lol. Im talking about rare items not sets or uniques. Ill use the rare armor for example and its dropping double of the same rare item.Seemingly people are getting confused but RARE items have the yellow lettering
I have several whites, blues, and rares that dropped the same time, and they have the same durability and max durability, and every property is the exact same. Got a pair of Chance like that too. I mean it is possible with RNG on most items as mods get multiple rolls for item drops, but I never got hit with a comet and the universe has not ended from some fundamental force going from meta stable to a lower expected vacuum state. I would say the algorithm that controls what drops and when is just a bit of old and new code that make it wonky sometimes.
Diablo 2 Item Dropper
Also even if a no X unique drop state is triggered, or even some mods that can roll on rares that are forbidden, if the RNG pull the same number X time and the game will give up trying to reroll and drop that item to keep the game stable. Odds would be way out there but folks buy millions of lotto tickets over a month or two playing D2.
All three have a great impact on gameplay -- characters die quickly on Hell difficulty if they play without wise tactics and kill slowly with poor skill distribution, but most players find that the essential element is proper use of items. A magic using character will see her effectiveness increase dramatically if she doubles her skill levels, and the effectiveness of a melee fighter or bow user is a direct reflection of the quality of their weapon. As a result, most players spend hours seeking top quality items, and then hours more trying to improve their gear further. At the highest end, most truly dedicated players spend virtually all their game time item hunting.
When you kill a monster or open a chest the game may generate items to reward you. The properties of these items are generated at that moment, even though the item may be unidentified. The game creates dropped items with algorithm of such kind:
Many parameters of drops are stored in txt files, that are packed to MPQ files when Diablo II is installed. If you have installed ATMA you may find that files unpacked in its data folder. These files are stored in CSV format, a plain text format that may be viewed with Excel or OpenOffice.org. You do not need to know everything about these complicated files to be effective in item hunting, but it will help if you know something about their structure. Truly dedicated item hunters will want to dig deeper into the files, and will find the D2 file guides posted at the Phrozen Keep, of value.
This is the most important file. It organizes all droppable items into a system of Treasure Classes. Since each source of items in the game (except NPCs) drop items from Treasure Classes, this is crucial to understand.
TreasureClassEx.txt file doesn't contains all treasure classes. At run time the game adds quite a few additional TCs. Their names are ArmoXX and WeapXX, where XX is two digit number. The game creates them from the armor.txt and weapons.txt files, by looking at quality levels. The first TC of armors, Armo03, contains all armor items with levels from 1 to 3: Cap, Quilted Armor, Leather Armor, Buckler, Gloves, Boots and Sash. The next armor TC, Armo06 contains all armor items with levels from 4 to 6, and so on. The last armor TC, Armo87, contains all armor items with levels from 85 to 87. Weapons are organized in their TCs, Weap03-Weap87 by the same manner.
In this TCs Prob1-Prob10 values determine how likely the given items in those TCs are to drop. Some items have penalties and are therefore seen less frequently. A few of these, for illustrative purposes:
These values interact with how many items are found in a given TC to create item shortages and abundances. The given items in a TC with 12 items will be comparatively less common than the items in a TC with 7 items. And if those 7 items include several wands and claws, the normal items in that TC will be highly overrepresented. Breast Plates, for instance.
All monsters have treasure classes, written in monstats.txt file. When you kill a monster in normal difficulty the game simply uses its TC to drop items. However in Nightmare and Hell difficulty the given TC may be upgraded. When determining the TC for a monster, the game selects the highest level TC in the group that is equal to or less than the Mlvl. If there is no group for TC of this monster, than it doesn't upgrade TC. Treasure classes that are included in the selected TC aren't upgraded.
For example: a character kills a non-boss Devilkin in The Pit level 1 in Hell in /players8 mode (or in a full game on Battle.net). The Devilkin has Mlvl=85. In monstats.txt file Devilkin is figured under "fallen3" name. Non-unique fallen3 drop items from "Act 1 (H) H2H B" TC in Hell difficulty. In TreasureClassEx.txt file "Act 1 (H) H2H B" TC has group=7 and level=66. Because Mlvl=85 the TC is upgraded to "Act 5 (H) H2H C" TC, which has level=85 (less or equal to mlvl). So Devilkins in The Pit drop items from "Act 5 (H) H2H C" TC.
As you see the itemratio.txt file contains two rows for Classic mode and four rows for LoD mode. The two rows for Classic mode include the raw for normal and the raw for exceptional items in this order. The four rows for LoD mode include: 1) the raw for non-class specific normal items, 2) the raw for non-class specific exceptional and elite items, 3) the raw for class specific normal items and 4) he raw for class specific exceptional and elite items in this order.
The game selects quality for an item only when it already knows its item level and item type. It does the check for unique quality first. If it is successful it stops the algorithm and generates unique item or triple durability rare (or magic/normal item if this item type cannot be rare). If unique check is failed, the game makes set check by the same manner, then rare check, then magic check, then normal check, until some check will show success. If all checks fall it will generate low quality item.
1) Find proper line in itemratio.txt.2) Chance = (BaseChance - ((ilvl-qlvl)/Divisor)) * 1283) if (we check for unique, set or rare quality) EffectiveMF=MF*Factor/(MF+Factor)else EffectiveMF=MF4) Chance= Chance* 100/(100+ EffectiveMF).5) if (Chance 6) FinalChance=Chance-(Chance*QualityFactor/1024)7) If (RND[ FinalChance ]
After you found the line in TreasureClassEx.txt file, that describe the drops of that monster you may calculate the number of his drops and types of dropped items. The game takes several picks from given TC. The number of picks stored in Picks column of TreasureClassEx.txt file. Typically all normal monsters have one pick. Every pick has chance for no dropping item at all.
The Treasure Classes are like a giant tree, and all are defined in TreasureClassEx.txt. Each row in that file defines a TC, and lists the sub TCs it can drop from. When an item is dropped, the game rolls to determine from which sub TC it will come, then looks at that row and rolls again, and so on until an individual item is selected.
Suppose you are lucky and you get your 1/1566 chance of armo78 from Meph. This is called an "atomic TC" and it is not defined in TCEx.txt. Instead, it is defined by armor.txt, also in your Atma directory. It contains all armours which have level (often called qlvl) 76, 77 or 78. You can also see base item qlvls at d2data.net. Armo78 contains Balrog Skin, Hellforge Plate, Troll Nest, Crusader Gauntlets and Earth Spirit in 1.10. As always when D2 makes a list, it has rarities associated too. Rarities at this level are pretty simple. All items have rarity 3 except class-specific items have rarity 1, assassin claws have rarity 2, and wands, staves and sceptres (rods) have rarity 1. Armo78 has total rarity 3+3+3+3+1=13, so you have a 3/13 chance of getting a Balrog Skin, and a 1/13 chance of getting an Earth Spirit. Meph is not your ideal source for a Spirit Keeper.
You'll note we split off from runes and rings and amulets a long way back. The game decides if you are getting an equipment item or something else very early on. Once the item type is selected, the Magic Find process starts, and determined what quality it will be.
The explanation here is given for monster drops. Most chests and other objects use the same algorithm of quality determination, however special chests have also fixed chances for unique, set, rare and magic items (see chapter 17). The exact mechanics of quality determination can be found in the chapter 4.8, itemratio.txt. Here the process is described in more detail, with examples.
After the game has calculated item level and selected an item type to drop, it selects item quality. It is done by performing a row of test for unique, set, rare, magic, high and normal quality. If some test returns success it will cancel all other tests, if all tests return fail it will generate a low quality item.
1) Find proper line in itemratio.txt.2) Chance = (BaseChance - ((ilvl-qlvl)/Divisor)) * 1283) if (we check for unique, set or rare quality) EffectiveMF=MF*Factor/(MF+Factor)else EffectiveMF=MF4) Chance= Chance* 100/(100+ EffectiveMF).5) if (Chance 6) FinalChance=Chance-(Chance*QualityFactor/1024)7) If (RND[ FinalChance ])
At the first step the game finds suitable line in itemratio.txt. As you know, there are separate lines for Classic/LoD games, class specific/non-class specific items and normal/exceptional and elite items. After finding proper line it has all values, that it needs for calculations: item level, quality level, base quality chance, quality divisor, minimum quality chance, MF%, MF diminishing returns factor and monster quality factor.
Item level is just equal to monster level. Quality level is the level of item type. MF% are taken from players equipment. MF diminishing returns factor is 250 for unique, 500 for set and 600 for rare qualities. All other values are taken from itemratio.txt file, except monster quality factor. The last is maximum value from Unique, Set, Rare, Magic fields of TreasureClassEx.txt file for all TCs, that the game have scanned, searching for this item type. 2ff7e9595c
Comments