Dear friend
I think I've identified the fundamental reason as to why I sucked at sticking to game dev in the past.
In a word: Perfectionism.
I have worked with C# for a little under 20 years. Over that time I've gained remarkable fluency and development speed. But along the way, game dev became less of “how do I do this?” and more “how do I do this properly?” and my mind optimised for building abstractions over systems to make the code robust, professional, and “correct”. A first person shooter? Easy, ammo int and listen for input to fire the gun. An actual weapon system with different ammo types for different guns, and fluid animations to match, with projectile bullets instead of raycast? Now there's a challenge. My mind had trivialised the goal to the point where the original goal wasn't a challenge anymore, so I invented artificial challenges for no reason. But I spent so much focus on making the code and the game perfect, that I forgot I was making a game at all. So nothing got completed, because it wasn't “perfect” enough for my standards. The fact that Unity uses C# trapped me in this loop for a very long time.
I've been learning Godot, and specifically learning GDScript. It's forced me to leave the “expert programmer” ego at the door. I am using a language I'm unfamiliar with, with the sole goal of “learn the language / engine”. I have conceded from the start that my code is jank, that my implementation is jank, and that I have a very limited understanding of how Godot works. And yet, I finished a Pong remake in a day. I finished a Breakout clone a couple days later.
very doge
jk my mom hasn't played the game
The win/lose screens you see above is my brain finally giving me permission to be jank and silly, because my code is jank and silly. I have learned to stop taking this process so seriously and to simply have fun with it.
“how did u lose? u r bad at games. my mom could beat this game.” This is not something you'd find in a polished Breakout Clone #4096. This is not something you'd find in a game that takes itself too seriously. This is something that comes from me simply having fun with it and injecting a small piece of me into my work. And that makes it mine.
My code is jank, and that's okay. My game is jank, and that's okay.
Embrace the silliness.