Ich habe über ein Multiplayer-RTS-Spiel nachgedacht. Der Teil, den ich nicht umgehen kann, ist die Synchronisation der Einheitenbewegungen. Wenn ich Einheit A auf XY stelle, muss ich dies dem Server mitteilen, der es an den anderen Client weiterleitet.
Ich bin gespannt, wie die Kommunikation aussehen würde. Möchten Sie dem Server nur mitteilen, dass ich die Einheit A von JZ nach XY verschiebe? Vielleicht müssen Sie stattdessen Bewegungskoordinaten kommunizieren? Was ist die effizienteste Methode, um die Bewegung von Einheiten von einem Client zum anderen zu kommunizieren?
BEARBEITEN
Dies ist eine neu gestellte Frage von Stackoverflow . Ich fand, dass diese Seite wahrscheinlich ein besserer Ort für die Frage war.
Eine der besseren Antworten aus diesem Beitrag:
Ich gehe davon aus, dass Sie beabsichtigen, das Client-Server-Netzwerk-Paradigma zu verwenden. In diesem Fall können Sie den Clients nicht vertrauen, dass sie die tatsächliche Positionierung der Einheiten vornehmen. Sie müssen diese Aufgabe an den Server delegieren. Anschließend nehmen Sie die Befehlsliste von jedem Client pro Tick und berechnen die Bewegung jeder Einheit. Sobald dies abgeschlossen ist, geben Sie mit dem nächsten Tick die Position jeder Einheit weiter, die für jeden Client relevant ist (entweder auf der Basis einer ganzen Karte oder Ansichtsbasis), und starten Sie den Vorgang erneut.