旧版战斗机制详解

旧版战斗机制详解

欢迎来到战斗机制专页,本页重点介绍一次攻击过程中发生的各种行动。

本节会一步步拆解攻击的流程,并说明攻击结果是如何计算出来的。攻击可以分为两类:物理攻击和中毒攻击。

计算顺序

先从物理攻击说起,各项数值的计算步骤如下:

1. 武器或芯片的物理伤害 2. 力量(攻击者的) 3. 威力(攻击者的,仅在大逃杀中有意义) 3. 护盾(防御者的) 4. 吸血(取决于攻击者的属性) 5. 伤害反弹(取决于防御者的属性) 6. 侵蚀/新星(攻击者和防御者都会受到)

护盾、吸血和伤害反弹只对物理攻击生效,魔法攻击不受影响,因此只有以下几步:

1. 武器或芯片的魔法伤害 2. 魔法(攻击者的魔法强度) 3. 侵蚀/新星(防御者的)

武器

要发动攻击,你需要使用武器或芯片。最小伤害和最大伤害写在物品的描述里,也可以在效果列表中 EFFECT_DAMAGE 或 EFFECT_POISON 类别下找到(详见 getWeaponEffects 函数)。

注意:有些武器(比如机关枪)会列出多个效果。你需要把每个效果都当作一次独立的攻击来计算。

攻击时,伤害值会在最小值到最大值的范围内(含两端)随机抽取。这是第一步。

例如,用马格南开一枪,伤害会在 [25,40] 范围内抽取。

注意:有些武器(比如榴弹发射器)会对目标区域造成范围伤害 AoE。 目标格子受到的伤害最高(100%),之后每向外一圈,伤害降低 20%。以榴弹发射器半径 2 格的伤害范围为例:目标格子受到 [45,53] 点伤害,半径 1 格的一圈(紧邻目标格子的 4 个格子)受到 [36,42] 点,半径 2 格的一圈(再向外紧邻前面 4 个格子的格子)受到 [27,32] 点。对榴弹发射器来说,距离爆炸中心 3 格及以上的格子不受影响。

注意:如果一件武器有多次攻击,它们的基础伤害都相同。例如机关枪的 3 发子弹造成的原始伤害是一样的。

力量(或魔法)

算出物理伤害之后,攻击者的力量会修正武器的效果:

例如,一根力量为 200 的韭葱,伤害倍率为 3(因为 1+200/100=3),所以它用马格南开一枪会造成 [75, 120] 点伤害。

注意: 韭葱的力量不会变成负数,这种情况下按 0 计算,比如被CHIP_FRACTURE 削减力量时。

魔法的计算方式完全相同,只是基于中毒 EFFECT_POISON 而不是物理基础伤害,并由攻击者的魔法提升。

威力

(中毒攻击跳过这一步)

为了平衡大逃杀 的战斗,也为了让那些在战斗前半段躲起来的机灵鬼占不到便宜,这个模式专门引入了一项新属性:威力。每根韭葱每存活一回合获得 2 点威力;每击杀一个实体,击杀韭葱获得 10 点威力,击杀球茎获得 2 点,另外再加上受害者已累积威力的 50%。这个数值可以通过 getPower 函数获取。伤害计算方式如下:

注意: 不在大逃杀中时,getPower 函数返回 0,所以不需要根据战斗类型写两套不同的处理。

护盾

(中毒攻击跳过这一步)

护盾分为两部分:百分比护盾和固定护盾。两者都会在攻击时生效,相互补充。经护盾减免后的伤害计算如下:

可以看出,百分比护盾按一定百分比减少伤害,而固定护盾则减去一个固定数值。

示例:目标有 20 点百分比护盾和 15 点固定护盾,受到上一节算出的 [75, 120] 攻击时,最终伤害为 [45,81]。

示例 2:机关枪 [10-15]x3 攻击一个没有护盾的目标,总共造成 [30-45] 点伤害。但如果目标有 15 点固定护盾,所有伤害都会被抵消,因为每一发最多只能造成:15*(1+0/100)-15 = 0。

示例 3:反过来,霰弹枪 [33,43] 攻击同一个有 15 点固定护盾的目标,会造成 [18,28] 点伤害。

可以发现,固定护盾对低伤害非常有效,伤害越高效果越弱。反之,百分比护盾对高伤害非常有效(因为它按百分比减免),对低伤害则效果不佳。提供护盾的芯片效果会受到抗性的加成。

注意: 如果目标有 100 点百分比护盾,它受到的伤害为 0。

易伤

易伤作用于目标的护盾。易伤分两种:固定易伤和百分比易伤(EFFECT_ABSOLUTE_VULNERABILITYEFFECT_VULNERABILITY

百分比易伤从目标的百分比护盾中扣除,固定易伤则从目标的固定护盾中扣除。

注意: 百分比护盾和固定护盾都完全可以是负数。这时受到的伤害会增加。

示例:模拟两次霰弹枪 [33,43] 攻击一根有 15 点固定护盾的韭葱。第一次攻击造成 [18,28] 点伤害,并使目标的固定护盾降低 20。第二次 [33,43] 的攻击作用于固定护盾为 -5 的目标,因此会造成 [38,48] 点伤害(并继续降低目标的固定护盾)。

示例 2:一根有 -100 点百分比护盾的韭葱,每次受到的攻击伤害都会翻倍。

吸血

(中毒攻击跳过这一步)

吸血在护盾计算之后生效。造成的一部分伤害会治疗攻击者。这个数值由智慧提升,计算方式如下:

因此,一根智慧为 100 的韭葱会回复对敌人所造成伤害的 10%。

注意: 回复后的生命值不能超过自己的最大生命值。 如果击杀了目标,吸血只按实际对目标造成的伤害计算。 攻击自己时不会吸血(CHIP_DEVIL_STRIKE)。不过攻击队友时确实会吸血。

伤害反弹

(中毒攻击跳过这一步)

有些技能可以提供伤害反弹(EFFECT_DAMAGE_RETURN)。如果目标拥有伤害反弹,攻击者会受到一定百分比的伤害,按目标护盾减免之前的伤害计算。计算方式如下:

例如,A 用马格南 [25,40] 攻击 B,而 B 有 20 点伤害反弹,那么 A 会受到 [5,8] 点伤害。

注意: 反弹伤害无视攻击者的护盾。 注意 2: 如果 B 的护盾足够厚,A 受到的伤害有可能比它造成的伤害还多。

侵蚀

侵蚀(也叫新星伤害)代表韭葱在战斗中逐渐累积的疲劳。实体每次受到伤害,最大生命值都会按比例降低。这在一定程度上减少了因双方治疗量都足够而打成平局的情况。

实体每次受到伤害(攻击、中毒或伤害反弹),都会受到侵蚀伤害。侵蚀始终为所受伤害的 5%,中毒则为所受伤害的 10%。暴击时侵蚀额外增加 10%,达到 15%;中毒暴击则达到所受伤害的 20%。

示例:一个实体因一次攻击损失 100 点生命值,最大生命值也会降低 5 点。

示例:一个实体因中毒损失 100 点生命值,最大生命值也会降低 10 点。

注意: 伤害反弹同样会造成侵蚀。

进阶交互

暴击

触发暴击时,物品的所有效果(包括伤害)都乘以 1.3。这个乘法在计算武器或芯片伤害时进行(也就是第 1 步)。伤害效果暴击时,侵蚀也会增加 10%。召唤球茎时暴击,球茎的属性提高 20%。位移效果暴击没有任何特殊作用。

被遗忘武器的被动效果

被遗忘武器带有被动效果,可能在攻击时发挥作用。例如,EFFECT_DAMAGE_TO_ABSOLUTE_SHIELD 效果会把所受伤害的 5% 转化为固定护盾。这个效果在韭葱受到伤害后立即触发。因此,如果装备这件武器的韭葱受到多段攻击(恶魔打击、机关枪……),它会在第一段伤害和第二段伤害之间获得护盾。

----

本页由 ArtyMorty 编写,Magestik、Nyaleph 等人协助完成