Teste automatizado de um jogo

Questão

Como você iria adicionar testes automatizados em um jogo?

Eu acredito que você pode testar várias das funcionalidades do motor de jogo (rede, criação de objetos, gerenciamento de memória, etc), mas é possível automatizar o teste do próprio jogo?

Não estou falando de elementos de jogabilidade (como Protoss venceria Zerg no mapa X), mas estou falando sobre a interação entre o jogo e o motor.

Introdução

No desenvolvimento de jogos, o mecanismo é apenas uma plataforma para o jogo. Você poderia pensar no mecanismo do jogo como um sistema operacional e no jogo como um software que o sistema operacional executaria. O jogo pode ser uma coleção de scripts ou uma sub-rotina real dentro do mecanismo do jogo.

Possíveis respostas

Minha ideia é esta:

Você precisaria de um mecanismo que fosse determinístico. Isso significa que, dado um conjunto de entrada, a saída seria exatamente a mesma. Isso incluiria o gerador aleatório sendo propagado com a mesma entrada.

Em seguida, crie um nível de bone nu que contenha alguns objetos com os quais o avatar / usuário possa interagir. Comece pequeno e adicione objetos ao nível à medida que mais interações são desenvolvidas.

Crie um script que siga um caminho (testa pathfinding) e interaja com os diferentes objetos (armazene o resultado ou o comportamento esperado). Esse script seria seu teste automatizado. Depois de um certo tempo (digamos, uma semana), execute o script junto com os testes de unidade do seu mecanismo.

questionAnswers(10)

yourAnswerToTheQuestion