https://gitlab.synchro.net/main/sbbs/-/commit/aa15a8adedc528dd9b1374fb
Added Files:
docs/superpowers/plans/2026-07-26-syncconquer-multiplayer.md
Modified Files:
src/doors/syncconquer/CMakeLists.txt DEFERRED.md PROVENANCE.md src/doors/syncconquer/vanilla/redalert/mplayer.cpp src/doors/syncconquer/vanilla/tiberiandawn/mplayer.cpp
Log Message:
syncconquer: take Network off the multiplayer menu until it can work
The engine cannot find peers from inside a door. Its UDP transport binds
one fixed global port and sends to every peer at that same port, so two
nodes on one host collide on the bind -- the common case, since most
BBSes run their nodes on a single machine -- and it announces games by broadcast, which does not reach a node on another host. Choosing Network
could therefore only fail, so the button is suppressed and the menu
offers Skirmish alone.
Skirmish lives in that same menu and is the lone caller's whole game, so
the menu entry itself stays; only the network option goes. The door
defines SYNCCONQUER_NO_NETGAME and the vendored edit widens the existing NETWORKING gate on ipx_avail, which drops the button through the engine's
own two-button path; a second line moves Cancel into the vacated slot so
the dialog has no hole. Deleting the two definitions restores it.
Also corrects the deferred-features note claiming classic Tiberian Dawn
has no skirmish mode. The vendored engine carries one for both titles,
and its computer opponents are the Red Alert base-building AI --
USE_RA_AI is defined unconditionally in the Tiberian Dawn sources, so
syncdawn has been playing against that AI all along.
The plan file records what intra-BBS multiplayer will take: the game's
own lobby is kept (it already handles rosters, sides, scenario and rules,
and the CRC checks lockstep depends on), and only peer discovery is
added, from a registry the doors publish under data/ with the bind and advertise addresses a multi-host BBS needs.
Co-Authored-By: Claude Opus 5 (1M context) <
noreply@anthropic.com>
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net