Como é que os jogos online multiplayer conseguem ser "em tempo real"?
A resposta é que eles são arent.
As latências da Internet nos EUA são de 60 a 200 ms, dependendo se você serve no mesmo lado do país que você ou não.
O que o jogo multiplayer stypically faz é ter uma versão "autoritária" do jogo rodando em um servidor sem cabeça, Autoritativa significa que é a que conta. Headless significa sem vídeo.
O servidor mantém o verdadeiro estado do jogo e envia atualizações com carimbo de data e hora para todos os clientes. Quando os clientes usam os seus controladores, eles enviam pacotes com o tempo carimbado de volta para o servidor.
Os clientes mostram aos seus utilizadores um "melhor palpite" de como é o mundo baseado na sua última actualização do servidor. Nós chamamos este tipo de aproximação de "dead reckoning". Se você olhasse para dois clientes "dead reckoning" lado a lado você veria diferenças marcantes no que eles pensam que o estado do mundo é.
Quando uma nova atualização chega, qualquer palpite errado é ajustado.
As regras do jogo são propositalmente desenhadas com "slop" nelas para cobrir quaisquer discrepâncias entre os jogadores. Existem muitos outros truques que usamos também para tornar essas inconsistências invisíveis, mas isso seria uma palestra muito mais longa.
Artigos semelhantes
- O que são o servidor e as ferramentas para jogos em tempo real e multiplayer para Android e iOS?
- Como construir um jogo multiplayer em tempo real para celular
- Quão difícil é construir um jogo multiplayer performante em tempo real em dispositivos móveis neste momento?
- Os jogos "jogue de graça e ganhe dinheiro de verdade" são legais? Eles estão seguros? Onde é que os jogos conseguem o dinheiro que eles dão?