Last July I released an extremely simple and niche checkbox utility, mostly as a programming exercise. A new version of it is up as of a few days ago, and
you're welcome to check it out (save and load only works on the
downloadable exe though). This entry isn't really about that at all.
A little over two years ago I decided to migrate from the GameMaker engine which I'd been coding in comfortably and successfully for nearly 15 years at that point. The software had shifted to a subscription service, a practice I'm vehemently against especially when it happens to something I had already put several hundred dollars into. I trawled around for another engine to learn before settling on Godot, a comparatively new upstart that had a lot of promise and more importantly, was open source and wouldn't try to charge me every month to keep using it.
I learned and experimented with Godot on tutorials of vastly varying quality, test projects, new ports of some of my ancient awful QBASIC atrocities, and some ultra-niche simple utilities like the above-mentioned To-Do List, using some of the updates on this site as a light journal of my experience. It's a fine engine, particularly for an open source one, and it's also not for me.
Here's my largest gripes:
As I called it back in February 2022 when I was starting with Godot, interacting with variables of colliding instances is infinitely simpler in GameMaker's approach than in Godot's, at least to the extent that I came to understand it since the official documentation often assumes prior knowledge and the vast majority of the tutorials and guides out there are confusing and sometimes even actively hostile when they're not completely wrong or similarly don't bother explaining their own basic functions.
Icons of executables aren't customizable from the default picture without massive efforts and third-party programs that only sometimes work; this has been a constant feature request for multiple years now apparently, outlandish.
The tiniest games and apps export at a minimum of ~35mb which, while not the dealbreaker it would have been in the days of dial-up, still feels bizarre not to include the option to leave out unused modules -- why do I need the 3D engine included in my completely 2D build?
The exported executables sometimes open and sometimes don't seemingly at whim, at times depositing multi-gigabyte log files into my roaming appdata directory on the occasions when they don't open.
HTML5 exports from the latest version 4 are broken and now require additional htaccess settings or third-party javascript files to be appended, something version 3 never required.
Accidentally opening a project made in a previous version of Godot in a newer version destructively auto-converts assets and makes them unloadable in the previous version.
There's others, but I've barfed enough negativity into the void for now.
Anyway, I'm back to using GameMaker, as its publisher very recently retired their subscription service in favor of a very affordable one-time purchase (unless you want to port to consoles, which I currently do not). That's almost certainly a reaction to competing engine Unity's absolute greed in September that they're still unsuccessfully trying to walk back from -- look that up if you aren't aware, their stupidity is fascinating.
It took me all of fifteen minutes on an Asteroids clone tutorial to get back into GameMaker's approach to coding, and it felt like an old habit. It's far easier to work on projects and approach my concepts than I've experienced the last two years fighting uphill against Godot, though that's more down to my long history and familiarity with GameMaker than any indictment on Godot's node and scene based approach which does have its own unique elegance.
If I had put another couple of years or so into Godot, I likely would have gotten versed and comfortable using it. At the end of the day though, I'd really rather spend that time making more games, concepts and apps in a language I'm already at least intermediate at and that has consistently competent documentation, so that's exactly what I'm going to be doing now.