Electoral.io

Cross-platform MMO game inspired by US 2016 election

ideated and developed by Redwerk
×
Where do you want us to send our online multiplayer game development case study?
Please enter your business email

Redwerk is a software development agency. We help software product companies conceptualize, develop, test and launch their products. Our team consists of business analysts, software developers, UI/UX designers, QA engineers and DevOps.

All Customers

Full Product Cycle

Redwerk can help you to create your product from the ground up: conceptualize, design, code, test, maintain and support.

Learn more

Game Development

We are skilled and experienced in game development for iOS and Android, desktop, and consoles.

Learn more

Project

Since our first experience developing with Unity, we’ve been eager for an opportunity to expand our game development skill set even further. We wanted a chance to experiment with online multiplayer and develop something that players of all skill levels could enjoy. That’s why we began work on Electoral.io, a massively multiplayer online game (MMO) inspired by the 2016 US presidential election. Relying on our experience in delivering iOS-based solutions, as well as in custom Android app development, we created a simple, easy to learn, and a compelling game where players can choose a party, collect votes and money, and literally devour their opponents.

Challenges

The main challenge was to shape a multiplayer team game, where the fierce battles would clash between the opposite parties. We wanted to create the atmosphere of political struggle and draw parallels between the events during the US Presidential Elections 2016 and longlasting competition of Republican and Democratic Parties.

But it’s not only design and gameplay challenges we needed to deal with. During the development of this project, we encountered and successfully solved the following problems:

  • choosing the optimal networking protocol to support all target platforms
  • creating scalable architecture to support arbitrary load
  • providing IPv6 support for iOS
  • optimizing the package data structure to minimize traffic
  • reducing server load by transferring certain events to the client side
  • streamlining the core “game loop” by transferring bot logic to a separate server module

Solution

Charles de Gaulle once said “Politics is too serious a matter to be left to the politicians”. And though Presidential elections are one of the defining stages in every country’s history, we ever look at them that way.

Creating Electoral.io we wanted to cover/show the ironical picture of one of the controversial presidential races in the US that compelled the attention of mass media far beyond the country.

We’ve chosen the game mechanics of popular MMO games, like Agar.io, as a basis and adapted it to the two-team mode. Moreover, we’ve created the global leadership system, where the result of your personal score influences the overall results of the chosen party.

Redwerk team mixed old traditional American style and flat design to recapture the atmosphere of the clash between candidates and their parties. We’ve also enriched a simple gameplay with enhancing & weakening units and added the acceleration feature so that any player had a chance of avoiding bigger cells.

This project was based on client-server architecture, with a Unity client on the target platforms (iOS, Android, WebGL) and a NodeJS-based server. NodeJS was selected for the backend due to its asynchronous nature and high performance. In turn, the server side is also divided into multiple components:

  • Entry Point Server
  • Game Server
  • Bot Server

The Entry Point Server provides a single entry point for all players, while Game Server and Bot Server instances handle the game process itself. This structure allowed us to achieve high scalability, with Game Server instances spawned as necessary to support the growing number of active players.

On the subject of the game process, the game server is completely authoritarian, i.e. all game logic is handled on the server side. The Unity client receives information about the game state from the server and reports back with data on the player’s actions.

Result

The 2016 US presidential election was a hot topic around the globe, and developing a game themed around it seemed like a natural fit for our Android and iPad/iPhone app development company. The result of our efforts is a dynamic cross-platform game playable on iOS, Android, and modern web browsers. Players can choose their favorite candidate and fight for the victory.

You can try it too, but be careful – it’s addictive!

Have a mobile game idea?

Contact Now

Technologies

Unity3DMongoDB
Gulp
NodeJS
ES6
Babel
WebSocket

Redwerk Team Comment

Andrey

Andrey
Developer

This project was a major challenge for us. Many aspects of the implementation were uncharted territory, such as online multiplayer support and cross-platform gameplay. A single developer was responsible for much of the work on the project, balancing responsibilities of both backend and frontend development.

Overall, it was good experience, and we’re proud to see that our effort and dedication has yielded yet another successful product. We’re happy to have a second Unity project under our belt, and we look forward to future game development work!

Media
Media

Related in Blog

How Long Does it Take to Build an App?

How Long Does it Take to Build an App?

Mobile applications have already overtaken desktop and web apps, so nowadays businesses are becoming more interested in building their own mobile apps as the primary way to interact with customers. Having a mobile app in addition to a web presence any business can improve its acc...

Read More

Impressed?

Hire us

Other Case Studies

Mobile Apps for Local Media

Mobile Apps for Local Media

United States

Helped WorldNow add new features, eliminate bugs & workarounds in local news apps used by thousands of US families

Penthouse

Penthouse

United States

Built web presence for world-renowned entertainment brand operating for over 40 years