Create and ship a fully functioning game built around a "food" theme in seven days for Design Buddies' second game jam.
Making a game with strangers
Before the game jam, none of the team had met each other, so the project was as much about getting to know each other and who was good at what as it was creating the game.
Creating a no-code game
No one on my team had more than elementary coding skills, so creating a fully-featured game proved challenging but not impossible thanks to GameMaker Studio 2.
Our original concept was for the humans in the game to be able to block the dog from stealing food, but due to time constraints and our rudimentary coding knowledge, we had to scrap the feature. We also had to cut a competitive leaderboard feature.
Winning by losing
Unfortunately, our game didn't place in any of the award categories, but we left the competition with a game we were all proud of and had a ton of fun making.
When the jam kickoff session started, none of the five of us knew each other. We also didn't know who was skilled at what and how we'd work together. We met for the first time in a Zoom breakout room during the kickoff, and since we were all still looking for a team to join, we decided to start our own.
One of the five original team members had to leave the project the first day because he got hired for a new job — hooray! — so the four of us (Kayla, Kate, Mindy, and I) decided to soldier on.
Though we learned that each of us brought something unique and useful to the project — Kayla's musical background, Mindy's in illustration, and mine in writing — we also learned that none of us knew how to code.
Thankfully, we discovered GameMaker Studio 2, which makes it relatively easy to create a game without knowing how to code. Learning the software was still an uphill battle, but creating the game would've been impossible without it.
Creating the game also would've been impossible without Discord's awesome video conferencing and screen sharing features.
Design Buddies announced the theme for the jam — food — and we immediately started generating ideas. Kayla's dog, aka "Chaos Beast,"(pictured) became the inspiration for our project, thanks to her tendency to beg for and steal food from the table. We jokingly started referring to the game as "Dog Snatch," and even though we realized the name had some unfortunate connotations, it stuck until the very end of development (more on that later).
We wanted a dog stealing food to be the core concept of the game, but because we didn't have a lot of time or coding skills to make something complex, we decided to look at simple mini-game style games for inspriation.
Kayla and I conducted our competitive analysis. She examined Untilted Goose Game, which we thought was an excellent example of a simple, effective interface and control scheme. Meanwhile, I took a look at WarioWare Get it Together because of its collection of varied mini-games and playful style. We identified three key things we wanted our game to include:
WarioWare has dozens of mini-games, but all of them are immediately understandable due to their simplicity.
Both games we examined are simple mechanically, yet they retain their level of fun no matter how many times users play them.
We thought part of what made the games we compared successful was the overall level of silliness and fun that ran throughout them.
Together, the four of us brainstormed the core flow of the game, including the win conditions and how many levels it should include. Users would play as a dog who would jump up and try to steal food from a holiday spread, while a human NPC randomly blocked their attempts over five levels. If they scored enough points, they'd move on to the next level.
Using her illustration skills, Mindy began sketching out what the game and characters might look like, while the rest of the team worked together to figure out the gameplay loop.
While the rest of the team spent time learning more about GameMaker Studio and how to create our game in it, I created wireframes for the core gameplay loop using some of Mindy's initial sketches for characters.
We knew that our game was going to take a more playful and silly tone, so the team came up with an pastel and creme-based color palette we all liked.
However, when I checked our original selections for accessibility, I realized we had a problem: most of the colors wouldn't meet WCAG standards. So I revised them a bit and tested them against each other to make sure they were legibile and flexibile.
Then I created a style guide for the team to quickly refer back to and ensure accessibility no matter who was designing.
Though we'd been internally referring to the game as Dog Snatch, we knew we couldn't release it under that name. But that posed a dilemma... What would we call it instead? Each of us came up with a name, and then we put it to a team vote in FigJam.
The name I came up with, Hungry Hound, won the vote!
With the colors and styling in place, I began detailing the high-fidelity UI for all the screens and menus. Because we weren't sure what would be feasible between time and technical constraints, we decided to keep it very simple while also being effective.
After Mindy created colorized versions of our art assets and we finalized our visual design, I put together a fully playable prototype in Figma of the first level in the game for user testing.
Using the prototype, we created a user test on Maze.co and shared it with indie game communities for feedback. We would've preferred to more selectively recruit target users, but we didn't have time.
Users were pleased with the game. In particular, they enjoyed the humorous writing and thought the game was fun to play, despite being a bit repetitive. They also found the controls easy to use.
We first ran into problems with one of the most basic functions of the game: respawning food items after the player had successfully snatched one. We didn't know what was wrong — until Kayla noticed in the code readout that the food was in fact respawning, it just wasn't doing it in the right place.
I did some further digging and realized that because we hadn't set X and Y values for the respawning items, the software was generating them in the very top left corner of the screen.
By setting the respawn values to "Relative," the food would respawn in the space the snatched item had previously occupied. The entire team cheered and jumped in their seats when we tried it and it worked!
We also ran into trouble with programming the countdown timer and the score counter.
For reasons we couldn't figure out, the countdown timer displayed in milliseconds and kept going into negative numbers past zero. The score counter succcessfully recorded each snack snatched, but displayed the count at a delay, making it look like the player hadn't scored as much as they actually had.
Eventually, through trial and error and watching lots of YouTube tutorials, we got the countdown timer switched to seconds and fixed the score counter by adjusting the collision detection of the dog model.
We spent so much time figuring out relatively small problems in programming that we ran out of time and had to make some difficult cuts to the final game.
Though the game was originally conceived as a dog attempting to steal food while an NPC swatted them away, we realized that the time it would require to implement was far more than we had left.
We had to choose: develop levels two and three, or add the NPC blocking mechanic. In the interest of time, we chose to create additional levels. We also had to nix the high score and leaderboard functions we'd originally planned because of development problems with carrying over a score from one game state to another.
It was a shame that we had to cut this feature since it makes the game easier, so I'd love to add it now that we aren't constrained by the jam's deadline.
We wanted to include five levels, but again due to lack of time, we had to cut two. We also had to cut the high score mechanic, but I'd like to add it in for replayability.
Though the game runs pretty smoothly overall, there are still some issues and glitches that need to be ironed out.
We might not have gotten any awards in the game jam, but I'm immensely proud of what we created in such a short time and I learned so much about development from the project.
The team had ambitious ideas at the start, but we realized pretty quickly we were going to have to dramatically scale back our features to hit the ship date.
Even for a simple game, we spent so much time tinkering around with the programming. Small things like collision detection took hours to get right.