This commit is contained in:
2026-04-27 17:26:10 +08:00
parent c565b6bab6
commit 5c24481b88
5 changed files with 505 additions and 82 deletions
@@ -0,0 +1,9 @@
# Combat Logic — Review Log
## Review — 2026-04-27 — Verdict: NEEDS REVISION (revised same session)
Scope signal: M
Specialists: game-designer (critic), systems-designer (analyst), qa-lead (test-engineer), unity-specialist (architect), performance-analyst (general-purpose)
Blocking items: 13 | Recommended: 9
Summary: The hit-detection infrastructure (shapes, pipeline, edge cases, events) was solid, but three fundamental gaps blocked implementation: (1) the Player Fantasy described a parry mechanic that didn't exist in the design, (2) pure RNG crit contradicted the "Skill Over Stats" pillar, and (3) cross-system contracts (EnemyState, Vector3 boundary, AttackData construction, Blood Energy bridge) were undefined. All 13 blockers were resolved in the same session via targeted additions: full parry subsystem, positional crit system, defined structs, L0/L1 boundary contracts, spatial grid, and NonAlloc memory pattern. Form dimensions rebalanced (Mist 3.8, Wolf width 1.0, Human angle 100°). GDD now ready for implementation pending a lightweight re-review pass.
@@ -0,0 +1,23 @@
# Review Log: Form Switch State Machine
---
## Review — 2026-04-27 — Verdict: NEEDS REVISION (first review)
**Scope signal**: M
**Specialists**: game-designer (critic), systems-designer (critic), qa-lead (critic), gameplay-programmer (general-purpose), unity-specialist (general-purpose), creative-director (general-purpose)
**Blocking items**: 6 | **Recommended**: 8
**Prior verdict resolved**: First review
**Summary**: The core 4-phase FSM design is sound, but the GDD carried six blocking issues that made it unsafe to implement as written. The critical finding was an AttackStyle data conflict with the Combat Logic GDD — 5 of 6 parameters (damage values, shape geometry) disagreed between the two documents. Additional blocking issues: self-contradictory minimum interval guard (Skill Tree could reduce to 0.15s vs stated ≥0.40s floor), no input buffering in a 0.45s dead zone, ambiguous cooldown state representation, three conflicting API signatures across documents, and GetAttackStyle() missing from the architecture contract. The creative-director noted the concept is solid and needs a focused revision pass, not a rewrite.
---
## Review — 2026-04-27 — Verdict: APPROVED (revised, same session)
**Scope signal**: M
**Specialists**: (revision pass — no re-review agents spawned)
**Blocking items**: 0 | **Recommended**: 0 (all addressed)
**Prior verdict resolved**: Yes — all 6 NEEDS REVISION blockers resolved
**Summary**: All six blocking items were resolved in a single revision pass. AttackStyle values were reconciled with Combat Logic GDD (Combat Logic is canonical source for numbers). Hard floors added (WindupDuration ≥ 0.10s, CooldownDuration ≥ 0.15s) enforcing the ≥0.40s interval guard. 0.10s input buffer window added at end of Recovery. Cooldown state clarified with CanSwitchTo() as authoritative query. API standardized to constructor-injected IBloodEnergyEconomy. GetAttackStyle() contract aligned. ACs expanded from 12 to 36 covering all phase transitions, events, phase capabilities, edge cases, and input buffering. GDD is ready for implementation.