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

Анатомия игровых лагов › Проблемы только у части игроков

Потеря уведомления об исчезновении (фантомные объекты) Missed despawn (ghost entity)

ID причины pt-ghost · Основной ответственный Команда разработки · Разработка сервера · Совместно Команда разработки · Разработка клиента

Открыть карточку в основной версии с иллюстрациями и экспериментами →

И наоборот, если пропущено уведомление «исчез», уже убитые или ушедшие NPC и игроки остаются только на экране этого игрока.

Почему Уведомления о смерти, уходе или выходе из зоны видимости теряются или приходят не по порядку → Следствие Клиент считает, что объект всё ещё на месте → На экране Монстр не реагирует на удары, на месте стоит игрок, который уже вышел из игры

Симптомы
Невидимки / фантомы
Факторы
Потери
У кого
Один из клиентов на одном ПК, Только у меня
Когда
Изредка, случайно, При наплыве игроков
Ответственные
Основной ответственный Команда разработки · Разработка сервера · Совместно Команда разработки · Разработка клиента
Команда разработки: задачи
Сервер: периодически отправлять «список видимых сейчас». Клиент: удалять объекты, которых нет в списке, скрывать объекты, которые должны двигаться, но долго не обновлялись.
На графике
Случайные всплески · число объектов, оставшихся только на клиенте
Где смотреть
Сравнить «список видимых сейчас» от сервера со списком объектов на клиенте, посчитать объекты, которые есть только на клиенте, и сопоставить по ID объекта логи отправки и получения уведомлений об исчезновении
Подтверждает
Сервер отправил уведомление об исчезновении фантомного объекта, а записи о получении на клиенте нет, или исчезновение пришло раньше появления, и порядок перепутан
Опровергает
Если объект остался и в списке видимых на сервере, сервер пропустил его удаление. Если это случилось сразу после появления нового объекта с тем же ID, это путаница из-за повторного использования ID объектов
Чем проверить
Нужны логи и метрики игрового сервера или клиента

Источники

  1. Actor Relevancy in Unreal Engine Epic Games
    Динамический актор, утративший релевантность, удаляется на клиенте
  2. Object visibility (Netcode for GameObjects 2.5) Unity
    Если объект скрыт, клиент выполняет его despawn и удаление

Смотрите также

Тот же слой: Проблемы только у части игроков

Причины с тем же симптомом (Невидимки / фантомы) на других слоях

Карточка в основной версии с иллюстрациями и экспериментами