Flatten the ladder: cap how wide an opponent paints

Oliver: from the Runner on the zombie game is very hard. Measured with
the ring bot: the win rate fell off a cliff wherever an opponent's
width crossed ~3.3 m, the auto-run's reach from the centre (at the
Steward, and again at the Seller), and from there every line could be
painted. Legs and flub decay moved nothing.

Every match opponent's spread is now capped at 3.0 m (matchWideMax),
and the put-away chance runs 0.15 to 0.8 instead of 0.2 to 0.85.
Level 10: the Runner goes from 44% to 68% of points, the Champion from
24% to 33%, with a steady slope between them. New test pins the cap.
v387.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
wuwiandClaude Opus 5.5 committed 2026-10-15 22:02:30 +02:00
1 parent c8d43fbe15
commit 0576f24614
5 files changed
+63 -4

No files matched your search

+28
View File
@@ -636,6 +636,34 @@ Each phase ships to staging and gets a phone verdict, and tests ride along with
5. **LATER.** The metal bed (when Oliver has a track: start at the transformation, gore only) and Members'
Night (option C).
## Session log: the ladder is flatter — the width cliff (2026-10-15, v387)
Oliver: *"ab Runner ist das Zombie-Game schon sehr schwer — können wir die Schwierigkeitsleiter ein wenig
abflachen?"* **Measured first**: cup mode, the ring bot, 6-8 seeds (`tools/rally-sim.mjs`, `T_<knob>` sweeps).
- **The cliff.** Roller (rung 5) 90-98% of points, then Steward 54-79%, Mascot ~50, Runner 41-55. At level
10 it fell again at the Seller (29%).
- **What it is NOT:** sweeps of the legs (`legKnee` 5.3, `matchSpeedPer` 0.07) and of the flub decay
(`matchFlubKeep` 0.84) all moved it within the noise.
- **What it IS: the width.** `matchWideBase + step·matchWidePer` × the foe's `wide` grows without bound.
Wherever it crosses ~3.3 m (the auto-run's reach from the centre) the win rate falls off. That happens
at the Steward, and with a slower slope it just moved to the Seller. From there every line can be
painted.
- **The put-away chance** sets the top: without it, rungs 9-18 sat flat at ~60%.
- **Shipped (variant G):**
- `TUNE.matchWideMax` 3.0 m caps every match opponent's spread (Climb, cup, story cups, training).
- `punishMin`/`punishMax` go from 0.2/0.85 to 0.15/0.8.
- **Bot, level 10, cup** (before → after):
| rung | 6 | 7 | 8 | 9 | 10 | 11 | 13 | 14 | 16 | 18 |
|---|---|---|---|---|---|---|---|---|---|---|
| before | 57 | 51 | 44 | 29 | 31 | 27 | 26 | 34 | 22 | 24 |
| after | 72 | 73 | 68 | 53 | 56 | 57 | 42 | 42 | 36 | 33 |
The rushers stay their usual bumps. Level 26: Runner 43 → 83, Champion 29 → 41. Climb, level 26:
85 → 44, smooth.
- 3.1 m was tried as a middle way. It barely helped at level 10, because the cliff sits between 3.0 and
3.3.
- Test: rungs 8, 12 and 18 never land wider than 3.35 m (it reads 4.05 at the Runner without the cap).
## Session log: no story boss crosses the net (2026-10-15, v385, STAGING ONLY)
Oliver: *"strawberry seller as first endboss is way too hard — or it should not cross the net"*. The
seller is the arcade's chapter-9 design. His move is `charge`, the one style deliberately exempt from