Commit Graph
3 Commits
Author SHA1 Message Date
joywayer b0fd040904 docs(enemy): 按 Task 1+2 审查结论修订 spec 与计划
spec:ResourceFull 由「无组件时恒 false」改为显式抛,与 Boss facet、AnchorAt
统一为「依赖组件缺失一律抛,不返默认值」。
计划:Task 16 补上 BossBase 残余三处行为树残留的清理项(含运行时告警字符串);
Task 19 记录 Patterns/ 是零外部引用的独立程序集,可整目录删。
2026-07-30 12:32:43 +08:00
joywayer 5839b423ae docs(enemy): Boss AI 双轨统一实施计划——21 个任务,分两阶段
阶段一 Task 1-15 只加不删(每 Task 编译通过、测试全绿,末尾嘲风能用新轨打起来);
阶段二 Task 16-21 删旧轨(先改引用方,再删被引用类型;先删资产,再删脚本)。

编写期核查坐实并更正 spec 两处:
- 取消 EnemyBase.SetInvincible(float):HurtBox.SetInvincible(bool) 已存在,
  玩家侧 EnableIFrame/DisableIFrame 就走它,无敌时长由动画上两事件间距表达。
  新增件由六件减为五件。
- 竞技场锚点改挂 IBossControl,不走黑板:EnemyAiBrain._context 是私有字段
  且无公开访问器(BossBase 无从写入),且 ResetScratch 会清黑板带来隐式时序约束。

另确认 EditorScaffoldUtils.CreateSOAsset(Type,...) 重载已存在,无需新增辅助。
2026-07-30 11:01:46 +08:00
joywayer c176423103 docs(enemy): Boss AI 双轨统一设计——决策层与执行层一并归并到小怪轨
竞品调研 + 代码现状核查后推翻 2026-07-27 §5 的「执行层按复杂度分层」:
Boss 侧那层富编排从未真正存在(0 个 AttackPatternSO/SkillSequenceSO 资产、
5 个 BossSkillSO 除 skillId/weight 外全空、执行器跑一遍纯空转、
UseBossSkillWeighted 零调用者、预制体上无 EnemyAiBrain)。

决策:
- 决策层单轨 —— 每 Boss 一个 AiScript 定制类,不建 Boss 骨架/配方
- 执行层单轨 —— Boss 招走 EnemyAbilitySO + EnemyAttackSO,编排权威=动画时间轴
- 阶段=换招池 —— BossPhaseAbilityGate 按阶段启停能力组件
- 选招策略是可换小构件 —— AttackSelectionMode 加防重复值,不抽策略接口
- 旧 Boss 轨退役 9 脚本 + 5 资产,判据「有更优替代才删」

同时记录 WeakPointSystem.GetDamageMultiplier 零调用者、
BossBase.HandleParrySuccess 订阅全局弹反频道导致的误伤 bug、
敌人侧动画事件只接了 7/20 三处历史遗漏,以及两条脚手架创建链路
(CharacterWizardWindow / SceneObjectPlacerTool.PlaceChaoFeng)必须同改。
2026-07-30 10:29:49 +08:00