arcattack and Claude Opus 4.8
44f7c39ee1
Issue #24 : release held pad buttons on controller disconnect (look latch)
...
XInput button emission is edge-based against previousPadButtons; the
disconnect path zeroed that memory WITHOUT emitting release edges, so
any button held when a controller (wrapper) died stayed pressed
game-side forever -- and the zeroing also erased what a reconnect would
have released. Field signature (playtest night): a PS3-pad-in-xbox-
mode wrapper died mid-hat-hold -> the look-view machine (hold-based,
mppr) latched a side view with the authored look pitch ("stuck side
view + pitch at ground, no recovery"); the keyboard-only run was clean.
On the connected->disconnected transition PadRIO now emits
EmitButton(address, 0) for every binding whose mask was held, then
forgets. Not reproducible headless (needs a real hardware unplug
mid-hold) -- awaiting the reporter's controller for live verification.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-23 00:49:41 -05:00
..
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-19 10:39:43 -05:00
2026-07-19 10:39:43 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-12 20:04:29 -05:00
2026-07-20 14:43:40 -05:00
2026-07-22 20:10:38 -05:00
2026-07-05 21:03:40 -05:00
2026-07-16 11:59:39 -05:00
2026-07-16 11:59:39 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 14:51:35 -05:00
2026-07-20 14:51:35 -05:00
2026-07-16 10:43:38 -05:00
2026-07-20 14:51:54 -05:00
2026-07-20 14:51:35 -05:00
2026-07-16 11:04:34 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 14:51:35 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 08:35:55 -05:00
2026-07-17 22:11:16 -05:00
2026-07-22 18:57:50 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-12 17:24:15 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 15:59:37 -05:00
2026-07-17 22:21:22 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-23 00:28:56 -05:00
2026-07-18 12:11:03 -05:00
2026-07-20 08:35:55 -05:00
2026-07-17 22:11:16 -05:00
2026-07-20 07:50:44 -05:00
2026-07-17 22:21:22 -05:00
2026-07-23 00:49:41 -05:00
2026-07-20 08:35:55 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-18 19:06:26 -05:00
2026-07-17 22:21:22 -05:00
2026-07-17 22:11:16 -05:00
2026-07-17 22:11:16 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-18 00:03:17 -05:00
2026-07-18 00:03:17 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 21:35:51 -05:00
2026-07-20 20:39:34 -05:00
2026-07-22 20:28:01 -05:00
2026-07-22 16:33:41 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-20 20:39:34 -05:00
2026-07-20 14:51:54 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-05 21:03:40 -05:00
2026-07-16 11:04:34 -05:00