한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Game-Lag-Whitepaper › Probleme, die nur einige betreffen

Autorität über Monster bei einem langsamen Client Monster movement delegated to a player client

Ursachen-ID pt-mob-control · Hauptzuständig Server-Entwicklung (Entwicklungsteam)

In der interaktiven Fassung mit Grafiken und Experimenten öffnen →

Manche Spiele übertragen die Berechnung von Monsterbewegungen an den Client eines Spielers in der Nähe, um den Server zu entlasten. Hat dieser Spieler eine schlechte Leitung, bewegt sich das Monster auf allen Bildschirmen seltsam.

Warum Server überträgt die Berechnung der Monsterbewegung an den Client des nächstgelegenen (oder zuerst eingetroffenen) Spielers → Folge Ergebnismeldungen des zuständigen Spielers kommen verspätet oder gebündelt beim Server an → Auf dem Bildschirm Nur dieses Monster stockt auf den Bildschirmen aller in der Umgebung und teleportiert dann. Auf dem Bildschirm des zuständigen Spielers selbst sieht alles normal aus

Symptome
Teleportieren, Ruckeln, Zeitraffer
Faktoren
Jitter, Paketverlust
Wer ist betroffen
Nur ein bestimmter Charakter wirkt seltsam, Bestimmter Ort oder Kanal
Wann
Immer, Gelegentlich, zufällig
Zuständigkeit
Hauptzuständig Server-Entwicklung (Entwicklungsteam)
Aufgaben Entwicklungsteam
Autorität an Spieler mit guter Leitung übergeben (nach Ping und Paketverlust), bei ausbleibenden Meldungen sofort durch den Server zurückholen, wichtige Monster wie Bosse direkt auf dem Server berechnen.
Im Graphen
Nur einzelne Ausreißer · Meldeabstände pro Monster (nach Client mit Autorität)
Wo nachsehen
Auf dem Server pro Monster den Client mit Autorität sowie dessen Meldeabstand, RTT und Paketverlust protokollieren. Im serverseitigen Paketmitschnitt sind auch die Ankunftsabstände der Pakete dieses Clients zu sehen
Spricht dafür
Die Autorität über alle seltsam laufenden Monster liegt bei derselben Person, deren Meldeabstände unregelmäßig sind oder abreißen, und nach Übergabe der Autorität an jemand anderen ist sofort alles normal
Spricht dagegen
Monster, die der Server selbst berechnet, springen genauso: Tick-Verzögerung auf dem Server oder Leitung des Betrachters. Springen weiter trotz Wechsel der Autorität: „Abweichende Pfadberechnung bei Befehlssynchronisation“
Prüfmittel
Logs oder Metriken aus Spielserver bzw. Client nötig
Mehr dazu
Der zuständige Spieler merkt nichts, deshalb kommen Meldungen nur als „das Monster verhält sich seltsam“ an. Sehen alle außer einem dasselbe Monster seltsam, zuerst prüfen, wer die Autorität über dieses Monster hat.

Quellen

  1. Authority (Netcode for GameObjects 2.5) Unity
    Im Modell der verteilten Autorität übernimmt jede Spielinstanz (Client) die Autorität über einen Teil der Netzwerkobjekte und berechnet diese
  2. Distributed authority topologies (Netcode for GameObjects 2.5) Unity
    Wird die Autorität auf Clients verteilt, gibt es keine einzelne Simulation mehr, und das System wird anfällig für Cheats

Verwandte Ursachen

Gleiche Schicht: Probleme, die nur einige betreffen

Ursachen aus anderen Schichten mit demselben Symptom (Teleportieren)

Karte in der interaktiven Fassung mit Grafiken und Experimenten ansehen