Speedhacks (a.k.a Game jams), are competitions where you design and implement a complete game, from scratch, in an extremely short time limit (typically one weekend, or 72 hours). I’m a frequent participant and organizer of these events for the Allegro community (including the upcoming TINS competition, more on that below). I found them to be incredibly educational and fulfilling, and they’ve allowed me to grow as a developer. Here is why you too should participate in one.
Getting things done
Making a whole game in 72 hours, how crazy is that? For those who ever tried, the prospect seems daunting.
Starting from early high school days, I’ve always wanted to make my own games. I was endlessly doodling level designs, and I had reams of elaborate technical notes. It was disheartening to look back at all those plans and aspirations, and see how little came of them.
That feeling changed after my first Speedhack. For the first time I realized that, yes, I actually can make all these ideas come to life. Of course there are limits to what you can do in a weekend, but actually making something playable, as opposed to lots of half-hearted attempts and interminable projects, is extremely gratifying and a very powerful motivator.
The problem is that you can’t really show off a stack of design notes. Maybe you get some props if you have some cool drawings, but more likely your peers will recognize it for what it is: vaporware. A short playable arcade game is a lot cooler than the epic game that merely exists on paper.
So how do you pull this off? You need developer skills, to be sure, but perhaps less than you think. What you need first and foremost, is to learn to limit your scope.
Limit your Scope
In Extra Credits, game designer James Portnow talks about scope as being one of the six skills that game designers should learn.
Every budding game developer is really a gamer who thinks: it would be so cool to play a game that is a role playing game combined with real-time strategy, with lots of mini-games and cowboys in space. And it should have dragons and magic and tons of weapons to choose from. You know what, I’m going to make that game myself! It’s so easy to fall into this trap. You design something grand and majestic that completely fails to see the light of day.
Where does it go wrong?
Know your limits. Even if you had all the skills required to pull off a grand project like that, it’s just so hard to stay focused on a single project for years on end. Work or school or other real-life obligations intervene. Instead, plan for just the amount of time that you can completely oversee. Speedhacks teach you to work with a short time horizon. You can shield yourself from distractions for 72 hours.
Constraints make the creative juices flow
Would you like to make games, but can’t come up with ideas? Are all the cool game mechanics already taken? There is nothing like an imminent deadline to get the creative juices flowing. In the words of Calvin: you can’t turn on creativity like a faucet. You have to be in the right mood. That mood being: last-minute panic.
At the start of Speedhack, random rules are drawn from a predetermined set. Your game has to adhere to these rules to be a valid entry. For example, a rule may say that it has to be a puzzle game. Or that it has to have snow in it. Or that you can only use hand-drawn assets. Theoretically, the rules are there to prevent false starts. The idea is that you can’t start on your game before the rules are known, so nobody can take an unfair advantage by starting early. But really, the rules just add to the fun.
Rules force you to come up with crazy ideas. For past Speedhacks, I’ve come up with a platform game set inside a laundry machine, a space shooter where you have to defend Mars against the attacking Earthlings, a puzzle game where you have to choose a matching outfit from a perilous walk-in closet, or a two-player co-op battle game inside a space cheese. Coming up with ideas is not a talent that you’re born with or not. Its a skill, that you can practice. And Speedhacks are a great way to practice.
Community
If Speedhacking is so great, why don’t you do it all the time? If you can make a game in a weekend, why don’t you make a new game every weekend?
You can’t without motivation. Here is where the community comes in. Locking yourself away for a weekend may not seem like a very social activity, but it is. During a competition you interact with fellow Speedhackers. Reading the progress reports from others is fun while you take a break from an intense hacking session, and creates a shared experience. The fact that others will be waiting after the deadline to play and review your game, motivates you to not let them down.
The community is your carrot and your stick. Failing to finish feels a bit like breaking a promise.
Oh, the things you will learn!
Speedhacks give you a chance to learn new algorithms, experiment with new techniques, or try out ideas with a prototype.
Have you never applied the A* algorithm? Here is your chance to try it out! Always done hand-pixeled art and want to try your hand at some vector graphics? Now you have the perfect opportunity to do so. Do a Speedhack every so often to broaden your skillset.
Even if the game you make never ends up being more than a prototype, more often than not you’ll find ways to apply the things you learn later on during your working life. I first used A* for a train routing game I did for speedhack, but later found a use for this technique in a project for work.
So where do I sign up?
Nowadays, there are plenty of Speedhacks and Game jams being organized all over the Internet. Some focus on particular retro systems or screen modes. Some are face-to-face. One of the oldest and most famous ones is Ludum Dare, and it attracts tons of participants every time.
Invitation to TINS
As mentioned before, I organize a Speedhack semi-anually, called TINS. It is going to be held again over the weekend from October 20 to 23. One thing you should know is that it’s organized by the allegro community, and therefore using allegro is a requirement. Allegro is one of the most widely portable libraries, ranging from android to Windows to Mac. Head over and sign up!
In case you’re wondering, TINS stands for “TINS is not Speedhack”, and references the original allegro Speedhack.
See also part 2 of this series with tips for beginning speedhackers
Excellent post! Having successfully participated in several speedhacks, I can speak from experience and can confirm that speedhacks are indeed a fantastic way to hone your skills and grow as a developer. Whether you’re new to game development or are a seasoned veteran, everyone can learn a thing or two from participating in speedhacks.
I also think that speedhacks offer a great opportunity to experiment and try things you wouldn’t otherwise do in your own time. Take TINS 2016 as an example; it was my first attempt at a speedhack. I was unsure about the whole thing, and didn’t think I’d be able to create a game in a weekend, let alone live up to the rules and requirements. But I gave it a shot anyway and actually managed to make a game! The randomly-selected rules forced me to think up some creative implementations in a very short span of time. It was difficult, but I am happy with how it all turned out.
Further, limiting your scope, as you suggested, is an important idea to drive home. It is very easy to think up lavish, complex ideas for a dream game, but is incredibly difficult to see them realized. This is especially true during speedhacks, where time is limited. I myself have struggled with retaining a manageable scope. For example, in my TINS 2016 entry, I wanted NPCs to walk around the map, but ran out of time to implement that; and likewise in Easter Hack 2017, I wanted to have enemies for the player to fight, but again, I ran out of time. Scope has become easier to manage in subsequent speedhacks, but remains an area that requires some finesse.
I most recently participated in a speedhack whereby each entry had to be less than 13 kilobytes in size (assets and code). It was challenging to say the least, but I managed to create and submit a simple space-themed game. Due to the extreme size restraints, I had to think up some clever solutions to save space. For example, rather than use bitmaps, I opted to draw everything using primitives. By the end of it, I wanted to add sound effects, but had no bytes left to spare, so I didn’t add any. I excused this as a pursuit for realism though, as there is no sound in space. 😉 (I wrote a postmortem blog post about developing the game, if you’re interested: https://thardus.xyz/verloren-postmortem)
Anyway, if it were not for TINS 2016, I might not have ever released a game, and I doubt I would be even half as knowledgeable about game development as I am now. TINS 2016 pushed me to make something, and ultimately inspired me to participate in other speedhacks. So thank you for organizing TINS. I am looking forward to participating in TINS next month. I can’t wait to see what kind of games everyone creates!
Very nice. A size constraint of 13kb is challenging but probably also very inspirational. There are stories about chess games for the ZX81 microcomputer, which has only one 1kb for memory. Now that’s a challenge!
Hm, that screenshot under “Where does it go wrong?” looks familiar. And it was one of my more playable entries… but I get the point… 😛 😉
Great post, I’m looking forward to this year’s TINS. I’m in the process of clearing my schedule to take advantage of the small window.
Another thing speedhacks do is reinvigorate you for your longer projects. I’ve been working on a game for several years, slowly chipping away at it considering I only have 3-6 hours a week to focus on it due to life. Taking a break from it to do a speedhack will hopefully motivate me to keep going. I’m looking forward to seeing a finished product even if it is rather small in scope.
@Allefant, I more or less chose some nice screenshots at random. I didn’t mean to imply anything!