Mensagem de despawn perdida (entidade fantasma) Missed despawn (ghost entity)
ID da causa pt-ghost · Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Desenvolvimento do cliente (Equipe de desenvolvimento)
No caso inverso, se a mensagem de que algo “sumiu” se perde, NPCs ou jogadores que já morreram ou saíram continuam só na sua tela.
Por quê Mensagens de morte, de saída ou de saída do campo de visão se perdem ou chegam fora de ordem → Efeito O cliente acha que a entidade ainda está lá → Na tela Monstro que não reage aos golpes, jogador que já saiu continua parado lá
Aleatoriamente, de vez em quando, Quando junta muita gente
Responsável
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Desenvolvimento do cliente (Equipe de desenvolvimento)
O que fazer (Equipe de desenvolvimento)
Servidor: enviar periodicamente a “lista do que está visível agora”. Cliente: apagar as entidades que não estão na lista, esconder entidades que deveriam se mover e passam muito tempo sem atualização.
No gráfico
Picos aleatórios · Entidades que só existem no cliente
Onde olhar
Comparar a “lista do que está visível agora” enviada pelo servidor com a lista de entidades do cliente, contar as que só existem no cliente e cruzar pelo ID de entidade os logs de envio e recebimento das mensagens de despawn
Confirma se
O servidor enviou a mensagem de despawn da entidade fantasma, mas não há registro de recebimento no cliente, ou o despawn chegou antes do spawn e a ordem se inverteu
Descarta se
A entidade também continua na lista de visíveis do servidor: falha na limpeza de entidades no servidor. Logo depois de surgir uma nova entidade com o mesmo ID: aponta para “Confusão por reutilização de ID de entidade”
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo