实在抱歉,之前的测试是在接近残血的情况下测试的,没有注意到一个细节,导致之前的解释其实是有严重问题的。这个错误会使大家严重低估Health Regen的重要性。
在此先向大家道个歉。
有修改的地方我会特别表明。
----------
对于Health Regen(以下简称HR),可能是比Diep.io里面Penetration更诡异,更能理解的一项。但事实上Penetration的工作原理更复杂,如果看过之前我对Penetration的科普贴,估计也明白那东西才是最复杂的。
这个东西,直接用模型来解释,非常复杂,我们直接举例来说明。
我们假设一个场景,最大HP为70,受到60点伤害,现在剩余10HP。
并且,在接下来的40秒内,没有受到任何伤害。
为了方便讨论,【下面的讨论中,假设生命恢复速度是线性的,但这一点是不确定的】
【但是,根据粗略的测量,在两个步骤中的恢复速度的确是线性的。这一点我没有视频剪辑软件,不能太肯定。】
0点HR,即初始状态:
受伤后,如果30秒内没有受到任何伤害,30秒后生命快速恢复,在第40秒恢复到最大HP。
0s: 10
30s: 10
35s: (70 + 10) / 2 = 40 (注意,这里假设恢复速度是线性的,但这不确定)
40s: 70
3点HR:
受伤后,生命立刻恢复,到第30秒,恢复最大HP的3/7,然后接下来的10秒内(30s~40s),恢复到最大HP。【注意,之前我说的是损失HP的3/7,但实际上是最大HP的3/7,这很关键】
0s: 10
15s: (10 + 40) / 2 = 25 (这一步应该在30s之后)
30s: 10 + 70 * (3 / 7) = 40
35s: (70 + 40) / 2 = 55
40s: 70
7点HR:
受伤后,生命立刻恢复,到第30秒,恢复最大HP的7/7,即恢复最大HP。
0s: 10
15s: (100 + 30) / 2 = 6
30s: 10 + 70 * (7 / 7) = 80 -> 70 (因为最大HP就是70,超过了也只能是70)
那在7点HR下,第几秒就能恢复到最大HP呢?答案是:(70 - 10) / [70 * (7 / 7) / 30] = 25.7s
没有错,在30s之前就已经能恢复到最大HP了。在原来错误的算法里面,是不可能的,导致看起来
HR作用非常小。
再算一下,在0到7点HR下,70HP被打掉10, 30, 60HP后,恢复到60HP满血复活的时间(向上取整,单位:秒)。
-10HP -35HP -70HP(假设不死)
0: 0 / 40 38 / 40 39 / 40
1: 0 / 30 36 / 40 39 / 40
2: 0 / 15 34 / 40 38 / 40
3: 0 / 13 25 / 40 38 / 40
4: 0 / 8 19 / 27 37 / 40
5: 0 / 6 15 / 21 35 / 40
6: 0 / 5 13 / 18 30 / 40
7: 0 / 5 11 / 15 26 / 30
可以看出,HR加点是可以导致质变的。对于一定百分比的伤害,至少HR高于某一个点就能达到质变的效果,再高也无用。但是,HR很低时,只能对小伤害有明显效果,对大伤害效果作用几乎为0。HR越高,作用面就越大。
比较重要的结论就是:
1点HR只能对抗小伤害;如果要加HR,最好就不要只加1点,因为真的没有什么用。
HR作用效果的有质变性的,只要HR加点达到要求,对恢复的影响是巨大的;但在达到要求的基础上,再多的HR点数提升并不明显。
老规矩,二楼补图
在此先向大家道个歉。
有修改的地方我会特别表明。
----------
对于Health Regen(以下简称HR),可能是比Diep.io里面Penetration更诡异,更能理解的一项。但事实上Penetration的工作原理更复杂,如果看过之前我对Penetration的科普贴,估计也明白那东西才是最复杂的。
这个东西,直接用模型来解释,非常复杂,我们直接举例来说明。
我们假设一个场景,最大HP为70,受到60点伤害,现在剩余10HP。
并且,在接下来的40秒内,没有受到任何伤害。
为了方便讨论,【下面的讨论中,假设生命恢复速度是线性的,但这一点是不确定的】
【但是,根据粗略的测量,在两个步骤中的恢复速度的确是线性的。这一点我没有视频剪辑软件,不能太肯定。】
0点HR,即初始状态:
受伤后,如果30秒内没有受到任何伤害,30秒后生命快速恢复,在第40秒恢复到最大HP。
0s: 10
30s: 10
35s: (70 + 10) / 2 = 40 (注意,这里假设恢复速度是线性的,但这不确定)
40s: 70
3点HR:
受伤后,生命立刻恢复,到第30秒,恢复最大HP的3/7,然后接下来的10秒内(30s~40s),恢复到最大HP。【注意,之前我说的是损失HP的3/7,但实际上是最大HP的3/7,这很关键】
0s: 10
15s: (10 + 40) / 2 = 25 (这一步应该在30s之后)
30s: 10 + 70 * (3 / 7) = 40
35s: (70 + 40) / 2 = 55
40s: 70
7点HR:
受伤后,生命立刻恢复,到第30秒,恢复最大HP的7/7,即恢复最大HP。
0s: 10
15s: (100 + 30) / 2 = 6
30s: 10 + 70 * (7 / 7) = 80 -> 70 (因为最大HP就是70,超过了也只能是70)
那在7点HR下,第几秒就能恢复到最大HP呢?答案是:(70 - 10) / [70 * (7 / 7) / 30] = 25.7s
没有错,在30s之前就已经能恢复到最大HP了。在原来错误的算法里面,是不可能的,导致看起来
HR作用非常小。
再算一下,在0到7点HR下,70HP被打掉10, 30, 60HP后,恢复到60HP满血复活的时间(向上取整,单位:秒)。
-10HP -35HP -70HP(假设不死)
0: 0 / 40 38 / 40 39 / 40
1: 0 / 30 36 / 40 39 / 40
2: 0 / 15 34 / 40 38 / 40
3: 0 / 13 25 / 40 38 / 40
4: 0 / 8 19 / 27 37 / 40
5: 0 / 6 15 / 21 35 / 40
6: 0 / 5 13 / 18 30 / 40
7: 0 / 5 11 / 15 26 / 30
可以看出,HR加点是可以导致质变的。对于一定百分比的伤害,至少HR高于某一个点就能达到质变的效果,再高也无用。但是,HR很低时,只能对小伤害有明显效果,对大伤害效果作用几乎为0。HR越高,作用面就越大。
比较重要的结论就是:
1点HR只能对抗小伤害;如果要加HR,最好就不要只加1点,因为真的没有什么用。
HR作用效果的有质变性的,只要HR加点达到要求,对恢复的影响是巨大的;但在达到要求的基础上,再多的HR点数提升并不明显。
老规矩,二楼补图