The Game

PTBO Game Jam 03 was held over a 32 hour period on August 4-6, 2017 at Fleming College. The theme “Retro Flashback” was shared a week prior to the event. Jammers had five days following the event to make edits and submit the game online for peer review and community voting.

The game is available here: https://lazymammal.itch.io/laughs-last

A space shooter game, Laughs Last is a multi-level game which features characters from classic retro video games.

The Laughing Dog has cloned our favourite retro game characters and kidnapped the heroes. Rescue them all to have a chance to (finally) shoot the Laughing Dog.

Background

Team Cool (L-R)

Rob Waite, Chris Stretten, Heather Watson, Dennis Carlstrom

Rob Waite – Programming and Sound

Chris Stretten – Artist

Heather Watson – Project Management and Level Design

Dennis Carlstrom – Programming

All team members had been involved in previous PTBO Game Jam events and knew each other outside of Game Jam but they had not worked together as a team before. The team initially formed as Chris, Heather and Rob but recognizing that programming was a skill gap, Dennis joined the team.

Dennis as our Lead Programmer brought coding and Unity experience. A career Game Artist, Chris’ strength was in the development of all visual assets. Rob brought a combination of sound and programming experience to the project while Heather used her Project Management skills and willingness to learn to fill the gaps where needed and keep things on track.

Tooling

Art:

  • Photoshop (industry standard illustration software for digital painting and drawing)
  • Wacom Intuos Pro Medium (digitizing tablet with pen and pressure sensitivity for digital drawing)

Project Management:

Sound:

  • Unity 2017.1 (Common game engine we all know)
  • Visual Studio 2017 Community (Standard MS IDE)
  • Presonus Studio One (industry leading digital audio workstation for composing and recording)
  • Audacity (quick and easy open source audio editor for making touch ups to mixdowns)
  • Akai MPK25 Midi Controller (small and portable 25 key midi controller for midi input)
  • Presonus FaderPort (small and portable 1-channel motorized fader port for channel transport and automation controls)

Programming:

  • Unity 2017.1 (market leader for small/indie game dev; known to be “easy” for non-coder team members)
  • C# (de facto programming language once Unity is chosen)
  • Visual Studio Code (light-weight programming text editor)
  • Seamless Visual Studio Code Integration in Unity (a plugin to configure Visual Studio Code editor for debugging C# together with Unity)
  • BG Curve, (Unity scripting asset provides in-editor Bezier spline curves; used for content creation)
  • Procedural animation (programming technique for creating or embellishing in-game sprite object motion without needing exact frame-by-frame animation paths; efficient for game jams and small indie dev teams that don’t have access to a whole team of digital artists)
  • 2D sprite objects (Unity component to display and animate small images; fast, lightweight and simple; a traditional game rendering technology used in retro gaming)
  • GitHub (for syncing multiple versions and updates among the team and backing up)

Location

The event was held at the Kawartha Trades and Technology Centre (KTTC) at Fleming College. The area was opened up so all participants could be in clear view. The event was being streamed on Twitch and Jammers could share their screens to the live stream. The space had lots of natural light, and felt modern and open.

Above: Two of the workspaces available within the KTTC at Fleming College

Brainstorming

Once the theme had been announced, the team began sharing ideas and favourite games that fit within the theme via Slack and a casual meetup. We identified some lofty ideas and scaled them down to what could be reasonably accomplished within the parameters of the event.

At the launch of the Game Jam, the team met for about an hour which is where the concept of a space shooter was solidified. Prior to solidifying the space shooter concept the team considered a Qbert style game but moved away from the concept due to lack of full team buy-in.

Some ideas the team had around the space shooter that were not executed included:

  • Camera rotates play area 90 degrees to match final ship spin position
  • Enemies shoot bullets at player
  • Secret “Boss Code” (i.e. iddqd or up, up, down, down…)
  • Achievement criteria for unlocking bonus levels
  • Design logic for player ship taking damage, being shielded, immunity cooldown, lives counter and possibility of not winning game
  • Hero bullet on-screen maximum count limit
  • More randomization of visual and sound effects

Ultimately, the decision to build the style and caliber of game that was submitted was due to available time and team interest.

 

Figure: Early sketches of game play area, player ship and enemy movement

Process

The process was not well defined due to the nature of a Game Jam environment whereby we had 32-hours to build a game. What we did do was identify individual success metrics prior to the Game Jam and skills. There were identified team goals as well as personal goals and we worked to ensure that we were supporting each other individually while working on the team goal.

In short however, the process was to determine our concept, add the elements, test it and refine it. Much of the refinement occurred following the 32-hour Game Jam period in an allowable extension that was provided to participants for refinements specifically.

We had hoped to have a rough playable version within four or five hours of the development process but that did not happen until roughly sixteen hours into the process. At which point some of the enemy pathing could be developed while ongoing programming, sound and art was being developed.

Figure: Enemy Pathing Sketch

What Went Well

The team had an ambitious goal and was able to execute many of the desired features into the game. It was identified early on that we all wanted to ensure that our efforts were maximized and that our work was not wasted. The team worked well to ensure that all of the ideas and outputs were achievable and incorporated into the game.

The team was able to leverage having an artist by creating all original art for the game, including particle effects, explosions and a variety of enemy sprites.

Figure at right: Just a few of the sprites

The programming of the game and player were smooth with a multi-level story line. Although it was a complex game the team was able to meet the deadlines for completion.

The maturity of the team was reflected based on their ability to reach consensus and an overall great group dynamic. Scrums were held every three hours on the first day and every two hours on the second day. These were helpful to keep the group working on track by identifying challenges and the need to shift before issues become problematic. As well, the scrums allowed for the team to remind themselves that it is a fun venture and seemed to regenerate the group.

What Didn’t Go Well

Although it’s a fun game, there is no way for the player to die or have a reasonable way to move through the story. The game plays more like an interactive movie.

Initially the decision to use a square play area within a 16:9 screen resolution was made to accommodate the desire to have the camera rotate but at some point the decision was made to abandon the rotating camera but there was no discussion about changing the play area size. This limited the game play area for no reason. It worked but it could have gone differently.

Although there was an initial team meeting for pre-planning prior to the Game Jam more time could have been spent in advance setting up tools and planning the game. We had challenges using the collaboration feature in Unity at the start of the Game Jam and decided to use GitHub instead which was functional but not necessary. As there was a dedicated writer on the team, having a full story in advance was not necessary but it would have been advantageous to plan the game, screen by screen so as to identify development needs in advance of the Game Jam itself.

What’s Next

The game was published on Itch.io and went through a peer review, ranking 9th overall with four ratings as follows:

As Team Cool formed specifically for participation in Game Jam 03, there are no future projects slated for the group.

Team Thoughts

“I learned a lot, not just about game development but about myself. Overall a rewarding experience and I’m proud of our accomplishments.” ~ Heather Watson

“This being my second game jam, I felt that I was able to slip into production mode very quickly.  My teammates were great to work with and communication was fast and open, which was a major factor in completing successfully. I had a great time and look forward to the next Jam :)” ~ Chris Stretten

“This was my third game jam but only my first time as part of such a diverse group. It was quite motivating to have such wonderful collaborators. I’m glad I had the opportunity to join the team.” ~ Dennis Carlstrom

“PTBO Game Jam 03 was a great experience and overall success.  This project was much more advanced and ambitious than my experience at previous events. We worked great as a team and accomplished a lot in the short amount of time.  I can’t wait for the next one!” ~ Rob Waite