# E001 草蛭 | 项 | 值 | |------|------| | 文档类型 | 小怪 | | 版本 | v1.0 | | 更新日期 | 2026-07-21 | | 状态 | 进行中 | | 负责模块 | `BaseGames.Enemies.AI` / `ENM_` 资产 | | 关联文档 | [敌人总览](../敌人总览.md) | --- ## 概述 | 字段 | 内容 | |------|------| | 编号 | E001_CaoZhi | | 类别 | 小怪 | | 行动方式 | 地面爬行 | | 核心机制 | 伪装待机 → 发现玩家 → 追击攻击;具备侦测范围触发开关 | | 形象设定 | 蛭妖中底层的小妖,长期生活在阴暗井底,背上长有发着微光的菌类植物,身上有滑溜溜的黏液;平时蜷缩成一团伪装自己,察觉猎物后张开血盆大口匍匐前进 | --- ## 状态机 ``` [Idle_Disguise] ──感知玩家──▶ [Skill_Start] │ [Skill_Loop] ──丢失目标──▶ [Skill_End] ──▶ [Move_Patrol] │ 受到足够伤害 │ [Death] [Move_Patrol] ──感知玩家──▶ [Skill_Start] [Move_Patrol] ──到达边界──▶ [Flip] ──▶ [Move_Patrol] ``` | AI 状态标识符 | 动画 Clip 名 | 类型 | 说明 | |--------------|-------------|------|------| | Idle_Disguise | Idle | 循环 | 蜷缩在地面,外观似带植物的石头;每隔随机时间轻微抽搐一次 | | Move_Patrol | Move | 循环 | 低速爬行巡逻,可在平台边缘翻转 | | Flip | Flip | 单次 | 转向后衔接 Move_Patrol | | Skill_Start | Skill_Start | 单次 | 张口,覆盖口水粒子特效,切换至追击状态 | | Skill_Loop | Skill_Loop | 循环 | 快速爬行追击玩家 | | Skill_End | Skill_End | 单次 | 收回尖牙,切换回巡逻 | | Death | Death | 单次 | 身躯干瘪死亡,播放后移除 GameObject | --- ## AI 行为 ``` 感知条件:视线检测 OR 碰撞触发区(圆形半径建议可配置) ├── 未感知玩家 → Idle_Disguise(默认)或 Move_Patrol(已激活后丢失目标) └── 感知玩家 ├── 进入 Skill_Start(一次性播放) └── 追击 Skill_Loop,速度:[追击速度] > [巡逻速度] ├── 追击途中碰到玩家 → 造成接触伤害(持续判定) └── 超出感知范围 → Skill_End → Move_Patrol 注:E001 无主动技能 CD;再次进入感知范围立即触发追击 ``` --- ## 技能规格 | 技能 | 触发条件 | 伤害类型 | 攻击范围 | 备注 | |------|----------|----------|----------|------| | 追击啃咬 | 进入感知范围 | 接触伤害 | 自身碰撞体(Collider) | Skill_Loop 期间碰撞盒始终开启;无弹道,纯移动追击 | --- ## 动画需求 | 动作类别 | 命名 | 动画类型 | 描述 | 帧数 | 图片参考 | |----------|------|----------|------|------|----------| | 待机 | Idle | 循环 | 静止于地面,每过一段时间轻微抽搐一下(身体蜷缩、牙齿隐藏,伪装成长有植物的石头) | — | — | | 行走 | Move | 循环 | 慢速爬行巡逻 | — | — | | 转身 | Flip | 单次 | 转身衔接动作 | — | — | | 技能开始 | Skill_Start | 单次 | 发现目标后张开大口(瞬间有口水粘液溅出),身体打开,准备前进 | — | — | | 技能持续 | Skill_Loop | 循环 | 身体一缩一缩持续爬向目标 | — | — | | 技能结束 | Skill_End | 单次 | 丢失目标后略微收起张开的尖牙,切换到慢速巡逻 | — | — | | 死亡 | Death | 单次 | 身躯干瘪死亡 | — | — | --- ## 数值参数表 | 参数名 | 说明 | 参考值 | |--------|------|--------| | `maxHP` | 最大生命值 | — | | `moveSpeed` | 巡逻速度 | — | | `chaseSpeed` | 追击速度(Skill_Loop 期间) | — | | `detectRadius` | 感知触发半径 | — | | `contactDamage` | 接触伤害值 | — | --- ## 技术备注 - Idle 伪装期间建议关闭 NavAgent / 移动组件,仅保留感知触发器。 - 追击速度、感知范围、伪装抽搐间隔建议通过 ScriptableObject 配置。 - 死亡无专用受击-死亡过渡动画,HP ≤ 0 直接播放 Death。 --- ## 修订记录 | 版本 | 日期 | 修改内容 | 修改人 | |------|------|----------|--------| | 1.0 | 2026-07-21 | 由《小怪设计-程序开发文档-01》与《动作需求表-01》合并为综合文档 | — |