Erkennt der Server einen Treffer oder Skill, den der eigene Bildschirm schon gezeigt hat, nachträglich nicht an, wird ein eindeutig gesehenes Ergebnis rückgängig gemacht.
Warum Treffereffekt und Skill-Animation laufen vor der Bestätigung durch den Server (clientseitiges Feedback) → Folge Server prüft Reichweite, Zielposition, Cooldown und Ressourcen erneut und lehnt ab → Auf dem Bildschirm Blut spritzt, aber kein Schaden, Skill-Animation ohne Wirkung, nur der Cooldown läuft
Client: nur Teile, die eine Bestätigung brauchen, wie Schadenszahlen, Tod und Belohnungen, mit dem Serverergebnis anzeigen, häufige Ablehnungsgründe vorab selbst prüfen, bei Ablehnung Cooldown und Ressourcen zurücksetzen und den Grund anzeigen. Server: bei der Prüfung von Reichweite und Zielposition Spielraum in Höhe des Pings lassen, Ablehnungen mit Grund senden, Ablehnungsquote pro Skill als Metrik erfassen.
Größenordnungen
Die Ablehnung kommt um Ping + Tick-Wartezeit nach dem Tastendruck. Bei 150 ms Ping glaubt man etwa 0,2 s lang, getroffen zu haben.
Im Graphen
Nur einzelne Ausreißer · Ablehnungsquote des Servers pro Skill (nach Ping-Bereich)
Wo nachsehen
Auf dem Server Ablehnungsquote und Ablehnungsgründe (Reichweite, Zielposition, Cooldown, Ressourcen) pro Skill erfassen und nach RTT-Bereichen der Spieler aufschlüsseln. Im Client zählen, wie oft eine mit clientseitigem Feedback dargestellte Aktion abgelehnt wurde
Spricht dafür
Ablehnungen häufen sich bei bestimmten Skills und den Gründen Reichweite und Zielposition, und die Ablehnungsquote steigt mit dem Ping
Spricht dagegen
Ablehnungsgrund Cooldown oder Ressourcen und unabhängig vom Ping: prüfen, ob sich die Datenwerte (Cooldown, Kosten) von Client und Server unterscheiden. Keine Ablehnungen, aber das Feedback beginnt erst nach der Serverantwort: „Feedback erst nach der Serverantwort (Request-Response)“
Prüfmittel
Logs oder Metriken aus Spielserver bzw. Client nötig
Mehr dazu
Clientseitiges Feedback ist das beste Mittel, um den Ping zu verbergen. Je stärker sich aber die Informationen unterscheiden, die Client und Server für ihre Entscheidung nutzen (Position des Gegners, verbleibende Ressourcen), desto häufiger kommt es zu Ablehnungen. Wer die Ablehnungsquote pro Skill als Metrik erfasst, findet leichter die Stellen, an denen die Entscheidungen auseinanderlaufen.
Quellen
Using Gameplay Abilities in Unreal EngineEpic Games Local-Predicted-Fähigkeiten laufen sofort auf dem Client, die endgültige Entscheidung trifft aber der Server, der das Ergebnis auch umkehren kann