BK的潜行

BK的潜行

适用于Minecraft的潜行系统,同时兼顾PvE与PvP

BK'S STEALTH
隐匿。出击。消失。

一个适用于 Minecraft 的简单潜行系统,兼顾 PVE 与 PVP。


------------------------------------------------------------------------------------------

  潜行

潜行时,潜行值会逐渐蓄满。你所在的位置越暗,蓄力速度就越快,而完全静止不动时,蓄力速度会翻倍。站起后,潜行值会逐渐流失——在阴影中流失得慢,在日光下流失得快。

随着潜行值提升,你会经过四个等级,每个等级都能让你躲过更敏锐的视线:

    一级    僵尸、骷髅等无意识生物
    二级    掠夺者、村民、末影人、模组生物
    三级    动物和蜘蛛
    四级    所有依赖视觉狩猎的生物

被你成功隐匿的生物将无法发现你——如果有生物已经在追你,当你达到足以使其失明的等级时,它会放弃追击并游荡开。监守者永远不会被欺骗。它们不靠视觉狩猎。

更高的等级会让你变得更加透明,并且每个等级都会让你发动的攻击必定造成暴击。四级时,首次攻击可造成接近三倍的伤害。

请注意,有任何生物在注视你时,你无法积攒潜行值。一旦进入敌对生物的视野,潜行值就会停止增长并开始下降。当你被注视时,屏幕边缘会泛红,起初轻微,注视时间越长颜色越深——这道红光就是提醒你移动的信号。发动攻击会消耗潜行值。被击中也会消耗。此外,在隐匿状态下,你受到的伤害会增加 30%。


  队友

  /bkstealth add <玩家名>       让你的朋友不再破坏你的潜行
  /bkstealth remove <玩家名>
  /bkstealth list

------------------------------------------------------------------------------------------

  暴击

基础 5% 几率造成 30% 额外伤害。不仅限于武器挥砍,也适用于法术和箭矢。

跳跃攻击必定暴击,但只造成你暴击伤害的三分之一,因此它们是可靠的选择,但并非最佳选择。

新增两种护甲附魔:

    锐利(暴击几率)
    凶狠(暴击伤害)


------------------------------------------------------------------------------------------

  配置

几乎所有的数值都可以在配置文件中调整:潜行值的填充速度、等级阈值、生物察觉你的距离、被注视时的影响程度,以及每种生物视力的敏锐度。

模组生物默认都是二级。数据包和配置文件可以重新调整它们的等级:

    #bkoverhaul:perception/mindless, /humanoid, /alert, /keen, /non_visual

------------------------------------------------------------------------------------------

工作原理详解(潜行)

## 1. 潜行值

| | |
|---|---|
| 范围 | 0 – 99.5 |
| 更新频率 | 每 4 tick |

### 1.1 蓄力(仅潜行时)

| 条件 | 每 4 tick | 满值所需时间 |
|---|---|---|
| 漆黑(光照等级 0) | 1.00 | ~20秒 |
| 完全日光(光照等级 15) | 0.50 | ~40秒 |
| 完全静止时 × 2 | | ~10秒 / ~20秒 |

### 1.2 流失

| 来源 | 流失量 | 备注 |
|---|---|---|
| 站立(非潜行) | 每4 tick 0.8 + 光照等级 × 0.1 | 黑暗中约25秒,全日照下约9秒 |
| 敌对生物在感知范围内 | 每4 tick 2 | × 等级 × 光照 × 暴露度 |
| 敌对生物注视着你 | 每4 tick 4 | × 等级 × 光照 × 暴露度 |
| 命中目标 | 固定 20 | 被格挡的攻击也会触发 |
| 被击中 | 固定 40 | |

### 1.3 敌方压力

当任何敌对生物在你的感知范围内 或 注视着你时:

- 潜行值完全无法增长 — 潜行、黑暗和静止都无效
- 上述的流失规则照常生效

只计算最强的单个侦测者。三个生物造成的压力与一个完全相同。

暴露度渐增 — 侦测导致的流失从 20% 强度开始,并在持续承受压力的 10 秒 内逐渐提升至全效,一旦压力解除则立即重置。

侦测流失的倍率:

| 因素 | 效果 |
|---|---|
| 光照 | 黑暗中 × 0.25 至 全光照下 × 1.0 |
| 侦测者等级 | 无意识 × 0.5,类人 × 1.0,警觉 × 1.5,敏锐 × 2.0 |
| 暴露度渐增 | 10秒内 × 0.2 至 × 1.0 |

---

## 2. 等级

在等级区间的顶部进入该等级,直到降至区间底部才退出,因此区间有所重叠,避免了等级在边界上反复横跳。等级是存储的数值,而非实时计算 — 当潜行值为 82 时,你在下降过程中处于四级,而在上升过程中则处于三级。

| 等级 | 进入 | 保持至 | 暴击伤害 | 可致盲 |
|---|---|---|---|---|
| 4 | 99.5 | 80 | +150% | 所有依赖视觉狩猎的生物 |
| 3 | 85 | 65 | +100% | 警觉类 — 动物、蜘蛛 |
| 2 | 70 | 50 | +50% | 类人型 — 掠夺者、村民、末影人、所有模组生物 |
| 1 | 55 | 35 | — | 无意识类 — 僵尸、骷髅 |

每个等级都提供必定暴击效果。等级暴击伤害与其他所有来源叠加,因此四级时的首次攻击可达到约 2.8 倍伤害。

隐匿状态下,你受到的伤害会 +30%。

---

## 3. 侦测

### 3.1 感知等级

当你的潜行等级达到某生物的感知等级时,该生物即被你致盲。判定按以下优先级从高到低进行:

1. 配置文件覆盖 — "modid:mob=3",或使用 =none 代表永远不会被你隐匿的生物
2. 实体标签 — #bkoverhaul:perception/mindless /humanoid /alert /keen /non_visual
3. 来自其他模组的生物 — 固定为二级
4. 仅原版生物 — 基于类别的启发式判定:
- 无意识:Zombie, AbstractSkeleton, Slime, Silverfish, Endermite, Zoglin
- 警觉:Spider, Animal, WaterAnimal
- 非视觉:Warden — 在任何等级下都不会被致盲
5. 后备方案 — 二级

结果按实体类型缓存,标签重载时清除缓存。

### 3.2 感知范围(接近)

直径仅由穿戴的护甲件数决定 — 饰品、药水效果和附魔生成的护甲均不计算在内。

| 护甲值 | 直径 |
|---|---|
| ≤ 12 | 3 格 |
| 16 | 4 格 |
| 20 | 5 格 |
| ≥ 24 | 7 格 |

倍率:移动时 × 1.5,潜行值低于 50 时 × 1.5。侦测范围为圆柱体,垂直方向 ±2 格。

接近侦测无视盲目状态 — 无论对方能否看见你,靠近危险生物本身就是危险的。

### 3.3 视线

固定 9 格 半径,与护甲无关。需要 60° 面朝圆锥体以及无障碍视线,且仅对你当前等级无法致盲的生物有效。

你只会承受接近侦测和视线侦测中更强的那一个的效果,不会同时承受两者。

### 3.4 哪些生物会造成潜行值流失

| | 流失潜行值 | 能感知到你 |
|---|---|---|
| 敌对生物 | 是 | 是 |
| 玩家 | 是(除非结盟) | 是 |
| 中立 / 被动生物 | 否 | 是 |

### 3.5 摆脱追踪者

每 4 tick,在 32 格 范围内正在追逐你的生物,如果你的潜行等级足以将其致盲,它们就会放弃追击。这会清除它们的目标、仇恨记忆和大脑中的攻击目标记忆 — 必须清除这三项,因为其中任何一项单独存在都可能重新触发追击。

---

## 4. 暴击

| | |
|---|---|
| 基础几率 | 5% |
| 基础伤害 | +30% |
| 适用范围 | 所有伤害 — 近战、箭矢、法术 |
| 排除项 | 持续伤害、无视护甲伤害、无来源伤害 |

跳跃攻击必定暴击,但只造成你暴击伤害的 30%(基础下为 1.39 倍)。当跳跃攻击与随机暴击同时触发时,取其中较高者,不会叠加。

原版的暴击粒子效果、音效和横扫抑制会被保留;其伤害倍率将被替换。

普通暴击默认是无声的 — 无粒子效果,无音效。

### 4.1 属性

| 属性 | 默认值 |
|---|---|
| bkoverhaul:crit_chance | 0.05 |
| bkoverhaul:crit_damage | 0.30 |

默认仅玩家有效,除非设置了 enableForMobs。

### 4.2 附魔

| 附魔 | 每级效果 | 四级 × 4件护甲时 |
|---|---|---|
| 锐利 | +0.625% 暴击几率 | +10% |
| 凶狠 | +1.25% 暴击伤害 | +20% |

仅适用于护甲,最高等级 IV,每件护甲一种附魔。原版附魔不受影响。

---

## 5. 渲染

隐匿状态下:

| 元素 | 处理方式 |
|---|---|
| 身体 | 半透明 — 透明度 = 1 − 潜行值/100,下限为 0.10 |
| 穿戴装备 | 隐藏 — 护甲、鞘翅、披风、头戴物、鹦鹉、卡住的箭矢、模组/饰品层 |
| 手持物品 | 隐藏(第三人称和 Epic Fight 模式下;你自己的第一人称视角不受影响) |

装备选择隐藏而非淡化,是因为淡化在光影下会出问题 — 抖动透明度会被渲染成变暗或点状溶解效果。

---

## 6. 反馈

| 提示 | 行为 |
|---|---|
| HUD 条 | 位于经验条上方,有四个等级标记,标注为 暴露 / 潜行 1–4 |
| 条颜色 | 随等级加深;被注视时变为红色 |
| 红色边缘光晕 | 屏幕边缘,随暴露度渐增而增强;仅在潜行或潜行值下降时可见 |
| 心跳声 | 缓慢适中(我可不想心脏爆炸 xd)| 等级切换 | 提示音,根据方向音调升高或降低 |
| 潜行中断 | 低音提示 |

所有提示仅对玩家本人可见 — 不会向外界广播你的位置。


------------------------------------------------------------------------------------------

  兼容性

可独立运行。也支持我心爱的 Epic Fight。
需要 Forge,适用于 Minecraft 1.20.1。