Spring Cleaning

Last time, we talked a bit how we rebuilt our text handling system and mentioned that this was mostly used for the menus – the biggest reason we did that when we did was that we recently also finalized our menu system. There’s a bit more to be said about that, so join us today and we’ll tell you all about it!

As with many smaller projects, the start menu of Backworlds has been in neglect for quite a long time – when working with the game, we typically launch straight into a level so for day-to-day work it’s just not necessary and we only maintained the necessary functionality for playtesting purposes. As we’re finishing up different systems it was only a matter of time before we got to it though and one day Juha came up with this suggestion:

The core idea of this layout was that we didn’t have any notable menu art and just ran the user interface parts on top of the game. Though the visual style was immediately appealing as it read well and fit the aesthetic, I was initially hesitant to work on it. The Backworlds game state completely separated the menu handling and the game handling, when either was running the other was not and none of the data for it was loaded so executing them in parallel would take a large amount of work.

The design had some important benefits though – in addition to looking nice, it allowed us to be very economical with the artwork. It also had the benefit of a natural transition between game and UI, which allowed us to have a uniform look and to have access to the options menu from within the game. Like Miyamato famously said, a good idea is one that does not solve just a single problem, but multiple problems at once.

Unifying the game and menu loops took most of a weekend, but in the process I got to remove a lot of orphaned functionality and make sure things like input and cursor handling was done in a single space and with consistent methods. We also got to remove all the fixed-function game states that the game was dealing with to the menu system and as such make it more data-driven.  The menu system itself was already structured – while not quite immediate mode the individual elements and pages were well decoupled and rendering, input handling and updates handled separately. Integrating it into the main loop once it had been cleaned up luckily did not take too long, and after another weekend had passed we were at a point where we could start working on the actual design – but I’ll let Juha talk about that.

Juha here! The main inspiration for the menu design was the new XCOM games by Firaxis where they integrate the players characters into different scenes as main menu backdrops that match the progression on the game. Thinking of that in the context of Backworlds I realized that it would suit very well as the game barely has any UI or text and that we could do it with less effort than XCOM – they have clearly put work into setting up interesting scenes while we can simply freeze-frame at any point in the game since it is in 2D and our levels are “hand-crafted” due to their relatively small size.

It felt natural to go with the theme of paint for the menu art itself and the only big concern was having it contrast against the level art which is why we went with black and white. This obviously has less contrast with the backworld but the fact that the game lacks any in-game text makes it stand out regardless. While we quickly settled on style, we have spent a lot of time iterating on the fonts and the shapes and will likely spend more time on it still.

That wraps it up for this time, we’re spending a lot of time dealing with production and administration details these days and should hopefully have more development news to share this summer!


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.