Inform7 és Vampire Ltd
Basszus, sose gondoltam volna, hogy egyszer ez lesz, de 5 év laza kis hyperlinkes interactive fictionözés után kezdek rákattanni a hardcore szövegbegépelős Inform 7-re... Sose tudtam, mit esznek ezek a faszik ezen a stíluson, és lám, most már én is megfertőződtem… mentségemre legyen mondva, hogy sokáig ellenálltam...
Ez egy olyan programnyelv, ami teljes egészében az angol nyelv elemeit használja (még a mondatszerkezetet is megtartja), és azzal alkot egy játékleíró nyelvet. Számos dolog szólt ellene, hogy ne csináljam, például biztosan nem fogja megkérdezni senki, hogy használok-e Inform 7-et, de végül is a fő érv az a megtanulása, gyakorlása mellett, hogy gyakorlom az angolt. Amúgy az első reakcióm a döbbenet volt egy ilyen nyelv létezésére, és nem is nagyon akartam elhinni, hogy ilyen van. De iskolában is tanítják, 10-15 éves gyerekeknek, talán nekem is megfelel. Kisebb probléma, hogy semmilyen segítséget nem ad más programnyelvek megértéséhez, annyira egyedi.
Amellett, hogy találtam róla egy ingyenes könyvet, példajátékok forrásai is rendelkezésre állnak, nem is kellett sokáig keresgélni, találtam az idei ifcompon. Az egyik a Sheep Crossing, ami egy matematikai-logikai feladvány átültetése interactive fictionbe. A történet szerint a nagymama megkér minket, hogy hozzunk neki egy káposztát, egy bárányt és egy „büdös” medvét. A nagyi a folyó túloldalán van, és a csónakunkkal egyszerre csak egyet vihetünk át, mindezt úgy kell teljesíteni, hogy az utasok lehetőleg ne tudják bántani egymást, vagy valami ilyesmi.
A másik játék a Vampire Ltd, ami szabad forráskódú, és egy vámpírt alakítunk benne, aki mellesleg tönkrement üzletember, és egy másik vámpírnak a gyárába megy szabotálni a termelést, azzal, hogy tönkre teszi a legújabb üzlet projektjét. A vámpírság itt felfogható enyhe metaforájának itt valaminek, például a munkásokat kizsákmányoló gyártulajdonosságnak. Kissé elriasztó, hogy meglepően hosszú a program kódja, ahhoz képest, amilyen rövid ez a játék is. Egyáltalán nem olyan a kódolás, mint ahogy eredetileg elképzeltem, hogy helyszínekhez vannak rendelve parancsok.
Ezzel valószínűleg valamit tolódik a JavaScript és Node.js tanulásom, gyakorlásom, de mit csináljak, ha momentán ehhez van kedvem. Érdekes módon, interactive fiction előállítására egy széles körben alkalmazott nyelv. Van hozzá egy kb. 600 szavas string gyűjtemény is, ami a parancsértelmező rutin angol nyelvű válaszait tartalmazza. Ez elvileg magyar nyelvre lefordítható (ezt ezidáig még senki nem tette meg, tudtommal), és ennek segítségével magyar nyelven is írható rá játék. Mármint hogy a programnyelv marad az angol, de a gép válaszai magyarok lesznek.
Nem tudom, hogy kötöttem ki végül ennél a műfajnál, talán az angol nyelvi megértésem fejlődött annyit, hogy ezt lehetővé tegye, vagy nem tudom, eddig tudatosan kerültem, hacsak lehetett, az ilyen játékokat, néhány emlékezetes és könnyű darab kivételével nem foglalkoztam velük. Most amúgy pont gondban lettem volna a játékfelhozatallal, de így visszamenőlegesen is találok ilyen játékot valószínűleg magamnak. Nem tudom, mennyire érdekes ez a téma, remélem nem írom ki vele magam a blog megmaradt néhány olvasójának az érdeklődési köréből. Amúgy a blog történelmében mindig voltak ilyen témájú bejegyzések is, pontosabban kb. 5 év óta, talán nem okoz túl nagy felhördülést ez sem.
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in /home/yesokhu/madinhungary.org/inc/_ext/_url_rel2abs.php on line 157