For the most part the project turned out basically how I had imagined it from the start. There are, however, a few directional decisions at the start that I considered like having it play closer to something like Berzerk that never made it past the brainstorming phase but would've been cool to include. The #1 thing about this project that I'm unhappy about is how long it took me to finish it for a variety of reasons. If I was to remake the game from scratch right now and actually locked in I could've had it done in 2 weeks or less, but instead it took 7 months of putting in an hour or two per week. Development actually started as my Programming in Game Engines final, where I had to get a demo together in an engine I had never used before , and this informed almost all aspects of the game's development from the early spaghetti code issues to the over engineered changeling behavior.
There were multiple full months of complete inactivity on the project which in hindsight is completely on me losing excitement for the project. The #1 skill I absolutely need to start to get better at is hunkering down and actually finishing the projects that I start. When I feel like I'm running out of the fun parts of doing a project I start to anxiety myself into a complete progress deadlock
At the time of writing the game is still not quite yet released, I did a playtest a few months back and got a lot of valuable feedback but the name of the game since has been bug fixing and polish. Writing this right now is me procrastinating fixing a bug within the bossfight where the player would keep contact-killing enemies even when they're within the death state.
The most important takeaway from this project though is that I'm unimaginably better at using Godot than I was when I started, and my next project should go a hell of a lot smoother now that I have a somewhat decent idea of what I'm doing. Shame I'll probably procrastinate the hell out of that too.
I opted to try not to just yoink code from online tutorials, with a few exceptions like the state machine implementation. Scripts like my Spawn Pooling, points combo system, and lives were written 100% by hand, only looking at documentation for specific Godot functions. That being said, I still maximized the everloving hell out of my state machines, with the changelings having 19 behavior states based on different transformations and movement.