Eu li o seguinte: Como projetar um sistema de repetição Mas isso realmente não responde à minha pergunta.
Meu jogo é construído com o cliente "view" do jogo como um programa separado do servidor "model" e "controller". (um pouco como um mmo ou qualquer jogo multiplayer criado dessa maneira). O lado do servidor é sempre a "verdade" do jogo; ele aceita apenas solicitações de ação como entrada dos clientes e eventos de saída e mensagens "estado atual".
O modelo e as regras do jogo são totalmente determinísticos com um ciclo fixo de atualização "tick", para que no lado do servidor eu possa registrar os eventos enviados para as visualizações do cliente e as solicitações de ação. Ambos estão associados a um número de ciclo específico.
A questão é: nesse caso, para configurar um sistema de reprodução, devo usar a entrada ou solicitações de ação do usuário (conforme sugerido lá) ou os eventos?
Parece-me que ambos dariam exatamente a mesma saída. As únicas diferenças que posso ver são:
- Eventos fornece a saída real, enquanto as solicitações de ação precisam ser processadas para fornecer eventos.
- As solicitações de ação podem ter muito menos dados a serem registrados.
Há outras coisas a considerar?