Sunday, February 8, 2009

GlobalGameJam Vancouver - Aftermath

When many modern games have development cycles that number in years, not months, trying to create a full game from nothing in less than 48 hours seems like madness. Yet, last weekend hundreds of people attempted just that and I believe most of them succeeded. Of course, the scope and polish of these games were quite constrained, but to go from tabula rasa to any working game at all in that time is quite commendable.

I participated in Vancouver's GameJam and with the help of four extremely talent folks. We created Treelings! The game is playable here and its GameJam page is here. I'm extremely proud of what we accomplished in the time allowed and we even pulled it off without any all-nighters. Others have even commented upon how polished our project appeared. I thought the GameJam was a fantastic experience and keeping with the spirit of learning and improvement, I wanted to jot down a few observations and the things our team kept in mind when we were working:

1) Find something simple and fun, and build upon that

As soon as we were given the theme ("As long as we're together, we'll always have problems.") and adjectives (thin, rotating and evolving) for Vancouver's games, our team began experimenting with L-systems. While in the end we ended up using the simplest L-system possible, the core mechanic of using the vine to climb platforms was solid and prototyped by the end of the first day. Using this simple but enjoyable mechanic, we were able to focus the rest of our time on Saturday and Sunday to make that core experience as enjoyable as possible.

2) Scope is driven by constraints. Don't be afraid to cut, cut, cut

It's always difficult to cut a feature or idea you're passionate about or you've worked hard on, but being able to maintain enough distance to objectively know when the cost of a feature is not worth its payoff is an absolutely essential skill to possess. Our constraint was obviously time, but in professional development it might also be budget, manpower or something else. Our final game has only maybe 1/4 of the features we intended, but I think it was much stronger for it. I get the impression that some of the other teams bit off more than they could chew and ended up with several features that were all pretty rough instead of just one that was really solid.

3) Polish counts for a lot

Related to the above, if the decision is between one polished feature or two rough features, I'd contend a single polished feature will always end up being more impressive. I'm sure most people familiar with games can think of numerous titles that had features that felt bolted on, rushed and rough. When working on Treelings, we considered numerous addition features, such as some notion of health, attack/defense trees, scoring, etc. Ultimately, we opted against all of these, preferring to just focus on making the core of our game as strong as possible. I think this was the correct decision and it was visible in our final game.

4) Capitalize on your team's strength

Initially, we intended on building a game in Unity, as none of us had used the system before and we wanted to experiment with it. Quickly, however, we realized that the game's style and our various skillsets were more suited toward a Flash game. We prototyped the core mechanic in Flash, our artist was a traditional 2D animator and all the programmers had used Flash in the past. As interesting as it would have been to experiment with Unity, I think we made the right call. We would have spent so much time just coming up to speed with the tool itself, we would have had a lot less time to devote to improving the game itself.

All in all, the GameJam was an absolutely fantastic experience. Being able to go through a microcosmic version of an entire game development cycle, from team selection and pitching all the way to documentation and release, was an invaluable experience. As I mentioned in my last post, the only disappointing thing was there was a distinct lack of industry professionals. For those in the industry, the GameJam provides a rare opportunity to practice a wide variety of vital skills. For those outside, it can provide a fantastic demo to share with potential employers, possibly some good contacts or just some perspective on just how challenging, but rewarding, game development is.

My thanks to Susan Gold, Ian Schreiber and everyone else that helped organize and participated in the GameJam. Hopefully it will been an even greater success next year!



Blogger Ben Abraham said...

The more I hear about the Game Jam the more I want to be a part of it next year. Sounds like you learned a lot.

Were there any non-programmer people in your group and if there were, what did they do? From what I read it sounded like the teams were selected from a group of strangers, is that right? That sounds like a really good learning experience and I had no idea that was how it worked.

February 8, 2009 at 8:55 PM  
Blogger Nels Anderson said...

Aye, one of our team members was an animator/illustrator with little programming experience and she contributed a *ton* to the project. Practically everything visual she drew/animated and we incorporated it into the game. A dedicated sound guy could total help out in a similar role, I'd wager.

I think team selection was up to the various locations. I heard of a few places that allowed pre-arranged teams, but Vancouver basically insisted you work with at least a few people you didn't know. I think this is actually a lot more valuable than showing up with coworkers/friends and I'm glad Vancouver opted to do it this way.

February 9, 2009 at 11:00 AM  
Blogger Matthew Gallant said...

Wow, that was fantastic Nels. Kudos! How did you make the music and audio for the game?

February 11, 2009 at 10:31 AM  
Blogger Nels Anderson said...

Fortunately, we didn't need to. We just found Creative Commons or otherwise free audio to use. We tried to find some more appropriate music, but time didn't allow for it.

February 11, 2009 at 11:01 AM  

Post a Comment

Subscribe to Post Comments [Atom]

<< Home