Tag: game development


It’s review-the-past-year-and-plan-the-next time! That means I basically waffle on about myself for umpteen paragraphs.

Firstly, 2015

I had several goals planned for 2015, and over the course of the year I ended-up adding some new ones and giving-up on others. I also read 19 books, and completed playing 10 videogames, which means I actually released more games than I played through.

Run 5K

Failed! After various attempts in January to March, I decided to put it off until the weather was warmer, and then… never actually got back to it. Going to attempt another exercise goal in 2016, with hopefully more success.

One Game a Month

Success! I actually released 13 games, though not all of them are particularly good or finished.

  • Spacelunky: Barely more than a prototype, just the bare bones of a procedurally-generated platformer. I did make some music for it though, which is a first.
  • Memory: Classic memory game, not much to it. I experimented with the Unity animation system, then everything broke when I later updated Unity so I never expanded it.
  • BREAKPONG: Pong, but the paddles disintegrate when hit by the ball. I really like this one actually! Name is awful though, which is a running theme with my games.
  • Food Fight!: Oh dear. A 48-hour Ludum Dare entry that only ran properly under the exact circumstances I developed it in, which is a bit rubbish. I actually thought it was quite good up until I started getting feedback. Oh well!
  • Catsteroids: I’d run out of time to do a proper game, and so I made Asteroids but with giant cat faces that go ‘meow’ at you! It’s every bit as daft as that sounds. I have no idea what anybody else thinks, but it still makes me laugh.
  • Potato Farming Manager 2000: For some reason, I decided to take my super-early, supposed-to-be-a-side-project Impressionable engine and release a game using it. To say it’s a bit rough is an understatement, though I’m still pleased it’s even playable at all. It’s a simplistic farm management game. I recently upgraded Impressionable to use an OpenGL renderer, so I might update this soon if I remember.
  • Mavis Bacon Teaches Typing: I’d just started learning to touch-type, so what better game to make than a breakfast-themed typing game parodying the apparently-fictional typing tutor Mavis Beacon? This turned out better than I had hoped, and is one of the more polished games in this list. There’s only one stage, and it suffers from suddenly becoming way too hard, but what’s there I’m happy with. I drew a bunch of breakfast items that are actually recognisable, hurrah! Probably my favourite game name, too.
  • 5-A-Day Fun Maze: I wanted to make a raycasting pseudo-3D engine for GBJam. I did, and then had no idea what to do with it, so I made a maze game about finding fruit, and then gave it a sinister tone? Not sure what I was thinking.
  • Frankenstein’s Monsters, Inc.: The game with the longest name and the most punctuation! Another 48-hour LD entry, you run your own corpse-reanimation business! Did loads of art for it, which I’m pleased with. I’m mostly happy that I managed to distil a management game into a single screen with simple drag-and-drop interactions. Made music for this!
  • Flibbertigibbet: Using the same old laptop as for Food Fight, this time I went for the lowest possible system specs, with a survival/building roguelike game that runs in a terminal. It was probably more fun to work on than actually play, however. It was a good excuse to experiment with some C techniques as I’m still fairly new to it. Named after my favourite word because I couldn’t think of any alternatives.
  • Pool: A basic English Pool game, made mostly as a starting point to then make…
  • B!lliards: My entry into ProcJam, an attempt at procedurally generating billiard/pool-table games, to limited success. I managed my time poorly and only got the bare minimum implemented, which mostly picks rules at random, producing amusing but unplayable messes.
  • Ecosystem: 48-hour Ludum Dare again! This time, a little virtual garden. It’s pretty bare, but depending on how the ratings for it go, it’s something I would like to continue working on, with the intention of it being a nice idle game to leave running and see how it develops, and enjoy the little soundscape it produces.

I’m glad to have finally done 1GAM properly, but that said, I’ll be focusing on fewer, larger, more complete games in the future. A month isn’t enough for me to finish things satisfactorily.

Be competent at a music program

Sort-of succeeded? I managed to make a couple of little instrumentals, but didn’t really put enough time into it to make music for every game as I had hoped.

Be competent at Blender

Failed! I enrolled on an online course, but haven’t actually started yet. I ended-up putting this to one side until after I’d learned touch-typing.

Draw more

Success! Had a daily-drawing calendar and mostly did it each day, though sometimes I did get behind.

Daily Bible reading

Success! This is the first goal I added to the list later. Took a while to get into it, but I now read a chapter pretty-much every morning before I do anything else.

Learn to touch-type

Success! Another addition. After years of typing with two fingers (albeit fairly quickly with two fingers) I finally made myself learn to touch type. I used TypingStudy.com, which is a free online thing. I finished going through the lessons in November, and it’s been getting more and more natural since then.


So, what about this year then?

Exercise regularly

Firstly, again, exercise. I’m not overweight (BMI around 23), but I’m a long way from any semblance of fitness. My strategy this time is to use Wii Fit, as it’s easier to motivate myself to flail around in front of the TV for 10 minutes a day than to run around in the cold where other people can see me.

Complete the Blender course

Lack of 3D ability continues to limit what games I can make, so I definitely want to learn Blender this year.

Learn to play the piano/keyboard

There’s been a MIDI keyboard lying around as long as I can remember, and I think learning to play an instrument would be useful and help with stress, so why not commit to learning it publicly on the internet? I’m naively assuming that touch-typing will help a little here, but maybe that’s just wishful thinking.

Make some Arduino things

I’ve wanted to learn electronics for years but always put it off. I’ve got an Arduino, so why not actually do something with it? If I come up with anything interesting I’ll post about it.


So there you go, waffling over. Have a great year!

LD34: Ecosystem


Another Ludum Dare, another little game! This time, by a coincidence, there were two top-voted themes, ‘Growing’ and ‘Two Button Controls’. I went with ‘Growing’, as I’ve wanted an excuse to make a little gardening game for a while now. And so, I present to you the unimaginatively-named Ecosystem.

Ecosystem is a sandbox where you plant seeds and then watch them thrive or die out. Sculpt your little patch of dirt, water it, and see what happens. As your garden grows, it’ll develop its own ambient soundtrack.

A lot of it is very rough. The audio gets messy when there’s a lot going on. There are bugs with how things float on water. It can’t handle underground sections very well. There are only three plant types. But it feels like a good starting point – I say this a lot, but I really think this game has a lot of potential as a background game that you leave running and just tinker with occasionally.

This game also is a bit of a personal milestone. It’s my tenth Ludum Dare entry, and I’ve made a game every month this year. Next year, I’m definitely going to work on fewer, bigger projects, but it’s nice to have done One Game a Month properly once.


This slideshow requires JavaScript.

Last week was ProcJam 2015, and as I hinted earlier, I took last month’s Pool game and added procedural generated rules to it! The theory is that it’ll invent new and exciting billiards games, but in practice it mostly just makes a mess. I’ve called it B!lliards and you can play it from the comfort of your web browser for free. A bit of a post-mortem after the break.




This past week I’ve made a little 2-player version of Blackball Pool in Unity. Check it out!

The story behind this is that a few weeks ago, I had the idea of making a crazy golf game where players build their own courses out of clip-together parts and then share them with other players. As much as I’d like to make that right now, it’s way beyond my ability, so I put it to one side. Shortly after, I had another idea: a procedurally generated billiards game, where the table shape and the rules could be invented by the computer or specified by the player. I made a start on it, but quickly realised I needed to know 3D modelling before I could do it justice. I’ll be doing a course on that soon so I’ll finally be able to make 3D games using more than just Unity prefabs. Hooray!

Which brings us to this week! I’d just finished the part of App 2 that I was working on, and wanted to devote this week to 1GAM, so for a lack of any other ideas I put together a basic 2D pool game. No AI, no audio, and it’s no pretty, but it’s a start. ProcJam 2015 is coming up so I might use that to experiment with rules generation.


What happens when I’m away for a fortnight with my low-spec laptop and haven’t made a game for 1GAM? Turns out it’s this:


Flibbertigibbet (I couldn’t think of an actually good name, so used favourite word instead.) is a Minecraft-inspired roguelike. You mine, you build, and you craft — all from the comfort of your 80×25 character, 8-colour terminal window. It’s nowhere near as complete as I’d hoped, but I’ll definitely be tinkering with it in the future. It’s just so fun to work on!

Part of what’s made it so fun is that it’s been almost entirely my own code. All I’m using library-wise is PDCurses for terminal stuff, and some simplex noise code I found online because I was in a hurry. Otherwise, I’ve been free to write it in whatever weird way I want! 😀 Whether this results in code that is actually good remains to be seen, but it’s lovely not having to conform to someone else’s idea of what makes sense.

It’s pretty limited right now though. First on the list for improvements would be to replace the terminal with a graphical window that I can fully control. Mostly I’d like more colours, and to show more on screen at once – 80×25 is pretty cramped. I never got around to making the world keep generating as you move around either, and the world it does generate isn’t that interesting. There’s not even any combat or death yet, so it’s hardly even a roguelike! I’ve got a big list with a bunch of other things, so this is only the beginning for my terribly-named ASCII adventure.

Frankenstein’s Monsters, Inc. Post-Mortem

The Ludum Dare 33 results came out earlier this week, and it went really well for me. I beat my previous bests in 5 of 8 categories. I placed 87th in the Theme category, with 4.04/5 – my first score over 4. So yeah, I’m pretty happy. 😀 You can still play Frankenstein’s Monsters, Inc. on Itch.io.

I’m far from an expert on game jams, but I thought I’d do a post-mortem to share my experiences:

What went well

  • I spent some time before the jam considering each of the 20 possible themes and writing down ideas for them. I do this every LD if I have time – it’s a fun game-design exercise, but also means that I can get started right away and not stress about having no ideas. (Except when the winning theme is one I had no ideas for, which has happened before.)
  • I recognised that my idea was too big, and simplified it before I began. The biggest change was reducing the game down to a single screen. Had I divided things up into multiple windows or screens that you switched between, it would have taken longer to make and been more confusing to play.
  • I got things working quickly. The game was essentially complete by the end of Saturday, leaving Sunday for balance and polish. Much of the art was still rough stick-figures, and the balance was off, but the game fundamentally worked, and I could have submitted it then. I’ve found this is really important for motivation – I’ve given up in previous game jams when it’s Saturday evening and my game isn’t coming together (even though I probably could have completed it).
  • I prioritised what needed doing. I can’t remember where I got this from, but I always make a TODO list with a ‘Need’ column and a ‘Want’ column. (Sometimes also a ‘Like’ column for really unnecessary but cool ideas.) Working through the Need list first really helps me to focus. Even after I’d simplified the game as I mentioned above, there were still big features that didn’t make it in – if I’d not prioritised the really important tasks, I would not have produced a finished game.
  • I used familiar tools. I know it’s not fashionable to use Java, but I’m now familiar enough with it and the library I use (libGDX) that I can work quickly without spending a lot of time reading documentation. As for software tools – IntelliJ, GIMP, and to a lesser extent FL Studio – I’ve used enough that I could concentrate on making the game, not learning to use them.
  • I actually made some music! I still don’t know what I’m doing music-wise, but spent half an hour or so cobbling-together some notes in a reasonable-sounding order. It’s something I’m trying to get better at, didn’t take that much time, and greatly improves the overall feel of the game. Certainly better than silence.

What went wrong

  • No sound effects. I find sound effects quite difficult to do, and so kept putting off recording them. There’s also the issue of how to make them work in a game where you can be producing several monsters per second – how can I have sound effects without them overlapping and just becoming a horrible mess of distortion? So I made excuses, and audio was the lowest rating.
  • Last-minute checking. The last thing I did to the game was add detail to the background, and in doing so I made the text really difficult to read in some places. If I’d paid more attention it could have been clearer.
  • Odd balance. The monsters and human workers are almost equally effective in terms of work-per-cost, so the choice between them is a bit meaningless. The public outrage also scales in a way I’m not fully happy with – to decrease it costs money, which means selling monsters, but selling monsters increases it – but at the time I was just happy that the game was winnable but still challenging. If I was to spend more time developing it, I’d definitely need to reconsider how everything interacts.
  • No animations. Entirely a time issue. I wanted to have animate the departments that are working, for visual feedback and to make things more lively. Ran out of time, which means that the Jacob’s Ladder in the top-right looks like unfinished knitting.

LD33: Frankenstein’s Monsters, Inc.

Frankenstein's Monsters, Inc.

Last night I submitted my Ludum Dare 33 entry, Frankenstein’s Monsters, Inc. which besides being a bit of a mouthful, is a fairly minimal management game about running a monster-building business. The theme was ‘You Are the Monster’, and I think you’ll agree that digging-up bodies and sewing them together is pretty monstrous. I say it’s minimal because your controls are only to drag monsters and job applicants to assign them to a department, drag monsters to sell them, and click on buttons to spend money.

It was a lot of fun to work on! I’m happy with how it’s turned-out too – the only thing I didn’t get time for is more art, especially some animations for when each department is working, and more variety for monsters. It started out overambitious, but I managed to simplify the design a lot before I started. I even had time to do some music:

As with any jam game, there are things I’d like to add to it. My original idea gave the monsters statistics which affect how much money they’re worth and how effective they are at different jobs. In that way, you’d be able to gradually level-up your production quality as well as its speed. You’d have a PR department which would slowly reduce outrage over time, which would allow outrage to ramp up without being unbalanced. I also have some ideas about selling monsters – that they’d be sold automatically but only when there was demand, and you would increase demand by assigning workers to a marketing/sales department. I’d like to change how human workers behave too – at the moment, they’re 4 times as effective as monsters and 4 times the cost, so there’s no reason not to hire them as soon as they’re available. So, two different directions it could go in, really! Either more of an “idle game” that runs by itself, or a more detailed business simulation.

The Ludum Dare page is here, or you can go play it here.

GameBoy Jam 4: 5-A-Day Fun Maze

5-A-Day Fun Maze

The past week and a half, between other things, I’ve made a silly little browser game for the 4th GameBoy Jam. It’s a 3D maze game about healthy eating, called 5-A-Day Fun Maze, which is kind of a joke about terrible educational games, and kind of just a terrible game, but there you go.

This is a good example of what happens when I don’t have a plan. I wanted to do a ray-tracer (Old-school 3D rendering where you fire an imaginary ray through the screen until it hits a wall, then draw a vertical line there based on the distance. It’s what early 3D games used.) so I did so, and then realised I had no idea what the game would be. I arbitrarily drew a strawberry so I could have entities as well as walls, still had no idea, and so it became about collecting fruit. The whole healthy-eating thing grew from there.

The game itself is just a maze, so not that interesting. It’s a ‘perfect maze’ in that there are no loops, so you can follow the left (or right) wall and eventually find all the fruit without difficulty. There is a compass in the corner to help you orient yourself if you do get lost though.

One thing I do quite like is the eating animation: simple, but it works! It also begs the question “Why are we looking out of the player’s mouth?” to which the answer is “Because.”


Ludum Dare

This weekend is going to be Ludum Dare 33! I hope to take part, but there’s less pressure now that I already have a game for August. Been feeling pretty burnt-out lately, so we’ll see.

Potato Farming Manager 2000


So, I’ve just released the farming game I’ve been working on this month, Potato Farming Manager 2000. It’s completely free, so go give it a play if you’re interested! The rest of this post is a bit of a post-mortem.

Firstly, a month of part-time work is not nearly long enough for a tycoon game. My original plans were for something more SimFarm-like, with a variety of crops, seasonal and weather effects, simulation of soil quality and humidity, and random events that you’d have to deal with. What I’ve ended-up releasing is an almost-arcade game about clicking on fields. Even when I’d decided on making it a less serious game, I still had plans for production chains which got cut. It wasn’t supposed to be a one-month game, but the lure of 1GAM and a lack of any other ideas for a quick game to make persuaded me to polish it up as best I could and release it.

The main goal in making the farming game was to give me some direction in making Impressionable, and that has been a success. I really need to write a proper renderer, a proper memory allocation system, a sound system, path-finding, some replacement for the mess of GUI code I have currently… A lot basically! It’s also shown me that writing C really isn’t so unpleasant.

As for what’s next, I’m not sure. The plan for Impressionable is still to make small, progressively more complicated games, but a month for each is absolutely too short, so for the next I’ll be aiming for 2-3 months. As for what game that will be, I have a few ideas lined-up: either a proper farming game like I originally planned, ‘fantasy tavern tycoon’, or ‘bridge constructor but you build castles to defend against invaders’. Or something else maybe! Whatever seems to be the simplest.

Dev Log 20th of June 2015


This week I’ve finished implementing farm workers, apart from a couple of bugs. After hiring them, they’ll pick a job from what currently needs to be done: planting, harvesting, or carrying potatoes to the nearest barn. They’re the first thing to be animated, too. I’ve been quite enjoying watching them dash about to do my bidding!


Then next task is going to be writing a proper renderer. You can see above that there’s no depth sorting yet, but what you can’t see is that the game lets you zoom, but zooming produces a horrible blurry mess with gaps between tiles. Switching from SDL’s built-in renderer to a full OpenGL one will allow me to fix these things more easily, and generally make life easier.

Quick Quote navigation drawer

As for Quick Quote, I’ve started on the redesign work by replacing the slightly-awkward main menu with a navigation drawer, shown above. That’s only the start, but I think it already makes a big difference, both in terms of appearance and it being much easier to switch between screens.