【毒药法术原理】9项实验让你怀疑你从未用过毒药法术

2020-06-25更新:毒药的衰减过程是6秒,而非8秒,原来的公式有误。
本攻略详细讲解“毒药法术”,从“叠加机制”、“伤害机制”、“减速机制”、“逃逸机制”这4大方面着手,并设计9项实验加以证明,最终得出9条结论揭示毒药法术作用原理。

温馨提示:本攻略篇幅量极大,阅读需要大约20分钟,且部分内容所需基础知识要求较高,请“谨慎”决定是否继续观看。未经说明,所有时间单位都是“秒”,距离单位都是“格”。

先给出结论和配套视频,然后根据需要决定是否继续观看下面的实验。

  1. 在使用一瓶毒药法术的情况下,从最初始到最高状态的时间是12秒,12秒到16秒之间维持最大伤害,从16秒开始衰减。离开法术(或超过16秒)时衰退速度是增加的2倍,上限6秒
  2. 伤害增加阶段,敌人的受伤速度是呈二次增长的。
  3. 多瓶法术投放时可以更快达到最高伤害,但最高伤害无法叠加,最高伤害和减速效果取所有法术中等级最高的一瓶。
  4. 简便计算,毒药法术总伤害可以被先三次后一次的模型近似计算(前提是超过12秒自动补一瓶毒药)。
  5. 一旦获得毒药状态,则必定受到全额减速效果,对英雄和部队都全额降低移动速度和攻击速度。
  6. 只要中毒状态存在,效果无法被更弱的所取代,哪怕原先更强的法术光环已经消散。
  7. 毒药法术对英雄只有5%伤害,但可以受到100%的减速效果。
  8. 无需迎敌时,毒药范围内的敌军会主动逃离毒药范围,逃离路线根据现存的光环计算,大概率按照最近路线逃离。
  9. 西瓜投手(熔岩发射器)的碎西瓜(熔岩)效果相当于毒药法术,但没有减速能力。

前方高能!上公式!

首先,如果你只下一瓶毒药,等毒药自然衰减(现实中其实基本上都是这种情况),那么 总伤害y时间x毒药的最高伤害k 的近似计算公式是这样的,这个公式在一定程度上可以满足精度需求:

把这个公式求导就得到了瞬时秒伤与时间和最高伤害的关系:

假设你在放第一瓶毒药之后,每隔12到16秒放第二瓶,那么12秒之后毒药始终保持最大伤害。
这种情况下敌军受到的总伤害y与时间x和最大伤害k的关系如下:

求导得瞬时秒伤公式:

下文中,如果涉及到毒药杀死援兵所需时间的计算,那么采用的是后一种模型,也即超过12秒自动补一瓶毒药法术。

本文比较硬核,建议配合配套视频食用:【毒药法术作用原理】9项实验让你怀疑你从未用过毒药法术


模块1:毒药伤害叠加规则

本模块回答了玩家的一个问题:下多瓶毒药效果是否能够叠加?

实验1:使用不同数量(2-8)一次性投掷毒3级武神,测出消灭武神所需时间。

得出如下数据

毒药数量 所需时间 (秒)
2 13.280
3 12.150
4 11.517
5 11.200
6 11.000
7 10.783
8 10.650

在这个实验中可以得出2条结论:

  1. 毒药数量越多,消灭敌人所需要的时间越短。
  2. 毒药数量越多,时间减少的幅度越不明显。

由此可推出多瓶同等级法术叠加时敌人更快进入最高状态,但最高状态伤害不因为数量的增加而提高。

实验2:每隔15秒投掷1级或者7级的毒药法术,试图击晕女王。

已知项:

  • 50级弓箭女皇生命值:2007
  • 1级法术最高秒伤:90
  • 7级法术最高秒伤:270
使用顺序 所需时间 (秒)
全部使用7级毒药 151.883
先2瓶7级毒药,然后11瓶1级 151.933
先11瓶1级毒药,然后2瓶7级 未击晕

实验完成后我们不妨做一个计算,在不考伤害增加阶段时,7级毒药预计造成的伤害为:151.833 * 270 = 40994.91

弓箭女皇的生命值*20 = 2007*20 = 40140 ≈ 40994.91

毒药造成的伤害大约是女皇生命值的20倍,所以换个角度可以得出结论:毒药对英雄的效果只有5%

而先下2瓶7级法术再下1级法术的效果又和全部7级法术的效果相当,再得出结论:在不间断的中毒下高等级的状态不会被低等级的所取代。

实验3:用2瓶7级毒药毒8级飞龙,通过改变间隔计算出抵达最高状态所需时间

实验依据:一旦达到最高状态,下一瓶法术的作用也只是维持这个状态,而不能提高伤害

已知项:

  • 8级飞龙生命值:4200
  • 7级法术最高秒伤:270
投放间隔 所需时间 (秒)
15 22.600
14 22.600
13 22.600
12 22.550
11 22.550
10 22.550
9 22.517
8 22.383
7 22.000
6 21.650

实验分析:尽管13-15秒和10-12秒所需要的时间都是一样的(不排除一些潜在误差),但是仍然得出这个时长在13和12之间。

实验结论:1瓶毒药作用下从初始到最高状态的时长是12秒


模块2:毒药伤害机制

本模块详细解释毒药法术的伤害机制,并推出合理的近似模型,且另外测出部落战情况消灭绝大多数单位的时间。

大本营门前有一棵树,名叫高树,上面挂了很多人……本模块对数学基础要求较高,但我尽量用各位能理解的方式解释。

实验4:通过不同兵种组合被一瓶不同等级的毒药消灭所需时间以及消灭特定生命值单位所需时间,推算出伤害模型。

得出数据后,首先尝试以前研究笔记或者其他帖子中讨论到的假设:毒药秒伤随时间均匀增加。

在推出模型前,还做了额外的一个实验,将敌军生命值卡到1,计算出消灭1生命值单位所需时间为1.200秒,也就是一开始的秒伤<1,那证明毒药法术的伤害起点是0了。

然后就可以测试模型并进行比对。

可以看出一个很明显的差距:消灭敌人的速度明显比实际快2-3秒。

所以此模型被推翻

紧接着,我们要思考一下为什么误差如此巨大?不难发现毒药的伤害一开始非常低,而到了一定时间才会感觉突然那么快,是量变到质变的过程。换言之,在伤害增加阶段中每秒伤害根本不是匀速增加的!

此时目光转向了二次函数,这种函数同样满足一开始增长极低,后面极高的现象。而且相对来说更好算一点……

既然认为每秒伤害与时间的关系是二次函数,那么做一次“积分”(求导的逆运算)之后,总伤害与时间的关系是三次函数。

相信大家看到这里会有一点点懵,所以同样上图,就可以生动形象地评估此模型了。

这个误差在一个比较合适的范围内了,所以是一个较为满意的模型。

更精确的模型可能更加复杂,在实际战斗中将带来计算的不便,故不再深入。

对于7级毒药法术同样也做了这个实验,因篇幅原因不再展示。

实验5:在部落战情况(2020年5月版本的毒药援军满级)计算出消灭各种援兵所需要的时间。

近似模型的精确度已经足够满足日常的计算需求了,然而对于需要更高精确度的玩家来说并不满意。故提供此表,即部落战情况毒药对绝大多数单位的时间。

一旦超过16秒就不要再尝试直接杀死援军了。

下图比较长,感兴趣的可以保存。


模块3:毒药减速机制

《部落冲突》的毒药法术除了带有伤害,也附带有移速减速和攻速减速效果,而《部落冲突皇室战争》的毒药法术只能造成伤害无法减速,两者不要混淆。

实验6:不同的状态下观察皮卡超人的移动得出移速减速规则和衰退规则。

已知项:

  • 皮卡超人移动速度:2.0格/秒
  • 1级毒药移速减速:-26%
  • 7级毒药移速减速:-44%

实验不仅要得出减速规则,也要测出毒药衰退时间。为控制变量,不仅一次投入多瓶法术以确保离开法术范围时是最高状态,也保证每次下法术的位置相同。

实验状态 所需时间 (秒)
对照组 10.750
1级毒药 13.400
7级毒药 16.167

经过视频观察,毒药衰退需要6秒。

由此得出:中毒状态的衰退速度增加速度的2倍最长6秒。且一旦中毒将受到全额减速

然而研究移速是非常玄学的事情,一方面是难以精确计算时间,另一方面是减速幅度没有攻速那么大,玩家可能更加关心如何降低攻速。

实验7:通过在中毒状态下野蛮人之王攻击皮卡超人的频率得出攻速减速规则。

已知项:

  • 野蛮人之王攻击速度:1.2格/次
  • 1级毒药攻速减速:-35%
状态 平均间隔
无状态 1.2
1级毒药 1.833

你可以计算1.2/1.833,将会得出0.65,或者说1-0.35,匹配上了毒药减速效果35%。因此可以反推出毒药减速后的新攻速。

设原来攻速为x秒/次,削弱后的新攻速为y秒/次,减速效果为a,可以得出:

此为“攻速更新公式”,可以确切计算减速后新的攻速。(如果攻速增加,a取负数)

实验8:毒药与狂暴叠加,揭示飞龙宝宝自身狂暴和毒药减速叠加得出减速规则。

一般情况下敌军不会被狂暴法术加强,所以讨论的是自带狂暴效果的兵种与毒药法术的叠加。超级野蛮人和飞龙宝宝都有这个效果,前者可以提高伤害和移速,而后者提高伤害和攻速。由于移速不太好测量,所以研究攻速成为了首选,自然着重研究飞龙宝宝。

已知项:

  • 龙宝正常攻击速度:1秒/次
  • 龙宝狂暴攻速增加:50%
  • 1级毒药攻速减速:-35%
  • 7级毒药攻速减速:-65%
状态 攻击间隔
无状态 0.667
1级毒药 1.05
7级毒药 1.933

接下来提出总攻速加成的两种假设:乘法计算和加减运算。

乘法计算:实际加成=(1+龙宝狂暴加成)*(1+毒药减速加成)。经计算,1级毒药攻速:1.03,7级毒药减速:1.91.

加减运算:实际加成=龙宝狂暴加成+毒药减速加成。经计算,1级毒药攻速:0.86,7级毒药减速:1.17.(误差较大,故舍去)

实验结论:毒药与狂暴叠加时攻速实际效果乘法运算,可以先计算出狂暴状态下的结果后和毒药的减速进行计算。


模块4:毒药逃逸机制

没有追击敌军需求的情况下,援军会主动逃离毒药法术范围,没人愿意坐以待毙。但对于英雄则不会逃跑,不仅心怀家国情怀,也因为自身的体魄带来了95%的超强防毒效果。

援军的逃逸方向难以预测。在同一时间,同一地点,援军四散而逃,使定向驱赶成为了痴人说梦。

纵使世界变幻莫测,我试图寻找援军逃逸的规律。

实验9:通过援军逃逸方向以定性得出逃逸规则。

在开始实验前,要扯一些几何学知识。

毒药法术的作用范围是标准的圆形,敌军一般处在圆形内,所以往哪里逃离只取决于当前位置与圆心的关系

上图给出了援军逃离路线的三种情形:“最近”是沿着半径向外移动,“较远”是沿着半径以当前位置为垂足的垂线移动,而“最远“是沿着半径向内做反方向移动。

在实际过程中,援军并不严格按照三种情况移动,所以取最接近的情况作为统计。

因为本人精力有限,只做了16次实验,实验结果如下:

整理一下得出:

最远 18.75%
较远 18.75%
最近 62.50%

得出结论:援军在逃逸时路线选择大概率选择最近路线小概率选择较远或者最远路线。


附加:碎西瓜伤害讨论

西瓜投手是建筑大师的得意发明,因为他完美地将西瓜与愤怒的骑士结合在一起,铸就了所有陆军的梦魇(除了他自己)——西瓜投手。而这座防御的外号是“熔岩发射器”,只是因为防御发射的“完全熟透的西瓜”看起来像熔岩而已。

当“完全熟透的西瓜”落地时,除了造成一定的伤害外,西瓜还会破碎一地。这些“碎西瓜”将继续造成伤害,它与毒药法术的伤害机制一样,满足同样的模型,也是12秒达到最高秒伤。但唯一不同的是持续时间更长,为20秒。所以碎西瓜比毒药法术更加致命。

但是碎西瓜没有减速能力,且继承了对英雄只有5%(战争机器)的缺陷,可利用这个弱点反制这座防御。

受限于篇幅,本模块不再展开。

至此所有实验已经全部展示,结论已放在开头。感谢各位能够看到这里,攻略制作已经有1个月有余。从实验设计,录制过程再到数据处理,每一步都在努力地将这个法术讲清楚,争取能够以更生动形象地用语言将其特性描述出来。

这瓶法术远比各位想象的复杂。本攻略尽管有充分的事实依据,但并不能保证完全准确无误的解释所有的机制。部分实验因为受限于测量条件和游戏限制而无法做到更精确的测量,因为作者精力问题也难以做出成百上千次的测试,只是取了极端样例进行测试。

不管怎样,能够完整的看到这里,说明你是愿意了解毒药法术更深层次的机制的!希望借助这个攻略,能够为后面毒药法术的使用提供坚实的理论基础。

在本攻略制作过程中,以下玩家提出了不少建议。在本文的最后,作者一并感谢: