普通攻击伤害公式
基础伤害=(物攻-装备防御)*防御因子*抗性因子*暴击*连击*防*招架*随机因子,并取整。若大于99999,修改为99999。
基础伤害=【基础伤害*DamageScale】。若小于1,修改为1。
最终伤害=【【【【【【基础伤害*脱力*坚盾*强袭*魔化】*钢盾1】*钢盾2】*猛力1】*猛力2】*天运*武爆*飞溅】*反震
说明
【】(下同)
此为取整。
防御因子(下同)
防御因子
=1+(防御^2/16-325*防御)/(32*13210)
=A*(1-防御/2600)^2+1-A
≈(1-防御/2600)^2
其中A=2600^2/(32*16*13210)=0.9994795609
1-A=5.20439E-4
随机因子(下同)
区间240/256~271/256内的(近似均匀)随机数,即0.9375~1.0586
魔化(下同)
攻击者有魔化状态则系数为1.3。
装备防御
即计算装备中所有防御的和。对于NPC,此项为0。
抗性因子
抗性因子=1-相应属性抗/100。
对于我方角色攻击NPC的情况,NPC的相对应我方角色武器属性的“X抗”(见msdata.xml)即为相应属性抗。
例如蚩尤冢很多小怪都有水抗="-50",因此使用水属性武器(例如姜承的旋冰引魂)攻击会得到50%的加成。
对于NPC攻击我方的情况,我方相对应于NPC的物攻属性的属性抗性即为相应属性抗。例如折剑山庄擂台的独孤巍物攻属性为风,那么其攻击暮菖兰(风抗性30)伤害会变成70%。
连击和暴击
一定几率发生,如果发生了那么连击系数为0.7,暴击为1.5。
强袭
攻击者有强袭状态的话系数为1.5。
脱力
攻击者有脱力状态的话系数为0.5。
坚盾
被攻击者有坚盾状态的话系数为0.5。
武爆
攻击者有武爆状态的话系数为10。
飞溅
攻击者有飞溅符咒的话系数为0.5。
猛力一、二
攻击者贴有相应符咒的话系数分别是1.1和1.15。
防
是指行动指令里的防,如果被攻击者当前为防御状态那么系数是0.5。
招架
如果发生了招架那么系数是0.3。
钢盾一、二
被攻击者如果贴有相应符咒的话系数分别是0.9和0.8。
DamageScale
出现在脚本里面,有该语句的话系数为X。
天运
被攻击者有天运符咒且此攻击为暴击时系数为-1。
反震
被攻击者有反震状态的话系数为0。
拼尽和蓄势
这两项直接影响攻击的数值,故不在伤害公式内单独列出。
援护
计算援护在伤害公式之前。援护一旦触发,不进行此伤害计算过程。
基础伤害=(物攻-装备防御)*防御因子*抗性因子*暴击*连击*防*招架*随机因子,并取整。若大于99999,修改为99999。
基础伤害=【基础伤害*DamageScale】。若小于1,修改为1。
最终伤害=【【【【【【基础伤害*脱力*坚盾*强袭*魔化】*钢盾1】*钢盾2】*猛力1】*猛力2】*天运*武爆*飞溅】*反震
说明
【】(下同)
此为取整。
防御因子(下同)
防御因子
=1+(防御^2/16-325*防御)/(32*13210)
=A*(1-防御/2600)^2+1-A
≈(1-防御/2600)^2
其中A=2600^2/(32*16*13210)=0.9994795609
1-A=5.20439E-4
随机因子(下同)
区间240/256~271/256内的(近似均匀)随机数,即0.9375~1.0586
魔化(下同)
攻击者有魔化状态则系数为1.3。
装备防御
即计算装备中所有防御的和。对于NPC,此项为0。
抗性因子
抗性因子=1-相应属性抗/100。
对于我方角色攻击NPC的情况,NPC的相对应我方角色武器属性的“X抗”(见msdata.xml)即为相应属性抗。
例如蚩尤冢很多小怪都有水抗="-50",因此使用水属性武器(例如姜承的旋冰引魂)攻击会得到50%的加成。
对于NPC攻击我方的情况,我方相对应于NPC的物攻属性的属性抗性即为相应属性抗。例如折剑山庄擂台的独孤巍物攻属性为风,那么其攻击暮菖兰(风抗性30)伤害会变成70%。
连击和暴击
一定几率发生,如果发生了那么连击系数为0.7,暴击为1.5。
强袭
攻击者有强袭状态的话系数为1.5。
脱力
攻击者有脱力状态的话系数为0.5。
坚盾
被攻击者有坚盾状态的话系数为0.5。
武爆
攻击者有武爆状态的话系数为10。
飞溅
攻击者有飞溅符咒的话系数为0.5。
猛力一、二
攻击者贴有相应符咒的话系数分别是1.1和1.15。
防
是指行动指令里的防,如果被攻击者当前为防御状态那么系数是0.5。
招架
如果发生了招架那么系数是0.3。
钢盾一、二
被攻击者如果贴有相应符咒的话系数分别是0.9和0.8。
DamageScale
出现在脚本里面,有该语句的话系数为X。
天运
被攻击者有天运符咒且此攻击为暴击时系数为-1。
反震
被攻击者有反震状态的话系数为0。
拼尽和蓄势
这两项直接影响攻击的数值,故不在伤害公式内单独列出。
援护
计算援护在伤害公式之前。援护一旦触发,不进行此伤害计算过程。