95 lines
6.6 KiB
Markdown
95 lines
6.6 KiB
Markdown
# Campaign P — final connected visual matrix (runbook)
|
||
|
||
**The ONE user stop of the physics parity campaign**
|
||
(`docs/plans/2026-07-29-physics-parity-campaign.md`). Run after every slice
|
||
P1–P7 is committed and the full Release suite is green. Each scenario names
|
||
its setup, the retail-correct outcome, and the ledger items it closes.
|
||
Scenarios 1–3 need a burden/stamina-capable character on local ACE (use
|
||
`@god`-style commands sparingly — see `reference_ace_commands` cautions);
|
||
scenario 8 needs the second client.
|
||
|
||
| # | Scenario | Setup | Retail-correct outcome | Closes / confirms |
|
||
|---|---|---|---|---|
|
||
| 1 | Burdened movement | Load the character past 100% burden (pack full of heavy loot), then ~190% | Run speed visibly drops past 100%; near 200% the character can barely move and jumps only inches | TS-5/AP-25 retirement (P1) |
|
||
| 2 | Exhausted jump | Drain stamina (repeated full-power jumps) to near 0 | Jump cost rises with burden; at insufficient stamina the jump refuses/weakens exactly like retail (no infinite full-height jumps) | TS-5 retirement, ReportExhaustion consumer (P1) |
|
||
| 3 | Vitae run | Die once, recover the corpse with vitae active | Run/jump measurably below the no-vitae baseline; recovers as vitae expires | AP-25 replacement (P1) |
|
||
| 4 | Cliff edge | Walk (not jump) off a steep cliff/roof edge (Holtburg bluffs) | The body slides along/over the edge (PrecipiceSlide), never a dead stop pinned at the lip | TS-1 retirement (P2) |
|
||
| 5 | Downhill sled | Run-jump down a long slope and land | Landing glides ("sleds") with a small bounce, then friction settles it; no instant stick | #166 close, AP-7 gate (P2) |
|
||
| 6 | Wall graze | Run into a wall at a very shallow angle; also press into a corner and wiggle | Tiny lateral slide is preserved (no dead-stop absorb); corner shuffle-out works | #116 close (P2) |
|
||
| 7 | Crowd regression | Stand in a packed monster camp; wiggle, jump out | Spacing and shuffle-out unchanged from the accepted #182/#184 baseline | P2/P3 regression guard |
|
||
| 8 | Two-client remote checks | Second client (retail or acdream) observed from the first | (a) remote stops at walls without sinking in (#165); (b) remote jumping into a dungeon ceiling bounces down immediately (#173); (c) Holtburg town-network portal platform steps up (#172); (d) door Use works after jumping (#174); (e) closed-door collision matches the visual door (#175); (f) no sub-decimeter blips on observed players (#41) | #165 close + the stale #172–#175/#41 gate reconciliation |
|
||
| 9 | Barred house | Approach a house/cell the character is not a guest of | Blocked at the threshold client-side (no enter-then-server-boot) | AP-71 port (P4) |
|
||
| 10 | Wading | Walk into shallow water at a shoreline | Feet sink ~0.1 m into the water surface like retail; movement feel unchanged | AP-10 restore (P4) |
|
||
| 11 | Fresh logins ×20 | 20 fresh-process logins (mix of outdoor/indoor saves) | Zero run-on-the-spot; movement immediate every time | #262 close (P6) |
|
||
| 12 | General sweep | 10 min free play: walk/run/strafe/turn/jump/stairs/doors/portals incl. one far-town hop | Indistinguishable from the accepted R6 baseline; no new regressions | campaign regression gate; #153 connected confirmation |
|
||
|
||
Rubber-band check (rides scenario 12): induce a server correction (e.g.
|
||
brief packet-loss on Coldeve or a forced position reset) — the leash taper
|
||
engages and jumping inside a tight leash is refused (0x47), per the #167
|
||
port (P5).
|
||
|
||
**Recording the result:** per scenario PASS/FAIL + a one-line note. Any FAIL
|
||
reopens its slice; the campaign closes only on a clean sheet. On full pass:
|
||
close #165/#166/#116/#262 (if not already), mark #172–#175/#41 reconciled
|
||
with this matrix as the cited gate, update the campaign plan + roadmap +
|
||
CLAUDE.md current-state, and flip the goal.
|
||
|
||
## Automated pillars — BANKED 2026-07-30 (pre-user-session)
|
||
|
||
Run on the final tree (post all Campaign P slices), local ACE:
|
||
|
||
- **Lifecycle/reconnect gate: PASS** —
|
||
`logs/connected-world-gate-20260730-130611/report.json` (seven
|
||
checkpoints, graceful exits). Covers scenario 12's login/portal/
|
||
teardown backbone.
|
||
- **Canonical nine-stop soak: PASS** —
|
||
`logs/connected-r6-soak-20260730-131141.report.json` (production-
|
||
dispatcher movement input across nine stops). Covers scenario 12's
|
||
movement-regression backbone.
|
||
- **Scenario 11 (20 fresh logins): PASS, automated basis** — 20/20
|
||
fresh-process logins (`artifacts/262-probe/login-{1..20}.log`): every
|
||
attempt committed the `[snap]` OUTDOOR server-Z branch, held a live
|
||
resolve stream (~5.3-6.0k lines/40 s), recentered correctly
|
||
(incidentally onto far-town 0xC95B — the #153 arrival class — all 20
|
||
times), and closed gracefully. No run-on-the-spot signature. The
|
||
user's eyes-on confirmation of "movement immediate" on a couple of
|
||
manual logins completes the scenario.
|
||
|
||
Remaining for the user session: scenarios 1-10 (feel/visual) + the
|
||
manual halves of 11-12.
|
||
|
||
## User matrix session 1 results (2026-07-30, partial)
|
||
|
||
- Scenario 4/5 (cliff/sled): **FAIL** on the TS-4-removed build — uphill
|
||
jump-in bounces (non-retail), roof slides lost, occasional edge wedge.
|
||
→ TS-4 removal REVERTED (`2e27d066`+`a8a7d64b`), row re-opened with
|
||
live evidence; downhill sled remains #166. Re-test pending.
|
||
- Speed parity: **FAIL/SUSPECT** — local char faster than retail
|
||
comparison → #266 (controlled capture needed).
|
||
- Vitae panel display: **FAIL** (UI, not physics) → #267.
|
||
- Squeeze-through at the townhall building: **FAIL** → recorded under
|
||
scenario 12; needs a dedicated capture (suspect list: TS-46 sphere-list
|
||
threading at a specific site, or the #116 head-sphere change — both
|
||
P3/final-slice deltas).
|
||
- Other scenarios: not yet reported.
|
||
|
||
## User matrix session 2 results (2026-07-31)
|
||
|
||
- Scenario 1 (burdened movement): **PASS**.
|
||
- Scenario 2 (exhausted jumping): **PASS**.
|
||
- Scenario 6 (wall graze/corner movement): **PASS**.
|
||
- Scenario 7 (crowded-monster movement): **PASS**.
|
||
- Scenario 8 (two-client remote movement, doors, portals, and its collision
|
||
checks): **PASS**.
|
||
- Scenario 10 (shallow-water sink-in): **PASS**.
|
||
- Scenario 9 (restricted/barred house): **DEFERRED BY USER** and retained as
|
||
issue #274.
|
||
- Scenario 12 (general movement sweep): **WAIVED BY USER**; the accepted
|
||
focused rows and existing automated soak are sufficient for this campaign.
|
||
- A separate live mismatch remains: acdream can squeeze through some tight
|
||
gaps that block retail. This is outside the accepted wall-graze response
|
||
check and is retained as issue #273 pending an exact-location capture.
|
||
|
||
Together with the previously accepted scenarios 3–5 and the automated
|
||
20-login scenario 11, the Campaign P matrix is closed with #273 and #274 as
|
||
explicit carried follow-ups.
|