Ich habe darüber nachgedacht, Stealth in einem Multiplayer-Spiel zu implementieren. Es ist ein Spiel im MOBA-Stil, denken Sie also an League of Legends (LoL) und Heroes of the Storm (HotS). Mehrere Clients stellen eine Verbindung zu einem einzelnen Server her, der den Spielstatus an alle Clients überträgt. Clients senden ihre Eingabedaten an den Server, der sie möglicherweise ablehnt, wenn sie auf ungültige Befehle stoßen, wodurch Betrug (theoretisch) unmöglich wird.
Nun, ich erwähne diese Spiele absichtlich, weil beide Stealth unterschiedlich implementiert haben. LoL hat Stealth mit zwei möglichen Zuständen: Sie sind entweder vollständig sichtbar oder vollständig unsichtbar. HotS hingegen implementiert Stealth auf eine Weise, die Sie an einem Schimmer in der Luft erkennen können:
Ich denke, dies ist ein ordentlicher Mechaniker, da er die Aufmerksamkeit auf Ihre Umgebung fördert / belohnt. Da es sich jedoch um ein Multiplayer-Spiel handelt, wurde mir klar, dass sich dies als leicht ausnutzbar erweisen könnte.
Wenn Sie Stealth auf 'die LoL'-Art implementieren, können Sie einfach das Senden von Spielerkoordinaten an die anderen Clients beenden. Wenn der Charakter des Spielers Stealth bricht, kann der Server den Standort erneut übertragen. Beim HotS-Modell ist jedoch ein Schimmer in der Luft zu sehen, in der sich die Figur bewegt. Dies bedeutet, dass der Server den Standort des Players an die anderen Clients senden muss. Das bedeutet, dass Spieler, die die Textur oder das Modell oder sogar den Spielcode selbst ändern, die Umhangmechanik unbrauchbar machen können. Hier ist ein Thread auf den HotS-Boards darüber.
Meine Frage ist, ob es eine Möglichkeit gibt , das Cloaking (mit einem Schimmer à la HotS) zu implementieren, ohne das Problem zu haben, dass geschickte Spieler das Spiel (die Daten) modifizieren und das System schlagen können. Ist das möglich und wenn nicht, wie gehen andere Multiplayer-Spiele mit diesem Mechanismus damit um? Ist nur der LoL-Stil der Unsichtbarkeit nicht zu übertreffen?
Ich habe darüber nachgedacht, dass der Server von Zeit zu Zeit falsche "Umhang" -Standorte sendet, aber das schadet auch fairen Spielern, die nur aufpassen, und das geht nicht.