Solução para MultiBatt - The Outer Space Battle Game
Você pode obter o enunciado do problema aqui
Arquitetura Geral
Nesta seção, procuramos dar uma visão geral sobre o sistema, apresentando diagramas de alto nível, e textos explicativos para melhor entendimento. |
A arquitetura desenvolvida por nós baseia-se em algumas camadas:
|
Conexão
Como vemos no diagrama, a conexão ocorre da seguinte maneira:
|
Cliente
A aplicação cliente, usada pelo usuário para jogar o jogo, tem uma estrutura simples:
|
Servidor Master
|
Tempo de Resposta
Comprometimento do jogo devido à latência da rede
MultiBatt foi projetado para funcionar sobre redes de baixa latência.
Por latência, se entende o tempo que um pacote leva para atravessar a rede
(atingir o destino e voltar). Assim, devido ao mecanismo síncrono de
atualização de tela, o jogo fica vulnerável à travamentos periódicos. O tempo total (T) é dado pela soma dos tempos acima, ou seja, T = t[e] + t[s] + t[r]. Experimentalmente, o olho humano capta 30 quadros a cada segundo, ou seja, uma atualização de tela a cada 33,3 milissegundos. Assim, chegamos a um valor inicial para t[su], que seria da ordem de 30 milissegundos. Portanto uma rede que tenha latência próxima ou maior do que esse valor calculado impede um funcionamento correto do jogo. |