Space Travel
Author
Albert FloresSpace Travel je jedna z prvních videoher vyvinutá Kenem Thompsonem v roce 1969. Videohra simuluje cestování ve sluneční soustavě. Hráč cestuje svou vesmírnou lodí modelem dvojrozměrné sluneční soustavy. Jediným cílem této hry je pokusit se přistát na různých planetách a měsících. Hráč může lodí pohybovat a otáčet. Lze také nastavit celkovou rychlost úpravou měřítka simulace. Loď je ovlivněna nejsilnější gravitační silou astronomických těles.
Hra byla vyvinuta v laboratořích Bell Labs v rané historii herního průmyslu ještě před rozvojem komerčního herního vývojářství. Hra byla portována v průběhu roku 1969 z operačního systému Multics do operačního systému GECOS v počítači GE 635 a později do počítače PDP-7. +more V rámci portování hry na PDP-7, vytvořil Thompson svůj vlastní operační systém, který později tvořilo jádro operačního systému Unix. Space Travel se nikdy nerozšířil mimo Bell Labs ani neměl vliv na budoucí videohry, avšak jeho primární přínos byl právě tlak na rozvoj Unixu.
Hra
Hra Space Travel je simulací letu ve vesmírném prostoru, prezentována dvojrozměrnou soustavou a pohledem shora. Prostředí tvoří monochromatická grafika tvořená bílými čarami na černém pozadí. +more V něm hráč ovládá vesmírnou loď letící přes simulaci sluneční soustavy. Hra nemá žádné jiné specifické cíle, než se pokusit přistát na různých planetách a měsících soustavy. Planety a většina měsíců ve sluneční soustavě jsou znázorněny v určitém měřítku a to jak co do velikosti, tak do vzdálenosti od sebe navzájem. Oběžné dráhy jsou zjednodušeny coby kruhy.
Aby hráč mohl přistát na vesmírném tělesu, musí jeho loď překročit hranici představující povrch tělesa a rovněž se musí pohybovat dostatečně nízkou rychlostí. Hráč má možnost pohybovat svou lodí dopředu i zpět a také lodí otáčet. +more Vesmírné plavidlo se pohybuje konstantní rychlostí vzhledem k měřítku prostoru, které hráč také může ovládat, čili je schopen ovládat rychlost lodi. Zvýšením měřítka může procestovat celou sluneční soustavu během několika málo sekund, ovšem riskuje, že svůj cíl přelétne. Na druhou stranu snížením měřítka může hráč dostatečně snížit rychlost pro přistání. Loď je vždy ve středu obrazovky, otočená nahoru. Otočení vpravo nebo vlevo otáčí sluneční soustavou okolo lodi.
Každá planeta nebo měsíc má definovanou hmotnost a tudíž i gravitaci. Tělesa se nemohou vzájemně ovlivnit a proto pouze to nejsilnější gravitační pole ovlivňuje hráče. +more To někdy vede k podivnému chování gravitace. Např. gravitační efekt Marsu je silnější než jeho měsíce Phobosu, což znamená, že aby hráč mohl na měsíci přistát, musí se nejdříve dostat až pod jeho povrch, což ho rázem vrátí zpět a teprve přistane na povrchu. Název planety nebo měsíce s aktuální nejsilnější gravitací se zobrazuje na obrazovce. Hráči si také mohli upravit parametry programu. Populárními úpravami bylo zvýšení úrovně gravitace a tím i obtížnosti hry nebo úprava souřadnicového zobrazovacího systému tak, že místo aby loď zůstávala v centru obrazovky a planety se pohybovaly kolem ní, se současná dominantní planeta vždy nacházela ve spodní části obrazovky a loď se pohybovala relativně vůči ní.
Vývoj
V roce 1969, programátor Ken Thompson pracoval pro Bell Labs v operačním systému Multics. Při své práci vyvinul Space Travel na počítači GE 635.
Když Bell Labs upustili od projektu Multics, portoval kód z Multics k programu Fortran tak, aby mohl běžet na operačním systému GECOS a již na GE 635. Thompson a další zaměstnanci Bell Labs, jako je Ravi Sethi a Dennis Ritchie, hráli hru na systému, ale počítač byl spuštěn na bázi "interaktivní dávky", kde bylo připevněno několik terminálů a každý výkon programu musel být umístěn do fronty. +more Společnost interně sledovala využití počítače pomocí systému poplatků. Každá hra byla zpoplatněna částkou od 50 do 70 USD, které se připisovaly na vnitřní účet. Hra dobře neběžela ani na systému GECOS tak jako to mělo být na Multics. Systém navíc vyžadoval zadávání uživatelských příkazů, namísto mačkání jednotlivých kláves. To vedlo k obtížnému ovládání lodi. Proto v Bell Labs chtěli najít jiné, lepší řešení. Thompson původně žádal Bell Labs o koupi počítače DEC-10. Toto řešení by ale stálo bezmála 120000 USD, díky nutnosti vývoje nového operačního systému. To Bell Labs zamítli, protože nejevili zájem o investici do vývoje dalšího operačního systému, když nedávno od jednoho takového projektu upustili. Thompsonovi se však podařilo zjistit, že sousední oddělení mělo starší minipočítač PDP-7, který byl málo používán, a který by mohl s trochou námahy mohl perfektně využít.
Jak Thompson začal portovat hru na nový systém, rozhodl se vytvořit kód, který by nenavazoval na některý stávající software, ale vyvinul zcela nový, vlastní. V důsledku toho se realizoval svůj vlastní aritmetický balíček s plovoucí desetinnou čárkou, grafický souřadnicový systém pro výstup na obrazovku a odlaďovací podsystém. +more Tyto počáteční subsystémy byly kódovány v jazyce symbolických instrukcí na systém GECOS a sestaveny, jejich výstup byl ukládán na papírové pásky, které měly být přeneseny do PDP-7. Thompson pak napsal assembler pro PDP-7, aby se zabránilo tomuto zdlouhavému a náročnému procesu. Hra na novém stroji běžela velmi pomalu, což Thompsona vedlo k tomu navrhnout svůj vlastní souborový systém založený na některých nápadech a poznatcích Dennise Ritchieho a Rudda Cassawaye, které získali při práci se souborovým systémem Multics, na kterém poté Space Travel běžel.
Odkaz
V době, kdy Space Travel byla plně portován na PDP-7, Thompson rozšířil svou softwarovou sadu k plnému základnímu operačnímu systému, v takovém rozsahu, kdy by to projektem Multics a GE 635 nebylo možné. Operační systém rozšířil mezi další uživatele ve firmě a v podstatě vytvořil jádro toho, co dostalo v roce 1970 název "operační systém Unix". +more Space Travel byl vyvinut před vzestupem komerčního odvětví videoher v časné historii. Nikdy nebyla distribuována mimo místo jejího vytvoření. Takže jediným a vlastně tak trošku vedlejším, avšak velice důležitým odkazem je potlačení a vývoj Unixu.