TreasureClassEX.txt文件引导。 作者:lindi2000
该文件的全路经为data\global\excel\TreasureClassEx.txt,可以用以下方法得到该文件:mpq2k x Patch_D2.mpq data\global\excel\TreasureClassEx.txt。之后在你的diablo文件夹下会生成一个data文件夹,data中有个global文件夹,global下有个excel文件夹,excel下面就是TreasureClass.txt了。
用d2excel工具打开TreasureClassEx.txt文件。下面解释一下每一列的意思。
Treasure Class 就是我们常说的tc类别。这一列是用来区别每一行的标志,也就是每一行的名字。
Picks 掉物品的数量。
Unique 掉Unique物品时,对掉unique物品的chance的修正值。
Set,Rare,Magic 类似Unique列
NoDrop 设定不drop物品的概率
Item1 drop的第一种物品的种类
Prob1 drop第一种物品的机会
Item2..Prob2.. 同上
那么系统如何使用这个文件呢?我们举个例子:在Normal Act 1杀死一个僵尸。那么系统会怎样drop物品?
首先从data\global\excel\monstats.txt文件中查到僵尸的tc。用下面的方法得到monstats.txt文件:
mpq2k x Patch_D2.mpq data\global\excel\monstats.txt
用d2excel工具打开monstats.txt文件。Normal第一幕的僵尸名字为Zombie,位于monstats.txt的第六行。相应的tc为 "Act 1 H2H A"(看TreasureClass1一列)。
好,然后从TreasureClassEx.txt的Treasure Class列找到Act 1 H2H A一行。该行的Item/Prob如下:
Item Prob
--------------------------
Act 1 Equip A 16
Act 1 Junk 21
Act 1 Good 2
所以,drop Act 1 Equip A 的概率为 16/(16+21+2)=16/39
drop Act 1 Junk 的概率为 21/(16+21+2)=21/39
drop Act 1 Good 的概率为 2/(16+21+2)= 2/39
下面分别看 Act 1 Equip A、Act 1 Junk、Act 1 Good 这三行。
Act 1 Equip A行的 Item/Prob如下:
Item Prob
--------------------------
weap3 7
armo3 7
所以,在drop Act 1 Equip A的情况下,
drop weap3 的概率为 7/(7+7)=7/14
drop armo3 的概率为 7/(7+7)=7/14
总体算起来,杀死一个zombie后如果掉下物品,那么drop一
个weap3的概率为:
16/39 * 7/14 = 8/39
drop 一个 armo3 的概率为:
16/39 * 7/14 = 8/39
后面的Act 1 Junk和Act 1 Good同样的道理。
那么前面的Picks值是什么意思呢?某一行的Picks就是说,这一行需要按照上面的算法计算几次。Picks=1就计算一次,Picks=2就计算二次,以此类推。
某些行Picks值为负数,那么算法会有些变化。拿上面的Act 1 Equip A 一行为例,假如我们设置Picks=2,NoDrop=0 (即总是会drop物品,这样就必然会drop两件物品),那么计算如下:
掉下两个weap3概率:7/14 * 7/14 = 1/4
~~~~第一次 ~~~~第二次
掉下两个armo3概率:7/14 * 7/14 = 1/4
~~~~第一次 ~~~~第二次
掉下weap3 armo3各一个概率:
7/14 * 7/14 + 7/14 * 7/14 = 1/2
也就是说,Picks=2代表按照前面介绍的算法计算两次。
如果设置Picks=-2,那么算法就有些改变:
假设第一次drop了一个weap3,那么它的概率为7/14
第二次drop的时候,weap3的prob值就变成了6(原来是7)。
所以第一次drop一个weap3的情况下,
第二次drop weap3的概率为 6/(6+7)=6/13,
而不是Picks=2时候的7/(7+7)=7/14。
学过概率的应该知道,这是很典型的古典概型。
用拿球的模型来比喻,Picks=2,就是放回地取两个,
Picks=-2,就是无放回地取两个。
可以做一个实验:按照下面方式来设定Quill 1一行:
Picks=2 NoDrop=0 Item1=rvl Prob1=1 Item2=isc Prob2=1 Quill 1一行为Normal Act 1的Quill Rat(就是那个刺猬),
Item1的rvl是大紫瓶,Item2的isc是鉴定卷轴。
用game.exe -direct -txt进入游戏,杀死一个Quill Rat,就会发现必定会drop两个物品。可能是两个紫瓶,可能是两个卷轴,更多情况下是一个紫瓶一个卷轴。
如果设定Picks=-2,其他不变,那么杀死Quill Rat时必然会drop一个紫瓶一个卷轴,而不会出现两个紫瓶或者两个卷轴的情况。