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

Guia do Lag em Jogos › Problemas que só afetam alguns

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)

Abrir o card interativo, com figuras e simulações →

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á

Sintomas
Invisível / entidade fantasma
Fatores
Perda de pacotes
Quem é afetado
Só um dos clientes no mesmo PC, Só eu
Quando
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

Fontes

  1. Actor Relevancy in Unreal Engine Epic Games
    Atores dinâmicos que deixam de ser relevantes são apagados no cliente
  2. Object visibility (Netcode for GameObjects 2.5) Unity
    Ao esconder uma entidade, o cliente faz despawn e a apaga

Veja também

Mesma camada: Problemas que só afetam alguns

Mesmo sintoma (Invisível / entidade fantasma) em outras camadas

Ver o card interativo, com figuras e simulações