Własna gra czy to możliwe?
Tak sobie ostatnio myślę czy może spróbować stworzyć samemu jakąś prostą grę. Lubię tycoony i kolej to może właśnie coś w tych klimatach. Oczywiście nie żadne 3d, bardziej coś opartego o tabelki, tekst i dane, jakieś obrazki pociagów itd, a w zamian postawić na większy realizm, opóźnienia, zmienną pogodę itd. Problemem jest jeden i to chyba duży ... Nie mam pojęcia o kodowaniu, nie znam żadnego języka, nie znam nawet najmniejszych podstaw żadnego silnika do tworzenia gier. W grę wchodzi tylko współpraca z jakimś AI który ogarnia kodowanie. Czyli opisuję co chcę AI zamienia to na kod, testuję, poprawiam, rozbudowuję, a AI prowadzi mnie za rączkę jak kompletnego laika. Jak myślicie czy to możliwe? Czy zanim zrobię pasek z zegarem który będzie w grze odliczał czas potrzeba kilka miesięcy na studiowanie podręczników i oglądania poradników?
Da się, ale:
1) licz się z tym, ze będzie to bardzo czasochłonne
2) nie wiem czy darmowe limity na claudzie (bo on by się najlepiej nadał) wystarczą, na płatnej subskrypcji da się na pewno
3) Tycon będzie dość trudny do zrobienia z tego powodu, ze musisz bardzo dokładnie opisać wszystkie mechaniki, zależność, balans itd. W prostej strzelance z jedną czy dwiema spluwami opis mechaniki uda się zmieścić spokojnie w 200-300 słowach, w wypadku tycona licz się z kilkudziesięcioma stronami tekstu (i to w wypadku takiego prostszego) i ciągłymi poprawkami.
4) zapomnij o porządnej optymalizacji
5) musisz mieć zainstalowanego agenta z dostępem do lokalnych źródeł, w wersji przeglądarkowej przez chata z przeglądarki zapomnij, on ma za mały context.
Z innych tematów, jak wspomnieli poniżej, grafika 3d jest dzisiaj paradoksalnie prostsza do ogarnięcia niż 2d, choćby ze względu na liczbę gotowych narzędzi i assetów.
Pamietaj, ze jak juz skonczysz, to:
1. wydajesz tylko na Steamie
2. 15 wersji jezykowych (wlacznie ze Slaskim i Kaszebskim)
3. pelne spolszczenie
4. wszystkie dialogi mowione
5. najlepiej free to play ew za cene cheesburgera w macu
6. oczywiscie wrzuc tez na zatoke piratow, niech placa ci ktorzy uwazaja ze warto
7. nie uzywaj AI, bo przeciez to sie nie godzi
8. zatrudniajac innych plac im przynajmniej miljon, nie badz wyzyskiwaczem
I wtedy caly polski internet bedzie cie oklaskiwal.
Dobra koniec ściemy ;) Tak naprawdę wczoraj równo miesiąc minął odkąd zacząłem pracować nad tą grą. Mam płatną wersję gemini wiec to na nią padł wybór, choć wiem że niby claude lepszy ale on służy do poprawek i wyłapywania błędów. Generalnie z gemini pisze się całkiem spoko. Przed sesją warto podesłać mu kody na których akurat będziemy pracować, zrzuty ekranu i bez większego problemu zawsze się odnajduje. Dosłownie kilka razy zdarzyło się tak że coś pomieszał i grę wywalało, ale zazwyczaj w kilka minut udało się dojść do tego co było przyczyną. Wybór silnika padł na godot, tak jak pisałem nie mam o tym pojęcia więc po kolei każdy czat na mój opis tego co chcę robić sugerował że to najlepszy wybór. Ok to co udało się zrobić kompletnemu laikowi + AI w miesiąc, tak po pracy 2-3 godzinki albo do wyczerpania limitu wersji pro, bo na myślącym albo szybkim to odpada.
1. Kreator tras - mam 4 miasta, ale w każdej chwili mogę sobie dopisać kolejne, dystans miedzy nimi autentyczny, gra oblicza popyt miedzy nimi, czasy przejazdu, czas powrotu, skład 10 wagonowy pojedzie trochę dłużej niż ten z 1, bo uwzględniona jest masa składu.
2. Póki co mam tylko 1 lokomotywę i 1 typ wagonu, ale w każdej chwili mogę sobie dodać więcej, można je kupować, formować w składy, odpinać, przepinać miedzy składami, nieużywane są przypisane do rezerwy taborowej.
3. Działa warsztat gdzie pociąg można wysłać na szybki serwis prosto z trasy, albo zaplanować mu kilkugodzinny przegląd. Zużycie następuje wraz z przejechanym dystansem i zwiększa szanse na wystąpienie usterek, przegląd przywraca sprawność do 100%. Póki co mam dodanych kilka typów usterek, docelowo będą wpływać też np na komfort jak np awaria klimatyzacji itp.
4. Podgląd trasy na żywo - tutaj mam największy problem. Próbowałem z mapą, ale tego nie dam rady na pewno zrobić, wiec póki co mam po prostu dwie linie "tam i powrót" po którym sunie sobie ikonka pociągu. Oczywiście zachowany jest dystans, czas, przyśpieszenie, hamowanie,
5 Tablica do podglądu na żywo wszystkich pociągów i coś a'la papierowy rozkład gdzie można podejrzeć wszystkie kursy.
6. Pogoda, na razie na nic nie wpływa, ale podpięcie jej do systemu awarii i popytu to będzie kilkanaście minut pracy.
7. Budżet który już wszystko zlicza.
Wizualnie to na razie excel a nie gra ale to teraz najmniej ważne. Najważniejsze że w miesiąc od zera bez żadnego pojęcia udało mi się już coś zrobić. Główny rdzeń rozgrywki tak naprawdę jest stworzony. Pociąg już można kupić, wysłać w trasę, zabierze on pasażerów, zarobi pieniądze. Na początku planowałem autentyczne trasy, ale po pierwszych testach doszedłem do wniosku że przynajmniej na początek jeśli trasa będzie liczyła 10 przystanków to jest to zbyt skomplikowane. Tak wiec tutaj dość duże uproszczenie bo jedziemy tylko A-B-A.
Mysle, ze to jest mozliwe, ostatnio zrobilem w Claude przygodowkę point and click w trzema ekranami, piekna grafika 2d itd. w jakieś 45 minut od pomysłu do udostępnienia koledze jako grywalnego egzemplarza.
Wiec jesli w 45 minut da sie zrobic cos, co jest zblizone poziomem do Wacków (mialo swoje problemy, troche nieprecyzyjnie trafialo w obiekty, np. wejscie do klatki schodowej zrobil na rogu budynku, ale powtarzam: 45 minut), to pytanie co da się zrobić w np. 45 tygodni :)
Jak najbardziej możliwe. Jednak jeżeli nigdy z tym tematem nie miałeś do czynienia to może być ci ciężko ruszyć z miejsca. Bez większego problemu można pisać gry w html/css i odpalać je w zwykłej przeglądarce. Do pisania skryptów możesz użyć właśnie, np. claude. AI robione właśnie głównie pod kątem pisania skryptów. Potem chatgpt i deepseek. Wszystkie te chat boty działają właśnie tak jak napisałeś. Czyli opisujesz co chcesz uzyskać i wypluwa ci gotowy skrypt. Tylko musisz pamiętać że jeżeli jakiś system w html/css nie był zaimplementowany to tego ci nie napisze. Np. w html/css chcesz żeby ci napisał z których chat botów tańczącą tancerkę na scenie to samą scenę może zrobić ale już samą tancerkę już nie i zamiast takiej postaci możesz mieć np. jakieś latające kwadraty albo w ogóle nie będzie działać. Dlatego jest dobrze znać choć podstawy programowania w owym html/css. Ale takie chat boty też potrafią to tłumaczyć co można robić, a co nie jeżeli zadasz odpowiednie pytanie.
łatwiej ci będzie zrobić grę w 3d na unrealu. pobierasz gotowe assety i programujesz w blueprintach korzystając jednocześnie z pomocy chata gpt powinno ci się udać jeśli jest to coś w miarę prostego
Wszystko jest możliwe, ponieważ są na tym świecie rzeczy które się fizjologom nie śniły.
Kiedyś dawno temu też robiłem sobie taki eksperyment jak daleko zajdę z użyciem AI w robieniu gierki na Godot Engine. Postawiłem na grę z mechanikami jak ze starych części Ultima (konkretnie 4-ka), głównie na to, że grafiki ni cholery robić nie umiem ;)
Ostatecznie co mi się udało zrobić to "grę" gdzie można chodzić po świecie, rozmawiać z NPC(dialogi z systemem słów kluczowych, które sie wpisuje), interakcja z przedmiotami typu weź-opuść i prosty system ekwipunku(uwzględniał miejsca i wagę) + looting.
Powiem tak:
a) Musiałem używać nie tak rzadko własnych umiejętności programistycznych, żeby poprawiać kod po AI, szybciej mi było znaleźć usterkę niż męczyć się z mozolnym tłumaczeniem AI co jest nie tak
b) AI potrafi się "zapomnieć" zależności między systemami
c) NAPRAWDĘ trzeba tłumaczyć jak krowie na rowie o co chodzi, raczej na skróty myślowe mowy nie ma
Większość systemów, które implementowałem i tak nie działa jak powinna, bardzo łatwo je zepsuć, no i ogólnie wydaje mi się, że na jakieś roboty od zera może być ciężko. Nie chcę Cie zniechęcać, ale tycoon to trudna gra do implementacji. Logika, balans, masa zależności. Gdzieś zasłyszałem dawno temu, że pierwsza gra jaką się robi nie powinna być tą, która Nam się marzy. Ile w tym prawdy nie mam pojęcia, ale ogólnie się z tym zgadzam po własnych doświadczeniach.
Mimo wszystko jeśli się za to zdecydujesz zabrać, to życzę powodzenia. :)

Nie jest obecnie specjalnym problemem, chociaż wiąże się z kosztami (można zejść do jakiś 150 zł /miesiąc :D).
Od 5 miesięcy klepię grę taktyczną o konflikcie Polska/NATO vs Rosja i jestem na etapie, gdzie:
- mapy są proceduralnie generowane;
- jednostki funkcjonują poprawnie, brane są pod uwagę różne parametry od penetracji pancerza, niszczenia komponentów po morale;
- scenariusze działają poprawnie.
Gra obecnie wygląda tak jak na screenie po lewej, w pierwszym miesiącu wyglądała tak jak na screenie po prawej.
Początkowo pomagał Claude, obecnie bardziej Codex. Grafika to NanoBanana i własne grzebnie w rożnych narzędziach.
Myślałem, że ścianą od której się odbije będzie teren, ale obecnie nie jest już szczególnym blockerem.
To jest na Godot, bo nie ma tu 3D, a silnik dość "lekki".

smartboygod--> Ta gra ma już dość sporą bazę danych, liczy pole widzenia jednostek, mgłę wojny itp. Większość tego typu projektów powstaje dziś na Unity, uznałem, że GameMaker będzie raczej ograniczeniem. Co do drugiego pytania - tak, ale nie stanowią obecnie problemu.
twostupiddogs--> Bo to główna inspiracja. Steel Panthers przedstawiające pole walki post-2020 z usprawnieniami quality of life jak płynne oddalanie kamery, oddawanie kilku strzałów z karabinów maszynowych do jednostki piechoty zamiast upierdliwego klikania, narzędzia do LoS. Byłby miło mieć tyle nacji co kiedyś Steel Panthers, ale do tego potrzebna by była raczej społeczność.
Dobra koniec ściemy ;) Tak naprawdę wczoraj równo miesiąc minął odkąd zacząłem pracować nad tą grą. Mam płatną wersję gemini wiec to na nią padł wybór, choć wiem że niby claude lepszy ale on służy do poprawek i wyłapywania błędów. Generalnie z gemini pisze się całkiem spoko. Przed sesją warto podesłać mu kody na których akurat będziemy pracować, zrzuty ekranu i bez większego problemu zawsze się odnajduje. Dosłownie kilka razy zdarzyło się tak że coś pomieszał i grę wywalało, ale zazwyczaj w kilka minut udało się dojść do tego co było przyczyną. Wybór silnika padł na godot, tak jak pisałem nie mam o tym pojęcia więc po kolei każdy czat na mój opis tego co chcę robić sugerował że to najlepszy wybór. Ok to co udało się zrobić kompletnemu laikowi + AI w miesiąc, tak po pracy 2-3 godzinki albo do wyczerpania limitu wersji pro, bo na myślącym albo szybkim to odpada.
1. Kreator tras - mam 4 miasta, ale w każdej chwili mogę sobie dopisać kolejne, dystans miedzy nimi autentyczny, gra oblicza popyt miedzy nimi, czasy przejazdu, czas powrotu, skład 10 wagonowy pojedzie trochę dłużej niż ten z 1, bo uwzględniona jest masa składu.
2. Póki co mam tylko 1 lokomotywę i 1 typ wagonu, ale w każdej chwili mogę sobie dodać więcej, można je kupować, formować w składy, odpinać, przepinać miedzy składami, nieużywane są przypisane do rezerwy taborowej.
3. Działa warsztat gdzie pociąg można wysłać na szybki serwis prosto z trasy, albo zaplanować mu kilkugodzinny przegląd. Zużycie następuje wraz z przejechanym dystansem i zwiększa szanse na wystąpienie usterek, przegląd przywraca sprawność do 100%. Póki co mam dodanych kilka typów usterek, docelowo będą wpływać też np na komfort jak np awaria klimatyzacji itp.
4. Podgląd trasy na żywo - tutaj mam największy problem. Próbowałem z mapą, ale tego nie dam rady na pewno zrobić, wiec póki co mam po prostu dwie linie "tam i powrót" po którym sunie sobie ikonka pociągu. Oczywiście zachowany jest dystans, czas, przyśpieszenie, hamowanie,
5 Tablica do podglądu na żywo wszystkich pociągów i coś a'la papierowy rozkład gdzie można podejrzeć wszystkie kursy.
6. Pogoda, na razie na nic nie wpływa, ale podpięcie jej do systemu awarii i popytu to będzie kilkanaście minut pracy.
7. Budżet który już wszystko zlicza.
Wizualnie to na razie excel a nie gra ale to teraz najmniej ważne. Najważniejsze że w miesiąc od zera bez żadnego pojęcia udało mi się już coś zrobić. Główny rdzeń rozgrywki tak naprawdę jest stworzony. Pociąg już można kupić, wysłać w trasę, zabierze on pasażerów, zarobi pieniądze. Na początku planowałem autentyczne trasy, ale po pierwszych testach doszedłem do wniosku że przynajmniej na początek jeśli trasa będzie liczyła 10 przystanków to jest to zbyt skomplikowane. Tak wiec tutaj dość duże uproszczenie bo jedziemy tylko A-B-A.
No czy dam radę zrobić minimapę tego nie wiem. W sumie to chyba nawet nie jest potrzebne. Na razie sa 2 linie proste między punktem a i b, co symuluje tory, ikonki pociągów sobie po tym jeżdżą, zachowany jest dystans i czas przejazdu. Wypuszczasz co 15 minut pociąg i jest podgląd na linie Warszawa - Kraków jak pociągi idealnie o swoim czasie wyjeżdżają. A później wracają. Planuje też wprowadzić awarie czy losowe utrudnienia, co będzie generować utrudnienia i opóźnienia. Jeden pociąg się popsuje to 3 za nim też złapią przez to opóźnienie.
Fajnie, powodzenia. Też się bawiłem z gierka 2D i Claude agentem, expa w programowaniu jednak trochę mam. Mimo to uznałem, że szkoda czasu. Prędzej czy później, trzeba mocno wejść w silnik, składnię, optymalizację, a agent dosyć szybko potrafi robić spory burdel w kodzie. Jak ci się chce bawić, to możesz spróbować pipeline agentów, gdzie jeden architektem, drugi jest devem, trzeci testerem. Ciekawy eksperyment mógłby z tego wyjść.
I polecam ogarnąć agenta w jakimś prostym IDE typu Visual code, bo mnóstwo czasu i kontekstu zyskujesz, w przeciwieństwie do przeglądarkowej wersji.
Tak czy siak, dosyć łatwo dojść do ściany na vibe kodowaniu.
No szczerze to myślałem że dosyć szybko dojdę do momentu gdy AI zacznie tak mieszać, że wszystko się zacznie sypać ale póki co daje radę. Ja tam o kodowaniu nie mam pojęcia ale na oko łącznie mam jakieś 7-8 tyś linii i wszystko działa. Dosłownie kilka razy utknęliśmy na dłużej ale zawsze udało się problem rozwiązać. Do tego dałem wszystkie skrypty do Claude, i w kilka minut wypluł 20 stronicowy raport, opisał każdy skrypt co robi, z jakimi innymi jest powiązany itd, tak wiec szybko można zorientować się jeśli coś zaczyna szwankować.
Kiedyś to na Robloxie się robiło gry i jak grało dużo graczy to dało się nawet dużo zarobić, ale teraz przez te aktualizacje które mocno ograniczają dostęp do gier (szczególnie nowych) to bez płacenia może być bardzo ciężko.
Ok czas na mały update:
Trochę dodałem nowych rzeczy przez ostatnie dwa tygodnie.
1. Mam już 1 i 2 klasę wagonów. Każdy typ ma swoje ceny i potencjalnych pasażerów. Generalnie pasażerów podzieliłem na 4 grupy (biznes, turyści, studenci, praca) Każda grupa ma jakieś swoje preferencje, wrażliwość na cenę, pogodę, godziny w których jeżdżą itd. Przykład - podniesienie cen biletów dość mocno wpływa na studentów, ale mniej na biznes, słoneczna pogoda dodaje turystów itd.
2. Dodałem system reputacji - na razie wpływa na niego tylko cena biletu, ale można go będzie w przyszłości rozbudować. Wysoka cena da krótkotrwały wzrost przychodów, ale reputacja połączenia zacznie spadać przez co coraz mniej ludzi chce nią jeździć, a odbudowa zaufania trwa znacznie dłużej niż jego utrata.
3. Dodałem proste okno statystyk, obłożenie, liczba pasażerów dzienna, tygodniowa i to samo z zyskiem.
4. Okno zarzadzania trasą, gdzie możemy zmienić ceny, zobaczyć jak to wpływa na popyt, ogólnie zobaczyć ilu będzie mniej wiecej chętnych, modyfikatory wpływające na popyt, usunąć połączenie.
5. Przy tworzeniu połączenia od razu można sprawdzić bazowy popyt i to ile już w danym bloku godzinowym zapewniamy miejsc.
6. Każdy skład otrzymuje już okno harmonogramu na cały tydzień. Łatwo podejrzeć ile i w jakich godzinach wykonuje połączeń, kiedy zaplanować przegląd.
Niestety google z swoimi zmianami strasznie mi namieszało. Do tej pory wolałem pisać w jednym długim oknie bo Gemini ma chyba największą pamięć z wszystkich modeli i dość dobrze pamiętał ogólny zarys nawet jeśli czat trwał dwa tygodnie. Dziś po kilku promptach w tak długim czacie limit godzinowy się wyczerpał, gdzie wcześniej mogłem tak pracować przynajmniej 3 godziny. Tak wiec albo trzeba będzie zmienić styl pracy, albo przesiadka na claude który z zakładką "projekty" bardzo ułatwi szybkie otwieranie nowych okien bez zbędnego tłumaczenia, opisywania i wklejania skryptów.

Mały update. Poszedłem za radą