Sunday, August 22, 2010

"Immigration Jam", August 20-21, 2010

This weekend was a game jam even put on by Alex Schwartz and Darren Torpey, as part of Boston Game Jams - a group seeking to foster a sense of community among local area game developers. We met at the Singapore-MIT GAMBIT Game Lab for a weekend of game development fun.

The reason the theme was immigration was in honor of fellow WPI student Yilmaz Kiymaz, who's looking to come back to the United States since his student visa expired. So, many of the games developed had to do with immigration, ranging from the satirical to the tangentially related. Keep an eye on the Boston Game Jams site to see them and the presentations!

Fun fact: This particular game jam had an exceptionally large number of participants dealing with audio. Usually it's the audio people that are the hot commodity; this time around it was some of the artists who were juggling their time between groups. So at the very least, this was a very good sounding jam.

I ended up in a group with Greg, another WPI alum, as well as three Berklee students, Leah, Kristen and Lawrence. The original proposal was a combination of two similar ideas, one featuring plants in garden, and one about the Chinese Rhino beetle (I think he meant the Asian Longhorn beetle). Both ideas had the central theme of balancing an ecological system, with the idea of migrating species presenting a challenge in maintaining the balance. I added the suggestion of styling it more as a strategy board game. For lack of a better name, we've dubbed it "I-Migration".

We chose to use the Akihabara game engine, which is a relatively new system that's essentially a set of Javascript libraries to access the Canvas element of HTML5. In short, the entire code of the game is on a webpage and runs in-browser. (Well, except Internet Explorer, but that's because it just sucks.) Darren gave a talk about it at last month's Boston Indies meeting, and has been working with Darius Kazemi to provide documentation and tutorials for the engine.

I felt the decision to use Akihabara was a good one. Because it's basically Javascript, it's fairly easy to pick up and learn (despite the lack of in-depth documentation, although Darius and Darren's efforts are a good start). Because it's HTML5, compile time is negligible, and we can use things like Firebug to get real-time debugging information. Also, adding art and audio assets isn't complicated either. At the last Global Game Jam, I mentioned one of my great regrets was not being able to get sound working in our game. This time, music was one of the first things we had working!

There was a bit of a learning curve where the two programmers of the group were essentially learning a new game engine, and as such the initial struggles were getting the game to load art assets, and yet most of the game came together within the last few hours. The other problem came because I shot myself in the foot. Despite the fact that we were working in the GAMBIT Game Lab, we didn't have access to their equipment, so the jam was bring-your-own-computer. And I don't own a laptop, so my role on Saturday was mostly relegated to that of design and support. And while I love the design aspect of it, there comes a time where you can't tie up the people actually creating the product. Thankfully Greg was able to secure another laptop for me on Sunday. But even if I had a system to work on the whole weekend, another issue was source control. It wasn't a big problem since it was effectively one programmer working on one file, but there was a headache when I was able to contribute code and it was a matter of hunt-and-peck-and-copy-and-paste. But that's understandable, given the short time span and jam-mentality of "throw everything in a bucket and just get it to run".

I'm pretty proud of what our group was able to accomplish at the end of 36 hours. It's effectively a vertical slice, offering one round of play. It has some awesome art and sound elements, thanks to our talented Berklee members. But, due to time constraints, it's not as complete a round as originally designed. And it's not as automatically as I'd like - there's a lot of hand-holding, and even then the user doesn't really have an idea of what's going on unless they pay real close attention. But hey, given the ease of development, we may still poke at this some more, and move closer to a complete game.

Another interesting twist to this whole weekend was the food. Vickie Wu, Darren's fiance, had a one-woman "food jam", making a variety of snacks and tidbits for us through the whole weekend, which was great because otherwise the official "meals" were all pizza. Delicacies included berry smoothies (yum), peanut butter/banana/yogurt smoothies (more like "thickies", way too sludgy - the only real misstep of the weekend), Waldorf salad in lettuce cups, two different kinds of hummus, freezer pops and ants on a log (reliving childhood!), microwave s'mores (marshmallows need to be fire-roasted, but they still tasted good), frozen coffee mocha drinks, and strawberry/mint soda spritzers (I could have done without the mint - too earthy and not minty enough, plus the cup full of tiny leaf-chunks is off-putting). I'm not entirely sure why she did this (other than "she wanted to"), but I'm glad she did! Plus, Yilmaz brought some honest-to-goodness real Turkish Delight. I had heard the closest thing to it was jellybeans, which it was, but a little chewier, but not as chewy as say, candied fruit. It's also flavored like almond and had almonds in it (though there was a mint variety), and completely covered in powdered sugar or coconut. Of course, the only time anyone's ever heard of Turkish Delight is from The Lion, the Witch and the Wardrobe, so it's neat to actually try some.

In conclusion, as much as I love game jams, I'm not 100% sure at this time if I will participate in the next Boston Game Jam, unless I can definitively secure a laptop to work on. I think everyone did a great job and I had a fun time!