About two weeks ago the first episode of Indie Van Game Jam appeared on the internet. Four months prior to this, I spent about four days cramped in a van awkwardly hunched over a keyboard and a screen typing furiously. Back problems five years from now?
Okay, so how was it? First of all, I was using a Microsoft Surface Pro, a Logitech Illuminated Keyboard, and a Microsoft Wedge Mouse. (The illuminated part is kind of important if you’ve seen the episode.) As far as lugging stuff around goes, the Surface was great. It was light and it fit in this tiny over-the-shoulder bag that I have. As far as ergonomics? That kickstand is good for one thing, and one thing only. Being on a table. I cannot stress enough that the first version of the Surface Pro has a kickstand that feels too flimsy for laps. My set up ended being non-nonsensical to everyone else at first. I had the mouse on the arm rest (but it kept falling off.) I had the Surface closest to me (but kept accidentally touching the screen.) I had the keyboard on my lap behind the Surface (but had to hover awkwardly over it.)
Yeah. What is even going on here? The mouse was honestly the hardest part about the setup. Have lap. Will type. The mouse however, you really need some flat space, an un-affordable premium in the van. That’s why I kept the stylus behind my ear because eventually I felt like it was easier than using the mouse. Except, of course, Unity doesn’t seem to accept the touch screen input all the time. Blech! So this was the main set up until we stopped in at a Wal-Mart and scored some behind-the-seat tray tables that resemble the ones from an airplane.
For our engine of choice we used Unity. We had this crazy idea that we would use a different engine each episode as a unique flair for each episode. Ha ha ha. Oh how naive we were. While I had already been comfortable with Unity, neither Zeb nor Diego was at the same place. This made me remember the learning curve I had when I was new to the engine and quickly curtailed that whole engine switching idea. It did mean that we could now focus on the things that Unity does really well.
The tool-set is already pretty spectacular. I use C#, since I used it pretty extensively on the tools on SW:TOR. The design pattern, the Decorator, is simple enough to game jam. Everything starts with a game object and you add whatever behaviors you need (and, hopefully, it ends when you throw in a giant hack.) Even if each hack is carefully crafted to complete a feature in the next hour and lovingly labeled with a comment and prefaced with HACK_. (Because you never know when someone is going to look at your code and think that you’re just terrible and not lazy.)
Unfortunately, for a large subset of the features, the code ends up being fairly inflexible. The price of speed. A lot of questions about the future of features will come up and they will have been decided hours ago. If checks that cover up Console errors. Logic based on animation. Two or three bools (at first) that replace a state machine. Magic numbers!
You get what you have time for right?
30,234 lines of code among 7 games. (An average of 4,319 lines per game.) The largest, “It’s Not Me, It’s You”, clocked in at 9,779 lines while our smallest, “Sailor’s Warning”, only tallied 627.