Colossal Cave Adventure: první počítačová „textovka“

Pavel Tišnovský 18. 8. 2009

Při pohledu do dnes již více než třicetileté historie počítačových her můžeme nalézt několik důležitých milníků. Jedná se o hry, které zásadně ovlivnily další vývoj v tomto odvětví. Na samotném začátku se nachází „textovka“ Colossal Cave Adventure, známá též pouze jako Adventure nebo ADVENT.

Obsah

1. Colossal Cave Adventure: první počítačová „textovka“
2. Samá prvenství
3. Historie hry Adventure
4. Vývojové nástroje použité pro vytvoření hry Adventure
5. Jazyk „inglish“
6. „xyzzy“ a „plugh“
7. Minesweeper, The Sims a další
8. Hra Adventure v současnosti
9. Odkazy na další informační zdroje

1. Colossal Cave Adventure: první počítačová „textovka“

Motto: Before there was Doom, Ultima, Rogue, or even Zork, there was… Adventure.

Hra nazvaná Colossal Cave Adventure, jenž je známá též pod zkráceným názvem Adventure popř. na operačních systémech s omezenou délkou názvů souborů pouze pod označením ADVENT, je představitelem takzvaných „textovek“ (v angličtině se používá termín interactive fiction, ovšem české označení je podle mě výstižnější). Jedná se o typ her, které s hráčem komunikují pomocí textu a hráč ovládá své alter ego s využitím psaných textových příkazů (většinou se jedná o značně zjednodušenou angličtinu, i když modernější textovky jsou vybaveny sofistikovanými parsery, které správně rozpoznají i složitější souvětí). Z technologického hlediska se může jednat o poměrně jednoduché hry s velmi malými nároky na hardware, což je výhodné, jelikož se do vývoje takové hry mohou pustit i méně zkušení programátoři, kteří mohou svůj čas věnovat scénáři hry a nikoli technickým finesám, které je většinou nutné ovládat při programování her jiných žánrů.

adventure

Hra Colossal Cave Adventure spuštěná v terminálu.

2. Samá prvenství

Této hře je připisováno hned několik prvenství – jedná se o první skutečnou textovku (někteří autoři dokonce tvrdí, že se jedná o první počítačovou hru vůbec, to je však poněkud odvážný názor, protože jednoduché hry vznikaly i na analogových počítačích), jednu z prvních her šířených (samozřejmě zadarmo a bez licenčních omezení) pomocí tehdy vznikajícího Internetu, hru dostupnou prakticky na jakémkoli zařízení, které se podobá počítači, a v neposlední řadě též o hru, jejíž zdrojové kódy byly volně k dispozici a programátoři je mohli studovat popř. je měnit, což v mnoha ohledech odpovídá dnešnímu pojetí open source. Zajímavé také je, že tato hra je neustále – již téměř 35 let – vyvíjena a v současnosti existuje nepřeberné množství variant, od klasických textovek, které se mnohdy snaží co nejvěrněji emulovat původní hru, až po varianty s obrázky, možnosti hry více uživatelů současně (MUD), ovládáním pomocí myši a ikon, rozšířeným herním prostorem (lokacemi), apod.

adventure

Vzhledem k nenáročnosti na hardware je možné hru Adventure provozovat i na velmi jednoduchých zařízeních.

3. Historie hry Adventure

Historie hry Adventure je velmi zajímavá a mnohdy i spletitá. Původním autorem této hry je programátor Will Crowther, který v sedmdesátých letech minulého století pracoval ve firmě Bolt, Beranek & Newman na vývoji sítě ARPANET, která se stala předchůdcem dnešního Internetu. Will Crowther však nebyl pouze programátor, ale také (spolu se svou manželkou) náruživý jeskyňář a hráč (nepočítačových) her typu Dungeons and Dragons. Všechny tři zmíněné zájmy Willa Crowthera můžeme ve hře Adventure nalézt. Will již v roce 1972 prozkoumal a nakreslil mapu části Mamutí jeskyně z Kentucky, kterou později ve hře použil, spolu s několika motivy z her typu Dungeons and Dragons. V roce 1975 se Will Crowther rozvedl a aby pobavil a zaujal své dvě dcery, vymyslel pro ně interaktivní textovou hru ovládanou přes terminál, ve které bylo možné procházet částí Mamuti jeskyně. Původní verze byla založena na skutečné mapě, takže se prý podle této hry dalo skutečně jeskyní procházet.

adventure

Oba „otcové“ hry Adventure posílali úspěšným hráčům, kteří hru dokončili s maximálním skóre, certifikáty.

Aby byla hra zábavnější, přidal do ní Will některé prvky z her na hrdiny, například počítání skóre či předměty, které bylo možné specifickým způsobem v některých lokacích použít. Tato hra se ve své době (polovina sedmdesátých let) stala velmi populární a počala se volně šířit mezi přáteli po tehdy vznikajícím Internetu. Právě tehdy, konkrétně v roce 1976, se s touto hrou seznámil i Don Woods, který pracoval v Stanford Artificial Intelligence Lab, zkráceně SAIL. Traduje se, že hru Adventure někdo ponechal spuštěnou na jednom z univerzitních terminálů, kde ji Don Woods objevil. Donovi se hra, podobně jako jiným lidem, zalíbila a proto se rozhodl kontaktovat původního autora, kterého ovšem znal pouze podle jeho příjmení. Don proto poslal e-mail na všechny adresy ve tvaru crowther@doména, přičemž místo doména postupně doplnil všechny v té době existující domény (existovalo jich tehdy pouze několik desítek. Původního autora hry tímto způsobem skutečně našel a kontaktoval (dnes prakticky nemožné). Byl to právě Don Woods, který do hry doplnil všechny fantasy prvky (trolly apod.), které původně poněkud jednotvárnou hru v mnohém ohledu vylepšily a zvýšily tak její popularitu.

adventure

Hra Adventure doplněná o vektorové obrázky. Zde se jedná o verzi spuštěnou na ZX-Spectru. Vzhledem k tomu, že ZX-Spectrum zobrazovalo na jednom řádku pouze 32 znaků, musely být některé popisy lokací zkráceny, aby se vešly na jednu obrazovku.

4. Vývojové nástroje použité pro vytvoření hry Adventure

Původní verze hry Adventure byla naprogramována v jazyce Fortran a běžela na tehdy populárním minipočítači PDP-10 (právě z tohoto důvodu byl zvolen textový způsob komunikace, protože k PDP-10 se uživatelé připojovali přes terminál). Pro svůj běh hra potřebovala 300 kB operační paměti, což bylo na tehdejší dobu poměrně velké číslo. Již v roce 1976 však Jim Gillogly ze společnosti RAND celou hru přepsal z Fortranu do céčka tak, aby ji bylo možné použít na tehdy se rozvíjejícím operačním systému Unix. Právě tato verze hry Adventure se rozšířila prakticky na všechny operační systémy a počítačové platformy, pro něž byl dostupný překladač céčka.

adventure

Hra Adventure doplněná o vektorové obrázky spuštěná v emulátoru osmibitového domácího počítače Atari. Tuto verzi vytvořila firma Level 9 Computing, podobně jako verzi pro C64 a ZX-Spectrum.

Další verze hry Adventure se vydaly poněkud jiným směrem – namísto přímého naprogramování hry ve Fortranu, céčku, Pascalu apod. se použil specializovaný jazyk určený právě pro psaní textových her. Jedna z variant tohoto jazyka se dokonce nazývala Adventure Language nebo též A-lang. Program (či spíše deklarace jednotlivých lokací, akcí, které je zde možné provést, předmětů apod.) se poté transformoval buď do zdrojového kódu Fortranu či céčka nebo přímo do objektového souboru, který byl zpracováván poměrně jednoduchým interpretrem. Právě tato možnost byla použita například při přenosu hry Adventure na osmibitové domácí počítače.

adventure

Do hry Adventure byly přidány prvky z Tolkienova Pána prstenů.

5. Jazyk „inglish“

V původní variantě hry Adventure komunikoval hráč s programem pomocí zjednodušené angličtiny. Kvůli zmenšení nároků na operační paměť (a současně i snadnější naprogramování operací s řetězci ve Fortranu) rozeznávala hra Adventure pouze prvních pět znaků každého příkazu, přičemž každý příkaz sestával buď z jednoho slova (north, down, east, score, inventory) či z dvojice slov, například get keys, throw axe. Modernější varianty této textovky již obsahují mnohem složitější parser, který dokáže rozeznat i delší sousloví či dokonce celá souvětí. Adventure byla samozřejmě za posledních třicet let přeložena do mnoha dalších jazyků, ovšem anglická verze zůstává dodnes klasikou.

adventure

Blízko počátku hry se nachází i malý cihlový domek, do kterého mj. vede i jeden z teleportů.

6. „xyzzy“ a „plugh“

O oblíbenosti hry Adventure svědčí i to, že dala světu dvě nová slova, která s oblibou používají především programátoři. Jedná se o zaklínadla „xyzzy“ a „plugh“. I v mnoha dnešních programech můžeme kromě notoricky známých proměnných či funkcí foo, bar a baz najít i xyzzy či méně často plugh. Vzhledem k tomu, že hra Adventure většinou na příkaz „xyzzy“ reagovala textem „Nothing happens“ (význam mělo zaklínadlo pouze v některých lokacích), používá se toto slovo namísto příkazu, který prozatím nic neprovádí, ale má být v budoucnu nahrazen složitějším kódem.

adventure

Lokace, ve které se nachází zapsané magické slovo „xyzzy“.

7. Minesweeper, The Sims a další

„Kouzelné“ slovo xyzzy se používá i v dalších programech, především ve hrách. Mnohé hry, které akceptují i textový vstup, reagují na zadání slova xyzzy odpovědí Nothing happens, podobně jako v původní hře (ve většině lokací toto kouzlo totiž není použitelné), ovšem v dalších aplikacích může slovo xyzzy sloužit například pro povolení nějakého cheetu. Ve známé hře Hledání min od firmy Microsoft (Minesweeper) je možné v průběhu hry stlačit klávesy Ctrl+Shift spolu s napsáním řetězce „xyzzy“. Poté se nejlevější horní pixel obrazovky mění podle toho, zda se pod kurzorem myši nachází bomba nebo prázdné políčko. Na LCD monitorech je tento pixel jasně patrný, horší je to se špatně nastavenými monitory CRT, kde pixel může „ujet“ mimo stínítko nebo může být na okraji obrazovky rozmazán (vyzkoušeno na Windows XP SP2). Podobně jsou slova xyzzy a plugh použita ve hře The Sims pro vstup do menu s volbou cheetů.

adventure

8. Hra Adventure v současnosti

V současnosti je možné hru Adventure hrát v několika variantách. Na Linuxu je dostupná upravená původní čistě textová unixová verze – většinou postačuje nainstaloval balíček nazvaný bsdgames a spustit program adventure.. Existuje též varianta naprogramovaná jako Javovský applet, kterou lze spustit přímo ve webovém prohlížeči. Ovšem podle mého názoru jsou jak po technické, tak i po vizuální stránce nejpovedenější verze vytvořené firmou Level 9 Computing pro osmibitové domácí počítače, které je možné spustit v některém z emulátorů – tato firma vytvářela hry jak pro osmibitová Atari a C64, tak i pro ZX-Spectrum. Mimochodem, hra Adventure od Level 9 Computing obsahovala více místností (lokací) než verze původní, měla poměrně pěknou vektorovou grafiku (každá z několika set místností samozřejmě odlišnou) a to vše dokázali programátoři vměstnat do necelých 48 kB operační paměti!

widgety

9. Odkazy na další informační zdroje

  1. Colossal Cave Adventure Map
    http://www.spitenet.com/cave/
  2. Colossal Cave Adventure
    http://www.rickadams.org/adventure/
  3. Here's where it all began…
    http://www.rickadams.org/…history.html
  4. David Kinder's guide to Adventure downloads at the Interactive Fiction Archive
    http://www.rickadams.org/…wnloads.html
  5. Everything you ever wanted to know about …the magic word XYZZY
    http://www.rickadams.org/…c_xyzzy.html
  6. Colossal Cave Adventure jako Java Applet
    http://www.astrodragon.com/…/advent.html
  7. Colossal Cave Adventure
    http://en.wikipedia.org/…ve_Adventure
  8. iPod Adventure Game
    http://hamimiami.com/…e/index.html
  9. Ohlédnutí za herní historií: Textovky
    http://www.slunecnice.cz/…ii-textovky/
adventure

Volné pokračování hry Adventure – Adventure Quest firmy Level 9 Computing.

Našli jste v článku chybu?
Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Vitalia.cz: Výživový poradce: Tyhle fešáky jedu celoročně

Výživový poradce: Tyhle fešáky jedu celoročně

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Vitalia.cz: Tohle všechno se dá usušit

Tohle všechno se dá usušit

Root.cz: Podívejte se na shořelé Samsung Note 7

Podívejte se na shořelé Samsung Note 7

Lupa.cz: Blíží se konec Wi-Fi sítí bez hesla?

Blíží se konec Wi-Fi sítí bez hesla?

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

DigiZone.cz: Sat novinky: NASA Ultra HD (4K)

Sat novinky: NASA Ultra HD (4K)

Vitalia.cz: Jak Ondra o astma přišel

Jak Ondra o astma přišel

Vitalia.cz: Tradiční čínská medicína a rakovina

Tradiční čínská medicína a rakovina

Lupa.cz: Patička e-mailu závazná jako vlastnoruční podpis?

Patička e-mailu závazná jako vlastnoruční podpis?

Lupa.cz: Adblock Plus začal prodávat reklamy

Adblock Plus začal prodávat reklamy

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

Vitalia.cz: Antibakteriální mýdla nepomáhají, spíš škodí

Antibakteriální mýdla nepomáhají, spíš škodí

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst