Real-time multiplayer networking from scratch
Reference implementation for students learning real-time multiplayer systems; demonstrates client prediction, server reconciliation, and custom deterministic physics
NetRaiders is an educational multiplayer game built for Computer Networks (COSC465) at Colgate University. The goal was to demonstrate advanced networking concepts through a fully working client/server game architecture rather than abstract assignments.
The system uses an authoritative server model, preventing players from cheating by manipulating local state. The server runs at 20 ticks per second, processing inputs and maintaining the single source of truth for simulation.
Several core networking techniques were implemented from scratch. The client uses prediction for responsive local movement, while server reconciliation corrects drift by replaying cached in-flight inputs. Remote entity interpolation smooths the motion of other players by blending between discrete server updates, solving the classic challenge of low-frequency network updates (20Hz) paired with high client frame rates (60–120fps).
Beyond networking, we deliberately built parts of the game engine ourselves. Instead of relying on Unity's built-in physics, we implemented a lightweight custom collision system tailored to the project's needs. This made the simulation easier to reason about and kept networking behavior deterministic — an important constraint for authoritative multiplayer systems.
The final architecture combines a Python backend using WebSockets for real-time communication with a Unity frontend implementing tick-based simulation and interpolation layers. The project now serves as a reference implementation for students learning how real-time multiplayer systems actually work, with a focus on clarity and reproducibility over polish.