Fällt der Moment, in dem ein Charakter im Sichtbereichsraster registriert wird, mit dem Moment zusammen, in dem ein NPC die Rasterzelle wechselt, kann die Spawn-Meldung für diesen NPC ausbleiben.
Warum Betreten, Kanalwechsel oder Teleport werden im selben Moment verarbeitet, in dem sich ein NPC bewegt → Folge Bei der Berechnung der „neu sichtbaren Objekte“ fehlt dieser NPC → Auf dem Bildschirm Nur einige bestimmte NPCs sind unsichtbar, oder bereits verschwundene NPCs stehen noch da
Sichtbereichs-Updates in einem Thread und in fester Reihenfolge verarbeiten, regelmäßig die gesamte „Sichtliste“ neu abgleichen.
Im Graphen
Vereinzelte Spitzen ohne Muster · Abweichungen zwischen Sichtliste auf dem Server und Objektliste im Client
Wo nachsehen
Auf dem Server Registrierungen im Sichtbereichsraster, Zellwechsel von Objekten sowie gesendete Spawn- und Despawn-Meldungen mit Tick-Nummer protokollieren und regelmäßig die „Sichtliste“ des Servers mit der Liste des Clients vergleichen
Spricht dafür
Der fehlende NPC hat im selben Tick die Zelle gewechselt, in dem Betreten oder Teleport des Charakters verarbeitet wurden, und für diesen NPC ist keine gesendete Spawn-Meldung protokolliert
Spricht dagegen
Spawn-Meldung gesendet, aber vom Client nicht empfangen oder verworfen: Problem bei der Zustellung („Verlust gebündelter Spawn-Daten direkt nach dem Betreten“, „Verworfene Spawn-Meldungen während des Ladens“). Fehlt immer derselbe NPC: „Unterschiede bei Kanal, Instanz oder Phasing“ oder „Unterschiedliche Anzeigeoptionen“
Prüfmittel
Logs oder Metriken aus Spielserver bzw. Client nötig
Quellen
Replication Graph in Unreal EngineEpic Games MMORPGs u. a. teilen die Welt in ein Raster mit einer Actor-Liste pro Zelle und senden ausgehend von der Zelle, in der sich der Client befindet
Actor Relevancy in Unreal EngineEpic Games Relevanz wird pro Verbindung bestimmt, nicht mehr relevante Actors werden auf dem Client gelöscht
Verwandte Ursachen
Gleiche Schicht: Probleme, die nur einige betreffen