How our expert team helped the gaming project “Awakening of Heroes” achieve the desired level of scalability, stability, and security on Google Cloud infrastructure.
Project goals:
Better scalability of resources.
Achieve server stability and data security.
High coverage within targeted regions to minimize data transfer latency.
Protection against DDoS attacks.
Automated release of new application versions, ensuring game launches on newer application versions.
Continuous infrastructure improvements and maintenance.
Approach:
Establish communication with the AoH team and analyze and understand their needs.
Propose an action plan in line with project requirements.
Monitor servers and analyze all potential security issues.
Create a stable and scalable solution on the Google Cloud platform.
Define the approach for updating new versions of the client’s gaming application.
Results:
Creation of a secure and reliable cloud infrastructure in Google Cloud.
A solution that is functional and scalable in both directions, independently of load and region.
No significant upfront capital investments.
Financial savings and increased revenue for the project Awakening of Heroes.
COFA Games and the Video Game Awakening of Heroes
“Awakening of Heroes” is a free 5-on-5 MOBA (Multiplayer Online Battle Arena) game developed by the Belgrade studio COFA Games. AoH contains role-playing and battle royale elements and is created for mobile devices (Android and iOS). Since its game is simultaneously accessed by multiple players globally, the company needed a reliable and secure game hosting solution with low latency, high scalability, and high security. After analyzing the needs of the COFA Games team, our team suggested Google Cloud as the optimal solution for the project.
Mainstream’s approach
Awakening of Heroes is a complex project that includes numerous components and requires extensive resource allocation. To support thousands of users from around the world at any given moment, a dynamically scalable infrastructure was needed. The project required a systematic, detailed-oriented approach. Our first task was to establish communication with the team developing the game and provide answers to the following questions:
What are the components of the project and how do they function as a whole?
Which components need the most attention?
What is the client’s goal?
After obtaining all the necessary information, our team designed and implemented processes and work organization, offering a specific execution plan to meet all the requirements, complete all tasks, and develop tangible solutions with the potential to enhance the entire project, including cloud migration.
Goal 1: Developing the Game Room
The Game Room is a component that virtually brings together a group of AoH players participating in a single game session. The platform chosen by our client for building this component was Google Cloud, with our task being to build servers in three different locations:
Asia
USA
Europe
Our task was to build a dynamic server infrastructure that makes scalability possible and allows the platform to integrate new players at any moment.
Goal 2: Server Stability and Data Security
Server Stability
Proper server monitoring was crucial for both aspects – server stability and data security – but it is also closely related to server scalability. Unlike the web hosting environment, where server monitoring is a relatively simple task, the multiplayer game environment makes the whole process more complex and requires internal monitoring within the game itself.
To achieve server stability, the AoH and Mainstream teams had to work together on the following:
The AoH team makes relevant data available.
ur team collects and monitors the data.
Data Security and Stability
Since some players are highly motivated to hack the game and bypass security measures to earn virtual money or advance in the game through cheating, it was vital to make such scenarios impossible.
Goal 3: Regional Coverage and Latency Reduction
As multiplayer video games are most often played by people from around the world, players must be grouped according to their location to avoid latency or the popular “lag.” With this in mind, each region needs to have a dedicated server used exclusively for local players, which is why most such games ask players for their location information. Unlike desktop video games, mobile multiplayer games are more sensitive to latency because players access the game via WiFi, 3G, or 4G internet connections.
Our task was to find the right service within Google Cloud and achieve an optimal level of scalability.
Goal 4: Protection from DDoS Attacks
The load balancer also acts as a protective barrier against DDoS (distributed denial-of-service) attacks. Since the load balancer is also defined as one of the cloud provider’s services, it is automatically protected from a certain amount of DDoS attacks, and its use directly affects the stability and security of the servers.
Goal 5: Reliable and Automated Game Launch on Newer Application Versions
Having multiple regions where a new version of the application needs to be launched can be a challenge closely related to the application version users have on their devices. There are numerous components to consider, and the process of releasing a new version involves multiple phases that do not always occur in the same order.
The best practice, and the one we decided to follow, is to first release the new version in the region with the fewest players and perform a Git push on the master branch so that the CI/CD pipeline detects the new version and its release within the auto-scaling group can be done automatically.
This process is most often done through the “blue-green deployment” strategy, during which one server group is removed from the auto-scaling group, and new servers containing the updated application version are added.
Goal 6: Maintenance Phase
The work process in this phase is very similar to that used when launching a new application version. The main goal is to achieve the highest possible level of availability for each application, which is achieved by using multiple servers placed behind load balancers.
Final Result
The most tangible result of our work lies in aspects of financial savings and increased final project revenue. This was achieved through the establishment of an infrastructure capable of supporting the initial number of players while also expanding as the number of players and the game’s popularity grows, eliminating the need for significant upfront capital investments.
Discover how Mainstream can improve your business.
Contact us at sales@mainstream.eu or fill out our contact form.