内脏暴击伤害计算测试

在写这篇文章之前,我用了些时间做了关于血源内脏暴击伤害的一些测试,对于计算内脏暴击的伤害来说,得出了一些相对以往的测试来说更为准确的结论。在本文中,我主要介绍一些血源(或者说魂系列)的基础概念、说明基于这些事实如何设计这些测试、又如何处理测试得到的数据以及最后得到了什么样的结论。本文较长,假如没耐心看完,可以只看我给出的结论。

此外,本文的测试和结论基于某些以往的测试和结论以及攻略本,所以同样可能有不准确以及不完善之处。虽然我已经尽量排除这些因素,但不可避免会有疏漏,假如你发现了任何不准确之处或者单纯想交流一下,都可以与我联系。由于本人多少写过一点代码,所以本文里多少会有些代码,不过不理解的话其实也没有关系,忽略即可。

2020-11-14 update: 今天来更新这篇文章也是因为最近看到索尼在B站发了对up主谷歌的纠错视频,这篇文章测试几乎是在两年前做的,而写的时候大部分测试已经做完了不少时间了,而且写着写着发现有一些遗漏,还补做了一些测试,因此总体来说文章不是很通畅,希望各位见谅。我写这篇文章时,血源wiki给出的内脏暴击机制还不准确,是简单的技巧的倍率,而时隔两年,血源wiki已经给出了比我的文章更加准确的机制描述,而且这应该是通过直接解包游戏文件得来的。wiki里将两段伤害视作是武器的不同招式,而且第二段伤害针对不同触发方式有着不同的招式倍率。这种描述比我的更加简洁,显然也更正确。大家了解内脏暴击机制时,还是应以wiki为准。我在做测试之前,已经根据一些游戏现象怀疑内脏暴击的本质是武器,这个测试严格来说只是做了一些验证,严格来说,这篇文章并没有多少技术含量,而大都是“苦力活“,主要难点主要在分开测试属性和等级,我技术一般,而且本身偏向于枪反打法,只加力量拿到所有继承人符文并且成功使用失败者bug就是我最主要做的事也是最难的事了。做这些测试、写这篇文章的初衷之一也是因为之前各处关于血源的内脏暴击机制解释,大都不是很准确也不完整,对于一个热爱血源的玩家来说,还是一件挺遗憾的事情,总之能对大家有用,还是挺开心的,血源也要登录PS5了,希望到时候能畅享60帧的流畅血源。FS社垃圾优化,还爱疯狂塞粒子特效,会不会掉帧自己心里没点B数嘛

结论

内脏暴击是两把具有特殊补正曲线的不可附魔的隐藏武器,对应内脏暴击的两段伤害。

具体来说,内脏暴击是两把特殊武器打出的招式,为突刺属性,和普通武器的招式类似。这两把武器均只有内脏暴击这一个招式(或者说游戏内只能使用这一个招式),因此我们可以认为其招式倍率为1。

具体到这两把武器本身,两把武器只有基础攻击力的区别,根据玩家等级,有11种不同的强化等级,同样与普通武器的强化等级类似,只是普通武器直接用血石材料升级,而内脏暴击武器自动随着玩家等级而升级。其不同强化等级对应的基础攻击力、玩家等级如下表所示。作为特殊武器,自带与强化等级无关的1.3(S)技巧补正,但其补正曲线与普通武器不同,我的测试的目的之一,就是确定其补正曲线。此外,其攻击力与伤害还与宝石、符文、兽丸、附魔、部分武器特殊效果加成相关,具体来说,任何装备中的右手武器上的宝石同样可以作用于内脏暴击,但其是否真正有效取决于不可附魔武器与宝石的作用规则,但作用规则这一点,没有做严格的验证。三个爪印符文直接增加10/20/30%的内脏暴击伤害,互相可以乘法叠加,且取整至整数百分比。兽丸可以增加至多70%的内脏暴击攻击力。附魔同样可以增加对应元素的攻击力,相当于对应属性的固伤宝石。特殊效果部分包括锯齿加成、教会加成和部分武器自带的特殊效果。除此之外,其攻击力或伤害与右手武器强化等级、灵视、玩家武器种类、右手武器宝石等因素没有直接关系。

此外,在本次测试结束之后,我才发现我想当然认为所有内脏暴击都是一样的,实际上有三种不同的内脏暴击触发方式,即枪反、背刺与爆头(对特定部位积累一定伤害才能打出),本文中所提到的伤害测试,均使用枪反或者背刺完成。同样,我也没有考虑过内脏暴击是否有对boss或NPC的特殊作用。当然这些测试蛮难做的,我也不打算做了。我认为我的结论只适用于枪反与背刺内脏暴击,爆头内脏暴击应该采用了不同的内脏暴击武器,其第一段攻击力与我的结论相同,但第二段攻击力均高出50点。攻击力这一点是由贴吧的汉尼拔大佬于血源的数据库中获取的,但是否如我所猜想,对应爆头内脏暴击,并没有经过验证。此外我还认为内脏暴击对boss没有特殊作用,但显然NPC并不相同,一般NPC所受的内脏暴击伤害远低于普通敌人。其具体原理则很难确定,同样没有测试支持,也没有现成的结论。

下表为内脏暴击基础攻击力与人物等级关系。

强化等级 对应人物等级 武器1基础攻击力 武器2基础攻击力
+0 1-14 50 250
+1 15-29 55 325
+2 30-44 60 390
+3 45-59 65 570
+4 60-79 70 640
+5 80-99 75 720
+6 100-119 80 740
+7 120-139 85 760
+8 140-159 90 770
+9 160-199 95 780
+10 200-544 100 790

下图为内脏暴击的补正系数与普通武器的补正系数(红线为内脏暴击、蓝线为普通武器),为有几个关键点的折线图。因测试时,普通武器的面板数值在200-400之间,造成其曲线误差较大,直线度比内脏暴击差一些。图中有几个关键点,大致如下,另外我们可以认为他们的起点都是0点0%:

普通武器:10点5%,25点50%,50点85%,99点100%

内脏暴击:10点10%,50点80%,99点100%

Snipaste_2019-02-16_12-56-58.png

这里我们已经可以得到内脏暴击的软上限了,也即大概在80级和50技巧的时候,其攻击力达到软上限,根据计算,此时其攻击力约为200级99技巧满攻击力时的(1+1.3*0.8)/(1+1.3)*720/790=0.8083654375343975,即约80.8%,当然这个结论是不考虑沉重深渊宝石时的结论,当考虑沉重深渊时情况又略有不同,此处不再赘述。

影响内脏暴击的因素,可以分为增加攻击力或伤害这两个大类,具体来说,有等级、属性、锐利/沉重宝石等间接影响内脏暴击攻击力的,也有突刺、锻炼、滋养、兽丸,物理固伤等直接增加百分比/固定内脏暴击攻击力的,还有各种元素固伤、附魔等增加固定元素攻击力的,还有爪痕符文、野兽/眷族猎人、锯齿/教会加成等增加百分比伤害的。这几类中,只有最后一类作用于攻击力伤害转换过程之后,一般来说提升攻击力的效果优于同数值的提升伤害的效果。当然,对于内脏暴击来说,因为第二段攻击力非常高,一般而言只要稍微有些加成,都会超过8倍敌人的突刺防御力。此时提升攻击力与提升伤害的效果完全一致,而第二段攻击是内脏暴击最最主要的部分,一般而言,其造成的伤害占比往往超过95%,因此对于实用而言,两类效果的区别并不大,没有必要严格区分这两类效果。

基础概念

为了方便描述,下面给几个数值命名,作为下文里的基础概念,一般来说,这些概念也可以适用于其他魂系列游戏。

  • 基础攻击力: 武器的最基础的攻击力,一般只能通过强化武器等级来提升,在基础攻击力基础上,先由补正和补正系数来初步提升武器攻击力,再由百分比和招式倍率进一步提升攻击力,最后是固定攻击力提升。到了这一步就得到了计算伤害的最终攻击力。
  • 基础伤害: 实际上并不存在这个概念,这里指完成攻击力-伤害转换后未经提升或削弱的最初伤害。基础伤害经过一系列的提升或削弱之后就可以得到最终的伤害值。
  • 攻防比: 攻击者的最终攻击力和被攻击者对应属性防御力的比值。攻防比决定基础伤害与最终攻击力的比值。
  • 攻击力伤害转换: 最终攻击力转换为基础伤害的过程,提升攻击力的效果作用于这个过程之前,提升伤害效果作用于这个过程之后。由于经过了这次转换,同时因为攻防比决定了基础伤害值与最终攻击力的比值,导致魂系列里提升攻击力与提升伤害的效果并不完全一致。一般来说,提升攻击力效果好于提升伤害,某些极限情况下他们效果完全相同。

以上这些概念同样完全适用于内脏暴击的作用过程。

我们定义攻击力效率=基础伤害值/最终攻击力。即减伤率=1-攻击力效率。(深蓝叫做穿透率,意思一样,但是他画的图像明显不对)

攻击力效率是攻防比的函数,约定atk为攻击力,dmg为伤害值,def为防御力,x为攻防比即x=atk/def,其具体形式为:

$$\frac{dmg}{atk}=f(x)=\begin{cases}0.1 && x \leq 0.125 \\ 0.1 + \frac {19.2(x-0.125)^2}{49} && 0.125 \lt x \leq 1 \\ 0.7 - \frac {0.4(x-2.5)^2}{3} && 1 \lt x \leq 2.5 \\ 0.9 - \frac {0.8(x-8)^2}{121} && 2.5 \lt x \leq 8 \\ 0.9 && 8 \lt x \\ \end{cases}$$

其图像为

Snipaste_2019-01-27_19-24-28.png

而基础伤害值与攻击力、防御力的函数可以表示为

$$dmg=g(atk,def)=atk \times f(\frac{atk}{def})$$

以下是将防御力设为100时的图像

Snipaste_2019-01-27_19-36-26.png

这个公式据我所知应该是网友经过大量的试验测试出来的,不知道有没有大神看过魂系列的汇编代码做确认,但我们默认这个公式是正确的。一来是因为这个公式应该经过了许多试验,应该比较可靠,二来是假如不信任这个公式,那我们既有的信息就不太够我们设计测试以及得出结论了。

此外我还要提到我们的测试的基础,即我们的测试,是从某些我们假定正确的信息来推出另外一些我们未知的信息,那我们假定正确的信息都有哪些?

  1. 显而易见,游戏面板显示的数值信息。但其实这些信息未必非常可靠,因为这些数值都是经过取整(或者四舍五入,应该是单纯的取整)之后显示给我们看的。另外血源的数值真的有点玄学,举个例子来说,满级号1900血,带上5%的顺时针之后怎么算都是1995,但实际上却是1994。对于数值较大的情况,举个例子来说,1000点的数值大概只会有0.2%的误差,这对于我们来说是可以接受的。显而易见大数值得到的结论,其误差小于小数值的,故我们测试时应尽量提升数值。此外以下的测试均假定血源采用直接取整。
  2. ”官方“攻略本。官方攻略本错误不少,但大部分内容都是正确的,所以我们也会参考攻略本的内容,但官方攻略本上的内容,我们都会尽量做点简单的验证。
  3. 伤害公式。前面已经提到伤害公式f(x)和dmg=g(atk, def),但光有这个其实还不太够,因为很多时候我们需要用伤害值和防御力反推攻击力,或者用攻击力和伤害值反推防御力。理论上来说,这三者大部分情况下是知二求一的,即知道两个就可以求出另外一个。少数情况下只能得到范围,但这些情况一来基本不可能出现,二来我们也不关心,所以无关紧要。因为伤害随攻击力单调上升,随防御力单调下降,所以我们可以简单的用二分法知二求一,这部分可以用python和matlab代码实现,不再赘述。

准备

我们已经有了基础,但在正式做测试之前,我们还有一些东西需要考虑。既然是做测试,那么测试的是什么?如何测试?如何达到测试的条件?如何控制变量?

内脏暴击伤害与什么相关,具体是什么关系。具体来说我们可以确定内脏暴击伤害与右手武器强化等级无关,这个就不用测试了(其实也是测试过的,但是就不多提了)。影响内脏暴击伤害的因素可以总结为等级、技巧值、宝石、符文、兽丸、附魔、特殊加成。等级和技巧并不是完全正交的,所以测试技巧的时候我们需要排除掉等级的影响,正好根据现有的一些结论,等级超过200级之后,等级不再影响内爆基础攻击力。因此我们可以在200级之前不加任何技巧,以最大限度的排除技巧的影响,在200级之后,我们可以再测试技巧对内脏暴击的影响,此时同样不会再受等级影响。

因此我们需要一个新号,从1-200级测试等级对内爆攻击力的影响,在200级以后测试技巧对内爆攻击力的影响。需要说明的是,这11个等级区间我在测试之前就知道了,出自一个论坛,我认为这个可信,只是需要具体的数据验证,我们仍然需要做大约21次测试,具体来说,分别在[4, 14, 15, 29, 30, 44, 45, 59, 60, 79, 80, 99, 100, 119, 120, 139, 140, 159, 160, 199, 200]这些等级测试,只要数据符合等级预期,中间的等级就无需测试。测试的对象我选择了亚楠中心碰到的第一个拿斧头和火炬的杂兵,根据官方攻略本,其突刺防御力为70,同时根据官方攻略本,手杖的蓄力突刺和不蓄力突刺都是突刺属性攻击力,倍率分别为1.9和1.35,经我简单验证,倍率和属性都没有问题。

使用两把强化程度不同的手杖进行测试,得到以下数据

攻击力 1.35 1.9
137 130 202
152 149 231

验证可得g(137*1.35, 70)=131.35, g(137*1.9, 70)=202.72, g(152*1.35, 70)=149.83, g(152*1.9, 70)=231.26 ,虽然第一个数据取整之后差了1,但还是可以认为官方攻略本的数据没问题。

由于进入多周目之后,杂兵的防御力也会提升,因此要求我们测试同一个因素时,其测试环境不能变,也就是说我们不能测试到100级再进入二周目继续测试,这要求我们一周目升到200级且不能升技巧,因此我们需要去三继承人双掏失败者。一周目得到的魂虽然不够我们升满级,但是做完等级和技巧的两个测试是够的。唯一的问题是需要继承人3,而继承人3在苏美鲁衣乎尔。第一次测试的时候我是真的老老实实打圣杯迷宫的,后来才发现有魔改迷宫这种方便的东西。。。

关于技巧的测试,由于杂兵太脆,无法得到第二段数值,我最后选择了噩梦教会前拿教会大炮的刽子手做测试对象。根据官方攻略本,其突刺防御力为268,做同样测试。两个火纸和雷纸的测试可以无视,最后也可以确定官方攻略本无误。

攻击力 1.35 1.9
303 234 393
303+火纸 249 408
303+雷纸 265 424

等级和技巧的测试算是可以进行了,而宝石、符文、兽丸、附魔、特殊加成的测试远比前面的简单,最终基本全部使用我的满级号在噩梦教会测试。

此外,在处理数据之前,还有一点需要提及,那就是内脏暴击伤害的处理。内爆伤害分为两段,其显示的数字也有两个,比如(71, 1688),在这样一个数据里,第一个数字代表第一段伤害经过取整后的数值,第二个数字代表第一段伤害经过取整后的数值加上第二段伤害经过取整后的数值,也就是说是两段伤害取整之后的和。用程序员的话来说,大概是fir_num = int(first); sec_num = int(first) + int(second);,这个细节,也是在经过大量的测试之后敲定的。

测试

等级因素

测试等级因素的时候,如上述,采用亚楠中心杂兵作为测试对象,人物技巧9点,使用无宝石手杖进行内脏暴击,无爪印符文、兽丸、附魔等影响因素,在[4, 14, 15, 29, 30, 44, 45, 59, 60, 79, 80, 99, 100, 119, 120, 139, 140, 159, 160, 199, 200]这些等级进行测试,实际上我还在大约300级左右时测试过,数据与200级完全一致。

最终测出的数据如下,实际上1-3级无法测得,我们当成在技巧值不变的情况下与4-14级相等。实际上200级到544必然加技巧,实际伤害不可能维持在200级的数值,我们这里不予考虑。

等级 伤害数值 第一段攻击力区间 第二段攻击力区间
1-14 15,236 [55.1,56.6] [278.6,279.6]
15-29 19,326 [60.5,61.7] [362.3,363.3]
30-44 24,406 [66.1,67.1] [434.7,435.7]
45-59 30,602 [72.5,73.7] [635.6,636.7]
60-79 34,676 [77.3,78.4] [713.3,714.4]
80-99 39,761 [83.0,84.1] [802.2,803.3]
100-119 44,786 [88.6,89.7] [824.4,825.5]
120-139 49,812 [94.0,95.0] [847.8,848.9]
140-159 55,828 [100.3,101.4] [858.9,860.0]
160-199 60,843 [105.5,106.6] [870.0,871.1]
200-544 65,858 [110.7,111.7] [881.1,882.2]

表格中伤害数值就是游戏显示的数值,第三列是经计算后第一段的攻击力的最小值和最大值,第四列是第二段的攻击力的最小值和最大值。所有攻击力值均取到小数点后一位。目前我们可以看到其攻击力和我们一开始的结论还不一样,这是因为我们有9点技巧,这9点技巧结合1.3(S)的技巧补正会带来约为11.7%的提升。

我在论坛上看到了其他玩家的测试以及官方的数据,如下:

等级 倍率 等级 倍率
4 1 4~14 1
5~29 1.3 15~29 1.2690
30~44 1.56 30~44 1.5035
45~59 2.28 45~59 2.1195
60~79 2.56 60~79 2.3700
80~99 2.88 80~99 2.6540
100~119 2.96 100~119 2.7400
120~139 3.04 120~139 2.8200
140~159 3.08 140~159 2.8700
160~199 3.12 160~199 2.9200
200~ 3.16 200~ 2.9700

左边是攻略本数据,右边是玩家的测试,那么画出图来呢,如下,绿色为玩家测试,红色为攻略本数据,蓝线为我的内脏暴击武器2的数据,和红线几乎完全重合。

Snipaste_2019-01-27_21-58-54.png

可以看到,虽然绿线总体趋势相同,但比例还是差很多。此外橙色的菱形是开头的结论,将其乘上一个约为1.117的系数即可得到黄色菱形那条线,可以看到与红蓝折线完全重合。所以这个系数又是怎么来的呢?简单来说就是我们猜14级以下内爆第二段的基础攻击力为250,这样就可以得出这个系数,这个系数也代表了内爆技巧补正在9点技巧的时候可以有约9%的效果,即1.117 = 1 + 1.3*0.09。问题之二,如何验证这是对的,图是一个方面,还可以从其他方面验证吗?当然可以,后面我们测得了内爆的技巧补正为1.3,这个时候给手杖打一个12的锐利宝石,那么根据理论,计算出第二段的攻击力应该为(790 + 790 * 1.3 * 0.09 + 790 * 0.12 * 0.09) = 890.96 ,此时对杂兵用内爆第二段可以造成801.8点伤害。实际测试数据为(66, 866),第二段伤害为800点,误差约为0.2%,基本符合。

可以看到官方攻略本的数据实际上是第二段伤害的倍率,第一段伤害,其基础攻击力随等级区间而均匀递增,其基础攻击力仅约为第二段的1/8,由于攻击伤害计算机制,第二段伤害一般会远远超过第一段伤害的8倍。到此关于等级的测试完毕。

属性因素

这里之所以说是属性因素而不是技巧因素,是因为实测技巧加成是以技巧补正的形式作用的,而沉重宝石增加的力量补正同样可以作用于内脏暴击武器,也就是说,内脏暴击同样可以跟力量有关。但这里仅限于力量与技巧,血质与秘法将在后面再说。

关于属性因素,为了测得内脏暴击的补正曲线,我一共做了5组不同的测试,测试环境一致(测试力量与技巧时,因为用了不同的号,等级可能不一样,但均在200级以上,排除等级因素)

如上述,我选择了噩梦教会前拿教会大炮/斧头的刀斧手(刽子手)作为测试对象,经过测试,他们一周目的突刺防御力均为268。人物等级200级以上,属性范围从9-99,不装备爪痕,不使用兽丸等影响内脏暴击伤害的物品。以下为5组测试的不同:

  1. 武器为手杖,无宝石,使用手杖形态内脏暴击。
  2. 武器为手杖,18.2物理固伤宝石,使用手杖形态内脏暴击。
  3. 武器为手杖,无宝石,使用鞭子形态内脏暴击。
  4. 武器为手杖,15.2技巧关联性宝石,使用手杖形态内脏暴击。
  5. 武器为手杖,15.8+8.4力量关联性宝石,使用手杖形态内脏暴击。

大体而言,前四组为同一个号,其等级在200级以上,技巧为9-99点,第5组是另外一个新号,其等级为200级以上,技巧为99点,力量为9-99点(使用了魔改迷宫取巧,也懒得刷好的沉重宝石,就凑合用两个垃圾沉重了)。第一组可以测出内脏暴击武器的补正曲线,第1组和第2组对照,可以得出固伤宝石的作用。第3组和第4组是为了确定手杖的鞭子形态自带15锐利宝石的说法。第5组是为了确定内脏暴击武器其力量补正曲线是否与技巧补正曲线一致。同时我还测过14.7锐利宝石效果与15.2没有区别。

属性等级 第1组 第2组 第3组 第4组 第5组
9 14, 677 19, 700 15, 688 15, 688 73, 1707
10 15, 689 19, 711 15, 701 15, 701 73, 1709
11 15, 707 20, 729 16, 721 16, 721 73, 1712
12 16, 725 21, 747 16, 741 16, 741 74, 1716
13 16, 742 22, 766 17, 761 17, 761 74, 1720
14 17, 761 22, 784 18, 782 18, 782 74, 1723
15 18, 780 23, 802 18, 802 18, 802 75, 1727
16 18, 797 24, 821 19, 823 19, 823 75, 1731
17 19, 816 25, 840 20, 844 20, 844 75, 1734
18 20, 835 25, 858 21, 865 21, 865 76, 1738
19 20, 853 26, 877 21, 885 21, 885 76, 1741
20 21, 872 27, 896 22, 906 22, 906 76, 1745
21 22, 891 28, 916 23, 927 23, 927 77, 1749
22 22, 909 29, 935 24, 949 24, 949 77, 1752
23 23, 929 30, 954 25, 970 25, 970 78, 1756
24 24, 948 31, 973 26, 992 26, 992 78, 1760
25 25, 967 32, 993 27, 1013 27, 1013 78, 1763
26 26, 987 33, 1012 28, 1035 28, 1035 79, 1767
27 26, 1005 34, 1032 29, 1057 29, 1057 79, 1771
28 27, 1025 35, 1051 30, 1078 30, 1078 79, 1774
29 28, 1044 36, 1071 31, 1100 31, 1100 80, 1778
30 29, 1064 37, 1090 32, 1122 32, 1122 80, 1781
31 30, 1083 38, 1110 33, 1144 33, 1144 80, 1785
32 31, 1103 39, 1129 34, 1165 34, 1165 81, 1789
33 32, 1122 40, 1149 35, 1187 35, 1187 81, 1792
34 33, 1142 42, 1170 36, 1209 36, 1209 82, 1796
35 34, 1162 43, 1189 38, 1232 38, 1232 82, 1799
36 35, 1181 44, 1209 39, 1254 39, 1254 82, 1803
37 36, 1201 45, 1229 40, 1276 40, 1276 83, 1807
38 37, 1221 47, 1250 42, 1299 42, 1299 83, 1810
39 38, 1241 48, 1269 43, 1320 43, 1320 83, 1813
40 39, 1260 49, 1289 44, 1342 44, 1342 84, 1818
41 41, 1281 51, 1310 46, 1365 46, 1365 84, 1821
42 42, 1301 52, 1329 47, 1387 47, 1387 85, 1825
43 43, 1320 54, 1350 49, 1410 49, 1410 85, 1828
44 44, 1340 55, 1370 50, 1431 50, 1431 85, 1831
45 45, 1360 57, 1390 52, 1454 52, 1454 86, 1836
46 47, 1380 58, 1410 54, 1477 54, 1477 86, 1839
47 48, 1400 60, 1431 55, 1498 55, 1498 86, 1842
48 50, 1421 61, 1450 57, 1521 57, 1521 87, 1846
49 51, 1440 63, 1471 59, 1544 59, 1544 87, 1849
50 52, 1460 65, 1491 60, 1565 60, 1565 88, 1854
51 53, 1465 65, 1496 61, 1571 61, 1571 88, 1854
52 53, 1469 66, 1501 61, 1576 61, 1576 88, 1855
53 53, 1474 66, 1505 62, 1581 62, 1581 88, 1856
54 54, 1479 66, 1510 62, 1586 62, 1586 88, 1857
55 54, 1483 67, 1515 63, 1592 63, 1592 88, 1857
56 54, 1488 67, 1519 63, 1597 63, 1597 88, 1858
57 55, 1493 68, 1525 63, 1601 63, 1601 88, 1859
58 55, 1497 68, 1529 64, 1607 64, 1607 88, 1860
59 55, 1502 68, 1533 64, 1612 64, 1612 88, 1860
60 56, 1507 69, 1538 65, 1618 65, 1618 89, 1862
61 56, 1511 69, 1543 65, 1622 65, 1622 89, 1863
62 57, 1517 70, 1548 66, 1628 66, 1628 89, 1864
63 57, 1521 70, 1552 66, 1633 66, 1633 89, 1864
64 57, 1525 71, 1558 67, 1638 67, 1638 89, 1865
65 58, 1530 71, 1562 67, 1643 67, 1643 89, 1866
66 58, 1535 71, 1566 67, 1648 67, 1648 89, 1867
67 58, 1539 72, 1571 68, 1654 68, 1654 89, 1867
68 59, 1544 72, 1576 68, 1658 68, 1658 89, 1868
69 59, 1549 73, 1581 69, 1664 69, 1664 89, 1869
70 59, 1553 73, 1585 69, 1669 69, 1669 90, 1871
71 60, 1558 74, 1591 70, 1674 70, 1674 90, 1871
72 60, 1562 74, 1595 70, 1679 70, 1679 90, 1872
73 61, 1568 74, 1599 71, 1685 71, 1685 90, 1873
74 61, 1572 75, 1604 71, 1689 71, 1689 90, 1873
75 61, 1576 75, 1609 72, 1695 72, 1695 90, 1874
76 62, 1582 76, 1614 72, 1700 72, 1700 90, 1875
77 62, 1586 76, 1618 73, 1705 73, 1705 90, 1876
78 62, 1590 77, 1623 73, 1710 73, 1710 90, 1876
79 63, 1595 77, 1628 74, 1716 74, 1716 90, 1877
80 63, 1600 78, 1633 74, 1720 74, 1720 90, 1878
81 64, 1605 78, 1637 75, 1726 75, 1726 91, 1880
82 64, 1609 78, 1641 75, 1731 75, 1731 91, 1880
83 64, 1613 79, 1647 76, 1736 76, 1736 91, 1881
84 65, 1619 79, 1651 76, 1741 76, 1741 91, 1882
85 65, 1623 80, 1656 77, 1747 77, 1747 91, 1883
86 66, 1628 80, 1660 77, 1751 77, 1751 91, 1883
87 66, 1632 81, 1665 78, 1757 78, 1757 91, 1884
88 66, 1637 81, 1670 78, 1761 78, 1761 91, 1885
89 67, 1642 82, 1675 79, 1767 79, 1767 91, 1886
90 67, 1646 82, 1679 79, 1772 79, 1772 91, 1886
91 68, 1651 83, 1684 80, 1777 80, 1777 91, 1887
92 68, 1655 83, 1688 80, 1782 80, 1782 92, 1889
93 68, 1660 84, 1694 81, 1787 81, 1787 92, 1889
94 69, 1665 84, 1698 81, 1792 81, 1792 92, 1890
95 69, 1669 85, 1703 82, 1797 82, 1797 92, 1891
96 70, 1674 85, 1707 82, 1802 82, 1802 92, 1892
97 70, 1678 86, 1712 83, 1808 83, 1808 92, 1892
98 71, 1684 86, 1717 83, 1812 83, 1812 92, 1893
99 71, 1688 87, 1722 84, 1818 84, 1818 92, 1894

首先说第3和第4组,他们的数据完全一样,这说明至少在内脏暴击这一方面,鞭子相当于手杖+15锐利宝石,为鞭子自带15锐利宝石提供了非常有力的证据。

根据以上数据,再结合突刺防御力=268与攻击力、防御力、伤害知二求一的关系,可以计算出这五组数据对应的第一段第二段内脏暴击攻击力,画出前四组的图像,如下:

第一段:图中红线为第1组,绿线为第2组,蓝线为第3组和第4组。可以看到红线与绿线距离基本保持不变,约为18,而蓝线的斜率明显大于红绿线,这是因为蓝线有0.15的技巧补正。

Snipaste_2019-02-18_02-30-07.png

第二段:图中红线为第1组,绿线为第2组,蓝线为第3组和第4组。分析同上图,由于第二段的数值较大,在800-2000之间,因此其直线度非常好,适合用于数据分析,可以减小误差。

Snipaste_2019-02-18_02-29-20.png

首先因为99技巧时第二段攻击约为1817,因此内脏暴击的技巧补正=(1817-790)/790=1.3,第一段攻击的攻击力也约为230点,同样可以算出1.3的技巧补正,也就是说第一段和第二段的武器其技巧补正相同。我比较相信这个值的原因之一是他还是比较“整”的,不是什么1.32342342…,当然这只是个很小的原因,之后我们还可以通过各种数据来互相验证。我最初算出技巧补正是1.3还是从满级号的沉重深渊对内脏暴击的攻击力加成接近于28.3%这里算出来的。

通过第二组数据,我们可以看到物理固伤宝石同时作用于第一段和第二段内脏暴击,且提供固定物理攻击力提升,理论上来说,不会受兽丸等手段的进一步提升。

我们还可以算出鞭子/0.15技巧补正加成在99技巧时可以带来6.53%的攻击力加成,与理论值0.15/(1+1.3)=6.52%基本一致,可以看到误差非常小。

补正曲线

计算技巧的第二段攻击力的补正系数时,其公式为 (atk-790)/790/1.3 ,计算力量的第二段攻击力的补正系数时,其公式为 (atk - 790*2.3)/790/0.24 。计算第一段时,只需将790替换为100即可。

以第1组和第5组数据可以分别得到技巧和力量的补正曲线,如下图所示。

其中红色为技巧第一段攻击力的补正曲线,绿色为力量第一段攻击力的补正曲线。

紫色为技巧第二段攻击力的补正曲线,也是直线度最好的一条,和本文开头给出的是同一条,蓝色为力量第二段攻击力的补正曲线。

Snipaste_2019-02-18_01-10-51.png

可以看出,这四条线实际上是同一条,只是因为取整等原因,使得他们看起来有些很精细,有些很粗糙。同时,我们可以推测出,血源在展示数据之前是经过取整而非四舍五入的,因为这些粗糙的图像都在精细图像的下面,且会周期性的向精细的图像靠近。假如是四舍五入,那么粗糙的图像就会在精细图像的附近,且基本以精细图像为中心位置。当然这个问题其实根本不重要,所以也无所谓了。

同时我们可以大胆推测,内脏暴击的补正曲线实际上是由以下几个点连成的折线图。

(0, 0), (10, 0.1), (50, 0.8), (99, 1)

如下图所示:

Snipaste_2019-02-19_21-04-08.png

至此我们得到了内脏暴击自带的技巧补正,还测量得到了随属性点数变化的补正曲线,关于属性因素的测试到此就结束了。

其他因素

其他因素基本包括不限于:爪痕、兽丸、各类宝石、附魔、特殊加成等。对于这些因素,我们最主要的问题还是搞清楚,哪些因素对内脏暴击有加成,以及是提升攻击力还是提升伤害。由于这些数值都很清楚,也就没有必要做非常详细的计算。

爪痕

在做测试的过程中,爪痕是最令我意外的一个,爪痕的描述上清清楚楚的写着增加攻击力(中英三个版本均是),然而实际测试中,我发现爪痕的效果实际上是增加伤害,不知道是否与版本更新相关。

以下为我的测试数据,测试对象和等级属性武器条件同上:

测试条件 伤害 提升百分比 理论
26.3%锻炼+26.3%锻炼(2,3的对照组) 193,2799 -
26.3%锻炼+26.3%锻炼+30.4%突刺(4-10的对照组) 301,3699 0% 0%
26.3%锻炼+26.3%锻炼+30%爪痕 252,3640 -
26.3%锻炼+26.3%锻炼+30.4%突刺+10%爪痕 331,4069 10.01% 10%
26.3%锻炼+26.3%锻炼+30.4%突刺+20%爪痕 362,4439 19.98% 20%
26.3%锻炼+26.3%锻炼+30.4%突刺+30%爪痕 392,4809 29.99% 30%
26.3%锻炼+26.3%锻炼+30.4%突刺+10%爪痕+20%爪痕 398,4883 31.99% 32%
26.3%锻炼+26.3%锻炼+30.4%突刺+10%爪痕+30%爪痕 431,5290 43.00% 43%
26.3%锻炼+26.3%锻炼+30.4%突刺+20%爪痕+30%爪痕 470,5771 56.00% 56%
26.3%锻炼+26.3%锻炼+30.4%突刺+10%爪痕+20%爪痕+30%爪痕 516,6326 70.98% 71.6%

对比第1、2、3组数据我们可以发现,30.4%突刺和30爪痕的第一段伤害差别很大,有49点,而第二段伤害差别只有10点,具体来说,突刺宝石提升了第一段56%的伤害,第二段30.4%的伤害,而爪痕对第一第二段的提升一致,均为30%,这是为什么呢?

细究之下,我发现30.4突刺增加的是攻击力,作用于攻击力-伤害转换之前,其提升一般来说大于直接提升伤害。30%爪痕提升的是伤害,作用于攻击力-伤害转换之后,其提升固定为一百分比。当提升攻击力的效果在原本攻防比处在(0.1, 2.5)之间时,提升攻击力的效果往往大大优于同数值的提升伤害的效果。在这里体现为30.4突刺对第一段的提升远远大于30%爪痕对第一段的提升。同时这里也体现了突刺宝石作为提升攻击力的效果,其最后的伤害提升有可能会高于标注的数值。

这里我不再详细的计算数据,但我们可以得到爪痕提升伤害,突刺宝石提升攻击力的结论。

同时,对于几种不同的爪痕组合,我们可以分别计算出他们提升的百分比,我们可以得到爪痕相互乘法叠加的结论。然而,实际上10%+20%+30%应当是1.1*1.2*1.3 - 1 = 0.716 ,实际上却是70.98%,实际伤害会差约20点,其余组合则没有这个问题。

此外,既然说到爪痕,则不能不提到复制bug,通过复制bug可以得到多个20%爪痕符文,因此我们还可以测试一组。由于需要开新号,为求速度不再多升级。直接跑图快速血月再进魔改迷宫拿全爪痕。

测试条件如下:

人物等级42级,30技巧,锯肉刀带12%锻炼+18%锻炼+2.7%锻炼。

测试对象,禁忌森林第二段的刀斧手,突刺防御力为239。

测试条件 伤害 提升百分比 理论
无爪痕 21,664 0% 0%
20%爪痕+20%爪痕 31,957 44.01% 44%
10%爪痕+20%爪痕+20%爪痕 34,1050 58.01% 58.4%
20%爪痕+20%爪痕+20%爪痕 37,1143 72.00% 72.8%
20%爪痕+20%爪痕+30%爪痕 40,1243 87.09% 87.2%

提升百分比精度约为0.15%,可以看到这些百分比都相当接近于整数,从这里我们可以得出规律,爪痕相互乘法叠加,但数值上最多取整到小数点后2位(或者说百分比取整)。比如10%+20%+30%,理论提升为71.6%,但会取整为71%。

兽丸、宝石、附魔

这三个同时进行测试,而到了这一步,我们要做的已经很简单了,就是搞清楚这些因素是否对内脏暴击有提升,如果有,提升的是攻击力还是伤害。

在进行测试之前,我首先使用满级、封顶周目的号,使用无宝石+6失落手杖对噩梦教会前的刀斧手(突刺防御力约为360)进行了基础的伤害测试,取其伤害值作为基础的对比。之后,假如两段伤害提升百分比差不多且等于效果数值,则是提升伤害,若提升第一段明显大于提升第二段,则是提升攻击力。

条件 伤害
无爪痕 47,1577
30%爪痕 61,2051

以下我先列出一些没有提升效果的宝石的测试

宝石 伤害
精通-钝击30.4% 47,1577
血质21.6% 47,1577
秘法18% 47,1577
火焰25.3% 47,1577
闪电26.3% 47,1577
温暖,血质关联+26.3(使用赛门弓刃测试) 47,1577
蓄力29.7% 47,1577
物理攻击力+8.1%,对公开敌人攻击力+10.8% 56,1739

以下宝石效果应该没有提升,但是由于无意义或者我没有这类宝石效果,没有测试过:

寒冷、浑浊、污秽、闪耀、脉动、致命、密集

公开敌人的宝石效果我之前有测试过,但未记录数据,之后专门测试的时候找不到合适的宝石测试,凑合用着了。根据计算可以确定他的提升来自物理8.1%。因此对公开敌人的宝石效果对内脏暴击无效。

此外还有一个特殊的宝石效果,古怪血质,提升固定的血质攻击力,理论上来说应该有提升,但因为固定部分数值过低,我能拿到的最好的固定数值仅为6.8,因为其提升的伤害不到1点,也就无法测试,也没有任何实用价值。

之所以先将没有提升的效果拿出来,是因为我们很难得到想要的单一效果的宝石,也就很难测试,而确定了这些效果无提升之后,我们选择宝石的时候范围就会更广。

部分对内脏暴击有效的宝石效果(括号内为附带的无关效果,可能未全部记录,但确认均不提升内脏暴击):

宝石(噩梦教会刀斧手) 伤害
47,1577
古怪秘法47.3(秘法4.1%) 51,1586
古怪火焰67.5(火焰8.8%) 55,1594
古怪闪电14.5(火焰23.9%) 48,1580
古怪锻炼18.2(钝击23.4%) 55,1604
精通-突刺30.4% 89,2189
沉重65 85,2146
锻炼27.2% 83,2124
锐利26.3 60,1804
滋养21.5% 74,2009
愚物27.2% 83,2124
穷物28.6% 86,2154

以上效果可以大致分为几类,元素固伤类,直接提升突刺攻击力的,和通过提升补正来提升突刺攻击力的。

元素固伤可以给内脏暴击添加对应的属性攻击力,对第一段和第二段均有效,根据被掏的敌人对应的防御力来单独计算伤害,相当于魂3的混伤,同时也可以由爪痕进一步提升伤害值。

非元素固伤类的提升本质上是提升突刺属性攻击力,分为直接提升和间接提升两种,直接提升部分没什么好说的,基本就是百分比提升宝石和固伤宝石,大家都懂。间接提升的就是锐利宝石和沉重宝石,锐利宝石由于其数值过低,不具有实用价值,而沉重深渊宝石则可以提升65力量关联性,因此满属性情况下,其一般可以提升0.65/2.3=28.26%的内脏暴击攻击力,优于一般的272宝石。当使用鞭子内爆时,提升则约为26.5%,不到27.2%。(另外多说一句,一个沉重深渊加成超过272的阈值条件是补正总和小于1.4,基本上就只有圣剑了~)

以上所有的宝石效果均为提升攻击力,同等数值和条件下一般优于提升伤害。

以下是两种特殊的宝石效果,对特殊分类敌人的特殊加成。

对野兽伤害提升:

宝石(变异猪) 伤害
锻炼27.2% 171,2250
锻炼27.2%+野兽-10.9% 152,2004

由于152/171约等于(2004-152)/(2250-171)约等于(1-0.109),因此这类效果属于提升伤害的效果。

对眷族伤害提升:

宝石(迷宫里的大头娃娃) 伤害
207,1842
眷族+31.5% 272,2422

由于272/207约等于(2422-272)/(1842-207)约等于1.315,因此这类效果属于提升伤害的效果。

兽丸、附魔:

条件(噩梦教会刀斧手) 伤害
47,1577
兽丸1 128,2577
兽丸2 169,2949
雷纸 66,1616
火纸 58,1599
幻像外壳 55,1594

易知兽丸为提升攻击力的效果,根据兽化程度不同,可以提供最大70%的攻击力提升。这里可以看到第一段提升70%攻击力可以让最终的伤害提升约259%,足见提升攻击力效果在特定情况下远远优于提升伤害,没错,就是压级号。

附魔与元素固伤类似,不再赘述。

特殊加成

特殊加成部分包括锯齿加成、教会加成和武器自带的特殊效果。

很遗憾这部分我做的测试非常少,而且没有记录下数据。只记得测过锯肉刀的锯齿加成有效而锯矛的无效,而且这两个加成属于提升伤害的。

武器特殊效果中,最值得一提的还是手杖的鞭子形态,自带15锐利宝石,在99技巧时默认可以提升内脏暴击0.15/(1+1.3)=6.52%攻击力。

总结

这篇文章的数据我前前后后几乎测试了两个多星期吧,后期的写代码、数据处理、写文章更是划了整个寒假,没错就是划,摸鱼一时爽,一直摸鱼一直爽塞尔达天下第一。从结果上来说,算是差不多搞清楚了内脏暴击的内在机制。不过也是有一些缺陷的,许多测试跟预测跟最后的结果往往有1点的误差,这个很难说是哪里的问题,比如说有可能是血源在计算伤害的过程中有多处取整操作。当然本来血源的数据就是玄学,比如我在测突刺攻击的伤害的时候,往往会有同一种攻击动作造成的伤害有1点的浮动。本来我想把锯齿加成等特殊效果也看成是宝石效果来处理,但后来发现锯齿加成之间也是有区别的。锯肉刀的锯齿加成可以提升内脏暴击,锯矛的却不可以。只能假设说这两个锯齿加成本身就不一样,对内脏暴击有不同的判定。但这个也无法验证,没有实际意义。本来我做的事情就不是提出底层模型而解释各种现象,而是总结出内脏暴击伤害计算的数学模型/程序。当然把内脏暴击看待为隐藏武器这一点也算是个底层模型了,但也是基于大量数据而总结出的,我看b站视频,大佬们把内脏暴击看成武器的招式,在我看来是不成立的,作为武器的招式,其攻击力不可能与武器的攻击力无关。再各种测试中,我们可以看到内脏暴击与武器的许多相似之处,比如都有11个不同的强化等级,都有类似补正的攻击力提升机制,都可以通过宝石提升效果,同时他的攻击力属性为突刺属性,可以解释为这个武器就一个可以用的招式是突刺攻击,倍率是1。

总之我认为我总结的这个模型用来计算血源内脏暴击伤害来说,已经相当完善了,基本上方方面面都照顾到了,已经差不多可以用来写一个内脏暴击伤害计算器了。具体如何计算,大概是先由人物等级确定两段基础攻击力,再由宝石、武器特殊效果和人物属性来确定内脏暴击的补正和补正系数,进一步提升攻击力,再根据兽丸、宝石等提升百分比攻击力,再由宝石提升固定攻击力,再由宝石添加固定的元素攻击力。这一步之后经攻击力伤害转换算出基础伤害,再由爪痕符文、特殊宝石效果、锯齿/教会加成等提升最终的伤害。手杖作为唯一同时有教会加成和锯齿加成还有隐藏15锐利宝石效果的武器,毫无疑问是内爆最佳武器。说得好我还是选择锯肉刀。

另外根据我粗略的计算,极限情况(可以考虑复制bug),内脏暴击可以打出2w+的伤害。当然不会超出2w多少。

全文完

后记:在我发了这篇文章之后,贴吧的汉尼拔大佬提出来游戏数据中存在不同于我的结论的第二段攻击基础攻击力,貌似是对boss的,具体数值为[300, 375, 440, 620, 690, 770, 790, 810, 820, 830, 840],相对于我的结论来说,都增加了50。我测试的时候以为各种内脏暴击数值都相同,因此也没有特意去测试boss的伤害。后来粗糙的测试了圣职者怪兽和神父第一阶段,根据数据来说,内脏暴击对圣职者怪兽是有额外攻击的,而对神父一阶段没有。我猜测这可能是因为打出处决的方式不同,一个是肢体破坏,一个是枪反。假如这个结论成立的话,那么内脏暴击就多了一个隐藏武器,也就是说,根据打出处决的方式不同,第二段会使用不同的内脏暴击武器。这一点还需要进一步的测试,这个以后再说吧。懒人你伤不起。。。orz

ref:

  1. 血源诅咒 内脏暴击
  2. Visceral Attacks