Witajcie!
3 miesiące temu podzieliłem się z Wami moimi przemyśleniami na temat robienia gier po godzinach (https://wykop.pl/artykul/7009715/node-farm-moje-przemyslenia-na-temat-robienia-gier-po-godzinach) i wiem z komentarzy, że część z Was czeka na kolejną część opowieści. Stąd mój kolejny wpis.
Przy okazji postaram się odpowiedzieć na część pytań z poprzedniego artykułu i być może zachęcić Was do rozpoznania tematu tworzenia gier - zainteresowanych zapraszam do czytania :)
Jak wygląda praca nad grą po godzinach?
Nie jest łatwo, ale się da. Zależnie od tego na jakim etapie życia jesteście i jakie macie zobowiązania, tak będzie łatwiej lub trudniej. Z doświadczenia wiem, że zdecydowanie prościej było mi pracować po godzinach mieszkając w domu rodziców i mając na głowie jedynie szkołę i życie osobiste. No ale jak wiadomo - osobiste doświadczenia bywają różne.
Wszystko kręci się wokół efektywnego spalania energii, którą możemy poświęcić na różnego rodzaju aktywności w ciągu dnia. A czasem bardziej wokół priorytetyzacji i optymalizacji procesów codziennego życia. Od najprostszych rzeczy w stylu przygotowywania większej ilości jedzenia w taki sposób, by dało się je mrozić i mieć na zaś na obiad, po trudniejsze - jak np. planowanie tej dodatkowej pracy tak, by chcieć w ogóle do niej siąść po "prawdziwej pracy" (jak lekcje w szkole czy "etat w robocie") i się przypadkiem nie wypalić.
A co jeśli ma się dzieci?
![](https://wykop.pl/cdn/c3397993/7de94bd47e6882108b6d59abe51e39d8d88a7ca587721ee19f55f4e7f9cede59,w800.gif)
Wtedy jest jeszcze trudniej. Nagle do codziennej pracy, Waszego "hobby" (w tym przypadku - pisania gier) dochodzi wychowywanie dziecka (i pielęgnowanie związku, jeśli wcześniej z jakiegoś powodu, nie przykładaliście do tego uwagi). Czasem trzeba z czegoś zrezygnować, czasem da się wszystko ze sobą pogodzić - ale i tak to wszystko wpływa na Wasze zasoby energii i na to jak ją spalacie. Czasem trudno jest wykombinować jakiś sprytny system, który się sprawdzi, zwłaszcza, że w miarę tego jak Wasz maluch będzie rosnąć, tak Wasze problemy będą się zmieniać. Jest trochę stresu.
Jeśli jesteście w związku i macie dziecko to najważniejsze jest to, byście nauczyli się razem zgodnie pracować jak jeden organizm.
A przynajmniej ja tak uważam. Sprawiedliwy podział obowiązków, współpraca i co najważniejsze - dialog. Widziałem bardzo wiele związków znajomych i przyjaciół, które rozpadły się lub dogorywają przez to, że najbliższe sobie osoby nie są wobec siebie otwarte. Ważniejsze jest to by sobie nawzajem pomagać, niż to by indywidualnie robić to co nam się podoba.
I w pewnym momencie pewnie będziecie chorować tak samo jak my. Prawie non-stop po tym jak dziecko pójdzie do przedszkola. Od ostatniego posta już zaliczyliśmy covida i multum niezidentyfikowanych chorób. Zobaczymy jak będzie na wiosnę.
Czy warto w tych czasach pisać grę?
![](https://wykop.pl/cdn/c3397993/cbb4c1f0324cd206e6511f4b7ef4591a272c56980371f09a96691087ac06050b,w800.gif)
Warto i nie warto. Gdy piszę ten artykuł pracuję jako programista i nie ukrywam, że gdybym chciał przejść na pełny etat jako indyk twórca gier, to słabo to wygląda porównując zarobki i "bezpieczeństwo zatrudnienia". No, ale to zależy.
Ostatnimi czasy jest głośno o fali zwolnień w większych firmach w branży (nie tylko gamedev, ale także szerokopojęte IT) i ogólnej recesji na rynku gier. Czy to wpływa na Twoją gierkę, którą sobie robisz po godzinach? Nie - no chyba, że szukasz wydawcy/inwestora. Ci, akurat zaczynają się zamykać na ryzykowne oferty.
Innym problemem jest przesyt gier na rynku (a przynajmniej na Steam). 14k gier wydawanych rocznie brzmi zatrważająco, ale to też ma swoje drugie dno. Podsyłam ciekawy artykuł od jednego ze znawców branży (po angielsku): https://howtomarketagame.com/2024/01/11/why-14000-games-released-on-steam-2023-isnt-that-bad/.
Zdecydowanie rynek jest bardziej wymagający niż 10 lat temu. Ale czy warto się poddawać? Trudno powiedzieć. Czas pokaże :)
Jaki silnik do robienia gier wybrać?
Jaki Wam wygodnie. Ja piszę swój własny opierając się na języku Scala i bibliotece libGDX. Głównie przez przyzwyczajenie i przez to, że lubię swój stos technologiczny. Od czasu do czasu mam podejście do czegoś nowego, ale jeszcze mi się nie udało skończyć na czymś innym niż "meh, wracam do siebie". Kwestia gustu.
Najbardziej popularne to Unity, Unreal Engine i Godot. Wybór tak naprawdę zależy od potencjalnych zastosowań, zespołu, narzędzi których chcecie używać i licencji. Osobiście jestem fanem otwartych źródeł jeśli chodzi o "zależności" pod moje aplikacje. Od czasu do czasu dogaduję się z twórcami bibliotek i dodaję coś od siebie. Fajnie jest móc dopisywać jakieś nowe ficzery jeśli twórca biblioteki da sobie z nią spokój.
Unreal Engine (UE) najwięcej dobrego wnosi jeśli chcecie używać bardziej realistycznej grafiki w Waszych grach. Unity to silnik o bardzo szerokim spektrum zastosowań, a Godot to jego młodsza alternatywa z otwartymi źródłami - która "niby ma mniejsze możliwości" (tak mówią w sieci), ale tego nie sprawdzałem - za to prężnie się rozwija po ostatnich przebojach licencyjnych Unity (zajawka: https://gamerant.com/unity-ceo-john-riccitiello-stepping-down-pricing-controversy/ ).
Jak działa algorytm Steam?
W oparciu o źródła Steam i analizy niezależnych "guru branży", wiemy kilka rzeczy:
- Steam sam z siebie nie promuje gier, dopóki nie uzna, że na siebie zarobią (a przez to przy okazji na niego),
- wishlisty mają ogromne znaczenie w kwestii priorytetyzacji list nadchodzących tytułów i np w ramach eventów na Steam,
- liczba review (recenzji) dla gier dostępnych do kupienie wpływa na promowanie przez Steam. Uznaje się, że 10 - to minimalna liczba review, która sprawia, że Steam bardziej promuje grę,
- review od graczy, którzy dostali grę za darmo (gifty, klucze testerski itp) - nie mają żadnego wpływu na algorytm (są bezużyteczne dla twórcy gry),
- promocja min 20% triggeruje maile do wszystkich wishlistujących.
To tak w skrócie.
Jak idzie z moją grą?
![](https://wykop.pl/cdn/c3397993/295eb8cca6120d5716c52782ce0ac5bc9c71a3bd3c51fb5f1536cee40ab37838,w800.gif)
Do przodu. Od ostatniego wpisu dorobiłem wiele nowych rzeczy (które po kryjomu przemyciłem w gifach w artykule), a liczba wishlist w Wielkanoc przebiła 4000.
Z rzeczy, które m.in. zaimplementowałem:
- kupowanie nowych wysp,
- nowe węzły (node - te bloczki, z których składa się gra),
- prosta logika na bazie bramek logicznych, czujników i przełączników,
- crafting - czy raczej "gotowanie" w tym przypadku - łączenie przetworzonych składników w konkretne dania,
- kupowanie wysp z różnymi modyfikatorami wpływającymi na inne wyspy + tworzenie buildów (wynajdujemy nowe węzły zależnie od tego jaką wyspę kupimy),
- zdarzenia losowe,
- tutorial/hinty.
Co jeszcze jest do zrobienia:
- poprawienie wydajności dla słabszych maszyn,
- efekty dźwiękowe,
- inne tryby rozgrywki,
- więcej zawartości,
- tryb kooperacji wieloosobowej,
- wsparcie dla kontrolerów, Steam Deck, achievementów Steam, zapisów w chmurze,
- wsparcie dla modów.
A w przyszłości jeśli się uda:
- wersja na urządzenia mobilne Android/iOS,
- wersja na konsolę Nintendo Switch.
W tym tygodniu będę pracował nad wydajnością - jest tam kilka "naiwnych" algorytmów, które muszę wymienić - no i powoli będę zbliżał się do wydania wersji pod testy alpha, beta i w końcu demo, które będzie dostępne na Steam Next Fest June 2024.
Mam nadzieję, że mój wywód się fajnie czytało! Piszcie śmiało w komentarzach co myślicie, a zainteresowanych samą grą zapraszam do wishlistowania i wstąpienia na serwer discordowy: