From cdbcf80d954ff692dd87ea2de40af97d1d210254 Mon Sep 17 00:00:00 2001 From: Daniel Machado Date: Fri, 17 Jul 2026 08:16:49 +0200 Subject: [PATCH 1/2] PROGRESS: record 2026-07-17 parallel batch (SFX overhaul, net victory screen, net teleport pads, perf check) Three branches pushed pending owner merge + SFX ear-check; perf verdict recorded. Co-Authored-By: Claude Fable 5 --- PROGRESS.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/PROGRESS.md b/PROGRESS.md index 6d65982..6062b8f 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -41,6 +41,25 @@ dashboard reads — keep it in sync with the detailed sections below. GoDotTest 187 — all green. Remaining: merge (owner squash-merge after CI), live two-device rematch/pickup check, 60 fps profile with the director on the largest map (perf rule), web re-export for the arcade. - [~] Multiplayer-menu restructure 2026-07-05 (`docs/tasks/multiplayer-menu-restructure.md`, #247 prep) — title slimmed to **Solo | Multiplayer | Settings | Exit** (last label platform-aware: "Back to Arcade" on web via `title.back_to_arcade`, behaviour unchanged — `PlatformExit`); map picking moved **into the lobby browser** (new Maps button → MapSelect; desktop-only Editor button — the editor needs the local asset library the WASM build doesn't bundle); MapSelect Back stays → Title. New i18n key `browser.maps` (EN/ES/DA). GoDotTest 172✓ (red-first). Remaining: web-branch reconcile + WASM re-export + arcade redeploy. +- [~] Parallel batch 2026-07-17 (orchestrated; three branches pushed, NONE merged — owner gates below): + **SFX overhaul** (`feat/sfx-overhaul` @ d55195b) — the 12 silenced placeholder sounds (tank-death + explosion, wall break, generic pickup, all 9 per-powerup cues) regenerated via local Stable Audio + (assetfactory), loudness-matched to fire.ogg; every `SfxKind` now mapped in `SfxPool`; new + every-kind-decodes test; credits updated; GoDotTest 189✓ — **owner EAR-CHECK pending**. + **Net victory screen** (`feat/net-victory-screen` @ 8c57885) — victory screen v2 on BOTH host and + guest at networked match end (standing / damage-taken / repairs ranked identically on every peer + from observed hp via pure-C# `NetMatchStats`; zero wire change; solo screen extracted into shared + `VictoryScreen`); Rematch/Leave intact; xUnit 695✓ + GoDotTest 190✓. + **Net teleport pads** (`feat/net-teleport-pads` @ 6ef28e7, based ON the victory-screen branch — + merge together or S2-then-S3) — Cliffs' cross-layer pads now work online: host tanks got the + missing `teleporter:`, warps ride the existing TankState X/Y/Layer (zero wire change), guest + own-layer sync bug fixed, pad rings on both roles; GameLogic 562✓ + GoDotTest 193✓. Deferred: + pads on generated/net non-authored maps (gameplay decision). + **PowerupDirector perf check** (measurement only, no code) — headless sim of the largest map + (76×46, 8 AI + director, 3600 steps): mean ~45 µs/step, p99 ~110 µs — <1% of the 16.6 ms frame + budget, so the perf-rule question moves to on-device rendering, not the sim. Finding: ~9.7 KB/step + allocated by AI list/A* churn (not the director; `World.Step` itself stays zero-alloc) — optional + future pooling slice if WASM GC hitches appear on device. ## Current status: **M1 + S1 + M2 + local-first combat arc complete; local polish arc in progress** (2026-06-03) From 16332c4b85662352612472afcca04233fcc3fa91 Mon Sep 17 00:00:00 2001 From: Daniel Machado Date: Fri, 17 Jul 2026 08:36:08 +0200 Subject: [PATCH 2/2] PROGRESS: cite PRs #261/#262 for the 2026-07-17 batch Co-Authored-By: Claude Fable 5 --- PROGRESS.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/PROGRESS.md b/PROGRESS.md index 6062b8f..304c3f2 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -41,17 +41,17 @@ dashboard reads — keep it in sync with the detailed sections below. GoDotTest 187 — all green. Remaining: merge (owner squash-merge after CI), live two-device rematch/pickup check, 60 fps profile with the director on the largest map (perf rule), web re-export for the arcade. - [~] Multiplayer-menu restructure 2026-07-05 (`docs/tasks/multiplayer-menu-restructure.md`, #247 prep) — title slimmed to **Solo | Multiplayer | Settings | Exit** (last label platform-aware: "Back to Arcade" on web via `title.back_to_arcade`, behaviour unchanged — `PlatformExit`); map picking moved **into the lobby browser** (new Maps button → MapSelect; desktop-only Editor button — the editor needs the local asset library the WASM build doesn't bundle); MapSelect Back stays → Title. New i18n key `browser.maps` (EN/ES/DA). GoDotTest 172✓ (red-first). Remaining: web-branch reconcile + WASM re-export + arcade redeploy. -- [~] Parallel batch 2026-07-17 (orchestrated; three branches pushed, NONE merged — owner gates below): - **SFX overhaul** (`feat/sfx-overhaul` @ d55195b) — the 12 silenced placeholder sounds (tank-death +- [~] Parallel batch 2026-07-17 (orchestrated; PRs #261 + #262 open — owner gates below): + **SFX overhaul** (#261, `feat/sfx-overhaul` @ d55195b) — the 12 silenced placeholder sounds (tank-death explosion, wall break, generic pickup, all 9 per-powerup cues) regenerated via local Stable Audio (assetfactory), loudness-matched to fire.ogg; every `SfxKind` now mapped in `SfxPool`; new every-kind-decodes test; credits updated; GoDotTest 189✓ — **owner EAR-CHECK pending**. - **Net victory screen** (`feat/net-victory-screen` @ 8c57885) — victory screen v2 on BOTH host and + **Net victory screen** (#262, `feat/net-victory-screen` @ 8c57885) — victory screen v2 on BOTH host and guest at networked match end (standing / damage-taken / repairs ranked identically on every peer from observed hp via pure-C# `NetMatchStats`; zero wire change; solo screen extracted into shared `VictoryScreen`); Rematch/Leave intact; xUnit 695✓ + GoDotTest 190✓. - **Net teleport pads** (`feat/net-teleport-pads` @ 6ef28e7, based ON the victory-screen branch — - merge together or S2-then-S3) — Cliffs' cross-layer pads now work online: host tanks got the + **Net teleport pads** (#262, `feat/net-teleport-pads` @ 6ef28e7, based ON the victory-screen + branch — one stacked PR carries both) — Cliffs' cross-layer pads now work online: host tanks got the missing `teleporter:`, warps ride the existing TankState X/Y/Layer (zero wire change), guest own-layer sync bug fixed, pad rings on both roles; GameLogic 562✓ + GoDotTest 193✓. Deferred: pads on generated/net non-authored maps (gameplay decision).