docs(design): combat alpha — position-and-timing duel + demonstrable balance #215

Merged
panda merged 1 commit from docs/combat-alpha into main 2026-08-02 00:41:46 +02:00
Owner

Summary

Game-design outcome for the combat rework (alpha) — the design phase only (doc + design issue #214); the technical build is a separate critical-design-review.

Adds docs/game-design/systems/combat.md and indexes it in vision.md. The design: a duel of position and timing, not dice — hits land reliably but light, you dodge by moving (spacing), ~60s fights decided by reads; classless with a stat-cap soft specialization; a read-and-switch counter-web; and the owner's hard requirement that balance be demonstrable + repeatable (a CombatSim reading the shared Lua combat formulas + CI regression bands). Every target is derived from the owner's feel through a recorded interview + a critical panel + a reproducible Monte-Carlo, not chosen.

Screenshots / recording

N/A — design docs only, no code/visible change.

How it was tested

Docs only. just check-docs resolves references. The derived numbers were validated with a reproducible Monte-Carlo sim (seed-stable) that hits each target (even 50%/~60s, strong-vs-average 7-3, all-DEX ≈ even); that sim becomes the CI regression bands in the build.

Checklist

  • Docs only; whole solution unaffected
  • just check-docs clean
  • Linked the design issue (#214); DoD is player-observable

Refs #214.

## Summary Game-design outcome for the **combat rework (alpha)** — the design phase only (doc + design issue #214); the technical build is a separate `critical-design-review`. Adds `docs/game-design/systems/combat.md` and indexes it in `vision.md`. The design: a duel of **position and timing, not dice** — hits land reliably but light, you dodge by *moving* (spacing), ~60s fights decided by reads; classless with a stat-cap soft specialization; a read-and-switch counter-web; and the owner's hard requirement that **balance be demonstrable + repeatable** (a `CombatSim` reading the shared Lua combat formulas + CI regression bands). Every target is **derived from the owner's feel** through a recorded interview + a critical panel + a reproducible Monte-Carlo, not chosen. ## Screenshots / recording N/A — design docs only, no code/visible change. ## How it was tested Docs only. `just check-docs` resolves references. The derived numbers were validated with a reproducible Monte-Carlo sim (seed-stable) that hits each target (even 50%/~60s, strong-vs-average 7-3, all-DEX ≈ even); that sim becomes the CI regression bands in the build. ## Checklist - [x] Docs only; whole solution unaffected - [x] `just check-docs` clean - [x] Linked the design issue (#214); DoD is player-observable Refs #214.
docs(design): combat alpha — position-and-timing duel + demonstrable balance (#214)
All checks were successful
ci / Lua content lint (pull_request) Successful in 14s
ci / Lint & Test (pull_request) Successful in 3m26s
8ff0dd8d19
Game-design outcome for the combat rework: hits land reliably but light, you
dodge by moving (spacing, no missed-swing dice), ~60s fights decided by
position and reads. Classless with a stat-cap soft specialization, a
read-and-switch counter-web, and the owner's hard requirement that balance be
demonstrable + repeatable (a CombatSim reading the shared Lua formulas + CI
bands). Targets derived from the owner's feel, not chosen. Adds
systems/combat.md and indexes it in vision.md.
panda merged commit 5608c20db0 into main 2026-08-02 00:41:46 +02:00
panda deleted branch docs/combat-alpha 2026-08-02 00:41:47 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
marco/IsoMmo!215
No description provided.