Netzwerk
Netzwerk
Autoritativer Multiplayer-Server mit WebRTC und tick-basierter Zustandssynchronisierung.
MavonEngine verwendet eine autoritative Server-Architektur für Multiplayer. Der Server ist die einzige Wahrheitsquelle — Clients senden Befehle, der Server verarbeitet sie und sendet den Zustand zurück an die Clients.
Referenz: Die Architektur ist inspiriert von Gaffer On Games und Source Engine Multiplayer Networking.
Transport
Echtzeit-Daten werden über UDP via WebRTC mit geckos.io übertragen. Dies ermöglicht latenzarme, unzuverlässige Nachrichten, die für die Spielzustandssynchronisierung geeignet sind.
Architekturübersicht
Client Server
│ │
│── Befehl (Eingabe) ─────────► │
│ │ 1) Befehl verarbeiten
│ │ 2) Physik-Schritt
│ │ 3) Zustand aktualisieren
│◄── Zustandsabgleich (Tick) ── │
│ │
- Client erfasst Eingaben und sendet Befehle an den Server
- Server stellt Befehle in einen Befehlspuffer
- Bei jedem Tick verarbeitet der Server Befehle, berechnet Physik und sendet den Weltzustand
- Zustand wird nur an Clients innerhalb des Sichtbarkeitsradius jeder Entity gesendet