Ну раз там нет, почитай вот это:
Drop Precentage of Items Part 2 (Unique Items and Magic Find applied)
Home » Technical » Drop Precentage of Items Part 2 (Unique Items and Magic Find applied)
Just remember though, MF% wouldn't have affected the odds of a GC dropping anyway, since MF% only affects the quality of the item, and not the chance of the base version dropping to begin with (which will be expanded on below).
Alright. I was intentially broad on the whole unique/set section, as I didn't know how far into the calculations you wanted to go. I thought it was a "I wonder how that works", rather than a "I want to be able to do the same calculations"

. In any event, this is going to be longer than my first post in this thread, so you'll understand why I didn't mention in there.
In order to fully explain this, you'll need to know that we're going to use another file, called itemratio.txt (also in the ATMA config directory). Before we go into that though, it's important to note that the game tests the item qualities in a certain order. This order is unique, then set, then rare, then magic, then superior, then normal and then finally low quality.
Now...where to begin...where to begin. You might find me jumping all over the place here, as there's abit of extra things you'll need to know to understand how the whole picture works.
Firstly, abit about ItemRatio.txt: The version column indicates whether it's classic (value 0) or expansion (value 1); "uber" basically indicates whether it's a normal item, or an exceptional/elite version, and "class specific" indicates whether it's a class specific item (you'll notice that there's no class specific items in D2 classic).
As explained above, the game first runs through the treasure classes to determine what base item drops. Once this is done, the game then determines the quality of the selected item. This is where your MF% comes into play.
So, let's begin the process. Once a base item is selected, we then need to determine how much of the user's MF% will be used for each of the item qualities. You mentioned the depreciation of MF% with regards to uniques, sets and rares. This is true, and the basic equation used to calculate this is:
Unique = 250 * MF% / (250 + MF%)
Set = 500 * MF% / (500 + MF%)
Rare = 600 * MF% / (600 + MF%)
Note that MF% that is less than or equal to 10% will not be reduced at all. If it's greater than 10%, then plug it through the equation above to determine how much MF% you actually have with regards to each of the item qualities. For example, 300% would equal:
Unique = 250 * 300 / (250 + 300) = 75000 / 550 = 136% MF
Set = 500 * 300 / (500 + 300) = 150000 / 800 = 187% MF
Rare = 600 * 300 / (600 + 300) = 180000 / 900 = 200% MF
Now we need to use the above mentioned ItemRatio.txt to determine the base chance of getting the certain quality. As I mentioned above, the game rolls the quality of the items in a certain order (unique, then set, then rare, etc). The numbers (unique, set, rare, etc) mentioned in TreasureClassEx.txt will be used later, so for now we only care about the ones in
ItemRatio.txt. To determine the base chance, we run through this equation:
BaseChance = (Chance - (mlvl - qlvl) / divisor) * 128.
Chance = the quality type's listed chance in ItemRatio.txt, depending on the mode of gameplay (classic or expansion) and the type of item (class specific, normal or exceptional/elite).
mlvl = the level of the monster that dropped the item
qlvl = the quality level of the selected base item
divisor = the quality type's listed divisor in ItemRatio.txt, depending on the mode of gameplay (classic or expansion) and the type of item (class specific, normal or exceptional/elite).
You might feel that I'm rushing through this, but it's because I plan on doing another example once I've explained the procedure.
After this, the game adds your MF% to the BaseChance, to determine what I'll dub the MFChance. This is done via:
MFChance = BaseChance * 100 / (100 + MF%)
BaseChance = the number we determined with the equation preceeding this one
MF% = the depreciated (if applicable) number I mentioned earlier.
At this point, we need to limit the chance of the item quality to the value mentioned in ItemRatio.txt (eg 6400 for unique, 3200 for rare, etc). This is simply handled by comparing the MFChance to the minimum amount mentioned above, and if found to be less, then assign the minimum amount to MFChance. Written out, it's basically:
IF MFChance < Minimum THEN
MFChance = Minimum
That said, it's probably unlikely that you'll ever meet a situation whereby a unique roll encouters this minimum limit. Still, it's probably possible for rares or sets to.
Finally, we apply the numbers from TreasureClassEx.txt for unique/set/rares/magicals, in what I'll call TotalChance:
TotalChance = MFChance * ( 1 - probability / 1024)**
MFChance = the number we determined with the equation preceeding this one
probability = the number from TreasureClassEx.txt
This brings us to the final part of this area, the actual roll to see if the item will be of that quality. If unsuccessful, the game will return to the beginning and attempt to generate the item as the next quality type. This is probably better shown as a percent chance, which would be 128 out of the above mentioned result, and I'll show you with an example.
Alrighty, assuming you're still with me, let's start an example. We'll use our Grand Charm from Hell Diablo again, and we'll assume the character has 300% MF, which translates to 136% MF for uniques. We want to know what the odds are of it becoming unique (Gheeds Fortune), so the information that we care about are:
Hell Diablo = mlvl 94 (Monstats.txt)
Grand Charm qlvl = 1 (Misc.txt, column "level")
Diablo (H) TC Unique = 983 (TreasureClassEx.txt)
Unique MF% = 136%
UniqueChance = 400 (ItemRatio.txt)
UniqueDivisor = 1 (ItemRatio.txt)
UniqueMin = 6400 (ItemRatio.txt)
Let's begin (I'll show full working):
BaseChance = (Chance - (mlvl - qlvl) / divisor) * 128
BaseChance = (400 - (94 - 1) / 1) * 128
BaseChance = (400 - 93 / 1) * 128
BaseChance = (400 - 93) * 128
BaseChance = 307 * 128
BaseChance = 39296
Next, we add the MF%:
MFChance = BaseChance * 100 / (100 + MF%)
MFChance = 39296 * 100 / (100 + 136)
MFChance = 3929600 / 236
MFChance = 16650.84745762711
MFChance = 16650
Now we do a check for the minimum. Since MFChance is greater than the UniqueMin (16650 > 6400), we move to the next part.
Now we determine the TotalChance, grabbing the number for Uniques from Diablo (H) in TreasureClassEx.txt:
TotalChance = MFChance * ( 1 - probability / 1024)
TotalChance = 16650 * ( 1 - 983 / 1024)
TotalChance = 16650 * ( 1 - 0.9599609375)
TotalChance = 16650 * 0.0400390625
TotalChance = 666.650390625
TotalChance = 666
So the odds of the Grand Charm becoming unique would be 128/666, or 19.21% (128 divided by 666 multiplied by 100)
What does this ultimately translate to? Well, the odds of Hell Diablo dropping a unique Grand Charm, on players 1, with 300%
MF would be:
6 * 3/80 * 60/130 * 2/20 * 128/666 = 0.001995841995841995841995841995842
1 / 0.001995841995841995841995841995842 = 501.04166666666666666666666687804
1:501 chance