Žmonėms 70-ųjų pabaigos / 80-ųjų pradžios žaidimai asocijuojasi su Kosmoso užpuolikai ir Pac-Mantačiau atokiau nuo žaidimų aikštelės tikriausiai pastebėsite, kad ankstyvieji namų kompiuterių entuziastai naršo ir laužo galvą dėl kitokio žaidimo. Kartu su savo dvasiniu pirmtaku Kolosalus nuotykis urve, Zork ir jo tęsiniai tapo teksto nuotykių žanro pradininkais – žaidimais be grafikos analizavimo, kurie atgimimo metais buvo pavadinti „interaktyviosios fantastikos“ pavadinimu.

Taip pat yra pirmasis iš daugybės 80-ųjų pradžios ir vidurio hitų savo studijoje „Infocom“, Zork techniniu požiūriu buvo tikras pasiekimas. Žaidimo populiarumą bent iš dalies lėmė jo nešiojamumas – jis galėjo veikti su Commodore 64 taip pat lengvai, kaip ir su 8086 asmeniniu kompiuteriu ar ZX Spectrum, o tai buvo didžiulis pranašumas eroje, kai vartotojai galėjo rinktis iš daugybės mikrokompiuterių, kurių kiekvienas iš esmės nesuderinamas su kitais.

Žaidimo universalumą lėmė „Infocom“ į priekį orientuotas sprendimas iš esmės paleisti savo pavadinimus vadinamuoju „Z-Machine“ – iš esmės tai labai ankstyvas virtualios mašinos diegimas. Žaidimas ir jo įpėdiniai buvo parašyti „Infocom“ patentuota aukšto lygio „Zork Implementation Language“ kalba, kuri vėliau buvo sudaryta į žemesnio lygio instrukcijų rinkinį, pavadintą „Z-Code“, kuris buvo vykdomas „Z-Machine“ aplinkoje. Tai reiškė, kad užuot perrašę savo žaidimus nuo nulio kiekvienai naujai sistemai, kurią jie norėjo palaikyti, „Infocom“ turėjo tik parašyti naują „Z-Code“ interpretatorių kiekvienai sistemai. (Kiems, kurie domisi, čia galite rasti daugybę puikių dokumentų apie tai, kaip veikė Z mašina.)

Šiaip ar taip, dabar, beveik lygiai 50 metų po pirmojo išleidimo Zork žaidimas, yra svetainė, kuri realiu laiku pakelia uždangą nuo Z mašinos. „Visible Zorker“ yra interaktyviosios fantastikos meistro Andrew Plotkino kūrinys. Jis stebi žaidimo būseną, kol jis veikia, leisdamas žaidėjui pamatyti, kaip Z-Machine įgyvendina savo komandas. Poveikis panašus į važiavimą automobiliu su atidarytu gaubtu, kad galėtumėte tiksliai pamatyti, ką veikia variklyje paspaudus dujų pedalą, išskyrus, žinote, saugiau.

Zorkas I ir II kurį laiką buvo galima rasti svetainėje, tačiau 1982 m Zork III buvo pridėtas tik gegužės 1 d. Ji plačiai laikoma sunkiausia iš originalios trilogijos, ir kadangi ji yra vienintelė, kurios aš niekada neišsprendžiau pirmą kartą, buvau sužavėtas pažvelgti į jos vidinį veikimą.

Taigi ką čia pamatyti? Na, vienas įdomus dalykas yra pažvelgti į vidinį analizatoriaus veikimą. ZorkĮvesties analizė tikrai nėra tobula, ir daugelis iš mūsų praleido valandas bandydami suprasti, ką norime padaryti. (Kalba buvo ypatinga ankstyvųjų analizuotojų problema: tokios komandos kaip „pasakyk vagiui grąžinti auksą“ arba „Vagi, grąžink mano auksą“ paprastai buvo suglumusios: „Aš nesuprantu „aukso“ tokiame kontekste.)

Nepaisant to, Infocom analizatorius yra paprastas ir elegantiškas, ypač atsižvelgiant į žaidimo amžių. Jis remiasi dviem paprastais sąrašais: vienas iš veiksmažodžių ir vienas iš daiktavardžių. Dauguma šių žodžių turi sinonimus ir santrumpas – „lamp“ tiks „žibintai“, „n“ – „šiaurė“ ir t. t. – taip pat yra rašybos klaidų. Kiekvienas veiksmažodis turi susijusią funkciją, kai kuriems iš jų reikalingi daiktavardžiai kaip argumentai, o kai kurie gali veikti abiem būdais. „Pažiūrėk“ grąžins esamo kambario aprašymą, o „pažiūrėk (at) (daiktavardis)“ patikrins, ar daiktavardis yra; jei taip, funkcija grąžins aptariamo objekto aprašymą, o jei ne, jums bus pasakyta: „Čia nematote jokio (daiktavardžio)!“

Taip pat palaikomas sudėtingesnis, kaip matome čia:

© Matomas Zorkeris

Šis kodas skirtas Frobozz Magic Grue Repellent skardinės purškimui. (Grues, kaip žino bet kuris gerbėjas, yra pabaisos, kurios slypi tamsoje ir valgys kvailius, kurie veržiasi į šviesas be deglo ar žibinto.) Štai kaip tai veikia:

Matoma Zorker detalė
© Matomas Zorkeris

Žaidimas pirmiausia patikrina, ar skardinė tuščia. Jei ne, ji patikrina, ar pasakėte „Burn can“, tokiu atveju susisprogdinate ir žaidimas baigtas. Priešingu atveju tai bus matoma kur tu purški skardinę. Jei nenurodysite vietos, žaidimas daro prielaidą, kad jūs tiesiog purškiate jį į orą, o tokiu atveju jis iš esmės yra švaistomas. (Taip pat atminkite, kad žaidimas jums čia šiek tiek padeda – jei tik įvesite „Purškimo skardinė“, bus paklausta, ant ko norite purkšti skardinę.)

Šiaip ar taip, užpurški skardinę ant savęs, tada esi apsaugotas nuo nešvarumų penkiems posūkiams. Žaidimas paleidžia laikmatį („I-SPRAY“, kuris seka, kiek apsisukimų praėjo nuo tada, kai pats išsipurškėte) ir nustato kelias vėliavėles: „PURŠKETAS?“, kuri seka, ar išsipurškėte pats, ir „SPRAY-USED?“, kuris seka, ar skardinė buvo ištuštinta. Čia taip pat matome, kaip lengvai galite paversti žaidimą į nelaimingą būseną: jei purškiate repelentą ant kažko, kas nesate jūs, tada jums nesiseka.

Jei yra vienas dalykas, dėl kurio Zork III ypač prisimenamas, tai liūdnai pagarsėjęs Karališkasis galvosūkis, natūralaus dydžio vieno iš tų galvosūkių versija, kai reikia slysti plytelėmis aplink tinklelį. Išspręsti tokį galvosūkį būtų pakankamai sunku žaidime su grafiniu aplinkos vaizdu; sprendžiant jį analizavimo pagrindu sukurtame tekstiniame žaidime, net ir naudojant elementarią žaidimo pagalbą, reikia tam tikro architektūros žinovo erdvinio suvokimo ir (arba) šventojo kantrybės.

Nė vieno iš šių dalykų neturėjimas reiškė, kad Zork III buvo tas Zork žaidimas, kurio neišsprendžiau vaikystėje, ir man buvo įdomu pamatyti, kaip žaidime sekami įvairūs galvosūkio komponentai ir jų atitinkamos vietos. Pasirodo, gana didelė žaidimo kodo dalis yra skirta galvosūkiui, kuris viduje vadinamas „kinų galvosūkiu“. Kiekviena padėtis 6 × 6 tinklelyje yra saugoma kaip vienas skaičius 36 elementų masyve, o įvairių sienų padėtis atnaujinama žaidėjui jas judinus.

Galite pamanyti, kad galvosūkyje bus 36 kambariai, bet ne – čia tik vienas, tikriausiai todėl, kad pridėjus 36 iš esmės identiškus kambarius į žaidimą būtų švaistoma atmintis. (Pavyzdžiui, visame likusiame žaidime yra apie 60 kambarių.) Vienintelis galvosūkių kambarys visada yra kambarys, kuriame yra žaidėjas, todėl žaidimas turi sekti tokius dalykus kaip daiktai ir prireikus juos keisti į kambarį ir iš jo: tarkime, kad numetate kalaviją kambaryje koordinačių x: 3 y:4, tada judėkite į rytus. Jūs iš tikrųjų visiškai nejudate – žaidimas tiesiog atnaujina jūsų padėtį į x:4 y:4 ir pašalina kardą. Jei vėl judate į vakarus, žaidimas prisimena, kad tai yra kambarys, kuriame numetėte kardą, todėl jis vėl atnaujina jūsų padėtį ir grąžina kardą į kambarį.

Tokie optimizavimai yra svarbūs, kai dirbate su tokiais erdvės apribojimais, kurie buvo įvesti devintojo dešimtmečio pradžioje – ir tie apribojimai buvo gana dideli. Visumą Zork III’s šaltinio kodas, apimantis veiksmažodžių / daiktavardžių sąrašus, kambario ir objektų aprašymus, analizatorių, ZIL interpretatorių ir tikrąjį žaidimo kodą, sveria 92 KB. Iš viso. Tai ne visai Raudonoji dykuma.

Vis dėlto taip pat įdomu pažvelgti į daugybę panašumų tarp to, kaip Zork III ir šiuolaikiniai žaidimai veikia. Galiausiai žaidimas yra tik būsenos kintamųjų rinkinys: ar žaidėjas jau buvo šiame kambaryje? Ar jie nužudė šį monstrą? Ar jie kalbėjosi su šiuo NPC ir jiems buvo suteikta ši užduotis? Kiek jie nutolę nuo ieškojimo? Ką jie dabar nešiojasi? Kokio lygio jų sveikata? Kaip pasikeitė žaidimų pasaulis nuo žaidimo pradžios?

Būdai, kuriais šiuolaikinis žaidimas tvarko tokius dalykus, tikrai gali būti daug sudėtingesnis nei 1982 m.Zork Pavyzdžiui, neturi nieko panašaus į kelių etapų užduotis, tačiau principai iš esmės yra tie patys. Nustatykite vėliavėlę (x), jei įvyko svarbus įvykis (y). Stebėkite, kas yra žaidėjo inventoriuje. Sekite laikmačius. Žaidėjas ką tik nukentėjo nuo pabaisos? Iš jų sveikatos atimkite (x). Ar jų sveikata dabar žemesnė nei 0? Taip? O brangusis. Atėjo laikas paleisti funkciją JIGS-UP ir atkurti paskutinį išsaugotą žaidimą.

Šiuo atžvilgiu yra labai mažai skirtumų Zork ir Eldeno žiedas. Žinoma, šių sąvokų įgyvendinimai yra skirtingi pasauliai, tačiau pačios sąvokos išlieka tos pačios.

O ir galiausiai: kaip bet kuris Zork gerbėjas žino, kad vienas dalykas, kurį turite pabandyti kiekviename žaidime, yra įvesti „Sveikas jūreivis“ – tai panašu į zorkišką „Konami“ apgaulės kodo atitikmenį, nes tai yra kažkas, ką bandote įvesti tikėdamasis, kad dėl to kažkas gali nutikti. Dalykas yra tas, kad visame „Zork“ (kur ši frazė pirmą kartą sutinkama) ir „Zork II“ vienintelis jūsų atsakymas yra „Čia nieko nevyksta“. Tai reiškia, kad kažkas atsitiks kažkur kitur, bet niekada neįvyksta. Tačiau! „Zork III“ yra viena vieta, kur šis pranešimas tampa „Dar nieko neįvyksta“. Ir jei lauki pakankamai ilgai, tai štai: ateina valanda, ateina senovės jūrininkas!

Zork III Sveikas jūreivis
© Matomas Zorkeris

Nuoroda į informacijos šaltinį

By admin

Draugai: - Marketingo agentūra - Teisinės konsultacijos - Skaidrių skenavimas - Klaipedos miesto naujienos - Miesto naujienos - Saulius Narbutas - Įvaizdžio kūrimas - Veidoskaita - Teniso treniruotės - Pranešimai spaudai - Kauno naujienos - Regionų naujienos - Palangos naujienos