Ich arbeite an einem Online-Spiel, das eine sehr schwere Kollisionserkennungsverarbeitung haben wird. Spielermodelle kollidieren mit anderen Spielern, Mobs, Strukturen, Gelände und festen Objekten, die nur serverseitig existieren (nicht in Client-Datendateien gespeichert).
Sollte ich aus Sicherheitsgründen alle Kollisionserkennungen serverseitig durchführen? Oder sollte ich den Client die Erkennung durchführen lassen und den Server irgendwie nachverfolgen lassen? Ich habe das Gefühl, dass es zu viel für den Server sein wird (ich entwerfe die Engine für Hunderte von Spielern auf einem Server).
Weiß jemand, wie Mainstream-MMOs das machen? Ich weiß, dass derzeit fast alle MMOs für Physik-Hacks anfällig sind und normalerweise damit umgehen, indem sie Hacks erkennen und Personen verbieten. Mir wäre es lieber, wenn die Hacks überhaupt nicht funktionieren würden, zumindest für die Physik-Komponente.
quelle
Wenn Sie über die Hacks besorgt sind und dies große Auswirkungen auf das Spiel hat, lautet die Antwort JA.
In meinem browserbasierten Spiel, das eine Art "Städtebau" -Spiel ist, stören mich die Hacks nicht, da die Client-Engine nicht ausfällt, wenn ich den Status des gespeicherten Spiels anlege.
Es könnte jedoch das Gameplay möglicherweise missbrauchen, da der Spieler Spielmünzen (oder Premium-Bargeld) ausgeben muss, um die spielbare Fläche zu vergrößern und mehr Häuser / Gebäude zu bauen. Also werde ich eine einfache Überprüfung der Anzahl der durch das neu hinzugefügte Gebäude belegten Kacheln durchführen, um zu überprüfen, wie viele freie Kacheln verfügbar sind.
quelle