Tvůrce českého simulátoru železnic: Vlastní engine mě ničím neomezuje, dnes bych se pro něj rozhodl znova

Vlaková strategie Mashinky je dílem herního vývojáře Jana Zeleného, který se rozhodl do tvorby celé hry pustit bez vývojářského týmu. Pro svou hru si navrhl design, část grafiky a naprogramoval vlastní engine (pozn. jádro počítačové hry, z nějž hra čerpá potřebné funkce). V dalším rozhovoru z cyklu virtuální světy nám autor řekl, co takový vývoj v jednom člověku obnáší a na co by se měl člověk připravit.

Mashinky jsou simulátor, který umožňuje hráči nahlédnout do budování, organizování a celého fungování železniční dopravy. Po sedmi letech vývoje se autor chystá hru vydat ve formě předběžného přístupu pomocí digitální distribuce. Unikátní je hra mimo jiné tím, že si tvůrce pro hru naprogramoval vlastní engine, přestože byl na celou jeho tvorbu sám.

Čím se Mashinky liší od podobných her?

Tak především ekonomický systém je úplně odlišný. Je hodně inspirovaný deskovými hrami. Také čtverečkovaný konstrukční režim a diskrétní dílky mapy, jsou návratem k návykoné hratelnosti starých dobrých strategií. Spolu s tím i generované mapy a možnost editace čehokoli. Ve hře mashinky se dá zvolit unikátní strategie, například vylepšováním zastávek, rozšiřováním výrobních budov, investováním třeba do výkonejších lokomotiv, nebo větších vagónů. Možnost je i usednout do jedné ze svých souprav a svézt se krajinou z pohledu pasažéra, nebo třeba strojvůdce. Těch vylepšení je v plánu hodně. Plánujeme i multiplayer. Ten přidáme někdy v průběhu předběžného přístupu. Chystám i silniční a leteckou dopravu. Může se tak stát, že jednou zapnete hru a budou v ní i autobusy a kamiony, přestože den předtím jste mohli kupovat jenom vlaky.

Plánoval jste od začátku, že budou Mashinky tak rozsáhlé?

Měl jsem od začátku hodně silnou vizi, vycházející z dětství stráveného hraním Transport Tycoonu a podobných her. Líbil se mi i příběh Chrise Sawyera (pozn. skotský nezávislý herní vývojář), který na Transport Tycoonu dělal také v podstatě bez týmu dalších vývojářů. Napadlo mě tedy udělat podobnou hru, kterou bych zvládl vytvořit sám. V té době jsem si určil konkrétní rozsah a doteď se ho snažím dodržet.

Jak velkou máte konkurenci? Nepřibývá her typu Railroad Tycoon?

Konkurence určitě je. V posledních letech se rojí více podobných titulů. V poslední době třeba Transport Fever od Urban Games. Nebo příští rok v únoru má vycházet Ralroad Empire. Já ale tu svoji hru začal dělat i proto, že mi úplně nesedí ten realistický systém pokládání kolejí křivkou. Mě vždycky bavil ten puzzle aspekt ve starších hrách. V modernějších hrách jsem musel často hledat myškou místo, kde koleje zezelenají a půjdou postavit. V Mashinkách hráč díky vyobrazeným čtverečkům situaci ihned pochopí a může vymýšlet řešení. V tom bude oproti konkurenci velký rozdíl.

Foto: Mashinky.com

Vytvořil jste si pro Mashinky vlastní engine. Využil byste volně dostupné enginy jako Unity nebo Unreal, kdyby už tenkrát byly k dispozici?

To je otázka. Určitě bych zkusil nějaký hotový engine. Když jsem začínal byl k dispozici snad pouze engine Quake 3 Arena. Já mám ale občas problém orientovat se v cizích zdrojových kódech a svůj první engine jsem si napsal už v roce 2003. Když jsem začínal dělat na Mashinkách, připadal mi proto vlastní engine jako nejsnažší volba. Často mám pocit, že ty komerčně dostupné jsou stavěné především pro first person střílečky. Pokud děláte terén například pro strategii se dvěma různými módy zobrazení, musíte použít různé triky, aby to celé fungovalo. Předpřipravené enginy nejsou vždy na všechno nejvhodnější a musí se dělat mnoho změn. Navíc riskujete, že jej tvůrci přestanou vyvíjet, nebo udělají větší změnu, která vám hru rozbije. Také musíte řešit licenci a dělíte se o zisk… Těžko posoudit, jak bych se zachoval, ale věřím, že bych se ve výsledku opět rozhodl pro vlastní engine.

Raději se tedy nehrabat v cizím kódu a napsat si to sám.

Přesně tak. Pro hru je to potom více optimalizované a poskytuje mi to neomezené možnosti. Sám si řeknu, co si do kódu doplním a jak to bude fungovat uvnitř. Mám zkušenost z vývojářských studií 2K nebo Bohemia Interactive, že je lepší si napsat své řešení. Samozřejmě nemůžu až tak zobecňovat, protože já jsem na vývoj sám. Studia, o kterých mluvím, mají desítky až stovky lidí, kde je daleko reálnější napsat si vlastní engine. Přesto jsem nějak přejal tento názor za svůj. Pokud máte vlastní nástroje, které vás vysloveně v ničem neomezují, je rozumné u nich zůstat.

Co ale člověk, který neumí programovat a chce si vytvořit hru? Jaké má možnosti?

Dostupné komerční enginy mají tu výhodu, že i laik v nich může jednoduchou hru snadno vytvořit. Na netu je spousta návodů a komunita dokáže rychle s čímkoliv poradit. U malých her se s nějakým skriptováním zřejmě dá vystačit, u větších se časem nějaké základy programování pochytí. Případně projekt zaujme zkušeného programátora a ten se rozhodne pomoct.

S jakými překážkami člověk musí počítat, když je na vývoj hry sám?

Nejtěžší je udržet si motivaci. Občas vás to nebaví a nemáte chuť to ani zapnout. Na to mám ale pár tipů. Zapomenout chvíli na vývoj a hru si prostě zahrát. Při tom narazíte hned na něco, co je potřeba dodělat, a tak se do toho pustíte. Nejhorší je chybějící motivace před tím, než hru oznámíte a máte feedback od lidí. Hledání motivace o poznání snazší, když máte alespoň malé publikum.

Jan Zelený, Foto: Ondřej Myšák

Proč jste se rozhodl jít do vývoje sám? Má to nějaké výhody oproti práci v týmu?

To přišlo nějak samo. Z počátku jsem tvořil s dvěma kamarády menší hry, ale každý jsme nabrali jiný směr. V podstatě jsem ze tříčlenného týmu zůstal u her sám. Doufal jsem, že se časem někdo přidá, ale nechtěl jsem to zatím řešit. A dlouho to tak zůstalo. Ono to bylo spíš takové moje pískoviště. Implementoval jsem si v něm různé nápady a grafické efekty. Až když se některé ukázaly být funkční, přinesl jsem si je do zaměstnání. Proto jsem z toho dlouho ani nechtěl mít hru, ale jen takové své hobby.

Kolik času vám zabírá vyvíjet hru takového formátu?

Na počátku jsem se tomu věnoval jen několik dní v týdnu, ale teď už na hře pracuju denně. Přijdu z práce domů, navečeřím se, skouknu s ženou nějaký seriál a potom dělám na hře klidně do jedné v noci. Každý den tak čtyři hodiny a o víkendu klidně deset až dvanáct.

To ale asi nemáte mnoho volného času…

Je to můj koníček, momentálně asi jediný, protože na nic jiného moc času není. Zvlášť teď, když se soustředím na dokončení, jde spousta věcí stranou.

Digitální distributor Steam otevřel před pár lety dveře nezávislým vývojářům pomocí služby Greenlight. Není už trh trochu přeplněný indie (pozn. nezávislými) hrami?

Nejsem si jistý, jak se pohnula čísla po zavedení Steam Direct. Nemůžu říct, jestli se objem her razantně zvýšil. Mám ale obavy, že pokud to ještě nenastalo, brzo k tomu dojde. Na druhou stranu, indie hry podobné Mashinkám ve mně nevyvolávají pocit, že by byl trh okolo nich přehlcený. Na mobilním trhu je situace jiná, ale v případě vlakových strategií není situace tak špatná jako v případě 3D stříleček nebo pixelartových hopsaček.

V čem dělají začínající vývojáři dnes nejvíce chyb?

Někdy mají moc velké plány. Ačkoli dělají první hru, tak se často pouštějí do megalomanských projektů. To je ale vlastně tak trochu i můj případ. Já dělal další chybu v práci s PR marketingem a komunitou. Čím více se herní trh rozšiřuje, tím viditelnější je důležitost reklamy.

A vy jste měl čas na marketing?

Nemám ho doteď, i když je už potřeba. Dříve to ani moc nutné nebylo, protože když máte ještě rok do vydání, není velká mediální masáž na místě. S přibližujícím se datem vydání hry v předběžném přístupu je to ale potřeba víc, než kolik tomu můžu sám dát. Je otázka od kdy je lepší marketing dělat sám a kdy si na to najmout profesionální firmu.

Jan Zelený (*1985) vystudoval počítačovou grafiku a multimedia na Fakultě informačních technologií Vysokého učení technického v Brně. Dříve byl programátorem ve společnosti 2K Czech a poté začal pracovat pro Bohemia Interactive, kde působí doposud.

Ondřej Myšák

Spoluzakladatel, webmaster a redaktor. Jeho doménou jsou interaktivní média.