https://gitlab.synchro.net/main/sbbs/-/commit/c46bb552ccdf9e9b520ed29f
Modified Files:
src/doors/syncduke/Game/src/player.c src/doors/syncduke/syncduke.h syncduke_input.c
Log Message:
syncduke: responsive keyboard turning + reset input state on load
Turning: a terminal can't hold a key and the door refreshes key-down only once per presented frame, so Duke's per-sim-tic turn-key polling produced uneven, frame-tied bursts that no key-hold slider could smooth. Drive a time-windowed continuous turn level from the arrow bytes that getinput() adds to angvel every sim-tic (player.c) -- like the door's mouse steer / SyncDOOM's steady turn. Rate
comes from the TURN slider (small floor so 0 ~ barely turns); FAST TURN is now a
+50% turbo. Arrows stay raw scancodes in menus for navigation.
Load: syncduke_input_reset() (called from loadplayer) clears the sticky-crouch latch, pending key-holds, queued scancodes, and turn/look momentum, so the pre-load session's input no longer bleeds into a restored game (e.g. crouch).
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net