diff --git a/docs/plans/M78_BATTLE_ACTORS.md b/docs/plans/M78_BATTLE_ACTORS.md new file mode 100644 index 00000000..88ace4ba --- /dev/null +++ b/docs/plans/M78_BATTLE_ACTORS.md @@ -0,0 +1,35 @@ +# M78 · 战斗演员立绘(替换头像贴纸) + +> Owner 反馈(2026-09-14):"这个人物怎么一点都不像战斗人物啊?不过算了,先用这个人吧,后面再换。" +> 本里程碑就是那次替换:把战斗里的 **M69 头像贴纸**换成**细线 cel 战斗立绘**(待机/出手两姿态), +> 按采纳方向(`05_battle_ui_japanese_scale.png`)的尺度与姿态语言。 + +## Player-visible stopping point + +战场上的同伴与敌人是**战斗姿态**的细线 cel 立绘:待机 = 备战站姿(武器在手/身体朝敌), +出手 = 前倾攻击姿态;受击/击倒沿用现有染色与倒地姿态;尺度仍按采纳带(同伴立绘高 0.12–0.30 屏高)。 + +## Frozen scope + +- 只换演员**美术与姿态**;战斗规则、事件流、节拍、音频、门与既有布局不动。 +- 风格必须与已验收的 M69 软 Q 同族(细线 + 软水彩 cel + 品红底抠图),比例可略高(战斗中更"挺")。 +- 敌人仍取自区域 1 目录(12 普通/精英 + 2 Boss),不新增内容。 + +## Ordered steps + +1. **M78-A(IN_PROGRESS)生成**:12 基础职业 × {待机, 出手} + 12 敌人 × {待机, 出手} + 2 Boss × {待机, 出手} = 52 张; + 抠图归一(`tools/art/process_sticker.py`)→ `runtime/assets/battle/actors/` 与 `.../enemies/`。 +2. **M78-B 接线**:战斗里按事件节拍切姿态(出手拍用 strike,其余 idle);击倒沿用倒地;同伴按职业取演员表。 +3. **M78-C 门**:全流程驱动断言(演员表命中率、姿态切换、尺度带)+ 双档实拍 + attempt。 + +## Acceptance checks + +- 每个基础职业与每个区域 1 敌人都有待机/出手两张、透明背景、内容高 90%; +- 战斗实拍:公司线与敌线全部为战斗立绘;出手拍可见姿态切换;1.0/1.3 双档 0 违规; +- 全流程 34 步 0 阻断、音频门与既有 24 个 marker 不回归。 + +## Issue register + +| ID | 状态 | 说明 | +| --- | --- | --- | +| `M78-I01` | OPEN | 待机/出手两姿态为最小可用集;受击/蓄力/施法姿态与动画帧在后续美术批次扩展 |