Falsos positivos da validação concentrados em uma operadora Anti-cheat / movement validation false positives on bad ISPs
ID da causa pt-isp-validation · Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Infraestrutura de rede (Equipe de infraestrutura)
Quem usa conexão com jitter alto tem os inputs chegando agrupados e cai com frequência nas checagens de velocidade e cooldown do servidor.
Por quê O jitter de uma operadora ou região aumenta à noite → Efeito O servidor considera inputs normais que chegaram juntos como excesso de velocidade ou violação de cooldown → Na tela Só os assinantes dessa operadora têm rubber banding, skills rejeitadas e, nos casos graves, desconexão porque o servidor os expulsa
Horário de pico à noite, Em movimento ou ao trocar de mapa
Responsável
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Infraestrutura de rede (Equipe de infraestrutura)
O que fazer (Equipe de desenvolvimento)
Checar com tolerância acumulada ao longo de alguns segundos, afrouxar o critério considerando a qualidade da conexão (ping, jitter), ter um estágio de aviso antes do encerramento forçado, usar um buffer de input por jogador para distribuir por igual, a cada tick, os inputs que chegaram juntos e reduzir os próprios falsos positivos.
O que fazer (Equipe de infraestrutura)
Verificar por faixa de horário a distribuição de perda e jitter por operadora e compartilhar com a equipe de desenvolvimento, verificar a rota no trecho dessa operadora (mtr nos dois sentidos) e, se preciso, mudar a rota ou acionar a operadora.
No gráfico
Alto só em certos horários · Rejeições na validação e encerramentos forçados por operadora (ASN), jitter por operadora
Onde olhar
Anexar a operadora (ASN) do IP de conexão e o horário aos logs de rejeição, correção e encerramento forçado do servidor e contar por operadora e faixa de horário. A equipe de infraestrutura roda, no mesmo horário, mtr nos dois sentidos em direção a essa operadora para ver jitter e perda
Confirma se
Rejeições e encerramentos forçados se concentram em uma operadora e aumentam à noite, o jitter dessa operadora sobe no mesmo horário, e o deslocamento somado em janelas de alguns segundos fica dentro da regra
Descarta se
Repete só em certas contas, seja qual for a operadora: possível cheat real. Aumenta em todas as operadoras juntas: causa no servidor, com o tick atrasado aplicando os comandos agrupados (estouro do tick)
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo
Fontes
Source SDK 2013: player.cppValve Comentário de desenvolvimento: o orçamento de comandos acumulado a cada tick barra o excesso de velocidade, mas limites mais rígidos geram engasgos até para jogadores normais