背景
当前状态系统已经足够支撑最小 demo,但与 docs 中的通用状态对象仍有明显差距。battle docs 明确要求状态系统支持不同 tick 时机、驱散/净化、叠层/覆盖策略,以及更丰富的控制语义。
现状
已有:
StatusTemplate / StatusInstance
owner_turn_start / owner_turn_end 两种 tick 时机
- 基础 buff / debuff / cannot_act
缺口:
- 没有 source turn start/end 或 special tick timing
- 没有 stack policy / max stacks / independent instances
- 没有 dispel / cleanse API
- 没有 permanent / until_trigger / action-based duration
- 当前护盾仍是单个聚合数字,不支持来源/持续时间独立管理
- 控制类效果仍停留在
cannot_act,无法表达 Freeze / Entanglement / Imprisonment / Taunt / Lock On
目标
把状态系统从“最小效果容器”扩展为 battle docs 可持续承载角色脚本的通用子系统。
建议范围
- 对齐
docs/battle-system-mechanics/12-status-timing.md
- 设计 stack / refresh / replace 策略
- 增加 dispel / cleanse / remove-by-tag 能力
- 扩展 tick timing 与 duration mode
- 为控制类效果与特殊状态参数提供统一建模
- 评估是否将 shield 改为
ShieldInstance 栈结构
验收建议
- 增加覆盖不同 tick 时机、刷新/叠层、净化/驱散、控制类状态的测试
背景
当前状态系统已经足够支撑最小 demo,但与 docs 中的通用状态对象仍有明显差距。battle docs 明确要求状态系统支持不同 tick 时机、驱散/净化、叠层/覆盖策略,以及更丰富的控制语义。
现状
已有:
StatusTemplate/StatusInstanceowner_turn_start/owner_turn_end两种 tick 时机缺口:
cannot_act,无法表达 Freeze / Entanglement / Imprisonment / Taunt / Lock On目标
把状态系统从“最小效果容器”扩展为 battle docs 可持续承载角色脚本的通用子系统。
建议范围
docs/battle-system-mechanics/12-status-timing.mdShieldInstance栈结构验收建议