我们知道1.10对一些技能以staffmod出现在装备上做了些限制。当技能的itypea1(itypea1columninskills.txt)和装备的types不同时,则这个技能将不能在该装备上出现。
下面是特定技能不能在特定装备上出现的列表。
Barhelms:
Bash
DoubleSwing
Stun
DoubleThrow
LeapAttack
Concentrate
Frenzy
Whirlwind
Berserk
Palscepters:
HolyShield
Smite
Necwands/shields
PoisonDagger
然而,许多人都声称自己见过带Whirlwindstaffmod的Barhelm、带HolyShieldstaffmod的Palscepter,甚至带PoisonDaggerstaffmod的Necwand这到底是怎么回事?
事实上,系统在决定了技能个数和finalskill_id后,将对每个随机选中的技能做6次的循环选择判定。
如果是有效技能(技能的itypea1和装备的types匹配,且不是已经被选中的技能),则停止循环,确定该技能为staffmod出现;
如果不是有效技能,则继续循环选择直到出现有效技能,若前5次的循环选择都不是有效技能,则选定第6次循环选择的技能为staffmod出现——即使它也不是有效技能。
例:
系统选定在Jawbonecap出现两个staffmod的skill,finalskill_id为151~155(即为Bar的第6组)skill_id组
Whirlwind(itypea1=mele)
Berserk(itypea1=mele)
NaturalResistance
WarCry
BattleCommand
1stskill=WarCry(有效技能,选定)
2ndskill=Berserk(itype1a=mele,不是有效技能,继续循环选择)(1)
---------=WarCry(已经选定过的技能,不是有效技能,继续循环选择)(2)
---------=WarCry(已经选定过的技能,不是有效技能,继续循环选择)(3)
第(4)、(5)次的循环选择也不是有效技能
------=Whirlwind(不是有效技能,itype1a=mele)(6)
那么,对第2个技能的(6)次循环选择都不是有效技能,现在,将把第(6)次的Whirlwind选定为staffmod出现。即最后的技能为:WarCry、Whirlwind。
——如果第(6)次循环选择的是WarCry的话,是否会出现+6WarCry?
Hammerman没有明确回答,看他的意思,Blizzard对这段code还没有写完——汗了一地,我会试着再问问他;
以前Jarulf和Ruvanal的观点,系统会屏蔽掉此次选择,对2ndskill再做6次的循环选择判定。