Nomads_ReachandGitHub 51d35c935b Acceptance: finish combat rejection set and add NPC authority handoff (#22)
Extend the end-to-end harness (issue #15), harness-only — no server change:

Combat validation
- replayed/out-of-order combat sequence rejected and not routed
- combat hit at a disconnected target rejected
- out-of-interest combat hit rejected and not delivered

NPC authority handoff
- disconnect deterministically hands off to a new owner with a newer epoch
- cell transition hands off scope authority and the previous owner can no longer
  submit npcState for the reassigned scope

21/21 pass on real sockets, deterministic across repeated runs.
2026-08-16 19:56:38 -04:00
2026-08-16 02:36:32 -04:00
2026-08-16 02:36:32 -04:00
2026-08-16 02:36:32 -04:00

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 with server/start.sh / server/start.bat, or CommonwealthOnline.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.md are from the Qt era and are pending a refresh.

S
Description
No description provided
Readme
896 KiB
2026-08-06 12:34:56 +12:00
Languages
Python 72.3%
C++ 17.5%
Batchfile 5.5%
Shell 3.5%
CMake 1.2%