From 1b4f3bac6bce672e94cdc8f9d23bac2483381270 Mon Sep 17 00:00:00 2001 From: Erik Date: Thu, 14 May 2026 18:03:05 +0200 Subject: [PATCH] feat(B.6 slice 1): DebugPanel mirror for ProbeAutoWalk checkbox Wires PhysicsDiagnostics.ProbeAutoWalkEnabled into the DebugVM + ImGui panel checkbox alongside the existing Probe Resolve / Probe Cell / Probe BSP hits checkboxes. Following the L.2a + L.2d pattern: the panel toggle takes effect live (no relaunch needed) because the diagnostic call sites read the static flag every frame. Lets the next B.6 trace session toggle the probe via panel checkbox when ACDREAM_DEVTOOLS=1, without an env-var dance. --- .../Panels/Debug/DebugPanel.cs | 5 +++++ .../Panels/Debug/DebugVM.cs | 15 +++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/AcDream.UI.Abstractions/Panels/Debug/DebugPanel.cs b/src/AcDream.UI.Abstractions/Panels/Debug/DebugPanel.cs index cdf7980..45f0e88 100644 --- a/src/AcDream.UI.Abstractions/Panels/Debug/DebugPanel.cs +++ b/src/AcDream.UI.Abstractions/Panels/Debug/DebugPanel.cs @@ -206,6 +206,7 @@ public sealed class DebugPanel : IPanel bool probeResolve = _vm.ProbeResolve; bool probeCell = _vm.ProbeCell; bool probeBuilding = _vm.ProbeBuilding; + bool probeAutoWalk = _vm.ProbeAutoWalk; if (r.Checkbox("Dump motion (ACDREAM_DUMP_MOTION)", ref dumpMotion)) _vm.DumpMotion = dumpMotion; if (r.Checkbox("Dump vitals (ACDREAM_DUMP_VITALS)", ref dumpVitals)) _vm.DumpVitals = dumpVitals; @@ -220,6 +221,10 @@ public sealed class DebugPanel : IPanel // [resolve-bldg] entries; expect log volume to spike at walls. if (r.Checkbox("Probe BSP hits (ACDREAM_PROBE_BUILDING, slow)", ref probeBuilding)) _vm.ProbeBuilding = probeBuilding; + // B.6 slice 1 (2026-05-14): local-player auto-walk trace for issue #63. + // Low volume — only the local player's UM/UP/Use/PickUp events emit. + if (r.Checkbox("Probe auto-walk (ACDREAM_PROBE_AUTOWALK)", + ref probeAutoWalk)) _vm.ProbeAutoWalk = probeAutoWalk; r.Spacing(); diff --git a/src/AcDream.UI.Abstractions/Panels/Debug/DebugVM.cs b/src/AcDream.UI.Abstractions/Panels/Debug/DebugVM.cs index e08750d..ef99a25 100644 --- a/src/AcDream.UI.Abstractions/Panels/Debug/DebugVM.cs +++ b/src/AcDream.UI.Abstractions/Panels/Debug/DebugVM.cs @@ -275,6 +275,21 @@ public sealed class DebugVM set => PhysicsDiagnostics.ProbeBuildingEnabled = value; } + /// + /// B.6 slice 1 (2026-05-14). Runtime mirror of + /// PhysicsDiagnostics.ProbeAutoWalkEnabled (env var + /// ACDREAM_PROBE_AUTOWALK). Toggling here flips the + /// [autowalk-out] / [autowalk-mt] / [autowalk-up] + /// trace used to characterize ACE's behavior during a server- + /// initiated auto-walk (issue #63). Low volume when off — only the + /// local player's events are filtered through the probe. + /// + public bool ProbeAutoWalk + { + get => PhysicsDiagnostics.ProbeAutoWalkEnabled; + set => PhysicsDiagnostics.ProbeAutoWalkEnabled = value; + } + // ── Action hooks invoked by panel buttons ────────────────────────── ///