My Final Year project has ballooned somewhat from a relatively simple idea to make an open-source game, to the considerably more complex idea to create a game framework for others to use. I’m not upset about this, though. I’ve discovered I really enjoy playing about with the bits that people will use to make games.
Last weekend was the 25th Ludum Dare competition. It was also, on Saturday, the time of my last exam this semester. So, as tempted as I was, I did not start a Ludum Dare game at 2am on Saturday like many other participants. I told myself that if the exam went well, and if I could make the current pre-alpha build of the library separate from the main sample game, that I would try to knock something together.
As it happened, the exam did go rather well. After some recovery time, that evening I sat down, without much hope, to try and extract the framework from the game without breaking it. Two hours later I had it working from a separate folder, and it wasn’t even close to bedtime. ‘I guess that’s it’, I thought. ‘I’m finally making a go of Ludum Dare.’ Armed with a couple of uncaffienated beverages and some paper, I set to work designing a game to fit the theme of LD25: You Are The Villain. At first I struggled, but then I had a flash of inspiration: a packet sniffer! It was simple, could have malicious intent, and could be gamified using the vector graphics style my framework revolves around.
Thence came IdentiThief, a game that took me about twelve hours of work and vindicated many of the niggling suspicions I had about the framework’s design, as well as highlighting a few new ones. Nevertheless, I was able to see my framework through the eyes of a developer at last, which was very valuable indeed. I went from concept to full design to first prototype in a matter of hours, and that was a lot of fun. At the end, I even had time to work in a separate menu and game state, which I have never done before in Pygame, let alone in my framework. I had to hack it a little to make it work, but it will definitely be a feature now.
All in all, I had a great time and gathered (somewhat) useful data on how I could improve my framework. Not to mention, I made a game in a day! Not too many people can say that.