Estou trabalhando em um jogo para celular Unity, muito parecido com uma versão multiplayer de Temple Run . Estou vendo uma latência de rede flutuante (geralmente de 200 a 500 ms) por causa da plataforma móvel.
Os personagens dos dois jogadores são mostrados como correndo pelo mesmo caminho e devem executar ações simples (pular, deslizar, ligar, etc.) para ultrapassar obstáculos.
Quando uma mensagem chega atrasada, o jogo assume que o jogador remoto passou por um obstáculo. Isso geralmente funciona bem, mas no caso de um jogador ser morto por um obstáculo, quero que o jogador remoto pareça morrer no mesmo obstáculo / posição que o jogador local. Devido à latência, o jogador remoto parece ter cruzado o obstáculo antes mesmo da mensagem anunciando sua morte.
Como posso manter os players sincronizados?
Tentei mover o player remoto de volta para a posição de morte dos jogadores locais imediatamente quando a mensagem de morte chega, parece estranha visualmente e pode causar outros problemas de sincronização.