73 lines
3.2 KiB
Markdown
73 lines
3.2 KiB
Markdown
# MVP gameplay balance
|
|
|
|
This document locks the compact gameplay configuration evaluated for Milestone
|
|
014. Human confirmation of the revised map belongs in
|
|
`docs/PLAYTEST_REPORT.md`.
|
|
|
|
## Locked configuration
|
|
|
|
| Parameter | Locked value | Purpose |
|
|
| --- | ---: | --- |
|
|
| Maze dimensions | 32 x 32 cells | Square map with one eighth of the former area |
|
|
| Initial vision radius | 3 cells | Current-view-only exploration |
|
|
| Cross-half connection pairs | 2 | Four seam crossings between conceptual halves |
|
|
| Extra cycle pairs | 8 | Proportional route density without removing dead ends |
|
|
| Minimum start-to-exit separation | 22 cells | Linear scaling by approximately the square root of eight |
|
|
| Landmark pairs | 2 | Four spatial-memory cues in symmetric positions |
|
|
| Vision-artifact pairs | 1 | Two one-use artifacts; preserves the MVP minimum |
|
|
| Compass pairs | 1 | One compass for each player's own exit |
|
|
| Movement cooldown | 150 ms | Server-enforced minimum accepted-move interval |
|
|
| Enhanced-vision duration | 10 successful moves | MVP artifact duration |
|
|
| Draw window | 200 ms | Authoritative simultaneous-exit boundary |
|
|
| Match timer | None | Matches end only by defined result conditions |
|
|
|
|
The values come from `maze32_maze_default_config()` and
|
|
`maze32_game_default_config()`. They are server-owned defaults; browser
|
|
clients cannot alter them.
|
|
|
|
## Deterministic generation evidence
|
|
|
|
`test/host/test_maze_generation.c` generates and validates seeds 0 through
|
|
1,023 with this configuration. For every generated map it proves reachability,
|
|
central symmetry, positive cycles and dead ends, at least four cross-half
|
|
connections, paired player-relative route distances, and this balance
|
|
invariant:
|
|
|
|
```
|
|
start_to_key_distance >= key_to_exit_distance
|
|
```
|
|
|
|
The test measures shortest traversable routes, not straight-line distance. It
|
|
therefore establishes that finding a key is never made easier by a shorter
|
|
required route than the later exit search. It does not substitute for human
|
|
search behaviour in a maze with fog of war, landmarks, compasses, and
|
|
artifacts.
|
|
|
|
The most recent recorded sweep (2026-09-08) reported:
|
|
|
|
| Metric | Observed range across 1,024 seeds |
|
|
| --- | ---: |
|
|
| Cycles | 19..19 |
|
|
| Dead ends | 74..128 |
|
|
| Start to key | 93..422 cells |
|
|
| Key to exit | 84..352 cells |
|
|
| Start to exit | 26..242 cells |
|
|
| Generation attempts | 1..2 |
|
|
|
|
At the 150 ms cooldown, an uninterrupted shortest 93-cell key route takes at
|
|
least 13.95 seconds of accepted-move time. Actual match duration also includes
|
|
route discovery, current-view-only navigation, the exit search, detours,
|
|
interactions, and player decisions. The approximately five-minute target must
|
|
be confirmed by the representative human-playtest procedure; no hard timer is
|
|
introduced to force that outcome.
|
|
|
|
## Tuning decision
|
|
|
|
The topology and object counts were reduced with the map area while retaining
|
|
the three-cell base view, ten-move artifact effect, 150 ms cooldown, and 200 ms
|
|
draw window. These interaction values remain unchanged until representative
|
|
playtesting of the compact map supplies evidence for a further adjustment. If
|
|
playtesting identifies a material duration or navigation problem, change only
|
|
the smallest relevant locked value, rerun the 1,024-seed suite, record the new
|
|
range here, and repeat the affected playtests.
|