通过对Minecraft 1.6.4 反混淆代码的分析,已知防御力的计算方法如下:
设初始伤害值为 d
第一次减伤由盔甲总白条值提供,第一次减伤后的伤害值 d1 为:
关于盔甲的耐久损耗:
防具总损耗值=伤害值*(25-总白条值) ,每一件防具都要损耗 [总损耗值/4] 的耐久,如果一件防具有 x 级的耐久附魔,则它能够避免这次耐久损耗的概率为:
也就是说,耐久附魔令盔甲有可能免除一次耐久扣除,但无论耐久附魔有多高,免除耐久扣除的概率也只会小于60%,而对于每次耐久扣除,所扣除的耐久数量由 d,也就是没有经过任何减伤的伤害值,和防具的总白条值决定。
第二次减伤由抗性提升药水效果提供,第二次减伤后的伤害值 d2 为:
每一级抗性提升都会增加20%的减伤,抗性提升等级为5时,则完全不会受到伤害,这一点相信大家已经很熟悉
第三次减伤由附魔提供,程序会根据玩家身上防具的附魔来计算附魔减伤值 e,e 的最大值是 20,第三次减伤后的伤害值 d3 为:
这就是说,附魔减伤最高提供相当于抗性提升4的减伤率。e的具体计算方式如下:
e 的初值为0,遍历每一件装备上的每一条附魔,
如果这条附魔是保护附魔,则 e 直接加 [附魔等级*0.75]
如果这条附魔是火焰保护,且伤害类型是火焰,则 e 直接加 [附魔等级 * 1.25]
摔落保护-[附魔等级*2]
爆炸保护和弹射物保护-[附魔等级*1.5]
举个例子,如果玩家身上的4件防具都有保护8的附魔,则e=0.75*8*4=24,但是程序对e的值做了限制,令他最多等于20,所以这样一来e的值就是20,提供80%的减伤。
设初始伤害值为 d
第一次减伤由盔甲总白条值提供,第一次减伤后的伤害值 d1 为:
关于盔甲的耐久损耗:
防具总损耗值=伤害值*(25-总白条值) ,每一件防具都要损耗 [总损耗值/4] 的耐久,如果一件防具有 x 级的耐久附魔,则它能够避免这次耐久损耗的概率为:
也就是说,耐久附魔令盔甲有可能免除一次耐久扣除,但无论耐久附魔有多高,免除耐久扣除的概率也只会小于60%,而对于每次耐久扣除,所扣除的耐久数量由 d,也就是没有经过任何减伤的伤害值,和防具的总白条值决定。
第二次减伤由抗性提升药水效果提供,第二次减伤后的伤害值 d2 为:
每一级抗性提升都会增加20%的减伤,抗性提升等级为5时,则完全不会受到伤害,这一点相信大家已经很熟悉
第三次减伤由附魔提供,程序会根据玩家身上防具的附魔来计算附魔减伤值 e,e 的最大值是 20,第三次减伤后的伤害值 d3 为:
这就是说,附魔减伤最高提供相当于抗性提升4的减伤率。e的具体计算方式如下:
e 的初值为0,遍历每一件装备上的每一条附魔,
如果这条附魔是保护附魔,则 e 直接加 [附魔等级*0.75]
如果这条附魔是火焰保护,且伤害类型是火焰,则 e 直接加 [附魔等级 * 1.25]
摔落保护-[附魔等级*2]
爆炸保护和弹射物保护-[附魔等级*1.5]
举个例子,如果玩家身上的4件防具都有保护8的附魔,则e=0.75*8*4=24,但是程序对e的值做了限制,令他最多等于20,所以这样一来e的值就是20,提供80%的减伤。