Plošinovka I23

V říjnu 2023 jsem se v rámci tvůrčí výzvy Inktober pustil do tvorby plošinovky.

Samozřejmě, už si jí chcete zahrát. Ok, dám vám odkaz, zahrajte si a pak se vraťte, a já vám povím jak vznikala. Hra je zde: https://vatoz.itch.io/i23 , ovládá se šipkami či WASD, při každém načtení se náhodně vygeneruje mapa.

Inktober

Inktober je celosvětová říjnová akce, kdy každý den kreslíte tuží či inkoustem na zadané téma. Už řadu let se toho účastním (asi od kovidu), jeden rok jsem z obrázků od lidí z naší skupiny udělal karty na Inktober Dixit (vydáno nákladem +-30 sad), loni jsem fotil Lightpainting & malování světlem.

Letos jsem na výzvu pozapoměl, takže až druhého jsem se pustil do prvního tématu. Věděl jsem, že si nechci témata rozmýšlet dopředu, že se nechám vždy inspirovat daným tématem + postupně budu hru ladit, vylepšovat. Takový malý scrum.

01. Dream

Hráč je jen červený čtverec, čtyři typy pevné země, postýlka jako cíl, který zatím nic nedělá. Hra už se dá hrát. Vytvářím github repository, publikuji na itch.io, a následně vytvářím Github Actions skript, který vždy novou verzi publikuje. Jsem za to rád, nemusím nic kopírovat, nahrávat, a pro takovýhle hobby projekt mi to ušetří spousta času. (Časem tam ještě doplním, že mám jet jen na branchi main)

02. Spider

Pavučina s pavoukem, který se spouští nahoru a dolů, navázaný na tick – čas běhu mapy. Zatím pavouk neublíží, protože hráč nemá životy.

03. Path

Jediné téma, které řeším jen novým kódem. Přidávám viewport – „okno“ kterým se hráč kouká na mapu akteré může skrollovat. Díky tomu mohu mít mnohem širší mapu.

04. Dodge

Přidávám meteority, které rytmicky padají, šlehají z nich plameny, tvoří kráter. Zatím stále hráč nemá životy, tak se jim nemusí vyhybat.

05. Map

Přidávám první dva mraky, které lítají na pozadí. Časem se přidají další, změním jejich velikost, rozřadím je do vrstev mezi pozadí.
Po publikování ještě přidávám do mapy kytku a strom jako dekorace.

06. Golden

Zlaté mince, které můžete sebrat, zobrazuji počítadlo.

07. Drip

Kapky kapající ze stropu. Animace s hromadou snímků (asi 18).
Protože je opruz přidávat obrázky s animací na mnoho míst v podobě bambiliónu řádků, přidávám Spright, kterým z hromady obrázků/sprite udělám jeden velký, ze kterého vykreslím vždy jen část.
Dlouhodobě mi to ušetří spoustu nanicovaté práce a řádků kódu.


08. Toad

Tohle téma šlo samo, tam kde kape voda, tam se může občas objevit žabička.
Nic nedělá a asi ani dělat nebude.

09. Bounce

Trampolína, která hráče (stále červený čtverec) odrazí výš. Po tématu ještě přidávám paralakticky zobrazované čtyři vrstvy krajiny v pozadí.

10. Fortune

Truhlička plná zlaťáku, a v uživatelském rozhraní v případě velkého množství mincí kreslím bankovky.

11. Wander

Cestovatel, konečně se ze čtverce stává postava, v tu chvíli ještě se žlutými vlasy.

12. Spicey

Přidávám chilli papričku. Poté, co jí sníte, na každém místě, ze kterého klávesou vyskočíte, vyroste nová.

13. Rise

Balón, který vás jednorázově vynese do výšky. A konečně se hráč může zranit, když zemře, vrátí se na začátek a na místě kde zemřel se přidá apartní hrobeček.

14. Castle

Téma si o to vysloveně říká – přidávám samostatnou zónu mapy ve které je rozpadající se hrad. Spousta grafiky a generování.

15. Dagger

Meč zaražený v kameni. Samozřejmě když ho seberete, stanete se králem. Což vám zatím nepomůže k ničemu navíc.

16. Angel

Poměrně jednoduchoučké – když potkáte anděla, můžete líp skákat.

17. Demon

Hezké navázání na existující mechaniku, když jste v chilli režimu dost dlouho, ďábel vám požehná a můžete skákat skrz zem vzhůru – když je jenom jedna.

18. Saddle

Když vlezete do portálu, ocitnete se na koni (bráno od Muybridge 🙂 ). Kůň může jen doprava, dá se z něj slézt.

19. Plump

Hromada práce v Gimpu, barevný míč (v několika variantách, přemýšlel jsem nad tím že by se mohl kutálet či odrážet.) Zatím jen překáží.

20. Frost

Už třetí zóna, s namrzlými bloky, kde, když se pohybujete, se už nezastavíte.

21. Chains

Přidán sprite co nic nedělá, na kterém je kostlivec v řetězech a nějaký úklid kódu.

22. Scratchy

Vylepšeno vykreslování hradu, je ještě rozpadlejší.

23. Celestial

Přidán měsíc do pozadí. Pomalinku pomalinku se hýbe, ale opravdu jen o ždibíček.

24. Shallow

Podzemí hradu je zatopené a voda přitéká. Jen král může otočit kohoutem. Hezké uzavření existující mechaniky.

25. Dangerous

Obří pavouk, který lozí mimo mřížku. Křivé nohy, stálý hlad. Taková Odula.


26. Remove

Některé podlahy hradu jsou v tak špatném stavu, že když na ně dupnete, začnou se drolit.
Dvanáct framů animace, troška logiky.

27. Beast

Hra už se dá dohrát, a v tu chvíli se přepne do NewGame+, kde sbíráte houby. (Zdravím TMFR)
A bestie z č. 25 dostane svou lidskou stránku.

28. Sparkle

Ohňostroj po dokončení hry.

29. Massive

Lehce buggy kód. Když vypijete lahvičku s jedem, po snězení každé houbičky o trochu vyrostete.
Příjemné vykročení z pravidelnosti mřížky.

30. Rush

Rozšířil jsem možnosti houbiček. A přidal vypravěče, který provází příběhem.

31. Fire

Majáky vzplály! Gondor volá o pomoc! Úplný konec hry, který se zobrazí, když se z konce vrátíte zpátky na začátek.

Hru jsem dofinišoval 20. listopadu, neplánuji žádný další rozvoj.
Dohromady má asi 170 sprite – jednotlivých obrázků – většinu v mřížce 32*32.
1199 řádek kódu v js, +js soubor publikující jednotlivé sprite.
Mám zaznamenáno 87 commitů – jednotlivých verzí hry. Občas jsem pushnul i něco, co nebylo schopné běhu, nebo mělo zapnutou nějakou experimentální vlastnost.

Kód je k nahlédnutí na https://github.com/vatoz/i23





Můžete si uložit odkaz příspěvku mezi své oblíbené záložky.