Building Blocks Postmortem


So I've had a few days since my submission to the GoGodot game jam (the first game jam I've submitted a project to!) to think about what went right, and what went wrong. The latter has been the larger focus of mine if I'm honest. It's been difficult not to beat myself up about coming short on what I wanted to achieve.

The regrets...

To start - what I uploaded, a puzzle game in which the objective is to just challenge yourself against your previous score (and yet lacking a high score recording system, an oversight I now regret!), was not the game I set out to make. Building Blocks was supposed to be a factorio-like automation game themed around nature, in which your shrubs produce branches, the branches produce leaves, and the leaves collect energy to transmit along branches back to the shrubs, which could then grow into new blocks and produce other blocks.

A lot of these systems are still in place, under the hood. There's an energy storage system per block, a rudimentary weather system simulated every new day, a fluctuating calculation of sun intensity based off of the time of day and the day's assigned weather, but very little of this is obvious in the finished product because I hid a lot of references to it. Obviously the ability to produce blocks with other blocks is still present, as that forms the basis of the completed project, but most everything else I planned didn't make it in.

A lot contributed to this crunch of scope.

External and internal aspects of development life led to a complete downsizing - which largely took place on the last day - of my initial idea, but it was necessary in order to actually get the project done in time.

My partner and I got a new puppy the second day of the game jam. He was long expected and planned for, but the little guy proved to be way more of a life disruption than I was initially anticipating! I somewhat naively thought that I would be able to just plan my day around his needs, and largely get on with everything else I needed to do in-between, but the reality has been that he has needed near constant supervision! Between regular obligations and shifts taking care of him, there was comparatively less time to get into the office proper, and what free time I did have was often being used up with basic self-care and life duties. I think I got most of my jam work done remote-ing into my main machine whilst he slept!

I also had a lot of struggles with Godot concepts that were new to me. Utilising multiple viewports, connecting signals through code and tilemaps/grid containers especially. Whilst I managed to get to grips with them in the end it ate up a lot of my first few days trying to understand them, and rather frustratingly, they didn't make it into the final version of the project anyway. To say it was one of my more challenging development experiences from the almost-year I've been working with Godot is putting it lightly.

So what am I proud of?

I think even when disappointed with a final outcome it's important to remember there was an outcome. I finished something. The past two years I've gotten much more of a handle on my personal mental health and organisational problems and finished quite a few of my projects, and built many more in a way that allows me to pick them up later (with proper documentation and commenting explaining my thought processes contributing the most to that). It's now a little difficult for me to remember that the majority of my life wasn't like that. Most projects I've started in my life began with a blaze of passion and then burned out after a couple of weeks. To actually finish something and beat myself up over it, to forget that finishing a project is commendable, that's new for me.

It goes without saying that I also learned a lot. The concepts described previously (viewports, signals-through-code, tilemaps, grid containers) are all core Godot concepts that I didn't have much hands-on practice with. They were fast becoming 'boogeymen' whenever I brushed up against any mention of them, sparking anxiety that I was an idiot for never understanding them. The growing pains of an almost-week struggling with them mean that now they're less spooky for the future.

I also finally got the hang of Godot's UI tools, which is huge for me. I have been banging my head against how the different types of containers work for a while now, and it finally seems to have sunk in. Not to mention that my final project made heavy use of node, property, and signal management through code, and my actual code was heavily documented and properly formatted*. Technically, it was a piece of work I was proud of, even if the actual game aspect was something I found to be less than my initial expectations.

at least until the final day when I started rushing to get done - managed to produce some of the nastiest tape-over-it-and-hope-for-the-best code I've ever written during that last day!

The future for this project:

For now, Building Blocks is shelved. I'm already taking part in another game jam (The One Game a Month jam) and I'm occupied with preparing my project for that. Hopefully a larger time frame and a better understanding of the demands of dog owner life will result in a more complete project. I'll certainly be aiming for a tighter scope this time around. I've also got my major project (Abaddon's Pit, tidbits of which can be caught on my instagram) to get back to. Break's over, back to work.

Building Blocks will return though, in the form I originally intended. I like the idea too much and I'm something of an idle/automation game fan, so at some point I'll probably start from scratch and revisit the concept in a new way. Maybe as part of a July game jam? It was a satisfying project overall, even if there were some disappointments, and I'm glad I took part in this game jam.

Hope everyone else's jam was just as fulfilling!

Files

building_blocks_gogodotjam2021_danielnewby.zip 28 MB
Jun 01, 2021

Get Building Blocks

Leave a comment

Log in with itch.io to leave a comment.