It was another fun-filled and exhausting week at the annual #gamedev summer camp. 2016 brought 15 students, 1/3 of them female!
This year brought several firsts:
- The first year breaking the 1-in-5 girl-to-boy ratio.
- The first year using MonoGame in place of Microsoft’s XNA.
- The first year using Xamarin technologies (in addition to Visual Studio).
- The first year using PS3 controllers (rather than Xbox 360 controllers).
- The first year that I blindly accepted student in-game art, sight unseen.
- The first year ALL students brought their laptops! (I keep a few spares to share, since 1-in-5 has forgotten in past years.)
The game featured a little girl who explores a dark, haunted mansion with a fairy companion who attacks baddies. The ultimate goal being to defeat the boss of the mansion, a giant unicorn.
While the camp went pretty darned well, the week wasn’t without it challenges.
The PS3 controllers were cheap. Quite the deal. They didn’t work with MonoGame on Windows, though. I should have tested on more operating systems, earlier. Work has just been crazy of late, involving 100% out-of-state travel. The solution? I drove to the nearest GameStop (30 minutes away) to buy 16 Xbox 360 controllers for $450.
The Art Assets
Student art was scaled, styled, and colored with great variance between assets. We had to make tweaks to just about everything for consistency. The in-game art still has several obvious differences between assets. But, it’s theirs. And, including audio assets, just about everyone contributed something to the game, making it their own.
The Framework and IDE
MonoGame + Visual Studio gave us headaches on two of the laptops. We never got those fully working. They could play games, but not compile or debug them (on 2 of 18 laptops). I felt bad about the situation, but the class had to move forward. The students were able to contribute greatly to the design and art and sound for the game, but they were robbed of the hands-on time with the code that the others had.
The best way to setup MonoGame varies across platforms. Nuget is the easiest way within Xamarin Studio (on Mac), but the installer was easier for Visual Studio (on Windows). That spells potential confusion when telling a classroom full of folks what to do next. And, especially for Visual Studio clean installs, the order of steps is important. For example, you really need to do a “first run” of VS before installing any project templates.
All in all, it was a good week. I do feel that I could have performed better, though. There were many more variables this year than in previous. Prior planning would have addressed most (if not all) of the issues, save the funky / broken Visual Studio + MonoGame installs on those two laptops.
In the past (including that very first camp, in 2011), I’ve worked “off the cuff”, allowing the students to drive the experience. It’s a model that has served us well. The end product is something in which the students take pride of ownership. And, since they drove it, their comprehension comes easier.
Moving forward, I plan to have more structure. Perhaps daily projects. But, I’ll need to accommodate the nearly infinite paths that their project may take. In general, I can keep things simple and abstract. 99% of games involve loading assets, rendering them, and controlling their state via input and logic. That should translate well, regardless of the type of game the students choose to build.