您的位置 首页 我的勇者

【攻略】【我的勇者-攻略】 属性堆栈与效益分析(上)

一、前言


上篇灵目推坑文,已经入坑灵目的小伙伴们,可能有些疑虑,如下:
    1. 既然知道装备、魂卡怎么搭配了,为什么伤害还是没办法比别人高?
    2. 资源有限情况下,宠物先买哪只比较好?
    3. 大佬们经常讲说:爆伤和属攻的比例要以 4.66 去调配,而 4.66 这数字是么来的?
    4. 为了撑元素穿透,我该舍弃 XXX 水攻、爆伤 or 攻强…吗?
    5. 某个属性特别高,大佬说这已经被稀释严重了,那我还需要继续堆下去吗?
    6. 灵目目前有顶配数值吗?有的话,又是多少呢?
     …..
因此,我将此篇分成上下两篇来讨论,上篇主要是一些理论和公式推导、解答部分上述问题,而下篇是利用简化后的公式去做实际计算、解答剩下的问题等等。

<注意> 此篇文长,在文章结尾处有附上懒人包~~~~~


二、爆伤属攻的 4.66

已知:(部分伤害公式) 属攻系数 = 1 + x/700 ; 爆击伤害系数 = 1.5 + y/100。
假设:初始机体之属攻为 0、爆伤为 0 >> 属攻系数 = 1、爆伤系数 = 1.5。

>>  若此时各系数翻倍,则属功系数 = 2、爆伤系数为 = 3.0。我们反推伤害公式可知:属攻 = 700 && 爆击伤害 = 150,再取比值可得 700/150 = 4.6666….。

  由上述推导,我们知道比值 4.66 是创建在各系数翻倍的前提假设上,因此可以再进一步推出后续的 4.66 之各数值的要求:

  ∆ 图片(1)
  明显地,依目前环境和 4.66 的准则来看:属攻 4900 && 爆伤 1050 根本无法达成… 所以我们需要引进更多的参考变量( Ex : 宠物、各类的辅助 buff),才做出较适切的比值出来,不过属攻 2100 && 爆伤 450 常作为毕业指针就是了。

三、属性稀释现象

  为了解释属性稀释现象,我们同样需要引用 (部分的) 伤害公式,并且以常见的攻击强度和属性攻击作举例。  首先,假设角色攻击强度 && 属攻为 0,且排除其他属性增益的可能性。

  当攻击强度从 0 700 时,此时攻强系数为 1 (1 + 0/700) → 2 (1 + 700/700) ,相当于角色的基础伤害从 100% 提升至 200% >> 700点攻击强度贡献了 (200 – 100) / 100 * 100% = 100% 的增幅 >> 平均1 点攻击强度贡献了 100% / 700 ≈ 0.142% 的伤害收益。

  根据上述讨论,我们一样可以计算出角色攻强 700 1400 时,基础伤害将从 200% 提升至 300% >> 700点攻强贡献了 (300 – 200) / 200 *100% = 50% 的增幅 >> 平均1 点攻击强度贡献了 50% / 700 ≈ 0.071% 的伤害收益。

❖ 此处,或许我们有个疑问:

关于基础伤害(200% → 300%)时,

Q1:基础伤害的增幅为什么不是(300-200)% = 100%?

⇒ 理由:当我们计算伤害公式时,是以各项增伤做相乘后,得出最终伤害数值。所以,我们在比较不同攻击强度时,无法直接以相减的方式得出基础伤害的增幅。

Q2:为何不是提供了 (300/200) * 100% = 150% 的增幅,而是 50% 的增幅呢?

⇒ 理由:伤害的增幅与伤害的放大系数是不同的概念,因此 (300/200) * 100% = 150% 意味着基础伤害从原先的200% 提升1.5倍至 300%,放大系数为1.5,并且放大系数为 1 时为原先的基础伤害,从而得出伤害的真实增幅为 (1.5 – 1) * 100% = 50%。

——分隔线——-

  同理可得,1400~2100, 2100~2800, 2800~3500…各个区间里,每 1 点攻击强度所贡献的 x% 伤害收益:

  ∆ 图片(2) 、 图片(3)
  

然而,我们可以将攻强 – 伤害收益的关系进行函数化,再借由 Matlab 将函数图形化:
      
图片(4)
  由上图可以观察到攻击强度的收益函数 f(x) 呈现绝对递减,为了更明显看见递减趋势,我们将原闭区间 [700,6300] 扩大至 [0,15000], 来查看整体函数的图形走向:

  ∆ 图片(5)
( 感谢 7yli7 的美编 ~~~)

  显然,该函数曲线呈下滑态,若将曲在线每一点的切线画出来,同样可以发现该切线随着攻强的增加,逐渐向 X 轴靠拢 >> 也就是说攻击强度越高,平均获得的收益就越少。

<推导>  假设初始攻强为 x > 0 && 后来攻强为 y > 0,不失一般性:我们让 y > x

>> 初始攻强系数:1 + x/700 、后来攻强系数:1 + y/700

>> 基础伤害增幅:(1 + y/700 – 1 + x/700) / (1 + x/700) *100% = (y – x) / (7 * (1 + x / 700) %

>> 每 1 点攻强的平均收益:f(x) = (y – x) / (7 * (1 + x / 700) % / (y – x) = 1 / (7+ x / 100) %
<验证> 假设 f(x) = 1 / (7 + x / 100) 定义在闭区间 [ 0,15000 ] 上,因函数 f(x) 一次可导,且对所有的 x 都大于零,所以一次导函数 f'(x) = – 100 / (x + 700)^2  小于零。根据函数的递增递减定义,函数 f(x) 在闭区间 [0,15000] 中,属于绝对递减函数。

——-分隔线—–

  接着,也可比较每个区间里,平均每 1 点攻强所占的伤害收益比,可知:提升10%的伤害收益,若角色攻强越高,所需提升的攻击强度就越多!

<角色攻强>
2800~3500:10%伤害收益 ≈ 345点攻击强度
3500~4200:10%伤害收益 ≈ 417点攻击强度
4200~4900:10%伤害收益 ≈ 500点攻击强度
4900~5600:10%伤害收益 ≈ 556点攻击强度
5600~6300:10%伤害收益 ≈ 625点攻击强度

  这边下个小结论:随着攻击强度的提升,每点攻强所贡献的伤害收益比逐步减少,也就是所谓的属性稀释,以经济学角度来看,称为边际效用递减
P.S. 为了方便观察属性稀释现象,此处采用平均的概念去计算出每一点属性所赋予的增伤;不过套用在实际面,我们不常以临界属性(700倍数)作为基底下去计算,而是采用相对的计算方式找出最佳组合 >> 相对收益法

四、平均收益 & 相对收益

  以平均收益来看,我们是以临界属性(700、1400、2100、2800、…) 作为初始值进行收益计算。不过,在实际情况下的机体,其皮肤属性之数值并不会刚刚好落在临界点上 >> 若采用平均收益计算方式,将产生巨大且未知的误差,进而影响最终计算结果。

( >> 平均收益法的好处在于:1. 计算方便    2.  容易观察属性稀释现象 )
  因此,我们无可避免地,必须舍弃临界属性,并且以实际的机体数值作基底,计算出真实效益,才能在有限的资源中,做出最佳的选择。  而相对收益的计算方式是在平均收益的计算方式上,进行修改 ( 伤害 – 收益函数:f( y , x) = (y – x) / (7 * (1 + x / 700) % ),经公式比对,可以发现两者其实只差在有没有除以 (后属性 y – 原属性 x),不过存在双变量的情况下,进行计算时,相较于前者来的复杂些,在此不多做讨论了 ( >> 相对收益法的好处:详情在下篇。)

值得注意的是:在计算每 1 点属性收益上,平均收益法会是相对收益法的特例。


<实际例子>:二星猫咪 v.s. 二星偶像魂卡 (相对收益法计算)

首先,偶像巴钦的二星效果:5%攻击强度  

图片(6)
猫咪二星效果:10% 伤害加成。

图片(7)

简单计算下,灵目打世界王时,伤害加成有:100% + 67% (33牧) + 16% (55等游侠天赋) + 10% (血印披风) + 25% (金冠) = 218% 。

>>纳入魂卡猫咪效果后
二星:[ (218 + 10) / 218 – 1 ] *100% ≈ 4.58% 总收益。
四星:[ (218 + 20) / 218 – 1 ] *100% ≈ 9.17% 总收益。

接着,计算攻强增益有 10% (真言) 、6% (公会烤鸡),再假设机体攻击强度为 x 且 不考虑绵羊的 400 攻强 (效益太低,不如多带 牛魔 或 斯托拉斯 来提高覆盖率)  >> 实际攻强:(1.16 / 1.06) * (1.06*x)。

P.S. 公会烤鸡为常驻buff,而真言有机率出现空窗期,所以将它排在后面。

话不多说,直接上图:

图片(8):Matlab Script


图片(9):经一番计算,当攻击强度接近 6650 时,总收益:2星偶像 > 2星猫咪

至于四星效果的比较,将留在下篇做讨论…

五、相对收益公式简化

  为了让下一篇的实际计算方便些,此节将(部分的)伤害公式进行一波化简,也提供大家使用~~~
假设初始数值 X > 0 且后来数值 Y > 0:

1. 攻击强度 & 属性攻击

<Case 1>:Y > X (数值增加)

a%增幅 = [ (1 + Y/700) / (1 + X/700) – 1 ] x 100%

= [ (700 + Y) / (700 + X) – 1 ] x 100%

= [ (700 + Y) – (700 + X) ] / (700 + X) x 100%

= [ (Y – X) / (700 + X) ] x 100%

<Case 2>:X < Y (数值减少)

b%减幅 = [ 1 – (1 + Y/700) / (1 + X/700) ] x 100%

= [ 1 – (700 + Y) / (700 + X) ] x 100%

= [ (700 + X) – (700 + Y) ] / (700 + X) x 100%

= [ (X – Y) / (700 + X) ] x 100%

——-分隔线——-

2. 爆击伤害

<Case 1>:Y > X (数值增加)

c%增幅 = [ (1.5 + Y/100) / (1.5 + X/100) – 1 ] x 100%

= [ (150 + Y) / (150 + X) – 1] x 100%

= [ (150 + Y) – (150 + X) ] / (150 + X) x 100%

= [ (Y – X) / (150 + X) ] x 100%

<Case 2>:X < Y (数值减少)

d%减幅 = [ 1 – (1.5 + Y/100) / (1.5 + X/100) ] x 100%

= [ 1 – (150 + Y) / (150 + X) ] x 100%

= [ (150 + X) – (150 + Y) ] / (150 + X) x 100%

= [ (X – Y) / (150 + X) ] x 100%

——-分隔线——-

3. Boss伤害

<Case 1>:Y > X (数值增加)

e%增幅 = [ ( 1 + Y) / (1 + X) – 1 ] x 100%

= [ (1 + Y) – (1 + X) ] / (1 + X) x 100%

= [ (Y – X) / ( 1 + X) ] x 100%

<Case 2>:Y < X (数值减少)

d%减幅 = [ 1 – ( 1 + Y) / (1 + X) ] x 100%

= [ (1 + X) – (1 + Y) ] / (1 + X) x 100%

= [ (X – Y) / ( 1 + X) ] x 100%

——-分隔线——-


4.护甲穿透 && 元素穿透

假设怪物护甲定值(元素抗性)为

(1) 世界王:5000 ( 2500 )

(2) 150层公会王:6640 (3100)

怪物免伤百分比:(护甲 – 护甲穿透) / (护甲 – 护甲穿透 + 1500)

⇒ 实际输出百分比:1 – 怪物免伤率 = 1500 / ( 护甲 – 护甲穿透 + 1500 )。
六、回顾 (懒人包)

    一开始我们引用伤害公式解释了 4.66 的来历 ( 以系数翻倍的猜想,反推了属攻 && 爆伤的系数公式,得出各数值后,再相除得出比例 4.66 ) 并且透过 4.66 的想法来推导出目前顶配机体的标准 ( 水攻 2100爆伤 450 ),也稍微写了关于比例 4.66 的问题。  接着再次引用伤害公式、以常见的攻击强度举例,套用平均计算方式,将数据整理成表格,又画了几张图,解释属性稀释现象,并且以数学方法进行验证。

  最后针对平均收益比较收益的计算方式,做了一些讨论,指出各个计算法的优劣之处,给了一个简单的实际例子 ( 2星猫咪 v.s. 2星偶像 )。然后,为了减少下一篇的计算过程,在文末对平均收益计算公式进行一番化简。

<旧火站柱.特别纪念>
本文来自网络,不代表3楼猫立场,转载请注明出处:https://www.3loumao.org/10436.html
返回顶部