这次会为详细介绍推导自身防御力公式的过程,下一次会为大家解析BOSS的防御力以及减防收益的具体。
上一期:疾风之刃数据公式浅析防御篇一
http://tieba.baidu.com/p/4468646446
下面先列一组数据,对象是博格二图的机械狗开场的吐息(时间久远到我都忘记是极图还是普通了)。
这是楼主很久以前利用时空术士,在只穿戴部分不含“减少伤害率”“减少伤害值”的装备情况下(人物自身存在着一定数值的减伤率,但全程无变动),利用时空术士自毁AP增加30%防御以及秩序之刃增加50%防御收集来的数据。
由于当时测试时期太早,再加当时只是测试不为科普,并没有留下具体视频。
防御力/伤害
12192/50
11151/100
10566/150
10064/190
8918/285
8086/360
6931/450
5945/525
5220/575
虽然楼主已经很努力把每阶段的防御力贴近整数,但实在太难凑整。
之后楼主脑补了下,平滑了下伤害以及防御力。
12000/50
11000/90 (10500 150-)
10000/190
9000/280
8000365
7000/440-450
6000/525
5000/600
由于楼主当时并不知道防御力转化公式到底是怎么样一个模型。
但其他游戏中,并没有出现像疾风之刃这样防御力越堆收益越夸张的情况。
比如lol中就是护甲/(100+护甲)。
Wow中就是 护甲/(护甲+400+85*攻击者等级+4.5*85*(攻击者等级-59))
Dnf中为 防御力/(攻击方等级X200+防御力)
(上面都是搬百度的,错了别找我)
可以看到,他们有共同的一点,就是分母分子中都包含有防御力(护甲)这一变量。
分子增加的同时,分母也同时在增加。极大程度上削减了防御力的收益。
但疾风之刃显然不是这样,楼主又通过观察,发现每改变1000防御力,人物自身所受到的伤害的增加量大多数时候都是相同或者近似的。
虽然“伤害-防御力”也符合这一特性,但上期已经解释为什么排除了。
之后楼主就很简单的画了一个图(其实并不是很简单,由于伤害的浮动性中间走了许许多多弯路),就基本确定了公式模型。
很基础的:Y=x/k,x为防御力
但这也很好的解释了,为什么防御力收益不衰减反而急剧递增。
再结合人物自身所受伤害:H=D*(1- x/k)*C
H为自身所受伤害,D为攻击原本伤害。C为其他系数之和。
由于自身无伤害值,减少伤害率不变,C可以抵消。
之后选取了除12000防御力时的2组数据。列了一个方程组。
9000 280
8000 365
虽然数值较大,不便于计算,但基本还在初高中知识范围内,很容易就可以得到结果。
K=12294,D=1045。
当然,由于疾风之刃的数据存在浮动,所以这并非准确数值。
由于楼主后来技术的进步,解析了客户端,才得到准确的数值。
在解析了一个文件后的众多文件中有一个luac脚本,反编汇后,可以得到一系列数据库。
可以看到,其实每个等级他都有对应的命中,防御力,回避数值。
但最终还是要通过一定公式计算。
由于先前的计算,对防御力公式有一个大概的猜测。
所以基本可以肯定K就是6205*2。
而回避等等,他虽然也列出了基础数值,但由于没有进行一个计算没有一个具体数值的概念,无法确定与最终值的关系是什么。
最终就是65级防御系数=防御力/12410。上限为0.95
根据现在这个脚本数据(不排除哪次就改了),65级以后每级分母会增加162。
其实对于防御力收益越堆越高,我也解释过很多次了。
比如12000防御,系数是95%,只受到本身5%的伤害(10000打500)。
减少到11000防御,系数只有88.6%,受到11.4%的伤害(10000打1140)。
虽然只差了6%,但实际所受伤害是翻倍的。
最后列出一张,自身生存能力与防御力之间关系的函数图像。
Y= 1/(1-x/12410)
Y值就是自身在X防御力下,可以承受几倍于基础血量(0防御)的伤害的倍数。
由于x数值太大(0太多,太占地方),以缩小10倍绘图。
【由于存在着上限0.95,但绘图工具没有截取取值范围的功能,大家可以选择性忽视1178.9后的曲线。】
上一期:疾风之刃数据公式浅析防御篇一
http://tieba.baidu.com/p/4468646446
下面先列一组数据,对象是博格二图的机械狗开场的吐息(时间久远到我都忘记是极图还是普通了)。
这是楼主很久以前利用时空术士,在只穿戴部分不含“减少伤害率”“减少伤害值”的装备情况下(人物自身存在着一定数值的减伤率,但全程无变动),利用时空术士自毁AP增加30%防御以及秩序之刃增加50%防御收集来的数据。
由于当时测试时期太早,再加当时只是测试不为科普,并没有留下具体视频。
防御力/伤害
12192/50
11151/100
10566/150
10064/190
8918/285
8086/360
6931/450
5945/525
5220/575
虽然楼主已经很努力把每阶段的防御力贴近整数,但实在太难凑整。
之后楼主脑补了下,平滑了下伤害以及防御力。
12000/50
11000/90 (10500 150-)
10000/190
9000/280
8000365
7000/440-450
6000/525
5000/600
由于楼主当时并不知道防御力转化公式到底是怎么样一个模型。
但其他游戏中,并没有出现像疾风之刃这样防御力越堆收益越夸张的情况。
比如lol中就是护甲/(100+护甲)。
Wow中就是 护甲/(护甲+400+85*攻击者等级+4.5*85*(攻击者等级-59))
Dnf中为 防御力/(攻击方等级X200+防御力)
(上面都是搬百度的,错了别找我)
可以看到,他们有共同的一点,就是分母分子中都包含有防御力(护甲)这一变量。
分子增加的同时,分母也同时在增加。极大程度上削减了防御力的收益。
但疾风之刃显然不是这样,楼主又通过观察,发现每改变1000防御力,人物自身所受到的伤害的增加量大多数时候都是相同或者近似的。
虽然“伤害-防御力”也符合这一特性,但上期已经解释为什么排除了。
之后楼主就很简单的画了一个图(其实并不是很简单,由于伤害的浮动性中间走了许许多多弯路),就基本确定了公式模型。
很基础的:Y=x/k,x为防御力
但这也很好的解释了,为什么防御力收益不衰减反而急剧递增。
再结合人物自身所受伤害:H=D*(1- x/k)*C
H为自身所受伤害,D为攻击原本伤害。C为其他系数之和。
由于自身无伤害值,减少伤害率不变,C可以抵消。
之后选取了除12000防御力时的2组数据。列了一个方程组。
9000 280
8000 365
虽然数值较大,不便于计算,但基本还在初高中知识范围内,很容易就可以得到结果。
K=12294,D=1045。
当然,由于疾风之刃的数据存在浮动,所以这并非准确数值。
由于楼主后来技术的进步,解析了客户端,才得到准确的数值。
在解析了一个文件后的众多文件中有一个luac脚本,反编汇后,可以得到一系列数据库。
可以看到,其实每个等级他都有对应的命中,防御力,回避数值。
但最终还是要通过一定公式计算。
由于先前的计算,对防御力公式有一个大概的猜测。
所以基本可以肯定K就是6205*2。
而回避等等,他虽然也列出了基础数值,但由于没有进行一个计算没有一个具体数值的概念,无法确定与最终值的关系是什么。
最终就是65级防御系数=防御力/12410。上限为0.95
根据现在这个脚本数据(不排除哪次就改了),65级以后每级分母会增加162。
其实对于防御力收益越堆越高,我也解释过很多次了。
比如12000防御,系数是95%,只受到本身5%的伤害(10000打500)。
减少到11000防御,系数只有88.6%,受到11.4%的伤害(10000打1140)。
虽然只差了6%,但实际所受伤害是翻倍的。
最后列出一张,自身生存能力与防御力之间关系的函数图像。
Y= 1/(1-x/12410)
Y值就是自身在X防御力下,可以承受几倍于基础血量(0防御)的伤害的倍数。
由于x数值太大(0太多,太占地方),以缩小10倍绘图。
【由于存在着上限0.95,但绘图工具没有截取取值范围的功能,大家可以选择性忽视1178.9后的曲线。】