lobal Game Jam has come and gone once again!
As one of the biggest game jams of the year, GGJ is always a good excuse to try to aim for something a little bit bigger and a little bit bolder for a three-day project, so that’s why Mason and I conscripted the help of our friends and fellow VCU students Alex Rice, Dan Cotting, and John Goldhamer to form a veritable Voltron of weekend game devs. Together, we were tasked with trying to make a game revolving around GGJ’s theme of “Ritual.” The result? Morning.
Morning is a game about performing your daily morning routine — from brushing your teeth to putting on your shoes — all before you head off to work. As you explore your house, you find everyday objects that trigger short minigames to complete, getting you ready for your day. Imagine WarioWare by way of The Sims. If you succeed, then you’re one step closer to heading out the door. Fail and, well, you get a different result.
Mason and I have done about four game jams now, all with various amounts of completion, so we had some goals going into this one:
- First, we wanted the majority of the game’s design fleshed out before starting on development. In game jams past, we’d frequently agree on the rough concept of the game, only to have to spend time spinning our wheels midway through the jam as we went back to clarify major parts of the design.
- Second, we wanted to prevent scope creep at any cost, since it was a major cause of incomplete game jam games in the past.
- Lastly, and most importantly, we wanted to complete the game within the time allotted by the game jam.
So how’d we do in accomplishing these goals? Let’s find out.
Solidify Design in Pre-Production
When it came to planning and preparation, I think we passed with flying colors. The first night of the jam was mostly spent on coming up with Morning’s core game loop and figuring out how to build it. I was very stubborn about making sure everyone was on the same page about the game design, level design, and interaction design, while still leaving enough room for folks to leave their creative mark on the project.
Jumping into development without a well-structured plan can really turn the game development process into a real quagmire. Things have to constantly be double-checked, cross-checked, and re-clarified if a proper plan isn’t in place. That’s why I made sure to hijack a whiteboard or two for the evening:
You can see a lot of different things covered on the board, from the visual layout of the house to my proposed game object hierarchy in Unity to an outline for how the minigame gauge would work. And when I say everything should be thought of beforehand, I mean everything. It doesn’t have to be spelled out to the tenth degree, but your team should be able to visualize the foreseeable breadth and depth of a design — and any potential obstacles — before splitting off into their individual tasks. My emphasis on planning comes from a healthy amount of game jam experience, where I’d come up with a cool game idea only to fail to realize how much work would actually go into building it during the jam.
With the design of the house and the minigames laid out, we decided who was to do what:
- Dan, having the most musical experience, took it upon himself to create the music, while also contributing some artwork once the game’s two songs were completed.
- Mason and Alex did most of the asset generation, which included character animations, sprites for all the objects in the house, animations for the minigames, and more.
- John, even though he had a computer science background, was unfamiliar with Unity, so instead of spending much-needed dev time getting him up to speed, John decided to help with making art too.
- Which left me as the sole programmer for the project, tasked with plugging together everyone else’s work to make a cohesive whole.
Staying Within Scope
With everyone’s tasks assigned, we got to work on building the game. Because everyone on our team had experience in either visual design or programming, we knew what could be accomplished within the span of a weekend, which led to very little scope creep. Very few suggestions for added features came in after the first night, and when they did, we had to collectively weigh the cost of implementing them.
I really attribute the success of staying within our predetermined scope to how well our planning session on the first night went. If we hadn’t spent the time to flesh out the major requirements for the game at the beginning of the jam, there would have been tons of stopping and starting throughout — reaching a milestone and then going “okay, what are we supposed to do next?” Laying out everything for everyone to visualize the project allowed for very little downtime and reassessment. We were a well-oiled game dev machine throughout most of the jam.
Finishing on Time
So, since we were so good at planning ahead and staying within scope, we obviously reached our goal of finishing within the time limit, right?
Well, not so much.
Check Out Morning on Dylan's itch.io Page
Since Morning isn't technically a Ward game, I've made it playable through my personal itch.io page instead. Any official products from Ward Games will always be available via our games page.
The game was almost done by the time show-and-tell came around on Sunday night, and there was enough of a game in place to show off a worthwhile demo. However, some parts still needed to be hooked together to create a full gameplay experience.
Because I was the sole programmer, I unfortunately became the bottleneck for a lot of the progress of the project. Even though the game was reasonably scoped, there was still a healthy amount of game logic for me to build. This past week following the jam, I was able to put the finishing touches of the game for it to be fully playable, but some bits and bobs were still left out: we had two different sprites for the player character, for instance — one in their pajamas and one in their work clothes — but I never had time to implement the animations for the work-attired version! So I guess they’re going to work in their underwear.
Another Jam in the Books
Game jam games are always a tightrope of making something you can be proud of while working within a super constrained time frame. With five of us on a team, we were able to do something slightly grander in scope than what Mason and I would be capable of on our own. Not only that, we were able to (mostly) hit our self-imposed deadlines and create a complete gameplay loop with a beginning and an end, all while coordinating between the five of us, three of whom had never done a game jam before!
We were all able to gain a little bit more experience with the game-making process last weekend, all in different ways. Some of us learned how to do walk cycles, some of us learned how to implement music, and some of us still learned about creating artwork for the first time. I remember when I asked John if he’d be willing to create art assets instead of programming.
“I’m not very creative,” he said.
I was honestly shocked to hear him say that. I think if you do any work that involves making something — be it art, music, and yes, even code — then you’re creative. Programming takes as much creative problem-solving and skill as being an artist does, and while they’re not one-to-one, never think you’re not creative just because you’re not making something that would be traditionally classified as “art.”
If you want to hear more about our time working on Morning, then be sure to check out the most recent episode of the Ward Podcast, where we also talk about our time at GGJ! And of course, be sure to check the game out for yourself!
All in all, Global Game Jam 2016 was another great jam with great people. We’d like to thank RVA Game Jams for always putting on a great event and for the VCUarts Departments of Communication Arts, Kinetic Imaging, and Art Education for hosting the jam and giving so many VCU students with a passion for games the opportunity to work on one. And most importantly, we’d like to again thank Alex, Dan, and John for charging through with us over one long weekend. We hope to work with y’all again sometime!