他也玩传奇 首页 传奇学院 引擎功能 996引擎 查看内容

996传奇引擎M2属性及技能伤害计算细则说明

2023-9-9 18:52| 发布者: 积木GM论坛| 查看: 1904| 评论: 0

摘要: 996传奇引擎M2属性及技能伤害计算方式计算细则参照64位M2源码计算规则整理。系统设置:参数由M2设定magicX:对应cfg_magic.xls相应技能X列设定的参数attX:人物扩展属性,X对应cfg_att_score.xls中000行的属性值仅供 ...

996传奇引擎M2属性及技能伤害计算细则说明

996传奇引擎M2属性及技能伤害计算方式

计算细则参照64位M2源码计算规则整理。

系统设置:参数由M2设定

magicX:对应cfg_magic.xls相应技能X列设定的参数

attX:人物扩展属性,X对应cfg_att_score.xls中000行的属性值

仅供策划参考一些对标数据,计算数据对标盛大,仅供参考!

攻击速度计算(64位暂时没有攻击速度参数):

攻击速度影响攻击间隔时间,实际计算中以攻击间隔时间作为标准:

攻击间隔时间Interval:

攻击间隔(系统设定)- (攻击间隔(系统设定)/10 * 攻击加速倍数)- 每点攻速减免时间*攻击速度

攻击间隔时间最小以100毫秒为限制。

麻痹效果几率计算(技能附带麻痹不按照此方法):

目标带防麻痹,麻痹无效;

触发条件,满足以下之一:

1. 有麻痹戒指等附带麻痹的装备;

Random(1000) <=((目标抗毒/10+麻痹几率)*100 - 目标防麻痹几率)。

2. 无麻痹戒指,有附加麻痹效果(脚本或装备赋予的临时附加属性);

Random(1000) <=(附加属性麻痹几率*100)-目标防麻痹几率)。

技能攻击力计算部分:

注:个别技能攻击力计算可能有细微差别

幸运影响技能等级攻击力

条件:Random(最大幸运值 - 幸运值)=0


条件成立:

攻击力Power:等级伤害上限(magic5)

条件不成立:

攻击力Power:等级伤害下限(magic5) + Random(等级伤害上限(magic6) - 等级伤害下限magic5)

幸运影响技能攻击力

条件:Random(最大幸运值 - 幸运值)=0

条件成立:

攻击力Power:Power/(技能最大等级+1)*(技能等级+1)+ 技能伤害上限(magic9)

条件不成立:

攻击力Power: (Power/(技能最大等级+1)*(技能等级+1)+ 技能伤害下限(magic8) + Random(技能伤害上限(magic9) - 技能伤害下限(magic8)))* 技能强化系数(magic33)

火球术、大火球术

目标魔法闪避(att15)>Random(10),未命中

雷电术、群体雷电术

目标魔法闪避(att15)>Random(10),未命中

对不死类怪物,攻击力Power=Power*1.5

群体雷电术对单个目标分别判断

灵魂火符

攻击力Power=Power*灵魂火符攻击力倍数(系统设置)/100

目标魔法闪避(att15)>Random(10),未命中

火墙

时长Time= 10*(技能等级+1)/4

+ 技能伤害下限(magic8) + Random(技能伤害上限(magic9) - 技能伤害下限(magic8)))* 技能强化系数(magic33)

+ (技能伤害下限(magic8) + Random(技能伤害上限(magic9) - 技能伤害下限(magic8)))*0.5

 

气功波

人物等级>目标等级,且Random(20) >= (6 + 技能等级* 3 +人物等级-目标等级),推不动

 

彻地钉

Random(目标敏捷)>=准确,未命中

 

寒冰掌

目标魔法闪避(att15)>Random(10),未命中

人物等级>目标等级,且Random(20) >= (6 + 技能等级* 3 +人物等级-目标等级),推不动

 

灭天火

目标魔法闪避(att15)>Random(10),未命中

对不死类怪物,攻击力Power=Power*1.5

 

流星火雨

施放时,发动两次伤害

 

裂神符

弹射攻击力Power= (1 - 攻击力衰减(M2设置)/100)*上一个目标收到的攻击力Power

Random(100)< (45+ 幸运值/最大幸运值(M2设置),发生下一次弹射

至少弹射1次,即攻击到2个目标

最多弹射9次,攻击到10个目标

 

死亡之眼

主目标攻击力Power=Power*威力倍数(M2设置)/100

死亡之眼火圈内目标攻击力Power2= Power*火圈威力倍数(M2设置)/100

当设置值需要药粉,施法者没有携带药粉,则无法对主目标释放紫毒(伤害加倍效果)

 

 

威力倍数(若有M2设置)

攻击力Power=Power*威力倍数(系统设置)/100

 

技能伤害攻击倍数

攻击力Power:

Power + 伤害增加(magic35) 或Power +(Power /100 * 伤害加成(magic35))

注:技能伤害增加和加成仅能设定一项

 

职业影响

幸运影响技能攻击力

条件:Random(最大幸运值 - 幸运值)=0

条件成立:

攻击力Power:Power + 攻魔道上限

条件不成立:

攻击力Power:Power + 攻魔道下限 + Random(攻魔道上限 - 攻魔道下限 + 1)

如果幸运值 < 0

攻击力 Power:Power + 攻魔道下限

注:攻魔道上下限,视技能对应的职业属性(magic10)确定

玩家攻击力加成:

攻击力Power:

Power *(攻击倍数*100+ 基础倍攻(att67))

普通攻击力计算(含普通攻击释放的战士技能):

基础攻击力Power:攻击下限 + Random(攻击上限 - 攻击下限)

幸运影响普通攻击力

条件:Random(最大幸运值 - 幸运值)=0

攻击力Power:攻击上限

如果幸运值 < 0,且RANDOM(10-诅咒值)=0时

攻击力 Power:攻击下限

烈火剑法

攻击力Power:

(Power +Power/100*(4 + 技能等级*40))/(技能最大等级 + 2)*(技能等级 + 2)*(烈火攻击倍数(系统设置)/ 100)

攻杀剑法

技能有强化时:

攻击力Power:

Power + (5 + 技能等级)*技能强化等级

刺杀剑法

条件:不选中“1格刀刀刺杀”(系统设置)

攻击力Power:

Power /(技能最大等级 + 2)*(技能等级 + 2)

半月

攻击力Power:

Power /(技能最大等级 + 2)*(技能等级 + 2)

开天斩

攻击力Power:

(Power/5 * (技能等级 + 2)*1.33*2)* 开天斩攻击倍数(系统设置) / 100

开天斩重击:

条件:Random(开天斩重击几率)=0

攻击力Power:

Power * (开天斩重击倍数 / 100)

逐日剑法

攻击力Power:

((Power/5 * (技能等级 + 2)*1.33)* 开天斩攻击倍数(系统设置) / 100 

+ 技能基础伤害下限(magic8) + Random(技能基础伤害上限(magic9) - 技能基础伤害下限(magic8)))

*(逐日攻击倍数(系统设置) * 100)

未命中判定:

条件:准确 < Random(目标闪避(敏捷))

攻击力Power = 0

伤害计算部分:

基本攻击力(由技能或普通攻击计算得到的)Power

攻击修正: 

攻击目标为动物、玩家、NPC、守卫 Damage=Power/1.2;

其他情况Damage=Power

伤害Damage=Damage+技能威力增加或Damage+(Damage/100*技能威力加成)

伤害Damage=Damage-技能防御增加或Damage+(Damage/100*技能防御加成)

注:技能伤害增加、技能攻击加成、技能防御增加、技能防御加由脚本SetMagicPower、SetMagicDefPower设置。

致命一击

条件:random(10000) <(神圣一击几率(att79) - 神圣抵抗(att90)

伤害值:Damage*3 + 神圣伤害(Att80)

以上计算直接得到实际伤害,计算中止

暴击

条件:Random(100) <(暴击率(att21)- 目标韧性(att23)+对怪暴击率(att72))

伤害值Damage:

Damage/100 * 魔法/攻击暴击倍数(系统参数)

+ Damage/100 *(暴击伤害增加(att22) - 暴击伤害减免(att24))

+ 对怪伤害(att74) + Damage/10000*对怪增伤(att75)

忽视防御

条件:random(10000) > (忽视目标防御(att28) *100 - 目标忽视防御抵抗(att85))

伤害值Damage:

条件成立:

Damage + 穿透(att78))

条件不成立:

Damage

- (目标最小魔防 + Random(目标最大魔防-目标最小魔防)+ 1)

- (目标最小防御 + Random(目标最大防御-目标最小防御)+ 1)

+ 穿透(att78)

注:物理攻击时仅计算防御部分,技能攻击时仅计算魔防部分

对不死类怪物增伤

伤害值Damage:

Damage+ 神圣值

目标有魔法盾效果

伤害值Damage:

Damage * 8/((4+魔法盾防御倍数(系统设定)/100)*(魔法盾技能等级+2))

PK增减伤:

伤害值Damage:

Damage

 + Damage/10000 * PK增伤(att76)

 - Damage/10000 * 目标PK减伤(att77)

 + 对人伤害(att68)

格挡:

条件:random(10000) < 格挡概率(att63)

伤害值Damage:

Damage

+ Damage/100 *(增加攻击伤害(att25) - 魔法伤害减少(att27)或物理伤害减少(att26))

+ Damage/10000 *(对战(法、道)增伤(att54、att56、att58) - 目标对战(法、道)减伤(att55、att57、att59))

+ Damage/100 * 战(法、道)对怪威力系数(系统参数)

+ Damage/100 * 战(法、道)玩家相互攻击加成(系统参数)

- Damage/1000* 目标伤害格挡(att64)

怪物攻击玩家减伤:

伤害值Damage:

Damage - Damage/10000 * 目标受怪减伤(att82)

目标中毒情况:(TBaseObject.StruckDamage)

红毒伤害值Damage:

Damage * 红毒减防量(系统参数)/10

紫毒,死亡之眼击中的目标

伤害Damage:

Damage * 紫毒伤害加成(系统参数)/10

攻击前触发

伤害Damage:修改为脚本设定或计算后的伤害值

 

脚本设置人物伤害吸收:(TBaseObject.DamageHealth)

条件:random(100) < 伤害吸收几率

伤害值Damage:

Damage - Damage/100*伤害吸收比率

魔法怪物,魔法值是单次伤害的上限

条件:怪物有设定的魔法值

伤害值Damage:

Min(Damage,怪物魔法值)

目标有护身戒指(TBaseObject.DamageHealth)

按照Damage*1.5 扣减魔法值,得到新的伤害值Damage,如魔法值足够抵扣,则不减HP

防止秒杀:(TBaseObject.DamageHealth)

条件:1. Damage > 目标当前HP;  2. 全局防秒杀(系统设置) 或 玩家血量保护值(脚本设定)

伤害值Damage:

目标最大血量 - 目标最大血量/100 * (血量保护(系统设置)或玩家血量保护值(脚本设定))

其他伤害说明:

RangeHarm脚本命令,伤害计算顺序:

1. 先计算附加属性中的伤害(参数5:4=吸血,6真实伤害数值,12最大hp百分比真实伤害,13当前hp百分比真实伤害),其中吸血效果计算后,目标HP至少保留1点。

2. 再计算脚本伤害值(参数4:伤害值(计算防御))

道士施毒术计算:

中毒判定:

目标防中全毒概率(att48)>0 时,Random(10000) <= (10000 -目标的毒物躲避(att16) - 70 - 目标防中全毒(att48))

目标防中全毒概率(att48)<=0 时,Random(目标的毒物躲避(att16) + 70) <= 60

 

绿毒中毒点数:

Point0= 320/(技能等级*3+3) + 40/3 +基础伤害下限(magic8)+RANDOM(基础伤害上限(magic9)-基础伤害下限(magic8)))+ 技能攻击力Power(具体见技能部分)

实际中毒点数

Point=Point0*技能等级/施毒点数控制(系统设置)/3

中毒时间:

不需要灵符时:Time=Point0*施毒点数控制(系统设置)/100,但不大于中毒最大时间(系统设置)

需要灵符时:Timer=Point0


红毒中毒点数:

Point0= 240/(技能等级*3+3) + 10 +基础伤害下限(magic8)+RANDOM(基础伤害上限(magic9)-基础伤害下限(magic8)))+ 技能攻击力Power(具体见技能部分)

实际中毒点数

Point=Point0*技能等级/施毒点数控制(系统设置)/3

中毒时间:

不需要灵符时:Time=Point0*施毒点数控制(系统设置)/100,但不大于中毒最大时间(系统设置)

需要灵符时:Timer=Point0

杀怪爆物品爆率计算:

摇点nRate= MaxPoint(怪物物品掉落文件中的分母)*10000/(杀怪爆率*100 + 攻击者的杀怪掉落概率(att65))  

阈值iValue=SelPoint(怪物物品掉落文件中的分子)

杀怪爆率:默认100,可由脚本KillMonBurstRate修改

当Random(nRate)<iValue时,爆出对应的物品。

宝箱命中几率算法:

实际运算步骤:
1. 背包扩充卷#1#1|技能残卷#1#5|金砖#5#15|鹿肉#5#30  四选一
2. 比如:选中 金砖#5#15,产生一个随机数X(0-99),如 X>几率值(15),则选中,否则,重新执行步骤1

最终选中比率:
背包扩充卷#1#1|技能残卷#1#5|金砖#5#15|鹿肉#5#30
单项权重:99-几率值
背包扩充卷-98|技能残卷-94|金砖-84|鹿肉-84
背包扩充卷选中的几率= 98/(98+94+84+84)=98/360= 27.22%

相关阅读

最新评论