docs(game): 建立游戏设计文档规范并迁移重写 Docs/Game 设计文档

- 新增 Docs/Standards/GameDesignDocSpec.md:目录结构/通用文档头/六类分节/命名编号/交叉引用/禁参考游戏字样
- Docs/Game 按类别重组:总览/主角/敌人(小怪+Boss)/NPC/系统/剧情 + _Templates 模板
- 小怪 E001-E006、嘲风:程序文档+动作需求表合并为单份综合文档
- 其余 7 Boss 迁移设计层内容,程序/动画/数值节标注待补充
- 主角能力设定清除全部外部游戏参考字样并修正 OCR 乱码
- 删除 参考/ 原始文档(已忠实重写,原件保留于 git 历史)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-21 15:42:33 +08:00
co-authored by Claude Opus 4.8
parent 94bbf3acf2
commit b4379db5de
41 changed files with 3343 additions and 1874 deletions
+134
View File
@@ -0,0 +1,134 @@
# E005 肥蛭
| 项 | 值 |
|------|------|
| 文档类型 | 精英怪 |
| 版本 | v1.0 |
| 更新日期 | 2026-07-21 |
| 状态 | 进行中 |
| 负责模块 | `BaseGames.Enemies.AI` / `ENM_` 资产 |
| 关联文档 | [敌人总览](../敌人总览.md) · [E003_幼蛭](E003_幼蛭.md) |
---
## 概述
| 字段 | 内容 |
|------|------|
| 编号 | E005_FeiZhi |
| 类别 | 精英怪 |
| 行动方式 | 地面移动(移动缓慢,体型大) |
| 核心机制 | 死亡时在原位生成若干 E003 幼蛭;具备近程撕咬和远程酸液两种技能 |
| 形象设定 | 体型肥硕的蛭妖,死亡后尸体会爆出若干幼蛭 |
---
## 状态机
```
[Idle] ──AI决策──┬──▶ [Move] ──到达位置──▶ [Idle]
├──▶ [Skill01_Bite](撕咬)──▶ [Idle]
└──▶ [Skill02_Acid](酸液)──▶ [Idle]
[任意战斗状态] ──HP归零──▶ [Death_Pre] ──播放完毕──▶ [Death](生成幼蛭 + 爆体)
```
| AI 状态标识符 | 动画 Clip 名 | 类型 | 说明 |
|--------------|-------------|------|------|
| Idle | Idle | 循环 | 呼吸待机 |
| Move | Move | 循环 | 肥硕扭动,移动速度较低 |
| Skill01_Bite | Skill01 | 单次 | 近程前伸啃咬;攻击结束后有趴地硬直,再起身回 Idle |
| Skill02_Acid | Skill02 | 单次 | 连续两次吐出酸液团(逻辑上循环两次单次动画,或直接做循环动画) |
| Death_Pre | Death_Pre | 循环 | HP 归零后触发,肚子膨胀蠕动,表现有东西即将钻出 |
| Death | Death | 单次 | 肚子爆开,溅出酸液,同时 Spawn 幼蛭 |
---
## AI 行为
```
战斗循环:
检测玩家距离
├── 远距离 → Skill02(酸液远程攻击)或 Move 靠近;CD[skill02CD] 秒
└── 近距离 → Skill01(撕咬);CD[skill01CD] 秒
死亡触发(特殊):
HP ≤ 0 → Death_Pre → Death
Death 动画关键帧事件(AnimationEvent)触发:
SpawnEnemies(E003_YouZhi, count=策划配置, position=自身位置)
```
---
## 技能规格
### Skill01 — 撕咬
| 字段 | 值 |
|------|------|
| 攻击范围 | 头部前方碰撞盒 |
| 伤害帧 | 最前伸位置单帧判定 |
| 后摇 | 趴地硬直后自动起身(硬直时长可配置,期间可受击,逻辑同 E004 Skill02_End |
### Skill02 — 酸液喷吐
| 字段 | 值 |
|------|------|
| 弹数 | 2 次(每次一团) |
| 弹道 | 抛物线,落点为玩家方向前方(建议有随机偏移) |
| 落地效果 | 酸液溅射粒子(策划决定是否留持续伤害区) |
### 死亡生成幼蛭
| 字段 | 值 |
|------|------|
| 触发时机 | Death 动画指定帧(AnimationEvent |
| 生成数量 | 可配置(建议 2–4 只) |
| 生成位置 | 自身位置 ± 随机小偏移 |
---
## 动画需求
| 动作类别 | 命名 | 动画类型 | 描述 | 帧数 | 图片参考 |
|----------|------|----------|------|------|----------|
| 待机 | Idle | 循环 | 静止时的呼吸待机 | — | — |
| 移动 | Move | 循环 | 扭动肥硕的身躯移动,表现行动艰难 | — | — |
| 撕咬(Skill01 | Skill01 | 单次 | 蓄力后前伸啃咬目标,因身躯肥大有较大趴地僵直,之后起身回待机 | — | — |
| 酸液(Skill02 | Skill02 | 单次 | 连续两次吐出一团酸液成抛物线攻击(只需画单次动作) | — | — |
| 死亡前挣扎 | Death_Pre | 循环 | 死亡时挣扎僵直,肚子里即将有东西钻出的感觉 | — | — |
| 死亡 | Death | 单次 | 肚子爆开、酸液溅出,同时掉落若干幼蛭(由程序实现) | — | — |
---
## 数值参数表
| 参数名 | 说明 | 参考值 |
|--------|------|--------|
| `maxHP` | 最大生命值 | — |
| `moveSpeed` | 移动速度 | — |
| `detectRange` | 感知距离 | — |
| `skill01Damage` | 撕咬伤害 | — |
| `skill01CD` | 撕咬冷却(秒) | — |
| `skill01StaggerDuration` | 撕咬后趴地硬直时长(秒) | — |
| `skill02Count` | 酸液弹数(2 次) | 2 |
| `skill02Damage` | 每次酸液伤害 | — |
| `skill02CD` | 酸液冷却(秒) | — |
| `spawnCount` | 死亡时生成幼蛭数量 | — |
---
## 技术备注
- Skill01 后摇(趴地)阶段建议关闭攻击碰撞盒、开放受击碰撞盒。
- Death_Pre 到 Death 必须完整播放,不可被打断(无敌帧)。
- 幼蛭生成逻辑建议用 AnimationEvent 调用,避免时序问题。
- ⚠️ **待策划确认**:肥蛭是否有专用 Flip(转身)动画?需求表未标注,程序暂按"无 Flip,使用 Sprite 直接翻转"处理。
---
## 修订记录
| 版本 | 日期 | 修改内容 | 修改人 |
|------|------|----------|--------|
| 1.0 | 2026-07-21 | 由程序开发文档与动作需求表合并为综合文档 | — |