Hry a zábava
Autobus CK DAKA simulátor
3D hra v prehliadači: odvez autobusom pasažierov k európskym pamiatkam včas a bez nárazov
Web
O projekte
3D webová hra, v ktorej hráč šoféruje zájazdový autobus z Bratislavy do jednej z ôsmich európskych destinácií. Po ceste zastavuje na zastávkach, naberá pasažierov, vyhýba sa premávke a prekážkam a snaží sa dôjsť do cieľa v časovom limite s čo najspokojnejšími cestujúcimi. Hra je napísaná v čistom JavaScripte nad knižnicou Three.js, bez build kroku, a ako PWA funguje aj offline a dá sa nainštalovať na plochu telefónu.
Čo aplikácia vie
- 8 trás z Bratislavy (Pag, Rimini, Portorož, Slnečné pobrežie, Paríž, Atény, Rím, Londýn), každá s vlastnou 3D pamiatkou v cieli – napr. Eiffelova veža, Big Ben, Parthenón, Koloseum
- Zastávky s pasažiermi, ktorí nastupujú pri otvorených dverách autobusu, a minimapa trasy so zastávkami
- Spokojnosť pasažierov klesá pri tvrdom brzdení, rýchlosti nad 105 km/h, jazde mimo cesty, prejazde cez obrubník a nárazoch
- Premávka v oboch smeroch (osobné autá, SUV, dodávky aj protiidúce autobusy) a kužele na ceste
- Hodnotenie 0 až 5 hviezdičkami podľa času a spokojnosti, osobné rekordy pre každú trasu v localStorage a časový limit, ktorý sa s každou dokončenou trasou skracuje (o 4 %, najviac o 35 %)
- Náhodný dážď s rôznou pravdepodobnosťou podľa destinácie, more s plachetnicami pri pobrežných trasách a prelety lietadla nad hlavou
- Zvuk cez Web Audio API: procedurálny motor, vietor, dážď, klaksón, dvere, cúvanie a procedurálna hudba, voliteľne hymna CK DAKA
- Ovládanie klávesnicou a myšou (kamera) na počítači, dotykové tlačidlá na mobile s ručným prepínačom
- PWA s manifestom a service workerom (network-first, offline z cache), inštalovateľná na plochu
Technicky zaujímavé
- Celý 3D svet (cesta podľa krivky, mestské siluety, stromy, pamiatky, autobus s logom) je generovaný v kóde z primitív Three.js a procedurálnych textúr, bez externých 3D modelov
- Všetky zvuky okrem hymny sú syntetizované za behu cez Web Audio API – motor mení tón podľa rýchlosti
- Žiadny build ani package manager: statické súbory nasadené priamo z GitHubu cez Plesk Git