Background Story
When I took the Introduction to Game Development course in Fall 2019, I had no idea I would be making a game with this complexity. Thanks to the course format, my team and I were free to choose whatever we wanted to make so we came up with an ambitious idea.
What is this game?
It is called Catastrophe, and it's an online multiplayer third-person shooter that revolves around "capture the flag" game mode idea.
There are three teams in the game. The first team that takes the flag and brings it to their base is the winner.
Check it out!
Here are the links to the game's website:
https://luna-interactive.herokuapp.com/
and the GitHub repo:
Luna-Interactive / catastrophe
Bring it home!
Catastrophe
Catastrophe is an online multiplayer tactical shooter developed by Luna Interactive where the first team (of three) to capture the flag and return it to their base wins.
https://luna-interactive.herokuapp.com/
Bring it home!
Table of Contents
Development Team
Member | Role | @GitHub |
---|---|---|
Corentin Artaud | Lead Programmer | @corentinartaud |
Gabriel Noriega | QA Lead | @gnoriega27 |
Hongbo Liu | Art Director | @i5un |
Lyonel Zamora | Music & SFX Lead Designer | @lyonelz96 |
Miguel Jimenez | Project Manager | @mjimenez98 |
Steven Zanga | Lead Gameplay Programmer | @stevau5 |
Yashar Dabiran | Lead Backend Programmer | @yshrdbrn |
Installation
-
Install Unity Hub.
-
Install Unity 2018.4.11
-
Clone the repo using your preferred method.
HTTPS:
git clone https://github.com/Luna-Interactive/catastrophe.git
SSH:
git clone git@github.com:Luna-Interactive/catastrophe.git
-
On Unity Hub, go to
Projects -> Add
and select the directory you chose when cloning the repo. -
Open the project.
Reporting a Bug
If you found something that should not have happened while you wereβ¦
How hard was to it build?
We built the game using the Unity game engine. For the multiplayer part, we were searching for a framework that was relatively easy to use (because of our time constraints) and was performant enough for a shooter, so we picked Photon Bolt.
My main contribution was to integrate our logic with Bolt and synchronize the data between the players. As it turns out, developing a multiplayer game is not as easy as writing multiplayer_framework.MakeGameMultiplayer()
! I spent lots of hours fixing synchronization issues that constantly came up.
Thanks to my well-organized team, we had so many playtests that by the time we presented the game to our class, it had no issues in the 10 minutes we demoed it live.
What did I learn during this project?
Coding-related stuff aside, I learned that making a multiplayer game is hard! After going through all sorts of troubles to just make our game playable, I'm starting to appreciate all the hard work that has gone into developing multiplayer shooters like Fortnite and Apex Legends. I hope I can be part of one someday!
Top comments (0)