EDIT (2): Como existem duas respostas e eu não as aceito, imaginei que motivaria o que consideraria uma resposta aqui: algo sugerindo fortemente qualquer abordagem desse tipo seria impossível / nem seria útil ou , alternativamente, uma referência a uma pesquisa (campo) ou exemplos de um sistema pelo menos um tanto geral além dos jogos de aventura em texto / ficção interativa.
Embora eu não pretenda fazer uma investigação mais profunda, notei que todos os mecanismos / estruturas de jogos em que olhei pareciam algo como um mecanismo de gráficos glorificado, no sentido de que eles falam de formas / entidades em dois ou espaço euclidiano tridimensional com, possivelmente, alguma forma de modelo de concorrência "dobrado", permitindo especificar uma forma de lógica anexada a essas "entidades".
As "regras" e a narrativa do jogo são então escritas de uma maneira um pouco ad-hoc (com relação ao mecanismo) sobre essas primitivas.
Obviamente, a descrição acima é bastante simplificada (use mecanismos mais especializados, como o mecanismo infinito, que inclui alguma forma de sistema de busca / narrativa), e eu percebo que esse modelo pode funcionar muito bem (muitas pessoas parecem tê-lo usado) .
Estou me perguntando, no entanto, que tentativas foram feitas para criar mecanismos / estruturas que usem noções como descrição (de alto nível) das regras / lógica ou narrativa do jogo (ou pelo menos um aspecto não espacial do jogo) como principal base?
EDIT (4): Isso não significa que o jogo não inclua nenhum aspecto espacial / gráfico, apenas que, em vez de ter entidades espaciais às quais você associa a lógica, você tem uma noção de enredo (ou jogabilidade ou "regras do jogo de tabuleiro" ) para o qual você descreve uma interface gráfica para / realização de.
Especialmente, eu estaria interessado em qualquer abordagem declarativa que tente capturar algum tipo de semântica (semi-) formal de uma classe razoavelmente grande de jogos, de uma maneira útil para a implementação real (em oposição a, por exemplo, uma estrutura exclusivamente para análise qualitativa de jogos / narrativa).
O que eu vi são algumas investigações sobre modelagem / análise de narrativa com um modelo baseado em rede de Petri e algumas abordagens interessantes em idiomas para escrever ficção interativa .
EDIT (1): Pensei em adicionar um exemplo de brinquedo para ilustrar.
Digamos que estivéssemos interessados em criar aventuras no estilo aponte e clique (pense nos jogos SCUMM). Pode-se analisá-las como sendo baseadas em uma noção de progressão mais ou menos linear e discreta de uma situação inicial para um fim.
Concentrando-se na noção de progressão discreta, e permitindo alguma não-linearidade, pode-se escolher a teoria da (limitada) DAG s como aqueles teoria básica. A especificação de um jogo desse tipo, na sua forma mais abstrata (relativa a essa teoria), corresponde a adicionar axiomas adicionais a essa teoria (para que a teoria especifique um gráfico específico ou simplesmente o suficiente para capturar o que achar necessário para capturá-los) "enredo").
Transformar isso em um jogo real agora se transforma no problema de design do HCI / Interface de incorporar essa teoria em algo jogável (isto é, construir um modelo da teoria / encontrar um morfismo homo (iso?) De gráficos da coleção de estados da interface do usuário com transições no DAG "especificando o jogo").
No cenário hipotético acima, posso ver pelo menos três coisas que devem ser possíveis de capturar nas bibliotecas. Primeiro, é necessário ter ferramentas para transformar / raciocinar sobre DAGs ou gráficos em geral. Em segundo lugar, uma biblioteca de interface do usuário inteligente o suficiente para ajudar a verificar se nossa representação de nosso gráfico como um jogo jogável realmente modela o gráfico (assim, por exemplo, pelo menos parcialmente / informalmente, provando que o jogo não possui estados de bloqueio, devido à condição de limite) . Finalmente, uma coleção de bibliotecas de nível superior para especificar o gráfico pode ser fornecida; como uma biblioteca para expressar caracteres e sua interação e gerar (partes de) gráficos em termos disso.
Por que manter a teoria "intermediária" dos DAGs, em vez de apenas ter a implementação de baixo nível com algumas bibliotecas de ajuda no topo? A resposta são todas as razões usuais para uma semântica formal. Dado que decidimos sobre uma base formal, podemos verificar certas propriedades do jogo, permitindo pensar em coisas como otimizações na biblioteca de interfaces de baixo nível (desde que modele o DAG, podemos fazer o que queremos), sem precisar se preocupe com a incomparabilidade com a descrição de alto nível (de caracteres / diálogo etc.), pois essas descrições devem descrever essas estruturas.
Não estou de forma alguma implicando que a abordagem acima em específico funcionaria, e a ideia não é que um DAG deva ser o que é realmente mantido na memória (em vez disso, forma algo semelhante a um formalismo computacional como um cálculo lambda), mas espero que isso ilustre o tipo de abordagem que me interessa.
Em suma, acho que poderia ter sido um título alternativo para essa pergunta: como Dijkstra escreveria jogos de computador?