The Story of Zeta Fighters – Back-end Development

Digital_Hammer_SamirThe development of our main title Zeta Fighters (ZF) started as a single player project. After a couple of company wide test sessions Timo Korhonen, the main developer/designer of the game developed multiplayer functionality. Soon we realized it was buckets of fun to play the game with your friends. At the same time we took a direction that emphasized player progression and social aspects of gaming. We dropped single player and focused on multiplayer. That’s when we fired up an EC2 micro instance on AWS[1] and dived deep into the world of mobile multiplayer gaming.

My personal background is in back-end web development. Back-end game development (for ZF) is about applying the same concepts to a different domain. At the end of the day the server receives a request from the client, processes the request and responds to the client. The main difference being the client is a iOS or Android application instead of a web browser. Most of the back-end technology is developed in Python. This is simply because we can do everything we want to with Python and it’s the language we were most experienced with.

We ran with AWS for about 6 months. Around that time we began to move to the next phase of development. It required proper production and staging servers, deployment processes, load balancing and self hosted Unity Master Server components. The EC2 micro instance took us surprisingly far and by then it was definitely time to upgrade. The first upgrade path we thought of was Amazon. It had served us well, offered everything we required and the price was manageable. Still, as a cash tight company we took our time and explored the market for competitive alternatives. We found out about UpCloud and got accepted into their startup program which offered us services for 250€ a month for 6 months. They had everything we required with the best price. The choice was obvious.


Click on the photo to visit UpCloud’s homepage.

We had developed our back-end tech anticipating an upgrade such as this. The actual move to UpCloud was fast and simple. The biggest difference compared to AWS, without taking into account AWS only services such as RDS or Route 53, is customer service. UpCloud offers very personal customer service. It’s awesome to be able to call them and get a real person answer and help you regarding either UpCloud or server tech questions.

In time we dropped the Unity Master Server components and moved to Photon Unity Networking. A welcomed change which let us focus on the stuff that matters to Zeta Fighters. As a small team we don’t want to spread ourselves too thin by supporting stuff that isn’t necessary. Cost isn’t a good enough reason to develop and support stuff by yourself because it will eventually cost you more in developer hours.

Developing a realtime multiplayer game for mobile has been challenging yet rewarding. The vision we started with has been evolving rapidly and so has our technology. We’ve grown professionally and taken ZF far beyond what anybody imagined possible. Any of this wouldn’t have been possible without the help of the existing ecosystem, especially Unity, UpCloud and too many others to name. You know who you are. As Isaac Newton said, we do stand on the shoulders of giants.

The best part is that we’ve only began our story.

- Samir Hani, co-founder / developer