Ah, rats!


About the Game

This project was a nearly ten-week-long group effort where we were tasked with creating another prototype game. Our team consisted of four coders/developers and four artists from Metropolia University of Applied Sciences. Both sides worked from a to-do list that outlined what needed to be done and ranked each task’s importance. Everyone did an amazing job, and the outcome was exactly what we had envisioned.

For this project, I decided to try something new by helping implement multiplayer functionality using a Photon server. I also worked on the game’s task system, a familiar feature from one of my previous projects. In hindsight, I feel I could have contributed more—there were times I wasn’t sure how to proceed, which slowed my progress. Thankfully, my team was always there to provide guidance and support.

After finishing the game, we considered continuing development post-submission, but the idea never fully materialized. The final version had a few bugs that significantly affected gameplay in certain situations. Despite these issues, we were proud of what we achieved. We kept the game’s scope realistic enough to deliver a playable prototype, and the end result did not disappoint.

The game can be found here, passcode: metropolia.


In the Game

Image 1

The main level of the game, the kitchen.

Image 2

The human from the point of view of a rat.

Image 3

The UI in the game.


The trailer for the game.


Details

Below are some of the technical details of the game, including graphics decisions and notable bugs we encountered along the way.

Graphics 🎨

We had a clear graphic style in mind from the start: Toy Story. This playful approach made the game more fun and lighthearted, softening the otherwise serious theme of eliminating rats. Our artists were enthusiastic and proactive, fully embracing the theme—and they absolutely delivered. The visuals became one of my favorite aspects of the project.

Mechanics ⚙️

Our main goal was to create a multiplayer experience—something none of us had coded before—making it a challenging and rewarding endeavor. We made the smart choice to build the server first and then integrate the game’s core mechanics into it. We also needed win conditions for both sides. For the human, it was straightforward: eliminate all the rats to win. For the rats, however, it was trickier. We decided to implement tasks for both teams, with a heavier focus on the rats. Completing these tasks would fill a meter, and once it reached maximum, the game would end. We brainstormed many ideas, some of which were added because they were necessary or simply fun. One example was the inclusion of tunnels, which allowed rats to navigate the kitchen more efficiently.

Problems ❌

Throughout development, we faced several challenges in both coding and GitHub collaboration. The biggest technical issue was getting all systems to work correctly on the server side. This caused delays when certain features didn’t behave as intended. For me personally, the most difficult task was implementing a server-synced audio event that updated the task list correctly. We also had cases where certain objects or tasks caused the game to end prematurely. GitHub presented its own set of headaches—especially with merge conflicts. At first, these were frequent and frustrating, but over time we got better at resolving them. Our artists were new to GitHub, so we had to teach them the basics and guide them on avoiding conflicts. By the project’s end, the number of conflicts had dropped significantly.

Some of the issues we encountered:

  • Frequent GitHub merge conflicts
  • Server-side functionality not working as intended
  • UI inconsistencies and failures

Improvements 🛠️

Although we considered continuing development, we ultimately decided against it. If we had pursued further work, we likely would have switched to a different server solution and rebuilt much of the game from scratch. Several mechanics needed significant fixes, and some planned features were left out entirely because they were too prone to breaking.

Progress ⌛

Our team was well-balanced in both size and personality. Everyone had a clearly defined role and remained committed to their responsibilities until the very end. We scoped the project realistically, stuck to the plan, and never reached a point where we felt rushed.