in Conferences and events

Sleep-Deprived Reflections On The 360iDev Game Jam

About 48 hours ago, I participated in the 360iDev Game Jam. I’m still recovering from the sleep deprivation and caffeine excesses, but here are some random thoughts about the game jam and why I highly recommend the experience to all developers.

This was my third 360iDev Game Jam, and it gets better all the time. It’s great to see that it has become a 360iDev tradition, and that the number of people participating is going up every time. The last couple of times we had one invited guest to participate remotely (and preside over everybody else in the big video screen), but this time we opened it up so anybody, anywhere in the world could join us and participate in the updates and discussions through the web site (big thanks for Mike Berg for all the excellent work on the web site!).

What’s The Point

Some people don’t understand what the point of the game jam is. Other people see the value in it, but disagree with what other people see. The point of a game jam is the same as a jamming music session: To create something while surrounded by other developers and feed off each other’s energy and enthusiasm.

In addition to the jamming aspect of it, different people have different goals, and they’re all just as good and valuable:

  • Trying a new game idea
  • Learning a new API or technique
  • Making a finished product
  • Starting something new
  • Being totally experimental
  • Stretching their comfort zone

There were even people using the game jam as a means to make progress in their own game or app they had already started. It’s a bit far from the original intent, but why not? It’s the jamming part that is the most important.

I was glad to see that most people decided to work the theme (“changing the world”) in the game somehow. I definitely find that having some constraints helps me focus and be more creative at the same time.

One of the most attractive aspects of a game jam for me is that it’s a very focused, but very short effort. Yes, it sounds epic: “A full night of pizza, coffee, and coding…” but it’s only 8-10 hours. That means the cost of “failure” is minimal. It’s about a work day. That’s it. So that means it’s possible to try new, risky, experimental things, and, most importantly, be OK if they don’t work out. You don’t learn by succeeding at everything.

Swapping Roles

The last two game jams, I experimented with different kinds of game designs (heavy use of multi touch and limited visibility). This time around I’m in the middle of a new project (Casey’s Contraptions), and Miguel and I did about 5-6 prototypes earlier this year, so I wasn’t itching to do another experimental gameplay prototype.

So instead, Miguel and I paired up again, but with a twist: He would do all the programming and I would do all the art. How’s that for crazy? Actually, he’s in a lot better shape because he’s a good programmer in addition to being a great artist. Me, on the other hand, I can barely find my way around in Photoshop to copy and paste images from Google Images, so this was definitely going to be way out of my comfort zone.

As you can expect, we didn’t make as much progress as we had hoped. On the other hand, I never had more fun or learned more new things at a game jam before! It helped a lot that I wasn’t just flailing around with Photoshop, but that Miguel was there giving me pointers and showing me what the right way of doing things was. I went from not knowing that there was such a thing as a path tool, to becoming relatively proficient with it over the course of the night. It was like drinking a potion of +5 to Photoshop skills.

Apart from learning a lot, I also developed an even deeper appreciation and admiration of game artists. I knew it wasn’t easy stuff and that you needed a lot of talent. What I wasn’t quite fully appreciating is how technically involved art creation is! It’s very different from traditional painting and drawing, and it’s very highly technical. In a way, it’s almost like 3D modeling in how it requires mastery of a very complex tool and you need to work on very small parts for a long time.

Here’s a screenshot of the game showing all the assets I created during the jam:

DuelingPlanets_test.jpg

Lessons Learned

Some random, unsorted, lessons learned from this jam:

  • Come ready with an empty project you can start working on. The jam is not the time when you want to start stripping out old code. I learned that one in my first game jam, but didn’t come prepared with an iPad project (Hint: the iPhone -> iPad automatic conversion sucks–does anything automatic not suck?).
  • Everything takes longer than you think. If you think you’ll just finish the game by morning, it’s probably too big. Choose something smaller.
  • Learning stuff during the jam is great. Just adjust expectations about what you’ll create (we knew this going in, but still caught us by surprise).
  • Take a moment to interact with the people around you. We’re all in a hurry to make something awesome, but take some time to talk to other developers. It’s well worth it, and makes the long night more bearable (and energizes you more).
  • Pizza and coffee is a killer combination. I suspect I might never have to go to sleep if I keep the two in balance ;-b
  • When wifi sucks, it’s hard to take the time to post updates or read other people’s updates.
  • Hotel wifi always sucks.
  • The jam is not a popularity contest. Sure, it’s great to show it off the next day, but make sure you create what you want for yourself and not based on what will demo best the next day.

If you haven’t done a game jam, you should. I strongly suggest collaborating with at least one other person, and doing it live with a bunch of other developers. The energy is incredible and it will be an experience you’ll learn a lot from and will remember for a long time.

This post is part of iDevBlogADay, a group of indie iPhone development blogs featuring two posts per day. You can keep up with iDevBlogADay through the web site, RSS feed, or Twitter. This will be my last post for iDevBlogADay for a while (need to give those people in the massive waiting list a chance!), but I’ll definitely continue posting regularly.

  • Thanks for sharing your experience, and having participated in the 2nd remotely (yes I was one of the invited guest ;-p) and to this one. I always love the experience of doing it. Always something come up that me learn new thing.

    I think also it was a really great ideas to let people anywhere to join up, I did spent some time to check what was posted on the GameJam web site that Mike had set up and what people were posting on Twitter. Just wish you guys had a better wifi at the 360idev to get more update/pics from the main place (better luck next time).

    Sad to see you go in the #idevblogaday waiting list, but I am sure you will keep on blogging very insightful blog post ;-).

  • Sleep-Deprived Reflections On The 360iDev Game Jam http://gamesfromwithin.com/sleep-deprive… My last #idevblogaday post for a while

    • DazeEnd

      @SnappyTouch Thanks for organizing the game jam. I didn’t make a game, but I learned a lot. And it was nice meeting you!

  • Lessons I learned this time:

    1. Come with a empty project that actually RUNS on your laptop. I know you already mentioned to HAVE the project, and I did prepare one ahead of time. I prepared my project on my desktop iMac and copied it to my laptop. What I didn’t realize until just before the Game Jam was that my laptop didn’t have the source code for the libraries my project depends on. I scrambled to get those downloaded, installed, configured and running on the device during the time I was planning to get some sleep before the Game Jam.

    2. If you want to show something off in the morning, focus on the interactivity first. For this Game Jam, I created a lot of model code that worked great, but I didn’t start the user interactions and animation code until much too late and in the end didn’t manage to get the game playable. I wrote some test scripts that “play the game” and things update correctly internally, but showing a screen dump doesn’t make for much of a demo, except maybe to Saurik who lives in the command line. 🙂

    3. Don’t feel too much pressure to “finish”. I felt a fair bit of pressure to finish something playable, and that made me frustrated when I ran into some technical problems during the night. Next time I do a Game Jam I will try to just ensure that I relax, have fun and interact more with the other devs.

    4. Don’t try to bend an existing game concept to the theme. I had an idea for a word game already, and since I didn’t think of anything clever directly based on the Game Jam theme, Erick and I brainstormed a way to bend my existing game concept to the theme. I already had some concepts for what I wanted the game to look like, but we ended up taking it in a different direction only due to the Game Jam. Next time I will focus on the theme and some sort of experimental gameplay.