Mensajes de aparición descartados durante la carga Spawn messages dropped before the client is ready
ID de la causa pt-loading-drop · Responsable principal Desarrollo de cliente (Equipo de desarrollo) · También Desarrollo de servidor (Equipo de desarrollo)
En cuanto el personaje entra en una zona, el servidor envía los mensajes de aparición de los NPC cercanos, pero el cliente todavía está cargando el mapa y los descarta.
Por qué El servidor envía los mensajes de aparición de las entidades cercanas justo después de procesar la entrada → Efecto El cliente está cargando y todavía no tiene el manejador (handler) de esos mensajes, así que los descarta → En pantalla El servidor los da por enviados y no los repite. El NPC no se ve hasta que sale del rango de visión y vuelve
Al conectar o tras un mantenimiento, Al moverse o cambiar de zona
Responsable
Responsable principal Desarrollo de cliente (Equipo de desarrollo) · También Desarrollo de servidor (Equipo de desarrollo)
Tareas (Equipo de desarrollo)
Cliente: enviar “listo” al terminar la carga, o guardar los paquetes recibidos durante la carga y procesarlos después. Servidor: enviar la información del entorno solo después de recibir “listo”.
Cifras de referencia
Si dos clientes cargan a la vez en la misma computadora, o el que carga está en una ventana en segundo plano, se reparten la CPU y el disco y además su procesamiento queda limitado, así que esa carga puede tardar varias veces más. Si el servidor procesa las entradas más rápido, el mismo bug también sale a la luz.
En el gráfico
Alto solo en algunos · Tiempo de carga por cliente, mensajes descartados durante la carga
Dónde mirar
Comparar el número y el tipo de mensajes que el cliente recibió y descartó durante la carga, y la hora en que terminó la carga, con la hora en que el servidor envió los mensajes de aparición. Es fácil de reproducir cargando dos clientes a la vez en la misma computadora o dejando el que carga en una ventana en segundo plano
Se confirma si
El servidor envió el mensaje de aparición del NPC invisible, llegó antes de terminar la carga, y a esa hora aumentaron los mensajes descartados. Solo ocurre en el cliente que tarda más en cargar
Se descarta si
Si el mensaje de aparición llegó después de terminar la carga y aun así no se ve, apunta a “Pérdida del snapshot de referencia (baseline)” o “Confusión por reutilización de IDs de entidad”. Si el servidor ni siquiera envió el mensaje de ese NPC, apunta a “Condición de carrera en el registro de visibilidad (AOI)” o “Diferencias de canal, instancia o phasing”
Se verifica con
Requiere logs y métricas del servidor o el cliente del juego
Actor Relevancy in Unreal EngineEpic Games Los actores que dejan de ser relevantes se borran en el cliente y, cuando vuelven a serlo, se replican de nuevo