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

Guia do Lag em Jogos › L9 Processo do jogo no servidor

Combate concentrado em um só alvo (world boss) Hot entity / combat event fan-out

ID da causa sp-hot-entity · Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento)

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

Quando centenas de jogadores atacam o mesmo boss ao mesmo tempo, o cálculo daquele boss se concentra num só ponto, e as informações de cada golpe vão para todos que estão vendo.

Por quê Centenas de jogadores usam skills, buffs e debuffs sem parar num único boss → Efeito Os cálculos de vida, lista de aggro e debuffs do boss se concentram num só ponto, e cada golpe envia pacotes de números de dano e efeitos para todos que estão vendo → Na tela As skills entram atrasadas, os números de dano aparecem todos de uma vez, câmera lenta só em volta do boss

Sintomas
Input lag, Avanço rápido, Câmera lenta
Fatores
Paralisação, Latência
Quem é afetado
Local ou canal específico
Quando
Quando junta muita gente
Responsável
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento)
O que fazer (Equipe de desenvolvimento)
Agrupar ou omitir os números de dano e efeitos dos outros jogadores, limitar o número de debuffs num mesmo alvo, dividir o processamento dos golpes entre vários ticks.
Números de referência
800 jogadores batendo 2 vezes por segundo dão 1.600 golpes por segundo. Avisar os 800 que estão vendo dá 1,28 milhão de mensagens por segundo.
No gráfico
Sobe com a carga · Tempo de tick do servidor, mensagens enviadas
Onde olhar
Tempo de tick e pacotes enviados no horário da luta contra o boss, junto com o número de jogadores em volta do boss e, se possível, eventos por segundo (golpes, buffs, debuffs) por alvo
Confirma se
Quando aumenta o número de jogadores em volta do boss, o tempo de tick e o volume enviado sobem de forma íngreme, e o boss tem dezenas de vezes mais eventos por segundo que os outros alvos
Descarta se
Fica igualmente lento só por juntar gente num lugar, sem relação com o boss: cálculo de visibilidade ou explosão de broadcast
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo

Fontes

  1. HED-GP Technical Retrospective: What a HED-ache CCP Games
    Até um único ataque precisa ser avisado a todos os clientes que estão vendo, o que gera um custo O(n²) (n jogadores avisando n jogadores); ataques de drones, com muitas mensagens, fazem esse custo crescer ainda mais rápido

Veja também

Mesma camada: L9 Processo do jogo no servidor

Mesmo sintoma (Input lag) em outras camadas

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