EDIT (2): Dal momento che ci sono due risposte e non ne ho accettate nessuna, ho pensato di motivare ciò che considererei una risposta qui: O qualcosa che suggerisce fortemente che un tale approccio sarebbe impossibile / per niente utile o , in alternativa, un riferimento a una ricerca (campo) o esempi di un sistema almeno in qualche modo generale al di là dei giochi di avventura testuale / narrativa interattiva.
Anche se non pretendo di aver fatto un'indagine più approfondita, ho notato che tutti i motori / framework di gioco che ho esaminato sembravano qualcosa di simile a un motore grafico glorificato, nel senso che parlano di forme / entità in due o spazio euclideo tridimensionale con, possibilmente, una qualche forma di modello di concorrenza "nascosto" che consente di specificare una qualche forma di logica collegata a queste "entità".
Le "regole" e la narrativa del gioco vengono quindi scritte in modo un po 'ad hoc (rispetto al motore) in cima a queste primitive.
Ovviamente la descrizione sopra è piuttosto semplificata (prendi motori più specializzati come il motore a infinito che include una qualche forma di sistema di ricerca / narrativa), e mi rendo conto che questo modello può funzionare abbastanza bene (molte persone sembrano averlo usato) .
Mi chiedo, tuttavia, quali tentativi sono stati fatti per creare motori / framework che prendono nozioni come la descrizione (di alto livello) delle regole di gioco / logica o narrativa (o almeno un aspetto non spaziale del gioco) come il loro principale base?
EDIT (4): Questo non significa che il gioco non includerebbe alcun aspetto spaziale / grafico, ma solo che anziché avere entità spaziali a cui associ la logica, hai una nozione di trama (o gameplay o "regole del gioco da tavolo" ) di cui descrivi quindi un'interfaccia grafica a / realizzazione di.
In particolare sarei interessato a qualsiasi approccio dichiarativo che tenti di catturare una sorta di semantica (semi) formale di una classe di giochi ragionevolmente ampia, in un modo utile per l'implementazione effettiva (al contrario, ad esempio, di un framework esclusivamente per analisi qualitativa di giochi / narrativa).
Quello che ho visto sono alcune ricerche sulla modellazione / analisi della narrativa con un modello basato su rete di Petri e alcuni approcci interessanti in lingue per la scrittura di narrativa interattiva .
EDIT (1): Ho pensato di aggiungere un esempio giocattolo per illustrare.
Supponiamo che fossimo interessati a creare avventure in stile punta e clicca (pensa ai giochi SCUMM). Si potrebbero analizzare questi come basati su una nozione di progressione più o meno lineare e discreta da una situazione iniziale a una fine.
Concentrandosi sulla nozione di progressione discreta e tenendo conto di una certa non linearità, si potrebbe scegliere la teoria dei DAG (limitati) come una teoria di base. Specificare un gioco di questo tipo, nella sua forma (relativamente a questa teoria) più astratta corrisponde quindi all'aggiunta di ulteriori assiomi a questa teoria (sia in modo che la teoria specifichi un grafico specifico o semplicemente abbastanza per catturare tutto ciò che si pensa sia necessario per catturare quelli "tracciare").
Trasformare questo in un gioco reale ora si trasforma nel problema di progettazione HCI / Interface di incorporare questa teoria in qualcosa di giocabile (ovvero costruire un modello della teoria / trovare un morfismo homo (iso?) Di grafici dalla raccolta di stati dell'interfaccia utente con transizioni nel DAG "specificando il gioco").
Nello scenario ipotetico sopra riportato vedo almeno tre cose che dovrebbero essere possibili da acquisire nelle librerie. Innanzitutto sono necessari strumenti per trasformare / ragionare su DAG o grafici in generale. In secondo luogo una libreria di interfaccia utente abbastanza intelligente da aiutare a verificare che la nostra rappresentazione del nostro grafico come gioco giocabile modella effettivamente il grafico (quindi, ad esempio, almeno parzialmente / informalmente, dimostrando che il gioco non ha stati bloccati, a causa della condizione di limitatezza) . Infine, potrebbe essere fornita una raccolta di librerie di livello superiore per specificare il grafico; come una libreria per esprimere i personaggi e la loro interazione e generare (parti di) grafici in termini di questo.
Perché mantenere la teoria "intermedia" dei DAG, anziché limitarsi all'implementazione di basso livello con alcune librerie di aiuto in cima? La risposta è tutte le solite ragioni per una semantica formale. Dato che abbiamo deciso su una base formale, possiamo verificare alcune proprietà del gioco permettendoci di ragionare su cose come l'ottimizzazione nella libreria di interfaccia di basso livello (fintanto che modella il DAG possiamo fare ciò che vogliamo), senza dover preoccuparsi dell'incomparabilità con la descrizione di alto livello (di personaggi / dialoghi ecc.), poiché tali descrizioni devono esse stesse descrivere tali strutture.
Non intendo in alcun modo che l'approccio di cui sopra in particolare funzionerebbe, e l'idea non è che un DAG debba essere ciò che viene effettivamente tenuto in memoria (piuttosto forma qualcosa di simile a un formalismo computazionale come un calcolo lambda), ma spero che questo illustri il tipo di approccio di cui sono curioso.
In breve, immagino che un titolo alternativo a questa domanda potesse essere: come avrebbe fatto Dijkstra a scrivere giochi per computer?