My First Experience at a Game Jam
Posted on Fri May 18 2012 10:00:37 GMT+0000 (UTC)
I heard about the Toronto Game Jam about one year ago. Unfortunately, it was far too short notice to actually participate but I was absolutely fixated on attending next time. I can now say I accomplished that goal as of last Sunday evening, when "TOJam - The Sevening" completed.
Leading up to the game jam this year, I had read the website probably near to 50 times. I was quite obsessed with understanding what exactly a game jam was and how it functioned. Through Toronto Game Jam's Twitter account I heard about a game jam documentary that was trying to raise money and watched their intro video - http://www.indiegogo.com/Game-Jam-The-Documentary . Something about those 3 minutes of people trying to explain what a game jam completely ignited me with excitement for seizing this opportunity.
From my understanding, game jams are about achieving a personal best. Much like many competitive individual sports (though TOJam is non-competitive), you are motivated by your peers to push yourself to new levels and finish with a new personal accomplishment. On long drawn out projects, it can be difficult sometimes to know how efficient and organized you are really being. A 3 day game jam requires you to be extremely concise in what you expect to achieve and how you expect to achieve it. Something about this is incredibly empowering.
Our personal goal
Having adopted tojam.ca as my new bible for game jam philosophy and strategy, I came to understand that it was EXTREMELY hard to accomplish an idea in 3 days without any prior design or planning especially on a team of more than 1 person. Given that understanding I started contemplating an idea about a month ahead of time and recruited the people I felt were necessary to accomplish a complete game idea. We ended up with a team of 6 - 3 programmers including myself, 1 designer, 1 composer and 1 sound technician.
Our goal was to build a small HTML5 RPG micro-management game that could be played single player or multiplayer through network play using node.js. It was an incredibly ambitious goal to say the least. We knew we probably wouldn't get it all done so we laid out goals for ourselves. We hoped to have a simple prototype by Saturday midnight and then add as many features as we had time for on Sunday. We placed a strong importance on design and had all our static images ready to go for Friday morning first thing; animations were designed during the jam. Our designer and composer worked remotely the whole time from overseas. One of our programmers and sound guy were remote most of the jam as well. Luckily, everyone made it for the team photo:
Unlike the Game Jam Documentary intro video, I get to sum things up in more than a compound word, but 'mind-blowing' would probably be a good one.
The jam totalled 58 hours and I estimate that I personally spent about 40-42 of those at the jam working on our game. We had an incredible amount to code for both the front end and the backend; things were very tight. In addition to the challenge of coding, I also worked to manage a team, 4 of whom were remate and available through Skype at completely different hours. By Saturday night, we did not have our working prototype. The front and back ends hadn't even been married together yet. We had a few animations going, but there was nothing playable about our game; it was a well designed demonstration at best. The backend coder was our remote guy and we had to keep our fingers crossed his part would work with what we were building based on the agreed plan.
It wasn't until 3pm Sunday, five hours before the end of the jam, that we actually finally merged our code bases and combined the back and front end. Stress levels were pretty high in the last few hours, connecting all the dots and making things work. We completely threw single player out the window, multiplayer became the only priority.
In the end, we managed to pull it all together and have a small playable game in time!
The final result
While it was a bit hard for anyone to play at the jam, we were able to successfully demonstrate it. I actually couldn't get my public node server working in time for the 8pm deadline. In this demonstration I'm connecting 4 separate tabs on my computer to the game as well as 2 from my iPad. Some of the animations are pretty shaky, partially from pushing my laptop, and partially due to performance optimization we have yet to do.
It can be this incredibly gruelling experience at times with an amazing payout at the end. The atmosphere changes from days of focus to an instant arcade and celebration at 8pm Sunday. After all that hard work and exhaustion, you are rewarded with this blast of positive energy and new inspiration as hundreds of computer screens that mostly displayed code now show off incredible accomplishments.
It's funny to say this about complete strangers, but I'm really proud of everyone. There were so many awesome ideas and executions all fascinating in their own ways. You can also see the way different people interpret the jam and what they make their personal goal to do; I find that really cool.
While I'm very happy with what we did during this jam, I think next time I would still try to accomplish something more bite sized. It seems that game jams can be used to create very small highly polished games or to quickly prototype an idea into playable condition. In the end, we fell into the prototype category because our game was certainly not complete. I don't see anything wrong with this, but next time I would like to challenge myself to do make something smaller and complete.
In addition to making something smaller for challenge purposes, I would also like to be able to socialize more next time. The game idea was so overwhelmingly ambitious, I barely had time to meet anyone new or make any connections.
I'm really glad that I prepared a team, planned and did some design ahead. I think this was a smart game plan for executing on a bigger idea in such a small period of time. If your concept is ambitious, you really need to be able to fire out the door with no questions asked. While I understand that some people incubate their entire idea in the period of the game jam, that is not for me. I fear falling into the trap of coding and game designing at the same time which I don't think demonstrates a clean process and leads to many hours wasted sorting out details that should be spent building with a strong vision under such time contraints. Furthermore, I really enjoy the challenge of ironing out details and creating a strong team plan. I'm a process oriented guy.
There's still a lot of work to be done on our game, but all the assets are there. We actually have 3 more bosses to add and some serious balancing to do. We want to get the single/multiplayer version up on a server for play, there are just some hosting cost concerns at the moment since our game is kind of an unorthodox shape for inclusion on any other website being 980 pixels wide, running the backend on node.js and weighing in at over a 30MB download.
So for the time being, we've decided to finish the full experience, make a single player only version and release it for free on iPad. It will be an interesting exercise in building an HTML5 game for iPad and from what I've seen the performance on our game has been good prior to any optimizing. I expect that this will be released before the end of the summer. We all need to take a small breather in the meantime after what I estimate to be about 90 hours of coding/asset preparation between 3 programmers in 58 hours. Look out for Ragnarokked coming to an iPad near you soon!
I really look forward to finishing up what we started last weekend and I'm incredibly proud of what we have accomplished so far. Game Jams are an amazing experience that can really teach you a lot about yourself and your craft. I couldn't be more thankful for the experience and I hope to participate again next year.
My colleague James showing TOJam founder Jim McGuinley our game in progress on Saturday Night