EDITAR (2): Dado que hay dos respuestas y no he aceptado ninguna de ellas, pensé que motivaría lo que consideraría una respuesta aquí: o algo que sugiera fuertemente que tal enfoque sería imposible / no es útil en absoluto o , alternativamente, una referencia a una investigación (campo) o ejemplos de un sistema al menos algo general más allá de los juegos de aventura de texto / ficción interactiva.
Si bien no voy a fingir que he realizado una investigación más profunda, he notado que todos los motores / marcos de juego que he investigado parecen ser algo así como un motor gráfico glorificado en el sentido de que hablan de formas / entidades en dos o espacio euclidiano tridimensional con, posiblemente, alguna forma de modelo de concurrencia "metido" que permite especificar alguna forma de lógica unida a estas "entidades".
Las "reglas" y la narrativa del juego se escriben de manera algo ad-hoc (con respecto al motor) sobre estas primitivas.
Obviamente, la descripción anterior está bastante simplificada (tome motores más especializados, como el motor de infinito que incluye algún tipo de sistema de búsqueda / narrativa), y me doy cuenta de que este modelo puede funcionar bastante bien (parece que muchas personas lo han usado) .
Sin embargo, me pregunto qué intentos se han hecho para crear motores / marcos que tengan nociones como la descripción (de alto nivel) de las reglas / lógica o narrativa del juego (o al menos un aspecto no espacial del juego) como su principal ¿base?
EDITAR (4): Esto no significa que el juego no incluiría ningún aspecto espacial / gráfico, solo que, en lugar de tener entidades espaciales a las que asocia la lógica, tiene una noción de trama (o juego o "reglas de juego de mesa" ) que luego describe una interfaz gráfica para / realización de.
Especialmente me interesaría cualquier enfoque declarativo que intente capturar algún tipo de semántica (semi) formal de una clase de juegos razonablemente grande, de una manera útil para la implementación real (en oposición a, por ejemplo, un marco exclusivamente para análisis cualitativo de juegos / narrativa).
Lo que he visto son algunas investigaciones sobre modelado / análisis narrativo con un modelo basado en la red de Petri y algunos enfoques interesantes en idiomas para escribir ficción interactiva .
EDITAR (1): pensé que agregaría un ejemplo de juguete para ilustrar.
Digamos que estábamos interesados en crear aventuras de estilo de apuntar y hacer clic (piense en los juegos SCUMM). Uno podría analizar estos como basados en una noción de progresión más o menos lineal y discreta de una situación inicial a una final.
Centrándose en la noción de progresión discreta y permitiendo cierta no linealidad, uno podría elegir la teoría de los DAG (acotados) como teoría básica. Especificar un juego de este tipo, en su forma más abstracta (en relación con esta teoría) corresponde a la adición de axiomas adicionales a esta teoría (ya sea para que la teoría especifique un gráfico específico o simplemente lo suficiente como para capturar lo que uno piense que se requiere para capturar los "trama").
Convertir esto en un juego real ahora se convierte en el problema de diseño de interfaz / HCI de incorporar esta teoría en algo jugable (es decir, construir un modelo de la teoría / encontrar un homo (iso?) Morfismo de gráficos de la colección de estados de interfaz de usuario con transiciones en el DAG "especificando el juego").
En el escenario hipotético anterior, puedo ver al menos tres cosas que deberían ser posibles de capturar en las bibliotecas. En primer lugar, se necesitan herramientas para transformar / razonar sobre DAG o gráficos en general. En segundo lugar, una biblioteca de interfaz de usuario lo suficientemente inteligente como para ayudar a verificar que nuestra representación de nuestro gráfico como un juego jugable en realidad modela el gráfico (por ejemplo, al menos parcial / informalmente, demostrando que el juego no tiene estados atascados, debido a la condición de límite) . Finalmente, se podría proporcionar una colección de bibliotecas de nivel superior para especificar el gráfico; como una biblioteca para expresar caracteres y su interacción y generar (partes de) gráficos en términos de tales.
¿Por qué mantener la teoría "intermedia" de los DAG, en lugar de simplemente tener la implementación de bajo nivel con algunas bibliotecas de ayuda en la parte superior? La respuesta es todas las razones habituales para una semántica formal. Dado que hemos decidido sobre una base formal, podemos verificar ciertas propiedades del juego que permiten razonar sobre cosas como optimizaciones en la biblioteca de interfaz de bajo nivel (siempre que modele el DAG podemos hacer lo que queramos), sin tener que Preocuparse por la incomparabilidad con la descripción de alto nivel (de personajes / diálogo, etc.), ya que esas descripciones deben describir tales estructuras.
No estoy implicando de ninguna manera que el enfoque anterior en específico funcione, y la idea no es que un DAG tenga que ser lo que realmente se guarda en la memoria (sino que forma algo similar a un formalismo computacional como un cálculo lambda), pero espero que esto ilustre el tipo de enfoque que me da curiosidad.
En resumen, supongo que un título alternativo a esta pregunta podría haber sido: ¿Cómo habría escrito Dijkstra juegos de computadora?