Global Game Jam 2012 RetrospectiveSubmitted by Earok on Mon, 01/30/2012 - 10:37
Overall my experience at the Global Game Jam this year was a mixed bag. I left having programmed the worst game I'd done in a long time, fortunately though the experience didn't come without learning Unity and some other valuable lessons. So, here are my thoughts on the event.
Clockwise from left. Simon (Environment art/texture art), Yeefoong (Character art/texture), Phil (Project Lead, also did Art), Billy (Character Art), Baldy man (Programmer).
As you can see from the make up of the team, it was strong artistically (and some of the 3D graphics in the resulting game were absolutely top notch) but not as strong from a programming point of view. The game's flaws largely come from my side.
Lesson Learned #1: The core programmer should be fluent in the toolset of choice
I had never used Unity before the weekend (apart from one or two of the most bare basic tutorials) and since Phil announced the project was going to use Unity I leaped at the chance to get some hands on experience that may yet pay off with the Battlesuit project.
Unfortunately, even though I'm fairly strong at C#, and Phil was able to give me invaluable assistance with starting out Unity, I think the project suffered because I wasn't familiar with Unity's nuances. Physics in particular was a nightmare. If I was to do it again (and I might still do this), I'd ditch Unity's built in Physics and make a serious attempt at creating the right feel from my own heavily "faked" physics. It also took me far too long to implement simple things such as animation because I had to learn all of that as I went.
It wasn't the intention for me to be the sole coder right from the start, we certainly would have taken more programming help if we could have gotten it. Unfortunately we couldn't get any other programmers to join the team.
There were three people who contributed to the code base for Noah More Heroes last year, and I was the only one who had used Blitz3D before. That arrangement actually worked out pretty well, the other two programmers turned in some good code after I gave them some basic mentoring, and overall it saved me a lot of time that I put to use with the core game. I think that arrangement would have worked well here, I might have been useful as an 'apprentice' working on the less important parts of the code base if an experienced Unity developer focused on the core code.
Lesson Learned #2: Focus on what's fun
It was about 1am on Sunday morning when I realised the original version of the game just wasn't working. The original game was kind of a race between the players along platforms in an infinitely long Kitchen, eating food to gain weight so that they could push others around easily. Noah (yes, I have a friend named Noah, though that had nothing to do with the naming of last year's entry!) convinced me to implement a mode focused on the 'Sumo' element of the game, so I decided to ditch what I'd already done and retool the entire game around that idea before the rest of the team came back in the morning!
Thinking about it further, the original version of the game entirely wasn't without merit. Jumping between platforms was kind of fun and there's no reason why I couldn't have implemented some moving platforms around the kitchen top.
Lesson Learned #3: You can't cheat sleep
This was a lesson I already knew but chose to ignore. It was stupid of me, but I slept a lot less at this game jam than I had at previous ones. To tackle difficult problems you really need to have maximum mental performance, and you certainly don't have it if you haven't had a full night's sleep.
Lesson Learned #4: Work on an idea you love
I loved the idea of 'Noah More Heroes'. I think the whole team did. This lead to a great working atmosphere where we spent the whole weekend laughing as we frantically worked on the game. It wasn't entirely stress free but, even if I do say so myself, I think the merit of the original idea is evident in the final game.
I can't say I fell in love with the concept of Eat Or Die, even though I contributed to it. I think I really struggled conceptualising what was fun about the idea (both in gameplay and in theme) which might be evident in what I coded. Not being enthusied by it also didn't help with my motivation.
There was an idea that I really loved, largely inspired by an idea Noah pitched. I'm actually still really tempted to sit down and make it sometime, if Noah would be interested. The concept I had in mind was a top down 2D one or two player game that was kind of a mix of GTA 1, Bomberman, Cludeo and Jones in the Fast lane. It perhaps was in the same wacky vein as Noah More Heroes. I would have done that game, except for the opportunity to learn Unity (something I definitely do not regret about the weekend) and my mistaken impression that Noah had dropped the idea to work on a completely different game.
It also perhaps wouldn't have been that hard to program, which leads me to..
Lesson Learned #5: Don't do 3D unless you really have to
Thinking back about all of the game jams that I've been part of, the games that had the most merit were largely ones that were strictly 2D, and even the great 3D games were ones where the gameplay constrained to two dimensions. The original idea for Eat or Die was gameplay 2D in 3D, I took it down the fully 3D route which may have been a stupid idea in hindsight.
Well, that's it. Time to start thinking about Battlesuit again.