Want a free year on Tuts+ (worth $180)? Start an InMotion Hosting plan for $3.49/mo.
Game jams have exploded in popularity. What used to be mostly small locally hosted events are now massive worldwide gatherings of game developers. There's a good reason for this: game jams are a great way for developers to experiment with new ideas and to flex their creative and technical muscles. To make the most out of your game jamming experience, I've compiled a list of tips, tools and resources that should help things go smoothly.
For more advice on making games (and making them quickly), check out:
Before We Start, What Is a Game Jam?
A game jam is an event where participants try to make a video game as quickly as possible. Most game jams take place over a single weekend, where everyone has 48 hours to try to make a game often based on a secret theme that is either voted upon or chosen by the organizers. The theme is used as a limitation that encourages creative thinking.
Themes from past game jams have included everything from simple concepts such as fear, islands, and darkness, to abstract expressions like ouroboros, build the level you play, and time manipulation.
Some jams have a competitive element -- this type of jam is referred to as a "compo" -- while others have no winners or losers and are simply a fun thing to do. Some sponsored events even have prizes, and many feature voting on games to declare a winner in various categories, but the general consensus is that game jamming is primarily done purely for the fun of it. The real "prize" is your finished game.
People who take part in many game jams do so more for bragging rights, the pride in completing a game, or in the pleasure of honing their craft and seeking inspiration in one crazy weekend of late nights and rapid prototyping.
Though there are team events, jams that last for extended periods of time (such as an entire month), and jams that are held in public places by large numbers of people, the most common type of game jam is one that is performed solo, at home, over a single weekend.
1. Eat, Sleep and Exercise
This is the first tip on this list because it's without a doubt the most important. When approached with a forty-eight hour deadline to make a game, most people's initial reaction is to want to order a couple pizzas, stack up on energy drinks, and lock themselves into a room for the entire duration. This is a bad idea.
Making games is cerebral work and you simply can't do it effectively for two days without interruption. The more rested you are and well fed you are the better you'll work. Twenty-four hours of effective clear-headed work over two days will get you much farther than an initial ten hours of solid work followed by thirty-eight hours of exhausted caffeine-driven work.
As for exercise, it isn't absolutely necessary; I'm sure we've all spent two days at some point in our life without exercising, game jam or not. However, when you're tackling a difficult issue that you just can't seem to figure out, few things are more helpful than going for a run or bike ride to clear your head. No matter how well rested and fed you are, being cooped up for forty-eight hours can lead to a muddled head space that makes it hard to do good work.
2. When in Doubt, Go 2D
This tip is a simple one: if you're debating whether or not to make a 2D game or a 3D game, make a 2D game. Working in three dimensions adds an extra level of complexity to art and coding, and the payoff is almost never worth it. You may stand out more with a fully 3D game, but it probably won't play as well, and you'll probably have to spend more time working on basic functionality and much less experimenting with fun new mechanics.
3. Keep Things Simple
When you're thinking up the design of your game, remember that simple mechanics that work well are infinitely better than complex one's that don't. Don't plan for multiplayer, complex A.I, cut-scenes or a physics engine.
In fact, when designing your game, I recommend trying to come up with something you think you could easily complete in only twenty-four hours, rather than the full forty-eight. Things almost always take longer than you anticipate, and there's a good chance you'll only barely finish by the end of the forty-eight hours. If for some reason you get things done faster than you now have that much more time to polish your game, and polish is what separates the good from the great.
4. Code for Functionality, Not a Beautiful Codebase
The more you learn to code the more you come to appreciate the importance of clear, well-structured code. You learn the dangers of massive nested
if blocks and the beautiful simplicity that comes with well-executed inheritance structures.
You only have forty-eight hours, and you need to get things done. Don't waste time setting up versatile classes with minimal redundancy, code for functionality instead.
It might be difficult to understand your code when you look at it a week later, but you'll get the best results in the moment, and in a game jam that's what counts. If you want to continue your project afterwards, you can fix things retroactively. It's a bit of work, but it's work you shouldn't be spending your forty-eight hours doing.
5. Have an Idea of What You're Doing Before You Hit the Computer
This might be common sense to the more experienced of you out there, but this is a huge pitfall that snares many a game jam newbie. With only forty-eight hours to do something, people are inclined to get to work immediately. This often means jumping on the computer as soon as the theme is announced and starting to pound out some code.
Why do this? You don't know what it is you're making within a split-second of the theme getting announced and you certainly aren't going to figure it out as you go. Take some time to decide on exactly what it is you're going to try to make, have something specific in mind when you first hit the computer, and see what happens from there. For a more in depth look at this topic take a gander at What to Do Before Even Touching a Computer (though keep in mind its suggestions might go a little overboard in the context of a game jam).
6. Make Sure Your Game Is Easily Distributable
You're not the only one participating in any given game jam; there are going to be a lot of games, and the people playing them will have a lot to choose from. This is where distribution is important: with so many choices of games with such a wide variety in quality, players won't want to invest a lot of time into setting any specific game up.
Ideally, your game should be playable one click away from your submission page. Obviously browser-based games are the best for this, but a standalone executable can work well too. Avoid requiring your player to download some sort of framework or plugin they aren't likely to already have, and under no circumstance have your game require an installation. If they see your game takes too long to set up, most people will simply skip over it and have a try at another game that gives them less hassle. Choose your development platform accordingly.
Bfxr is a nice little free tool for easily making retro-style sound effects. It offers a range of preset sound effect types to choose from and an easy to use interface for tweaking those sounds exactly to your liking. As3sfxr, on the other hand, is a simple ActionScript 3 port of sfxr (the predecessor to Bfxr) that allows you to dynamically create sound effects in real time using the same parameters as Bfxr, whic his very useful when you want to randomize an aspect of a commonly used sound.
Check out the article on Bfxr and its sister programs to get yourself started with the tool.
Here are three free and easy to use level editors with versatile exporters that allow them to fit into the workflow of almost any project. Rather than making your own level editor, it can be a huge time saver at first to use one of these to get things started. Who knows, you may even find that they have all the functionality you're looking for.
These three graphics editors are incredibly useful when making games using pixel art. They all have support for sprite sheets as well as a host of other useful features to discover.
My personal favorite here is Pixen due to its tiny size and extremely clean interface, but it isn't free and only works on OS X; GraphicsGale also costs money and is Windows-only. Asesprite works on everything under the sun and is free, so give it a look if you, like most people, don't like spending money.
Blender is the quintessential tool for making 3D graphics on a budget of zero dollars. It's one of the easiest to use 3D modelling programs out there, once you get over the initial confusion you'll have with the interface, and it's surprisingly robust for its price tag. Be warned, though, 3D modelling is very difficult and even as elegant a program as Blender can't change that.
From the same mind behind sfxr we have musagi, a relatively simple tool for making your own chiptune music. Just like with 3D modelling, the term "relatively" is important here. Making music can be difficult and musagi can't change this, but if you have the necessary skills it can be a great outlet for making music very quickly.
Open Game Art is a great resource for free video game art (go figure). With everything from sprite sheets to 3D models all the way to music and sound effects, this site is an invaluable resource if you're not of the artistic inclination. I highly recommend you take a look.
These are two useful resources with free music for use in your game. No Soap Radio is particular in its search features, which allows you to sort music based on attributes like the type of game you are making and where the music will be playing in your game. Incompetech is a much more standard database, but provided you are capable of finding the type of track you are looking for, the music is generally of much higher quality.
Both of these resources are useful for those less musically-inclined and can really step up the quality of a game, as good audio is one of the pillars of the gaming experience.
This website has a huge repository of both retro-style sounds and more realistic foley for use in your game. I personally prefer using Bfxr if I'm going for retro sound effects, but FlashKit is invaluable when trying to go with a more realistic style. (Unless of course you have a great mic and a sound-proof room to record a police siren in.)
CGTextures is exactly what it sounds like: a site filled to the brim with texture for use on various 3D models. Most of the textures are free, and they are of very high quality. If you are going the 3D route, this site can be a massive time saver, though you do need an account to use the site.
If you're really in a rut and can't find any ideas for what you want to make you might want to take a look at this site. Though hit or miss, this site can often generate some cool game ideas that can be both original and hilarious. Take a look when all else fails.
So those were my 16 tips, tools and resources for succeeding in your next game jam. Make good use of them and I guarantee you'll see some good things come from your future game jams. If you want to read more on the subject check out our other article: How to Get the Most Out of a Game Jam.