Rozsda és dicsőség DEVLOG #5: defektet kap a mentális model

Ha tetszett, oszd meg ismerőseiddel!

Az AI-val támogatott fejlesztés egyik legfurcsább problémájába most futottam bele igazán: egy idő után már nem feltétlenül ugyanaz a rendszer él a fejemben, mint ami a dokumentációban szerepel, és pláne nem ugyanaz, mint ami ténylegesen fut a játékban.

A versenyrendszer optimalizálása közben ez elég látványosan kijött. Egyik este még tele vagyok energiával, találok három problémát, kettőt megoldok, eszembe jut négy jobb ötlet, másnap pedig azon gondolkodom, hogy van-e ennek az egésznek egyáltalán értelme. Igazi érzelmi hullámvasút tud lenni, főleg akkor, amikor egy rendszer látszólag teljesen érthetetlenül viselkedik.

Az egyik ilyen eset egy pályaszakaszhoz kötődött. Esőben beléptem egy szakaszra, az autó sebessége pedig egyszer csak csökkent. Nem csúsztam meg, nem játszottam ki lassító lapot, mégis eltűnt 15 km/h. Elsőre hibának tűnt. Aztán kiderült, hogy nem volt az: a szakasz eredeti terve szerint esőben sárossá válik, és belépéskor automatikusan lassítja az autót. A szabály régóta benne volt a rendszerben, csak sem a felület, sem a korábbi napló nem kommunikálta.

Ez önmagában egy egyszerű UI-probléma lenne, de közben rámutatott valamire, ami sokkal kellemetlenebb. Én már nem emlékeztem arra, hogy ennek így kell működnie.

AI nélkül egy ilyen mechanikát valószínűleg végig én írnék meg. Mire elkészülne, pontosan tudnám, hol van a kódban, milyen feltételek mellett fut le, és miért. Claude-dal viszont elég néhány mondatban leírnom egy módosítást, és percekkel később már működik valamilyen formában. A rendszer emiatt olyan gyorsan változik, hogy a saját mentális modellem egyszerűen nem mindig tud lépést tartani vele.

Erre rátesz még egy lapáttal, hogy az AI sem mindig tökéletesen implementálja azt, amit kértem. Előfordul, hogy egy szabály egyik fele már bekerül, a másik része nem, a UI pedig még egy harmadik verziót tükröz. Közben ott marad egy régebbi dokumentáció is. Így könnyen kialakulhat három párhuzamos valóság: ahogy én emlékszem a rendszerre, ahogy a dokumentáció szerint működnie kellene, és ahogy a kód ténylegesen működik.

Ez egy furcsa fajta mentális model deficit. Nem az a gond, hogy nem értem a saját játékom működését, hanem hogy időnként egy korábbi verzióját értem.

A versenyrendszernél én magam is rontottam ezen. Túl hamar próbáltam érdekesre csinálni a pályákat. Mielőtt az alap tempó-, kezelhetőség- és motorhőrendszer igazán letisztult volna, már jöttek az esőfüggő szakaszok, belépési hatások, különleges kijárati bónuszok, sebességkorlátok, sáros utak és egyedi veszélyek. Papíron mindegyik jó ötlet volt. Együtt viszont rengeteg olyan szabályt hoztak létre, amelyek működnek ugyan, csak egyre nehezebb követni, hogy pontosan mikor és miért.

Utólag valószínűleg jobb sorrend lett volna először unalmasan stabilra csinálni az alapokat. Legyen teljesen egyértelmű, hogyan gyorsul az autó, miből számolódik a haladás, hogyan fogy a kezelhetőség, mit csinál a motorhő. Csak ezután kellett volna elkezdeni fűszerezni a pályákat.

Most ezért fordított irányban dolgozom. Nem új mechanikákat rakok rá a versenyre, hanem elkezdtem kiírni mindent. Miért változott a sebesség? Miből jött ki a kezelhetőség? Mi emelte a motorhőt? Milyen szakaszhatás futott le? A játék már nem csak végrehajtja a szabályokat, hanem el is mondja, mit csinált.

És meglepően sok minden kiderül belőle.

Olyan jelenségek, amelyek elsőre bugnak tűnnek, néha teljesen szabályos működések, csak korábban láthatatlanok voltak. Máskor éppen fordítva: a napló mutatja meg, hogy két régebbi rendszer furcsán él egymás mellett.

Talán ez az AI-val támogatott fejlesztés egyik kevésbé látványos ára. Sokkal gyorsabban lehet haladni, sokkal könnyebb ötleteket kipróbálni, viszont könnyebb elveszíteni a pontos képet arról is, hogy végül mi került bele.

A kód gyorsabban változik, mint ahogy a fejemben lévő játék frissül.

Most ezért egyre fontosabbnak érzem, hogy legyen egyetlen, rövid, aktuális leírás arról, hogyan működik ténylegesen a verseny. Nem arról, hogyan működött két hete, és nem arról, hogyan szeretném, hogy egyszer működjön.

Hanem arról, hogy most, ebben a buildben, mit csinál.

Mert különben egy idő után már nem csak a játékosnak kell tutorial a versenyrendszerhez, hanem nekem is.


Ha tetszett, oszd meg ismerőseiddel!