Unity production client: the game rebuilt in Unity with its own deterministic C# rules, checked against the prototype's rulebook and replay corpus; PC and Steam Deck first, iPad later (owner decision 2026-09-22, TASK-010)
No notes yet.
The decisions that the team still has to make, in priority order. Then the decisions that are made, with the reasons. Each card is a live item in the project tracker. The notes are the discussion so far.
No notes yet.
T35. Bastion Speed 3 candidate by heavy legs speed -1→0. Foundry first damage improves 4.49→3.78 among games with damage, but never-damage worsens 23.7→25.6%; not a complete fix. Compare deployment strips and routes, critical Speed-0 cases, ranged and melee heavies. Record conditional timing alongside never-contributes rate. Closer flat deployment retains formation but has early-exposure tradeoffs. No live value approved.
Work remains on feature/local-playtest-prototype. Keep .liste local and export site/data/liste.json. No deployment in this task.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: H8 confirmed: each player rolls a d6; reroll ties. Winner chooses end; loser places first. Alternate one mech at a time in legal deployment rows. Preview then confirm placement. Initial team reveal belongs to TASK-041. This decision is complete; manual deployment remains TASK-052.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: E1/E2 confirmed: no initiative roll or winner choice. Continue directly from deployment, with the first placer activating first. Continue alternation across scoring boundaries. Skip a side with no remaining eligible mech. The next round starts opposite the actual last acting side. Existing round-based reaction/status resets are reviewed separately. This decision is complete; engine implementation remains TASK-053.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: G3, E3. Ask how one extra Quick interacts with a Full action and lost Quick actions. Clarify once-per-activation timing, per-mech versus team escalation, reset between games, and whether cost remains at 1d6+4 after the fourth use. Decide heat-stress interruption timing before granting/using the extra action. Interview the owner one focused question at a time. Do not implement the proposal before agreement.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: I3-I5. Confirm score, then Hull percentage, then one extra round. Ask whether extra-round objectives score, whether a wipe still ends immediately, what happens on a second Hull tie, and how draws affect best of three. Define damaged or destroyed mech contributions to Hull percentage. Interview the owner one focused question at a time. Do not implement the proposal before agreement.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: G1, H3. Confirm whether Jump legs add one Heat once in an activation that includes any climb, and whether Boost/Charge count toward the same trigger. Ask when heat/stress resolves along a path and what happens if mobility is lost during that move. Preserve current legal elevation and fall rules unless changed explicitly. Interview the owner one focused question at a time. Do not implement the proposal before agreement.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: E6, D4, F11.8. Interview complete. Prepare costs a Quick; Overwatch arms itself through a Full; parries are independent. Refresh Reaction budgets at scoring. Declining preserves Reaction and Prepared/Overwatch until expiry. Choose eligible reaction and legal weapon at trigger time, except Overwatch retains its named weapon. Player orders multiple friendly reactions to the same event and decides sequentially after results. Overwatch uses a visible fixed watch area at a chosen map hex and elevation: center plus six neighbors restricted to that level. Choose an eligible shot point on the declared movement path or pass; use range/LOS/cover there. Disengage resolves before leaving adjacency. Continue the declared path afterward if still able; cancel any movement or follow-up made illegal by destruction/disabling effects. No reaction chains. See the specification for the consolidated approved package. Older pending notes below are historical. Gameplay implementation remains TASK-054.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
Read docs/design/2026-09-08-local-prototype-spec.md and docs/reviews/2026-09-08-session-handoff.md first.
Entry points and likely ownership: docs/design/2026-09-08-local-prototype-spec.md; docs/rulebook.md; corresponding liste decision item.
Scope: B1, B3-B5, I1-I2. Four mechs, three deployed, one reserve are approved. Written B5 applies part-copy and pilot uniqueness limits to all four; Team Cap applies to the deployed three. Confirm initial three selection/reveal, pilot assignments locked during a match, one swap or stand pat between games, fixed map order, and local handoff behavior. Preserve roster pilot reassignment before locking. Optional timed play needs a separate decision and is not silently added. Interview the owner one focused question at a time. Do not implement the proposal before agreement.
Acceptance and verification: Record the owner answer separately from the recommendation, resolve conflicting current rule text, and add concrete examples for dependent engine tests. Only mark done when all behavior needed by the dependent task is settled.
Dependencies: None; can start after claiming ownership.
Handoff: record changed files, public contracts, exact checks and results, unresolved decisions, and the next ready task. Do not mark a task done from a build alone. Do not modify shared engine/Play files concurrently without an explicit integration owner.
T34 and T6/T11 follow-up. Foundry cannon Fires remove no body durability 66.0% of the time, mostly misses/cover. Compare Cannon Acc -1→0, movement penalty, and general Gunnery +1 separately; test normal Pulse body damage plus Heat and legal anti-armor options. Existing sensitivity: Gunnery +1 lowers empty ranged Fires 38.2→33.1%; core Armor 7→6 alone barely changes them. Measure whole firing actions, rerun aggression grids and mirrors before selecting values. No blanket armor nerf approved. See audit for exact commands.
Work remains on feature/local-playtest-prototype. Keep .liste local and export site/data/liste.json. No deployment in this task.
Owner requested non-bot metrics and raised multi-shot firing. Follow the isolated audit before any further bot balance verdict. Matched-budget Rifle 1×2d6→2×1d6 and Cannon 1×3d6→3×1d6 reduce zero-damage actions substantially, while reducing concentrated part destruction and kills. Recommended next prototype: controlled burst options with unchanged raw budgets, preserving/testing single-shot finishing and deciding Aimed Shot eligibility. Do not simply multiply full-damage shots. Include Heat, legal weapon/arm weight, damage, reliability, part destruction and kill chance. No live tuning change is yet selected. Sato/Targeting-head Lance builds are a high opening-output control; account for pilot uniqueness and sustained Heat costs. TASK-075 retains all commands and evidence; T38/T42 record findings.
Owner authorized split fire and lower empty-action rates. Implemented all ranged profiles as small-die volleys, +2 ranged Accuracy, whole-volley Full aiming, and AP role fixes. Holdout evidence: 6.36 million fresh Fire trials plus persistent lethality sequences. See docs/tuning/2026-09-09-burst-prototype.md. This completes the local prototype change; human validation of aimed-Core and focus-fire effects continues in TASK-082.
T39. Utility/Conduit, Impact/Braced and Braced/Field have equal-weight strict body-stat upgrades once held weapons are chosen independently. Review all arm capacity, handling, size, protection and weight tradeoffs. Decide manufacturer roles, then test equivalent weapon fits and incoming part destruction with the isolated lab. Do not use legacy defaultEquipment as compensation. Keep every hard build limit and meaningful melee handling distinction.
Work remains on feature/local-playtest-prototype. Keep .liste local and export site/data/liste.json. No deployment in this task.
Implemented Conduit capacity 7, Braced capacity 10, Field durability 9. Repeatable same-Size/same-category Pareto check confirms zero remaining numeric dominance pairs and legal stock kits. Report docs/tuning/2026-09-09-body-part-audit.md; detector tests reconstruct all four original defects. This is not proof of equal context-dependent power.
T41. Sato has no other Ninesuns or Marksman partner, while duplicate pilots are forbidden, so Deadeye cannot activate with the current catalog. Ruko and Marrow can share Hollow; do not claim all abilities are unreachable. Audit every current pilot against D3. Options: expand compatible identities, revise faction/specialty assignments, or make signature abilities unconditional and give synergy another role. Preserve the existing rule until the owner selects a direction; update rulebook, assembly guidance and activation tests together when implementing.
Work remains on feature/local-playtest-prototype. Keep .liste local and export site/data/liste.json. No deployment in this task.
T40. Flak AP against braced Bastion/hard drops mean damage 3.08→2.31 and raises zero-damage Fires 7.9→15.1%. Cannon AP adds three weight while six-cell damage falls 3.66→3.48. Autocannon/Rotary AP are useful controls and must not be swept into a universal change. Compare damage floors, Pen, shot count and load weight under identical legal fixtures; report rare kills, rounded glances and target protection separately. Keep limited HE a distinct option. Recommendations remain pending a role decision.
Work remains on feature/local-playtest-prototype. Keep .liste local and export site/data/liste.json. No deployment in this task.
Implemented Flak AP retaining 1d3+1 damage and Cannon AP 3×1d6, with carried load weight unchanged. Measured all 20 ranged profiles with 10,000 trials per context against baseline. AP now pays weight/capacity for higher Pen; Flak AP short-range strength is recorded for playtesting. See burst-prototype report for costs, role outcomes and limits.
CONFIRMED: tn10, the common melee opportunity target number 10. Paired spread -9.64 pp [-14.41, -3.99], excluding zero in the smaller-is-better direction. The screen predicted -8.33 pp, so direction and size replicate on fresh seeds. It buys evenness with defence, not lethality: parries +3.029 [+2.696, +3.389], shield parries +0.435 [+0.358, +0.511], melee starts +0.262 [+0.180, +0.346], heat added -0.357 [-0.565, -0.153]. Wipes, part disables and First Side are flat. The compression is a reordering, not a squeeze: light-duelists falls 7.73 pp from the top, new-ranged rises 7.81 pp to become the new top, transformers rises 3.47 pp from the floor.
NOT CONFIRMED: tn11+hammer2+blade-cap4+core-plus2@paid-forms. Paired spread +2.17 pp [-1.48, +5.82]. The interval includes zero and the point estimate is on the wrong side. Its screen estimate was -1.74 pp on two blocks, with an interval that already covered zero, so the sign flipped between selection and confirmation. Its secondary effects are large and real: wipes -9.02 pp [-10.75, -7.18], no-death +1.90 pp [+1.41, +2.36], proactive attacks +1.862 [+1.738, +1.998], rounds +0.180 [+0.143, +0.217], heat added +4.613 [+4.370, +4.852], form changes 0 to 0.357 [+0.351, +0.364]. Its largest roster move, heavy-anchor -10.85 pp, is interior and invisible to the spread metric. At confirmation resolution it would fail the screen's own mirror guard.
Control spread is 57.99 pp at confirmation against 50.00 pp at the screen with the same seven rosters. The screen figure came from two blocks at eight games per cell and was never a stable baseline. No spread level anywhere in the study carries an interval, and no per-roster interval exists in any report.
Turn order is a roster-by-map effect concentrated in mirrors, not a map constant. The opening diagnostic, 8 blocks, gave control first-mover share by map as Quarry 58.68 pp, Foundry 44.10 pp, Causeway 39.24 pp on 288 games each, all excluding even. On confirmation's 16 fresh blocks with trained policies those map effects vanish: 49.9 pp, 48.0 pp, 52.2 pp, all covering even. Pooled over mirrors only, Quarry first-mover and Foundry second-mover persist attenuated, 64.3 to 54.9 pp and 44.2 to 42.9 pp, while Causeway does not replicate. Light-duelists on Quarry gives the first mover 0.88 in both designs. tn10 is even on every map. The combination is not: First Side +1.79 pp [+0.24, +3.16] overall, +4.80 pp [+3.18, +6.36] on Causeway, and three mirror cells swept 64 to 0 by turn order. The First Side levels come from a supplement outside the frozen source closure. It is descriptive and did not influence selection.
Options: A. Adopt tn10 as the playable default common melee opportunity target number. It is the only candidate supported on the preregistered metric, confirmed on fresh seeds at -9.64 pp [-14.41, -3.99]. B. Adopt nothing yet and run a second study first. tn10 evens the roster field through defence and reordering, not through melee lethality, so it does not by itself meet the design goal that closing distance should mean lethality. C. Adopt the combination tn11+hammer2+blade-cap4+core-plus2@paid-forms. The evidence rejects this. It did not confirm, its spread moved the wrong way, and it would fail the screen's own mirror guard at confirmation resolution. D. Test Core +2 standalone in a confirmation-grade design, if fewer wipes and longer games are wanted. The isolates point at it. The whole-game evidence cannot attribute it. E. Confirm Hammer +1 die alone, if Hammer viability is a goal. It is real in isolation and unconfirmed in whole games. F. Drop Capacity from the next study unless a fixture that actually exercises it exists. G. Treat turn order as a roster-by-map problem in mirrors. A follow-up mirror study needs at least 64 games per cell and intervals on the level. A design lever such as the second player choosing the deployment side in mirrors is an owner decision, not a study result.
Recommendation: take A with the caveat from B. Send tn10 to the separate playable-default decision, and record beside it that it does not make closing distance more lethal. Reject C outright. Queue D, E and F for study-02, and G as a separate mirror study. Fix the study-02 tooling before any further rule test: instrument Pace, Deadeye and ranged Momentum; add per-roster and per-assignment intervals; replace the ceiling-bound mirror guard with a First Side share and an interval; label duplicate contexts.
BUG-017 stays open. TASK-082's human playtest requirement is untouched. TASK-099's Bow-role work is not closed by this study.
Family 3, Duelist arm Capacity: blade-cap4 and blade-cap5 are bit-identical to control in all 327 of their cells, not 1,266. The 327 are 240 exchange, 6 sensitivity, 36 class and 45 repeated, per condition. Read the earlier note with 327 in place of 1,266. Nothing else in that line changes; the axis is still inert in every cell.
Family 6, Pilots: 52 of the 128 contexts are byte-identical to another context, not eight. The 128 labelled contexts reduce to 76 distinct game sets, in 40 singletons, 32 pairs, 2 groups of four and 2 groups of eight, which is where the 4,992 re-simulated games come from. Most of the pairs are the legitimate Momentum-off and Momentum-on twins. The figure eight belongs to a different unit: 8 of the 64 pilot-configuration cells duplicate another cell across factions, which is the cross-faction collapse caused by pilot Initiative never reaching combat.
The decision log of the rulebook also lists the rule decisions. The open decisions section of the GDD lists the product decisions.