Last weekend was Ludum Dare Game Jam again, and this time the theme was “Beneath the Surface”. For this game jam we deliberately tried to approach this with a very small team: Jory Schossau, Clifford Bohm, and me.
The second decision we made beforehand was to relax about the topic and focus more on making a nice game then necessarily letting the topic dictate everything. As it turns out, this years topic was very much in line with the ideas we had. Our first idea was about a Marble Madness variant. I read a developer comment quite a while ago, and one idea they discarded was to have a little bump that pushes the marbles around, rather than the mechanic they finall used. We added a couple of quirks to either make the feel of the game darker, or more surreal, we asked if we want to go with this or not. Jory had the idea to question what actually happens to all the line in Tetris and where the tiles come from? The idea was to continue that game “Beneath the Surface” and to explain those two questions.
After that getting to the fundamental game mechanic was easy, what wasn’t easy was to answer the question if the game would be fun. Cliff pulled out a couple of colored blocks from another game, and we tried that by hand, moving blocks over the table. I can not recommend doing something like this for every game you make: Prototype. This little messing around with blocks had two great effects: We all knew what the game mechanic would actually look like (something we forgot last time), and we got a very good intuition that this would really work as a game.
I have to say that from a coding point of view, our game which we quickly baptized sirtet, wouldn’t be hard to code. We knew that the hardest part would be to get the game exactly right, responsive, and also have the right difficulty. Jory also always wanted to have time to polish a game rather than throw it together in the last 30 minutes… wise decision.
While Cliff has no background in Flash AS3, we still decided on doing it in flash, because Jory and I were the ones who had to do most of the coding. We also used Starling as the graphics engine. Mostly because I use its derivative Sparrow for everything on the iPhone, but also because Jory and I did most things Flash related in Starling as well. I can not recomment Startling or Sparrow enough, and I use it as my role model for documentation and tutorials, that’s how great it is!
The next code question we had to answer was GitHub or Dropbox? Every same programmer should choose GitHub, but since Jory and I were anyways coding in the same room, and because we both wanted to understand what each others code does, we decided to use Dropbox. Once in a while we announced that we were done with a particular part, and either of us merged the components that the other one coded into the current project. This is a little less save than GitHub, and also requires a much higher level of synchronisation, but it also forces you to stay within you own class or context. If I want a behavior for one of the tiles, I ask jory to implement it on his end, and I make up the necessary interface on my end. Once the code is there, we just merge. Another advantage of this approach is that we have a quick dialog about what features we implement, and where each other is within the project.
All in all, coding was quite relaxed on my end, and a bit more intense on Jory’s end. But I think Jory just pays more attention to what he does than I do… so at least someone is on top of everything. Because we wanted to release the game on Kongregate, we also included the Kongregate API that keeps track of stats and highscores.
Cliff was mostly responsible for art, aestetics, and support. I will talk about the nice discussions about computational evolution, Avida, the nature of science, and pyhton scripting another time.
Check out the Screenshot, very 8 bit pixel art like:
Please check out the game and enjoy!
Thanks to all participants, I think we can be proud, Cheers Arend