úterý 9. října 2012

Pioneer Space Simulator

Poslední dobou jsem konečně opět objevil zajímavost, která mne namotivovala ke krátké zmínce na tomto nepravidelně psaném plátku.  Je jí skvělý open-source projekt Pioneer Space Simulator, který sám o sobě tvrdí že má „sneaking resemblance to Frontier: Elite 2“. Ve skutečnosti není této geniální DOSové hře jenom nápadně podobný, ale je jejím téměř naprosto přesným klonem s mnoha vylepšeními+. Frontier představuje jednu z těch her, které se dnes již nedělají. Udělat docela reálný simulátor kosmických letů totiž možná niterně potěší úzkou skupinu geeků, matfyzáků a jiných nadšenců, ale bez skutečného příběhu nezaujme platící většinu hráčů. 

Když píšu simulátor, myslím tím, že se kosmické lodě skutečně pohybují tak, jak mají. Tj. nelétají jako stíhačky v atmosféře, ale během svého letu poctivě půlku cesty zrychlují a druhou zpomalují, protože ve vesmíru je nic nezastaví a nestačí se dostat do cíle, ale je potřeba se do něj dostat s rozumnou rychlostí. Lze je navést na oběžnou dráhu. Laserové přestřelky na vzdálenost několika set kilometrů krásně reflektují fakt, že každý laser se kvůli principu neurčitosti nutně rozšiřuje a tak nelze terč zasáhnout z velké dálky, že člověk až skoro hře odpustí megawattové výkony laserů a podezřele pomalu se pohybující „kusy světla“, které jsou v Pioneeru oproti Frontieru novinkou. (I když je svět jinak poctivě newtonovský, s rychlostí světla nekonečnou). Hned ze začátku jsem chtěl autorům navrhnout, jestli by nepřidali brzdění o atmosféru, abych vzápětí zjistil, že už tam je. Chtěl jsem jim vytknout, že vzdálenost mezi Epsilon Eridani a Tau Ceti je vyšší než má být, abych v zápětí zjistil, že autoři zjistili současnou rychlost hvězd a extrapolovali jejich polohu do roku 3200, kdy se hra odehrává!

Jeden z nových modelů lodí, který snad nadšení vývojáři brzy přidají.


To nejlepší na tom ovšem je, že kód hry visí volně na Internetu a komunita vývojářů je nadšená a stále hru rozvíjí. Zde tedy nic nebrání si s fyzikou hry začít trochu hrát.. během prvních dvou týdnů jsem se neudržel a napsal jsem několik zlepšováků, od módu kdy rotaci rakety nezpomalují trysky, ale může se volně otáčet jak se ve stavu beztíže sluší a patří, až po úpravu autopilota, aby uměl létat, jakmile mu dochází palivo*.  A musím říct, že není nic hezčího, než když za vás někdo napsal grafiku, zvuk, ukládání a všechny technické věci, které fyzici neradi řeší, a můžete jenom sáhnout na fyzikální jádro programu, pohrát si s ním a sledovat důsledky v krásném grafickém provedení.

+ Kterými jsou třeba daleko chytřejší autopilot, který nepodvádí a řídí loď jak by mohl i hráč, ukazatel relativní vzdálenosti k cíli usnadňující navigaci, a mnoho dalších. 

* Hra totiž je v některých ohledech skutečně hrou, takže když např. pomocí Ciolkovského rovnice spočítáte, jakou rychlostí motory lodí vypouštějí spaliny, vyjde vám silně nadsvětelná. Naštěstí je hra tak krásně modifikovatelná, že není problém zvýšit spotřebu paliva všech lodí a dostat se do relativně reálných čísel - pokud se trochu pomůže autopilotům, které doposud uměly létat jen s neustále plnou nádrží.