MegaBlock Survivors 敌人
MegaBlock Survivors 中的每一个敌人都是由插件自有的移动与碰撞代码驱动的自定义模型,而不是原版 Bukkit 生物。它们完全无视原版 AI:每个敌人都按当前波次等级生成,从该等级推导出自身属性,并由对局实例逐 tick 驱动。
关于波次如何组成、以及波次等级如何从对局已进行时间推导出来,请参阅玩法。
共享的属性基线
所有怪物共用同一套属性推导方式,在生成时依据波次等级套用:
| 属性 | 公式 | 各类型覆盖值 |
|---|---|---|
| 最大生命值 | round(waveLevel * 1.6 - 1.0, 1dp) | Boss x10,Artillery x0.5,Ghost x5 |
| 接触伤害 | max(1, floor(waveLevel / 2.5)) | Boss x2 |
| 加速度 | 0.15 * baseMul + 0.0163296 * slopeMul * sqrt(waveLevel) | Volatile x2,Ghost 随时间递增,Scorpion 随距离递增 |
| 最大速度 | acceleration * 1.1 | 跟随加速度 |
| 碰撞箱 | 2 格(ENTITY_SIZE) | Boss 以 x2 或更大的比例渲染 |
baseMul / slopeMul 来自对局难度 —— 参见玩法页面上的难度表。
波次敌人
这四种类型是波次编排器唯一能抽取的敌人。它们在各波次区间的相对权重及其预算消耗见玩法页面。
Shadow Slime
最基础的敌人,也是波次 1-2 中唯一会出现的东西。径直朝玩家走来,重叠时造成接触伤害。没有特殊行为,也没有前摇提示 —— 它就是其他所有机制赖以平衡的基础压力。预算消耗 1。
Volatile
苦力怕式的自杀炸弹。移动速度约为 Shadow Slime 的 2 倍,一旦接近到 2 格以内便会急停,并进入 30 tick 的引爆倒计时,同时绘制一个不断扩张的光环,其颜色依次升级为红 -> 橙 -> 白,模型也会逐渐染成炽白色。如果倒计时走完,它会造成 5 点伤害,半径为 2.0 + waveLevel * 0.15 格,随后消失。
爆炸是它唯一的输出手段 —— Volatile 不造成接触伤害,因此在它引爆之前被碰到,从设计上说是可以活下来的。在引爆过程中击杀它会完全取消爆炸,并额外奖励 5 点暗影碎片,这使得抢先近身击杀成为一种真正的风险回报博弈,而非惩罚。预算消耗 2。
Artillery
一种向 30 格内的本局玩家发射球形攻击的远程怪物,最短攻击间隔为 101 tick,约 5 秒。攻击会向水平移动方向预判 2 格。移动代码设有 18–22 格的理想距离,但共用追击加速仍然生效:小于 18 格时,后退加速只是抵消追击加速,并不保证后退;处于理想距离内也仍会前进。因此不能指望它固定保持 20 格距离。
每次球形打击都有 40 tick(2 秒)的前摇提示:施放时为黄色玻璃外壳,+20 tick 时变橙,+40 tick 时变红 —— 伤害只在红色那一帧落下,并且只作用于标记点 1.5 格范围之内。Artillery 怪物以一半的常规生命值为其射程付出代价。预算消耗 2。
Laser Sentinel
一个四阶段的风筝式狙击手,循环执行 AIM -> LOCK -> FIRE -> COOLDOWN:
| 阶段 | 持续时间 | 行为 |
|---|---|---|
| AIM | 30 tick | 光束持续跟踪玩家 |
| LOCK | 20 tick | 光束锁定在当前端点 —— 这是走出光束的最后时机 |
| FIRE | 瞬发(5 tick 闪光) | 沿锁定方向进行命中判定;若本局玩家胸部高度的位置距射线采样点不超过 1 格,则造成 max(1, contactDamage) 伤害 |
| COOLDOWN | 80 tick | 待机,然后重复 |
待机或冷却时,距离小于 15 格便会尝试拉开距离,仅在 15–60 格范围内进入 AIM。AIM 期间离开 60 格范围会取消本次攻击;一旦进入 LOCK,则会沿锁定射线完成射击,最远 60 格。实体方块会截断光束及伤害射线,因此掩体可以挡住射击。AIM、LOCK 和 FIRE 期间停止水平移动。请在发射前离开锁定光束。预算消耗 2。
非编排敌人
这些敌人永远不会出现在正常的波次抽取中。
Ghost
Ghost 拥有 5 倍的常规生命值,不提供掉落、击杀计数、经验值或传送门献祭进度。具体行为取决于来源:
- **计时幽灵大军:**由独立控制器管理,接触时触发玩家的致命伤处理;有额外生命时可以复活。这些幽灵不在当前武器的目标集合中,也不在核弹、幽灵大军旗帜或 Second Wind 的清场范围内。进入下一个世界才能移除大军;当前代码不支持通过战斗摆脱它们。
- **最终 Boss 随从:**携带至少两份 Boss 贡品时,Boss 可以召唤相同的幽灵模型。这类幽灵使用普通敌人管理,造成随等级变化的普通接触伤害,可以被武器击中或被清场效果移除,不受计时大军的加速影响。
计时大军开始召唤后,每 5 秒生成一只 Ghost,整支大军(包括现有及未来生成的幽灵)每 30 秒获得一次 1.2 倍加速。触发计时器请参阅玩法页面上的幽灵大军章节。
Death Orb
仅当玩家携带 3 份 Boss 贡品进入战斗时,最终 Boss 才会生成 Death Orb。它不是怪物,而是以 0.14 格/tick(约为疾跑速度的一半)追踪玩家的位置。接触半径设为 1.5 格,冷却为 1 秒,原本用于施加 Boss 按等级计算的伤害。玩家无法选中、伤害或摧毁它;它会持续到 Boss 死亡。两个球体在 Boss 位置生成,第二个沿 X 轴偏移 2 格,随后独立追踪玩家,不会环绕或返回 Boss。
当前代码将上次伤害 tick 初始化为 Integer.MIN_VALUE。从非负的对局 tick 中减去该值会发生整数溢出,因此普通对局中的首次冷却检查始终失败,也不会更新该时间戳。球体仍会移动和显示,但不会执行接触伤害分支。这是根据源码确认的限制,并非实服伤害测试结果。
Boss
Scorpion(传送门 Boss)
世界 1-3 每一关的关卡 Boss。以爆发方式攻击:连续发射三次球形打击,每次间隔数 tick,然后短暂停顿,如此往复。每次打击都使用与 Artillery 怪物相同的 40 tick 黄/橙/红前摇提示,朝玩家移动方向预判 2 格,并在红色那一帧对 1.5 格范围造成伤害。
它在生成时会掷出一个稀有度(2% 噩梦 / 10% 精英 / 否则普通),该稀有度会成倍提升生命值、伤害、模型比例和战利品。此外,当玩家距离超过 50 格时它会逐步加速,随距离线性缩放,在 200 格及以上时封顶为 4 倍速度,因此在无尽世界里一路放风筝是行不通的。完整的稀有度表见玩法页面。
Angel of Death(最终 Boss)
仅限挑战模式,生成于 WORLD_4 竞技场的中心。不可移动,拥有 2.5 倍的基线 Boss 生命值,并每 5 秒根据你的距离选择两种攻击之一 —— 10 格以内为 9 格横扫,超出则为三柱齐射。Boss 贡品会为它叠加"战利品之力"。完整细节见玩法页面。
两个 Boss 都免疫核弹掉落物和 Second Wind 复活清场 —— 应急按钮会清空它们周围的场地,但绝不会清掉 Boss 本身。在最终决战期间波次怪物也会继续刷新,因此这个竞技场从来不是一场干净的单挑。