Appearance
Blunder wins (worked example)
What this page is for
This is research documentation, not a tutorial for casual play: one fully pinned opening (integer seed 92) that shows how deployment can flip the realized winner when A keeps a principal-line Poisoned Gift after B’s off-path last Twist. Same board + crystal + blunder-draw convention as the standard blunder suite on the home — Empirical snapshot. Do not assume the same seed selects the same opening across unrelated RNG recipes—see Solver, benchmarks, and GitHub.
Verified (development tree only — public psdg has no private/ directory): from the root of the internal checkout, node private/psdg/benchmark/blunder_test_random_crystals.js --trials 1 --seed 92 --dice 6 — outcomes in the summary table match that harness. The Node driver is not in psdg. For Python-only reproducibility, use benchmark/blunder_test_benchmark.py in a psdg clone—seed ↔ opening can differ across harnesses; see Home § Solver.
What this is not
This does not refute one-ply draft minimax from the root.
Under the project’s embedding, the opening value is still +1 (A wins with optimal play and re-solving at the Gift when the protocol allows it). The lesson is deployment: if A freezes the principal-line Poisoned Gift after B knocks the realized draft off that storyline, B can still win ex post—even though B also played a suboptimal last Twist.
Setup (seed 92)
Board (tops you see after rolls; ascending): 1, 2, 3, 4, 5, 5
| (top, facing) | |
|---|---|
| A Red Crystal | (2, 3) |
| B Red Crystal | (3, 1) |
Behind the scenes the solver stores board dice as a six-slot histogram over tops 1..6; that matches one die each showing 1–4 and two dice showing 5.
Principal line (abbreviated)
From the Python reference solver for this board and crystals (same principal line the benchmarks use):
- A: take top 2, facing 1
- B: take top 3, facing 1
- A: take top 5, facing 6
- B: take top 5, facing 1
- A: take top 4, facing 1
- B: take top 1, facing 2 ← solver-optimal last twist on this path
- Poisoned Gift (principal line): A gives die top 2 with facing 1; B gives die top 3 with facing 1
Tumble and score twice per rules: A wins with correct continuation from here.
Post-exchange crucibles on the principal line (each die (top, facing) after the Gift when both follow that line):
- A:
(3, 1),(4, 6),(5, 1) - B:
(1, 2),(2, 1),(5, 1)
The blunder branch
Before B’s last pick, the board pool is a single die with top 1. Any legal Twist picks a facing in {2, 3, 4, 5} (not 1 or 6). The optimal choice on this opening is facing 2—exactly the principal line.
The published blunder suite does not pick a crafted alternative: it draws uniformly among suboptimal legal last twists (seeded draw keyed off the same trial seed). For seed 92 that draw is (top 1, facing 3)—same die as the line, wrong facing (optimal there is facing 2).
Crucibles before the Gift on the blunder branch (draft complete; B has played (1, 3) instead of (1, 2)):
- A:
(2, 1),(4, 6),(5, 1) - B:
(1, 3),(3, 1),(5, 1)
In plain English: B’s last draft is locally worse than the solver pick, but it lands the game on a realized crucible layout where A’s frozen principal-line Gift is no longer the right continuation when B best-responds to that Gift. Raw Phase 1 / Phase 2 scoring can tie; here the Immortal tiebreaker decides, and B wins under static continuation.
Post-exchange crucibles when A uses the frozen principal-line Gift and B best-responds (same seed 92):
- A:
(3, 1),(4, 6),(5, 1) - B:
(1, 3),(2, 1),(5, 1)
Scores on that static path: Phase 1 0–0; Phase 2 1–1 (totals tied); Immortal tiebreak favours B → realised B win.
Same seed, four branches
| B’s last draft | A at Exchange | Realised winner |
|---|---|---|
| Optimal (1, 2) | Static principal-line Gift | A |
| Blunder (1, 3) | Static principal-line Gift | B |
| Blunder (1, 3) | Re-solved (equilibrium on realised crucibles) | A |
Row 3 is the “re-solving would have saved it” contrast on the same opening: one run of blunder_test_random_crystals.js (same internal Node harness as above; not in public psdg) at this seed reports 100% A wins with re-solving vs 0% A wins under static when B blunders.
Where the counts live
| Row (standard 6-dice blunder suite) | Role |
|---|---|
| Re-solving (~5.7% B wins) | A recomputes the Gift on the realized crucibles |
| Static sequential (~8.5%) / simultaneous (~6.9%) | A replays the principal-line Gift |
This example is one microscopic story behind the static rows—not a second Minimax Gotcha on top of +1 at the root.
Reproduce: Blunder-suite drivers live under benchmark/ in the public psdg repository. Published values for a fixed (board, crystals) come from the Python reference solver; which opening a given integer seed names follows the harness documented next to those scripts (do not assume seed portability across unrelated random setups—home § Solver).
Related entry points
- Home — Empirical snapshot · Reading the 5.7% row
- Fixed-board blunder sweep
- Game theory — deployment gap
- FAQ — oracle vs static A
- YouTube demo (principal-line teach-through; not a blunder showcase)
