• src/doors/syncdoom/g_game

    From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Tue Jun 23 23:34:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/9521464528ae91ae904e9732
    Modified Files:
    src/doors/syncdoom/g_game.c syncdoom.c
    Log Message:
    syncdoom: in-game multi-line who's-online + game-event log

    Replace the single clipped HU message line for the in-game who's-online
    list (Ctrl-U) with the shared multi-line top banner (white-on-red, the
    same non-blocking overlay incoming pages use): one node per row with the
    full standard activity phrase (sbbs_action_str, matching the waiting room
    / terminal-server display), auto-clearing after a few seconds. Grow the
    banner to 10 rows, size its output buffer for that, and wipe vacated rows
    when a shorter banner replaces a taller one.

    Add game-event logging to <data>/syncdoom/events.jsonl (-eventlog): start, level-clear, frag, death and end records (with debug fields: terminal,
    user, node, tier, build), plus frag/death/total-frag accessors in g_game.c.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Tue Jun 30 22:32:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/95202787eb719e0b2091772d
    Modified Files:
    src/doors/syncdoom/g_game.c m_menu.c syncdoom.c
    Log Message:
    syncdoom: SyncTERM evdev input tier + RTT-adaptive synthetic turn

    - evdev physical-key input (syncdoom.c, m_menu.c): mirrors SyncDuke's tier --
    CTDA cap 8 negotiation, layout-independent scancodes with true key-up. Under
    evdev (as under kitty) Doom's native turn ramp drives turning, so the byte-
    path key-feel sliders show "NATIVE"/disabled. Also bounds the APC swallow.
    - RTT-adaptive synthetic turn (g_game.c): on a high-latency link the door
    injects a constant, deterministic turn rate (angleturn[2], Doom's slow turn)
    in place of a held turn key; cleared when a menu is up so a still-held
    synthetic turn can't leak under it.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Wed Jul 1 02:20:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/fceb17e338288365b867b37f
    Modified Files:
    src/doors/syncdoom/g_game.c syncdoom.c src/doors/syncduke/Game/src/player.c src/doors/syncduke/syncduke_input.c
    Log Message:
    doors: render the Ctrl-O mouse toggle as an in-game message, not a terminal popup

    SyncDOOM's Ctrl-O confirmation was a door-drawn terminal label (white-on-blue, top-center) that also PAUSED frame output for its 700ms dwell -- unlike the in-game
    pickup messages ("you got the shotgun"), which render in the game font (block graphics in graphics tiers, text in text tiers) with no pause. Route it through Doom's own message widget instead: new sd_hud_message() (g_game.c) sets players[consoleplayer].message; toggle_mouse() calls it. Same look/feel as pickups,
    no pause.

    SyncDuke already did this via an FTA quote; just drop the word "STEERING" so both
    doors read "MOUSE ON" / "MOUSE OFF".

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net