IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Logic

Hra se nachází na adrese logic.towns.cz

Záměr

Mým cílem bylo vytvořit 3D Walking simulátor hru, fungující v prohlížeči, která by byla zároveň plnohodnotnou single-page application. Chtěl jsem se vyvarovat vyrobení nějaké uzavřené škatulky, která se pouze vloží do nesouvisející html stránky, jak je tomu např. u Flash nebo Java appletů, popř. špatně udělaných JS aplikací.

Stav hry (kde se hrdina nachází + co má aktuálně za klíč) se promítá do URL adresy. To přináší oproti "uzavřeným" aplikacím několik výhod:

  • Hra reaguje na změny URL při klikání na zpět či vpřed.
  • V jakémkoliv stavu hry můžu vzít URL a to sdílet.
  • Pokud mi spadne prohlížeč, po obnovení se obnoví i stav hry z URL.
  • To samé platí, pokud hru rozehraji na jednom zařízení a chci ji dohrát na jiném, které mám synchronizované.
  • Můžu si udělat "save" přidáním do záložek (nebo systému Pocket...).

Na její vytvoření jsem použil svůj engine pro tvorbu 3D webů (postavený na BabylonJS - WebGL engine napsaný v TypeScriptu | viz. http://www.itnetwork.cz/…79e285c227b9).

Omluv prosím nedokonalosti jako jsou např. ne úplně ideálně optimalizované levely pro slabší zařízení (nejhůře je na tom hned první level Město, ostatní jsou výrazně rychlejší.). "Roztahané" textury. Holost levelů... všechny věci chci postupně napravit.

Verze

  • 0.0.1
    • Vydání pro soutěž GeekWork 2016

Příběh

Město

Začínáš v evakuovaném městě, které se stane terčem jaderného útoku. Tvým cílem je co nejdříve uniknout do úkrytu. Ten je však skryt za mnoha bránami, ke kterým musíš najít správné klíče. Ve tvém hledání ti pomohou žluté šipky na zemi. Ty musíš proběhnout buď budovami nebo ulicí po levé straně. V poslední budově se dostáváš do další ulice.

Ulice

Procházíš malými nebezbečnými můstky nad ulicí. Postupně musíš odemknout modré, červené a zelené dveře. Za zelenými dveřmi je schodiště do protiatomového úkrytu. Pozor, některé klíče jsou pouze matoucí.

Začít hrát přímo level Ulice

Bunkr

V bunkru se můžeš řídit podle zeleného koberce a žlutých šipek, ty tě dovedou až k bráně do Podzemního města, ta je však uzamčená a ty musíš najít klíč.

Začít hrát přímo level Bunkr

Podzemní město

Začínáš na vrcholu vysoké podzemní věže a sestupuješ pořád dolů. Nic zde není zamčené, avšak jedno schodiště je neprůchozí. Je na tobě, jak tuto překážku překonáš. Až z věže vyjdeš, půjdeš po mostě. V jeho středu se nachází rozbočka, do cíle hry se jde vlevo, avšak cíl je uzamčený. Je proto potřeba najít klíč v horním podlaží druhé podzemní věže.

Začít hrát přímo level Podzemní město

Fungování hry

Hrou pouze procházíš, nemáš žádné zbraně. Některé dveře jsou však uzamčené a ty k nim musíš najít správný klíč (barevné kuličky). V jednu chvíli můžeš mít pouze jeden klíč. Ve hře jsou také teleporty (černé kuličky). Dávej si také pozor, abys nespadl do propasti.

Ovládaní

Klávesnice

[W][A][S][D][Q][W] nebo šipky

Myš

Pokud chceš ovládat hru myší. Klikni na ikonku ... nahoře vlevo.

Dotyková obrazovka

Dotykem na levou stranu obrazovky chodíš, pravou se otáčíš.

Další

Ve hře je možné se pohybovat i pomocí prohlížečových tlačítek zpět a vpřed.

Použité technologie

Frontend

Backend

Další

Hodnocení poroty

Jméno Slovní hodnocení Body
Programátorská soutěž GeekWork 2016 David Čápka 3D bludiště, posunuté o level výše. Levely nejsou omezené jen na kolmé stěny, ale působí jako plnohodnotné modely. Hra je založena na jednoduchém mechanismu, že člověk udrží vždy jen klíč jedné barvy, funguje to lépe, než zbytečně složité úkoly. Velmi příjemná záležitostí jsou 100% fungující kolize, vysloveně jsem si užíval „otírání“ se o zdi, což je fyzikální kámen úrazu naprosté většiny 3D her (a i mojí, co jsem kdysi psal). Velikost levelů je velká tak akorát, obtížnost také tak akorát, člověk trochu bloudí, ale ne tak, aby jej to nebavilo, čili i hratelnost se povedla. Když bych měl přeci jen zaběhnout do nějaké kritiky, určitě jde o textury. Jsou špatně vybrané i špatně namapované, díky čemuž výsledná hra vypadá zbytečně tak nějak nesladěně, jakoby sešitá z různých částí, co k sobě příliš nepasují. Doporučoval bych použít nějaký existující texture pack a dát si pozor na počet opakování textur (někde jsou moc rozmazané, někde je zas mockrát vedle sebe, což vede ke snížení výkonu). Obecně by prostředí u tak dobře navržené hry zasloužila lepší kabát, trochu mi to připomíná starého Dooma, kde se člověk pohyboval v takových podivných dungeonech, přičemž další hry od téže firmy již měly mapy více odpovídající reálnému světu (to je asi zas hlavně o těch texturách). Zde dávám desítku, protože se to opravdu vydařilo, děj je zpestřený věcmi jako atomovým výbuchem, nástrahami, na poměry soutěže to je overkill a pro mne jasný vítěz. 10
Programátorská soutěž GeekWork 2016 Ella Hra se mi líbí svou jednoduchostí, člověk sbírá koule otevírající dveře té samé barvy, místo nějakých cukrovinek nebo penízků, co se ve většině her sbírají, v jednoduchosti je síla. Působivé nebe, škoda, že na něm byly trochu vidět čáry. Prostředí se vyvíjí, na druhou stranu povrchy spolu často neladí. Hraní mě vysloveně bavilo, měla jsem pocit, že mám vždy kam jít, pocit otevřeného prostoru. Ozvučení pěkné, teleport a výbuch byly skvělé. Je vidět, že je hra dotažená do konce a musela dát určitě hodně práce. Velice vydařené. 10
Programátorská soutěž GeekWork 2016 Adam Ježek Pěkný nápad, hra dost potrápila hlavu. Detaily krajiny v dálce jsou pěkné, ale s jednoduchými texturami hry to neladí. Ve hře jdu tím směrem, kterým se koukám – takže i nahoru, což by se na ulici dalo zneužít ve prospěch hráče. Největším problémem hry je ale její náročnost. V Chrome byla chvílemi naprosto nehratelná, ve FireFoxu už o šlo lépe. 9

Galerie

Hra byla vytvořena v roce 2016.

 

Všechny články v sekci
Programátorská soutěž GeekWork 2016
Článek pro vás napsal Pavol Hejný
Avatar
Uživatelské hodnocení:
9 hlasů
/^(web )?(app )?developer$/
Aktivity