Breakfast Game
J
This game was created shortly after leaving my last job, to get me to stretch my legs and remember how to program without Unreal Engine.
The inspiration was both Suika Game, and Cosmic Collapse. Both games have the same core idea: combine two spherical objects to make a larger one. Try to stay in the bounds of the playfield. There are no doubt any number of other clones, but I wanted to call out Cosmic Collapse both because I was lucky enough to meet Johan Pietz (its creator) and because it has a very slick presentation. While the planetary theming shouldn’t affect the gameplay, it definitely inspires a sense of awe when you destroy a planet for the first time - or when you create a black hole.
The question these versions inspired in me was quite simple: instead of the clean simplicity of circles, what if the shapes were bad?
Could I chose a theming that would inspire a completely different feeling to these other two games, while still having the same clarity in the gameplay. The breakfast theming both lent itself to a mixture of nicer shapes, and less nice shapes, as well as creating a sort of relaxed atmosphere. Cafe music with a low pressure game would create the sort of mood I wanted for this game.
Mechanics
I didn’t want the game to be mechanically identical to the others, and while thinking about foods that would work for the game I stumbled upon the idea of the coffee cup. ‘What if things went inside it?’ was an obvious question to ask, and created the first mechanical differentiator. By having the coffee cup be the last item in the progression, players get plenty of time to get used to the mechanic before having to contend with this problem. The coffee cup not being a food per se also lead to the second differentiator: what if it didn’t combine the same way as other objects?
In Suika game, the largest item is the watermelon (Suika, in japanese) and if you manage to combine two they disappear. Cosmic collapse doesn’t have this mechanic, but it instead gives you a way to delete planets. Using this to delete the largest practically achievable body is the way to continue the game ad infinitum.
Cups could smash if they collided hard enough, was my first thought but this is too hard to control, and confusing to communicate. Instead, I decided to double down on combining items inside the cup: creating a too-large food inside a cup would smash it.
Implementation
Rather than going through learning some new engine, I decided to just put the game together from as low-level a framework as I was comfortable with. While I’ve done direct interface with the OS before, this never felt like a practical use of time so I decided to use SDL, and box2D for the physics. In the interest of making it easier to play the game I wanted it to be playable on a webpage. I had used Emscripten before, and while I remembered some difficulties in getting it set up I had a good experience with it overall.
Getting everything set up was some trouble - difficulties with Emscripten and SDL3 lead to me using SDL2, and I needed to compile box2D for emscripten myself which lead to some interesting problems - but once it was done, further development was reasonably smooth.
Art
The Art in this game was all me. I am not an artist by trade, and I don’t particularly enjoy it as a hobby, but I know how to listen to my eyes so I can make something that looks about this good. However, the inconsistent style and lack of overall direction is something I would need a lot of time and practice to improve! The UI is absolutely incomplete, and I’m debating the effort required to polish this to something truly acceptable for release.
Additional Assets
The music is Morning Walk by FabienC@RustedMusicStudio
SFX from various authors on Open Game Art
- rubberduck for the object impact
- and again for the cup smash
- farfadet46 for the combine sound
- qubodup for the applaise