DÜZENLEME (2): İki cevap olduğundan ve hiçbirini kabul etmediğimden, burada cevap olarak neyi düşündüğümü motive edeceğimi düşündüm: Ya böyle bir yaklaşımı güçlü bir şekilde öneren bir şey imkansız / hiç de yararlı olmayacak veya alternatif olarak, bir araştırmaya (alana) veya metin macera oyunları / etkileşimli kurgu ötesinde en azından biraz genel bir sisteme referans.
Daha derin bir araştırma yaptığımı taklit etmeme rağmen, baktığım tüm oyun motorlarının / çerçevelerinin, ikisinde şekil / varlıklardan bahsettikleri için yüceltilmiş bir grafik motoru gibi göründüğünü fark ettim. veya üç boyutlu öklid uzayına sahip olabilir, muhtemelen bu "varlıklara" bağlı bir çeşit mantık biçimini belirtmeye izin veren "takılı" bir çeşit eşzamanlılık modeli.
Oyun "kurallar" ve anlatı daha sonra bu ilkellerin üzerine biraz geçici (motora göre) yazılır.
Açıkçası yukarıdaki açıklama oldukça basitleştirilmiştir (bir çeşit görev / anlatı sistemi içeren sonsuzluk motoru gibi daha özel motorlar alın) ve bu modelin oldukça iyi çalışabileceğini (birçok insanın bunu kullandığını görüyorum) .
Yine de, oyun kuralları / mantık veya anlatı (veya oyunun en azından mekansal olmayan bir yönü ) gibi (yüksek düzeyde) kavramları birincil olarak kabul eden motorlar / çerçeveler oluşturmak için hangi girişimlerin yapıldığını merak ediyorum. temeli?
DÜZENLEME (4): Bu, oyunun herhangi bir uzamsal / grafiksel yönü içermeyeceği anlamına gelmez, sadece mantığı ilişkilendirdiğiniz uzamsal varlıklara sahip olmaktan ziyade, bir arsa (veya oyun veya "masa oyunu kuralları" kavramına sahip olduğunuz anlamına gelir) ) daha sonra / gerçekleştirilmesi için bir grafik arabirim tanımlayabilirsiniz.
Özellikle, oldukça büyük bir oyun sınıfının bir tür (yarı) biçimsel anlambilimini, gerçek uygulama için yararlı bir şekilde (örneğin, yalnızca bir çerçevenin aksine) yakalamaya çalışan herhangi bir bildirimsel yaklaşımla ilgilenirim. oyunların niteliksel analizi / anlatı).
Gördüğüm şey, petri net tabanlı bir modelle anlatı modelleme / analiz etme üzerine araştırmalar ve interaktif kurgu yazmak için dillerde bazı ilginç yaklaşımlar .
EDIT (1): Örneklemek için bir oyuncak örneği ekleyeceğimi düşündüm.
Nokta ve tıklama stili maceralar oluşturmakla ilgilendiğimizi düşünün (SCUMM oyunları düşünün) Bunları bir başlangıç durumundan bir sona doğru az çok doğrusal ve ayrık ilerleme kavramına dayandırarak analiz edebiliriz .
Kesikli ilerleme kavramına odaklanarak ve bazı doğrusal olmamaya izin vererek, temel teori olarak DAG'ların (sınırlı) teorisini seçebiliriz . Böylece en soyut formu (bu teoriye göre) kendi içinde, bu tip bir oyun Belirleme yüzden ya (bu teoriye ek aksiyomlar ekleyerek karşılık geldiğini teori belirtir bir belirli bir yakalama olanlar için gereklidir düşündüğü neyse yakalama basitçe yeterli grafik veya "arsa").
Bunu gerçek bir oyuna dönüştürmek artık bu teoriyi oynanabilir bir şeye gömmek için HCI / Arayüz tasarım problemine dönüşüyor (yani teorinin bir modelini oluşturmak / geçişli kullanıcı arayüzü durumları koleksiyonundan grafiklerin homo (iso?) Bir morfizmini bulmak "oyunu belirten" DAG'a).
Yukarıdaki varsayımsal senaryoda kütüphanelerde yakalanması gereken en az üç şey görebiliyorum. İlk olarak, genel olarak DAG'lar veya grafikler hakkında dönüştürme / muhakeme için araçlara ihtiyaç vardır. İkincisi, grafiğimizi oynanabilir bir oyun olarak temsil etmemizin aslında grafiği modellediğini doğrulamaya yardımcı olacak kadar akıllı bir kullanıcı arayüzü kütüphanesi . Son olarak, grafiği belirlemek için daha üst düzey kütüphanelerden oluşan bir koleksiyon verilebilir; karakterleri ve bunların etkileşimlerini ifade etmek için bir kütüphane ve bunun gibi grafiklerin (parçalarının) oluşturulması gibi.
Neden bazı yardım kütüphaneleri ile düşük seviyeli uygulamaya sahip olmak yerine, DAG'ların "orta" teorisini koruyorsunuz? Cevap, resmi bir anlambilimin genel nedenleridir. Resmi bir temele karar verdiğimiz göz önüne alındığında, oyunun belirli özelliklerini, düşük seviye arayüz kütüphanesindeki optimizasyonlar (DAG'ı modellediğimiz sürece istediğimizi yapabiliriz) gibi şeyler hakkında akıl yürütmeye izin vererek doğrulayabiliriz. üst düzey açıklama ile karşılaştırılamazlıktan endişe etme (karakterlerin / diyalogların vb.), çünkü bu açıklamaların kendileri bu yapıları tanımlamaları gerekir.
Hiçbir şekilde yukarıdaki yaklaşımın belirli bir şekilde işe yarayacağını ima etmiyorum ve fikir, bir DAG'ın aslında hafızada tutulan şey olması gerektiği değil (daha ziyade bir lambda hesabı gibi bir hesaplama formalizmine benzer bir şey oluşturur), ama umarım bu merak ettiğim yaklaşımı gösterir.
Kısacası, bu soruya alternatif bir başlık olabilirdi: Dijkstra bilgisayar oyunlarını nasıl yazardı?