Thursday, June 7, 2012

Global Game Jam, January 27-29th 2012

This was the fourth annual Global Game Jam, and I've been lucky enough to attend every year - it's an event I look forward to.  Aside from the usual "achievements" (optional restrictions to help focus your game designs), this year's theme was pretty simple: an ouroboros.
This year's theme. This exact thing.

Luckily, an image such as this can be interpreted several ways, and the game pitches reflected that.  The team I ended up on took the theme a bit more literally, borrowing a concept from American folklore: the hoopsnake.

What Went Right

Our goals for this project were to build on what has been successful in previous years: keep the game simple, and keep the humor high.  In that regard, we did quite well.

Hoopsnake! is a side-scrolling platformer, utilizing only one button as the game mechanic.  The hoopsnake constantly grows larger; grow too large and he'll fall apart, Game Over.  Press the space bar for him to take a bite of himself to get smaller; go too far and he eats himself out of existence.  You want to be small to fit through narrow passages, and you want to be large to be able to catch yourself on ledges after being propelled up by spring-coil copperhead snakes.  Eat all the doughnuts on the level to continue.

The humor is best exemplified by the soundtrack.  When you hit a spring-snake and are propelled upward, the game goes into a bullet-time state, and a bit of The Ballad of the Hoopsnake plays (also available as a separate track).  The overall goofiness of it earned us a standing ovation during our presentation.

What Went Wrong

Our team of programmers (myself included) didn't feel particularly strongly about a game engine, so we tried to pick something that we could all share.  Ultimately we settled on Java, using MarteEngine.  We made it work, although it's not the best engine for the design we had.  Most notably, MarteEngine is a tile-based platformer engine, where something like Hoopsnake! may have better benefited from something smoother or vector-based, like Flash.  As such, we had to get around this weird problem of the hoopsnake effectively falling down stairs, instead of rolling down a hill.

I felt the art could have been crisper, as well.  MarteEngine uses sprites, and one of the issues I worked on was making the animation of the hoopsnake work.  There was a lot of futzing with sprite animations and scale percentages, and ultimately we couldn't get it to look the way we wanted - but it doesn't matter so much because the hoopsnake rotates so fast that you'd barely notice the animation anyway.

As is usually the case with these projects, it would have been nice to have a bit more time at the end to polish what we had and focus a bit more on level design.  I feel it looks a bit clunky and rushed, but then again, it was only built in a weekend!


What to Improve

I think the successes of Hoopsnake! outweigh its shortcomings.  I only wish I had the time and money to learn several game engines to be better prepared for working with other programmers, or to invest into a single game engine, take the lead on the project, and be able to teach others.  But, that's more of a personal problem, and I enjoy tackling this problem with more game jams.

Download the Hoopsnake! project at this page.

Cardboard Jam II, October 8-9th, 2011

Back at MIT for another Cardboard Jam (board and card games).  The theme chosen for this jam was "occupy" - this was in the middle of all of the "Occupy Wall Street" business going on at the time.

Our group's initial brainstorming included expanding on multiple definitions of the word occupy, such as occupation (jobs) and occupying space, which is the direction a lot of other groups went in.  We moved toward a more current-event angle, the genesis of what we uncreatively called "Occupy Boston Game Jams".

An early iteration of our game.
The idea behind the game is that the players are leaders of an "Occupy" protest movement, and you have to balance between recruiting new people to the cause, keeping everyone engaged and fed, maintaining a positive public image, and not getting dissolved due to apathy or police intervention.  It's a cooperative game and the players have roles with certain bonuses.

We hit a snag early on where the gameplay simply wasn't engaging, and we weren't quite sure how to fix it.  So, in a bizarre move for a game jam, we opted to abandon the project for a majority of the weekend.  I think the idea was to "sleep on it", and hopefully have a kind of epiphany like you do after a good night's sleep or when you're in the shower.  Luckily for us, that's what happened!

In the interim, we spent some time futzing around with some other prototype ideas - one being a game where the battle mechanic involved poker hands.

A playtest.
One of the big changes we made when we finally decided to give the game another try was switching the dice that determine success/failure from d20s to d12s.  Partly because you rarely see d12s used, but it helped with the overall statistics. 

Overall I think the project was a success, despite the actual development time spent on it was about half of what it should have been. 

Tuesday, June 5, 2012

A (little more than a) Year in Review

So, obviously, the website and blog have endured a bit of neglect.  And I'm updating it now, which indicates something major has happened which prompted me to make such updates.  So, here's an outline of some of the major stuff that happened since the last time I updated the blog:

  • The last post I made was in April of 2011.  I didn't mention it here, but I was let go from QUICKHIT that previous February.  So the jam occurred as I was looking for new work.
  • I found such new work at 38 Studios, in July of 2011.  Hooray!  Again, I worked in QA, for their Digital Presence team, on their websites for their game Kingdoms of Amalur: ReckoningTM  (released in February 2012) and the expanded lore site Amalur.com.
  • Another Cardboard Jam was held in October.  I'll be making a separate post about it.
  • The Global Game Jam was held in January of 2012.  Again, separate post.
  • 38 Studios was hit by some financial troubles which, if you follow game industry or New England news, you might have heard about.  I'm not going to go into detail about it (I'm not even sure if I could), but I felt this article on Gamasutra provided a mostly fair synopsis of the events.
So, as of this writing, I'm currently looking for a job again.  The website and my resume have been updated with current information.  I'm fairly optimistic I won't have to wait too long for my next job.  In the meantime, I guess I've got plenty to write about.