EDIT (2): Puisqu'il y a deux réponses et que je n'en ai accepté aucune, je me suis dit que je motiverais ce que je considérerais comme une réponse ici: Soit quelque chose suggérant fortement qu'une telle approche serait impossible / pas du tout utile ou , alternativement, une référence à une recherche (domaine) ou à des exemples d'un tel système au moins quelque peu général au-delà des jeux d'aventure texte / fiction interactive.
Bien que je ne prétende pas avoir fait une enquête plus approfondie, j'ai remarqué que tous les moteurs / cadres de jeu que j'ai examinés semblaient être quelque chose comme un moteur graphique glorifié dans le sens où ils parlent de formes / entités en deux ou un espace euclidien tridimensionnel avec, éventuellement, une certaine forme de modèle de concurrence "caché" permettant de spécifier une certaine forme de logique attachée à ces "entités".
Les «règles» et la narration du jeu sont ensuite écrites de manière quelque peu ad hoc (en ce qui concerne le moteur) au-dessus de ces primitives.
Évidemment, la description ci-dessus est plutôt simplifiée (prenez des moteurs plus spécialisés tels que le moteur infini qui inclut une certaine forme de système de quête / narration), et je me rends compte que ce modèle peut très bien fonctionner (beaucoup de gens semblent l'avoir utilisé) .
Je me demande, cependant, quelles tentatives ont été faites pour créer des moteurs / cadres qui prennent comme notions principales une description (de haut niveau) des règles de jeu / logique ou narrative (ou au moins un aspect non spatial du jeu) base?
EDIT (4): Cela ne signifie pas que le jeu n'inclurait aucun aspect spatial / graphique, juste que plutôt que d'avoir des entités spatiales auxquelles vous associez une logique, vous avez une notion d'intrigue (ou de gameplay ou de "règles du jeu de plateau" ) dont vous décrivez ensuite une interface graphique / réalisation.
Je serais particulièrement intéressé par toutes les approches déclaratives qui tentent de capturer une sorte de sémantique (semi-) formelle d'une classe de jeux assez importante, d'une manière utile pour la mise en œuvre réelle (par opposition à, par exemple, un cadre exclusivement pour analyse qualitative des jeux / narration).
Ce que j'ai vu, ce sont des recherches sur la modélisation / analyse de récits avec un modèle basé sur Petri Net et quelques approches intéressantes en langages pour écrire de la fiction interactive .
EDIT (1): J'ai pensé ajouter un exemple de jouet pour illustrer.
Imaginons que nous voulions créer des aventures de style pointer-cliquer (pensez aux jeux SCUMM). On pourrait les analyser comme reposant sur une notion de progression plus ou moins linéaire et discrète d'une situation de départ à une fin.
En se concentrant sur la notion de progression discrète et en permettant une certaine non-linéarité, on pourrait choisir la théorie des DAG (bornés) comme théorie de base. La spécification d'un jeu de ce type, dans sa forme la plus abstraite (par rapport à cette théorie) correspond donc à l'ajout d'axiomes supplémentaires à cette théorie (soit pour que la théorie spécifie un graphe spécifique soit simplement pour capturer tout ce que l'on pense nécessaire pour en capturer un) "terrain").
Transformer cela en un jeu réel se transforme maintenant en problème de conception HCI / Interface d'incorporer cette théorie dans quelque chose de jouable (c'est-à-dire construire un modèle de la théorie / trouver un morphisme homo (iso?) De graphiques à partir de la collection d'états d'interface utilisateur avec des transitions dans le DAG "spécifiant le jeu").
Dans le scénario hypothétique ci-dessus, je peux voir au moins trois choses qu'il devrait être possible de capturer dans les bibliothèques. Premièrement, il faut des outils pour transformer / raisonner sur les DAG ou les graphiques en général. Deuxièmement, une bibliothèque d'interface utilisateur suffisamment intelligente pour aider à vérifier que notre représentation de notre graphique en tant que jeu jouable modélise réellement le graphique (ainsi, par exemple, au moins partiellement / de manière informelle, prouvant que le jeu n'a pas d'états bloqués, en raison de la condition de délimitation) . Enfin, une collection de bibliothèques de niveau supérieur pour spécifier le graphique pourrait être donnée; comme une bibliothèque pour exprimer des personnages et leur interaction et générer des (parties de) graphiques en termes de tels.
Pourquoi garder la théorie "moyenne" des DAG, plutôt que de simplement avoir l'implémentation de bas niveau avec quelques bibliothèques d'aide en haut? La réponse est toutes les raisons habituelles d'une sémantique formelle. Étant donné que nous avons décidé d'une fondation formelle, nous pouvons vérifier certaines propriétés du jeu permettant de raisonner sur des choses comme les optimisations dans la bibliothèque d'interface de bas niveau (tant qu'elle modélise le DAG, nous pouvons faire ce que nous voulons), sans avoir à s'inquiéter de l'incomparabilité avec la description de haut niveau (de personnages / dialogue, etc.), car ces descriptions doivent elles-mêmes décrire de telles structures.
Je n'implique nullement que l'approche ci-dessus en particulier fonctionnerait, et l'idée n'est pas qu'un DAG doit être ce qui est réellement gardé en mémoire (il forme plutôt quelque chose qui s'apparente à un formalisme informatique tel qu'un calcul lambda), mais j'espère que cela illustre le type d'approche qui m'intéresse.
En bref, je suppose qu'un titre alternatif à cette question aurait pu être: Comment Dijkstra aurait-il écrit des jeux informatiques?