This weekend, I took part in Cleveland Game Developers Summer Game Jam 2017. This year, I worked with a team consisting of Wally Pease, Bobby Lauer, and Colin Wolfe.
Our project, Super Greedy Ghost Grab, turned out really well. I really enjoyed working with our team, and I think everyone executed on our project extremely well. The deadline build isn’t perfect (and no game jam project ever is, so that’s not a knock on what we did). I’m very happy with what we were able to do in 48 hours.
The theme for the jam was announced: Identity. I didn’t have any good ideas at first, but eventually our team decided to make a game about a ghost who can “possess” things, becoming them, and assuming their identity.
At first we were going to have the ghost possessing people, but we quickly realized that the scope of such a project would be unmanageable for the time and resource constraints we would face, so we decided instead for the ghost to possess objects. To give the game a story, we decided to put the ghost in an art museum, and made the ghost an art thief, who must avoid detection by a security guard.
I came to the jam intending to work with Wally, but Bobby and Colin joined us and were very productive members of our team. We had two full-time artists (Bobby and Colin) and two programmers (Wally and me). Wally also recorded sounds and did some of the art as well. Between the two of us, he even did the bulk of the programming, laying out the main engine, player, and “possessable” art object, while I provided the “googly eye” effect for the possessed art objects, and implemented the guard, and also lent a hand with debugging, polishing, and general play testing. In addition to providing some of the art for the project, which included the Ghost and Statue sprites, and floor tiles, Bobby also did our level design. Colin contributed the guard sprite, the diamond, the vase, the paintings, and the pillars, and also touched up and organized the wall tiles. Their artwork was excellent, and they were able to produce exactly what the project needed. Everyone’s art worked well together, too, which I’m not sure how that happened, but it’s impressive that three different people working on art could come up with a consistent and seamless style.
This was my first game jam where I got to work with another programmer and shared programming duties. I found that things went very well overall. We had a few hitches when merging code, but nothing terrible. We didn’t use a formal version control system, which was part of the problem. At first we relied on Google Drive to share files between team members, but when it comes to uploading revised versions of files to Google Drive, some very strange things started to happen. Apparently when a user “deletes” a shared file on Google Drive, it remains available to the other users who have access to the shared item. Replacing the file with a newly uploaded copy doesn’t replace the original copy, and instead results in multiple versions of the same file. This created a lot of confusion at first, until I realized what was going on. At that point, we switched to using Dropbox, and handled code merging using BeyondCompare to handle comparing and moving the code files in the project .gmx. Wally and I sat side by side, which made it a reasonable way to handle merges. This worked passably well, BeyondCompare made it very easy to merge our changes. But I believe that a true version control system would have been even better.
We also were able to communicate with each other as needed, and be a second pair of eyes for each other whenever we had a “wtf?” moment. I’m really excited about working with Wally more in the future, and would be happy to have more chances to work with either Bobby or Colin again as well.