Nachdem wir im PvP mal wieder jede Menge Keeps und Türme “magisch” verloren haben, muss ich mich doch mal wundern.
Spielleistung und Vermeidung von Lag hin oder her, es kann doch nicht so schwer sein, die Leutchen los zu werden. Ich bin selbst Informatiker und wundere mich immer wieder, wie irgendwelche Kiddies funktionierende Hacks auftreiben. Ich zweifle tatsächlich immer an, ob ich sowas selbst hinbekommen würde, aber im Geiste gehe ich dabei auch immer gegen Systeme an, die zumindestens so sicher sind, wie eine “durchschnittliche” Website.
-> Wieso glaubt der Spiel-Server dem Client überhaupt irgend etwas ? Insbesondere Koordinaten von Spielern ? Ok, so kann bei einem kurzfristigen Kontaktabbruch der Spieler weiterspielen, ohne dass es ihm auffällt, aber 2-3 zusätzliche Bedingungen sollten schon zu machen sein, wie z.B. eine Maximalgeschwindigkeit oder das Sicherstellen von Gravitation.
-> Wie wäre es damit: Wenn der Kontakt wieder steht, werden alle Tastaturbefehle nachträglich auch übertragen. Ein vom eigentlichen Server unabhängiges System simuliert mit 10 Sekunden Zeitverzögerung (wer mehr Lag hat hat eh Pech) den gesamten Spielprozess (so als hätte man ein System bei dem generell nur Eingaben übertragen werden und der Client nichts selbst rechnet) -> zu große Abweichung = Die Hand Lissas fällt vom Himmel und setzt den Char an den Ort, wo er sein müsste.
-> Wenn man die Berechnung wirklich beim Client lassen will: Es gibt seit langem kryptographische Modelle zur Simulation von Endlichen Automaten auf “feindlichen” Computern, die außer (dem unvermeidlichen Denial of Service) nicht in Polynomzeit angreifbar sind, d.h. das simulierende System hat keine Möglichkeit herauszufinden, in welchem Zustand sich der simulierte Automat befindet, und was der nächste sein wird. Aber ich würde mal behaupten, dass schon simpelste Schutzmaßnahmen, wie das Durchführen von Rechnungen bezüglich eines vom Server dynamisch veränderten Zahlkörpers o.ä. die meisten Angreifer überfordern sollte ohne allzuviel Rechenleistung zu fressen.
Not affiliated with ArenaNet or NCSOFT. No support is provided.
All assets, page layout, visual style belong to ArenaNet and are used solely to replicate the original design and preserve the original look and feel.
Contact /u/e-scrape-artist on reddit if you encounter a bug.