暗黑MOD信息免费发布,找新开暗黑Mod就上D2sf,绿色简洁,值得收藏!
首页 > 暗黑技术攻略
ItemRatio.txt描述

发表时间:1970-01-01 08:00:00

ItemRatio.txt By Ulmo

 

前言:ItemRatio.txt文件用于判断掉落物品的品质,游戏会首先判断掉落物品是否是暗金的,否则判断其是否黄金,再否则判断其是否套装物品……依次类推下去,最终全部判断失败的话即为低品质物品;ItemRatio.txt就控制着其中每一步的成功率

判断顺序为:

Unique > Rare > Set > Magic > High Quality >Normal> Low Quality

 

 

Function:参考列,仅作注释,游戏将通过以下三列值来选中正确的行

D2原版中通常不会出现角色专用物品,亦即此类物品是否出现完全是由D2版本号决定的

 

Version:游戏版本,0 = D2原版,1 = D2资料片

Uber:0 =普通级物品,1 =扩展/精华级物品

ClassSpecific:1 =角色专用物品,或者是ItemTypes.txt中Class列不为空的物品,0 =其他

 

Unique:选中暗金物品的基础几率,这个值越高则选中暗金物品的几率越低,也就是说这里的值理解为分母比较好

UniqueDivisor:怪物等级/物品的品质等级对暗金几率的影响因子,这里的值越大,高等级怪物掉落更好的物品的几率就越小

UniqueMin:用于限制怪物等级/物品品质等级以及MF值对于暗金几率的提升,同样是值越高,暗金几率就越低

 

Rare,RareDivisor,RareMin:同以上三列

Set,SetDivisor,SetMin:同以上三列

 

HiQuality,HiQualityDivisor:同上,只不过没有了几率提升限制,也无视MF影响

Normal,NormalDivisor:同上

 

 

物品掉落的判定机理:

首先,游戏将从TC中选择出一个基础物品,关于TC的详细解说请参考TreasureClassEx.txt的相关引导文件;

 

其次,游戏开始判定该物品的品质,以下是判定流程,以一个300%MF的角色杀死地狱难度安达丽尔(MLvl = 75),掉落戒指(QLvl = 1)为例:

·检测该物品是否为暗金:

根据ItemRatio.txt中的UniqueDivisor值,修正因子决定的暗金几率修正量为:

UniqueDec = (MLvl-QLvl)/UniqueDivisor = (75-1)/1 = 74

根据Unique值,暗金的基础几率为:

BaseChance = Unique – UniqueDec = 400 - 74 = 326

根据硬代码的规定,暗金几率需要乘以128进行修正,则修正后的几率为:

ExChance = BaseChance * 128 = 326*128 = 41728

接着,游戏将300%的MF换算成对于暗金物品的有效MF值,得到

EMF = MF*300/(MF + 300) = 300*250/(300+250) = 136%

经过有效MF值作用过的暗金几率为:

MFChance = ExChance*100/(100 + EMF) = 4172800 / 236 = 17681

这里的MFChance大于txt中的UniqueMin值,因此不进行任何操作,如果小于UniqueMin,则以UniqueMin值作为MFChance

地狱安达丽尔的任务TC中,UniqueFactor值= 995,因此实际的暗金几率为:

Chance = MFChance – (MFChance*UniqueFactor) / 1024 = 17681 – 17681*995/1024 = 501

最终游戏会在0到Chance值之间选取一个随机值,如果这个随机值小于等于127,则判定为暗金,因此最终的暗金几率为:

FinalChance = 128/502 = 25.5%

亦即有25.5%的几率得到暗金戒指

·如果检测失败,则继续检测是否为黄金戒指,流程同上,只是代入的数值不同

·失败后检测是否为套装戒指

……

 

这里的例子中,安达丽尔最低掉落蓝色魔法品质的戒指,如果是普通怪物,则在Magic判定失败后还将继续检测该物品是否为高品质物品,等等

在高品质/普通物品的判定流程中,没有MF作用,也没有TC中的几率修饰因子及几率最小值检测

 

关于EMF:

对于魔法物品,EMF = MF

对于黄金物品,EMF = MF*600/(MF + 600)

对于套装物品,EMF = MF*500/(MF + 500)

对于暗金物品,EMF = MF*300/(MF + 300)

上一篇:Inventory.txt描述    下一篇:ItemStatCost.txt描述