6edc16ed2003d717e70565ea385a38c3e3af33b8
Stand up the real AuthoritativeServer behind the real TCP transport on a loopback port and drive real SyntheticProtocolClient sockets through it, so the matrix is exercised over an actual connection rather than in-memory fakes. Covers the baseline-protocol, TCP-compatibility, and interest-management sections: welcome->hello->sessionReady handshake, unique/non-spoofable server-owned ids, malformed and oversized rejection before mutation, rate-limit tripping, transform/playerState/worldState relay, action events not replay-cached to late joiners, disconnect/reconnect leaving no stale session, same-cell relay vs distant interest filtering, multi-client no cross-cell spam, and handshake-timeout reaping. The harness runs for real wherever loopback TCP can bind (dev machines, the self-hosted runner) and skips cleanly otherwise. Wired into a self-hosted CI job gated by the runtime-policy guard. 60s idle-timeout, 32/64-client load / packet-loss / reconnect-churn, and GNS sections remain follow-ups.
Commonwealth Online — Server & Host
The dedicated server and its host GUI for Commonwealth Online (Fallout 4 multiplayer). Everything now builds on one .NET 8 toolchain.
Components
server/— the dedicated relay server (CommonwealthOnline.Server, a .NET 8 console app). Run it withserver/start.sh/server/start.bat, orCommonwealthOnline.Server serve.host/— the Avalonia cross-platform host GUI: start/stop the server, edit config, watch the log, and manage players (kick/ban). Replaces the former Qt/C++ host.
Quick start — server
cd server
./start.sh # Linux / macOS
start.bat # Windows
Needs the .NET 8 runtime (or the SDK for a source checkout). Allow TCP 7777
(and optionally UDP 7778 for LAN discovery) through the firewall. 0.0.0.0
is a bind address, not the address players join.
Quick start — host GUI
dotnet run --project host/CommonwealthOnline.Host.csproj
Build
dotnet build server/CommonwealthOnline.Server.csproj -c Release
dotnet build host/CommonwealthOnline.Host.csproj -c Release
The Qt/C++ host and its CMake build were retired in favour of the Avalonia host.
SETUP.md/DEVELOPMENT.md/DEPLOYMENT.mdare from the Qt era and are pending a refresh.
Releases
2
Server 1.0.1 Release
Latest
Languages
Python
72.3%
C++
17.5%
Batchfile
5.5%
Shell
3.5%
CMake
1.2%