1 pontos por GN⁺ 2024-01-14 | 1 comentários | Compartilhar no WhatsApp

O problema de 10 anos do Steam da Valve: será que todo mundo é rápido demais para a Valve?

  • A Valve às vezes parece não responder ao feedback da comunidade e aos relatos de bugs.
  • Uma história sobre um bug com 10 anos de existência.

tl;dr

  • Algumas soluções populares para corrigir o problema No user logon no Counter-Strike, presente há mais de 10 anos, na verdade não resolvem a causa raiz.
  • Se você encontrou este texto pelo Google, não tente as seguintes soluções:
    • reinstalar o jogo
    • verificar os arquivos do jogo
    • reiniciar o Steam
    • reiniciar o computador
    • desativar o Wi‑Fi

Introdução

  • Counter-Strike é um jogo famoso desenvolvido pela Valve.
  • Recentemente, Counter-Strike 2 (CS2) foi lançado para substituir Counter-Strike: Global Offensive (CS:GO).
  • O CS2 contém muitos bugs, o que prejudica a experiência de jogo.
  • A Valve não incluiu o CS2 no programa de bug bounty da HackerOne, então não paga recompensas por relatos de bugs relacionados ao CS2.

No user logon

  • Bugs relatados pela comunidade ao longo de anos continuam sem correção e também existem no CS2.
  • O erro No user logon ocorre aleatoriamente durante a partida.
  • Esse problema foi relatado diversas vezes em vários fóruns e no fórum oficial de suporte da Valve.
  • As soluções sugeridas não corrigem o problema de fato.

Esportal specific

  • A Esportal também enfrentou esse problema por vários anos e, na prática, só conseguiu reduzir a frequência, sem realmente resolvê-lo.
  • No CS2, a princípio pareceu que o problema havia sido corrigido, mas na primeira semana de janeiro de 2024 os relatos voltaram a aumentar.

Os sintomas

  • O erro No user logon ocorre 2 a 3 minutos depois de o jogador se conectar à partida.
  • Pode estar relacionado ao fato de as skins só aparecerem alguns minutos após o início do jogo.

Validação da hipótese

  • É muito provável que seja um problema relacionado à autenticação do Steam.
  • Antes de 3 de janeiro, o tempo até STEAM USERID validated ser concluído com sucesso era de 2 a 3 segundos; depois disso, aumentou para cerca de 1 minuto e 20 segundos.

NETWORK_DISCONNECT_STEAM_LOGON

  • Parece ser um bug relacionado à autenticação do Steam.
  • Foi encontrado o log STEAMAUTH: Client Bob received failure code 8.

Validação do Steam3

  • Os servidores Steam3 são responsáveis pela autenticação dos usuários.
  • O servidor do jogo solicita aos servidores Steam3 que verifiquem a validade do Steam ID.
  • Enquanto os servidores Steam3 fazem essa validação, o jogador pode continuar jogando, mas as skins não são atribuídas.

Tornando isso confiável

  • É necessário um processo para verificar se CS2.exe é confiável.
  • Steam.exe sabe qual conta está conectada no momento e verifica se ela corresponde ao Steam ID enviado por CS2.exe.

NETWORK_DISCONNECT_LOOPSHUTDOWN

  • Existe outro motivo de desconexão chamado NETWORK_DISCONNECT_LOOPSHUTDOWN.
  • Isso significa que o próprio jogo tenta uma reconexão automática.

Loops no motor Source

  • O motor Source tem loops que são executados até que um objetivo específico seja alcançado.
  • CS2.exe executa vários loops e, por fim, o loop game é executado.

A desconexão

  • Quando o loop é encerrado, a conexão pode ser desconectada por causa de NETWORK_DISCONNECT_LOOPSHUTDOWN.

Procedimento de inicialização do CS2

  • Quando CS2.exe é iniciado, ele executa vários loops, e o loop levelload inicia a validação do Steam ID antes de fazer a transição para o loop game.

Opinião do GN⁺:

  1. Este texto oferece uma análise aprofundada do bug No user logon, que continua sem solução há muito tempo na série Counter-Strike da Valve. Isso ajuda a entender as dificuldades do desenvolvimento e da manutenção de jogos.
  2. O fato de a Valve não responder adequadamente ao feedback da comunidade e aos relatos de bugs destaca a importância da comunicação entre desenvolvedoras de jogos e usuários.
  3. Este texto mostra bem a complexidade da engenharia de software e os desafios de rastrear e corrigir bugs. Isso reforça a necessidade de uma abordagem sistemática para resolver bugs.

1 comentários

 
GN⁺ 2024-01-14
Comentários do Hacker News
  • O primeiro comentário explica o sistema de ticket de sessão da Steam, mencionando que o cliente do jogo solicita um ticket de sessão aos servidores da Steam e o fornece ao servidor do jogo para comprovar o Steam ID. O servidor do jogo precisa validar esse ticket pela Web API da Steam, e aponta que o cliente do CS2 aparentemente não consegue lidar com a demora ao obter o ticket de sessão.

    "Explicação do sistema de ticket de sessão da Steam e apontamento do problema de tratamento de atraso no cliente do CS2"

  • O segundo comentário aponta que a conclusão do artigo não está clara e menciona os problemas na forma como o Counter-Strike é iniciado, além da possibilidade de jogadores do mundo todo enfrentarem problemas por causa de trabalhos de manutenção em Washington. Também explica que, como a verificação do Steam ID é a última etapa antes do início do loop do jogo, um servidor lento durante a manutenção pode impedir o jogo de começar.

    "Análise do impacto da forma de inicialização do Counter-Strike e dos trabalhos de manutenção na ocorrência do problema"

  • O terceiro comentário aponta o bug de que concluir a autenticação antes de iniciar um jogo multiplayer não é algo obrigatório.

    "Apontamento da falta de obrigatoriedade de concluir a autenticação antes do início de um jogo multiplayer"

  • O quarto comentário se pergunta se seria possível investigar da mesma forma a causa de travamentos inesperados do cliente do jogo e menciona um estudo sobre a redução do tempo de carregamento de GTA V.

    "Menção à investigação das causas de travamentos do cliente do jogo e ao estudo sobre a redução do tempo de carregamento de GTA V"

  • O quinto comentário aponta que o estilo de escrita do artigo é exagerado demais e sugere ir mais rapidamente ao ponto principal.

    "Ênfase no exagero do estilo do artigo e na importância de transmitir rapidamente o ponto principal"

  • O sexto comentário sugere adicionar no início do artigo um resumo simples da solução do problema.

    "Sugestão de adicionar um resumo simples para a solução do problema"

  • O sétimo comentário pergunta se o levelloadloop é executado apenas quando o jogo começa ou também ao entrar no servidor e carregar o mapa.

    "Pergunta sobre o momento em que levelloadloop é executado"

  • O oitavo comentário deseja melhorias de desempenho para o app da Steam no macOS.

    "Pedido de melhoria de desempenho do app da Steam no macOS"

  • O nono comentário aponta problemas de segurança da Valve e menciona o fato de que CS:GO foi excluído do escopo de novos relatórios.

    "Menção aos problemas de segurança da Valve e à exclusão de CS:GO do escopo"

  • O último comentário compartilha a experiência de ter criado no passado uma ferramenta que mostrava a lista de servidores e a pontuação dos jogadores ativos, levantando a possibilidade de que bugs antigos ainda possam existir.

    "Menção à experiência de desenvolvimento de uma ferramenta de exibição de lista de servidores e à possibilidade de persistência de bugs antigos"