Not too long ago, LAN-parties for games like Doom (1996), Age of Empires (1997) and Counter Strike (1999) were common. Gamers used to connect into the same Local Area Network (LAN) and play with each other without having to wait for Internet speeds (which was very slow in the late 90s and early 2000s). This was a great way to compete between friends and join local tournaments.
The very first multiplayer videogame dates back to 1958: Tennis for Two, designed to run on analog computers in Brookhaven National Laboratory, a nuclear-research center in New York. The very first multiplayer videogame tournament though, was for SpaceWar! hosted by Stanford University on October 19th, 1972. It’s been 50 years, and now there is over 40 million USD prize pool for a single tournament competition.
Multiplayer games have become massive and a great source of income for developers and ProPlayers and Creators. One of the biggest trends right now with Creators on Social Media is uploading short videos of themselves using the proximity voice chat on either Valorant or Call of Duty: Warzone 2 while having fun with it. Don’t forget about the streams they normally do too. We cannot talk about multiplayer without mentioning any esports competition in the world with games like Dota 2, Fortnite, League of Legends, Arena of Valor and so many others.
As such, esports come with backend challenges in terms of technical infrastructure and software systems requirements to support online multiplayer, which include things like servers, databases, networking, and security protocols. This is especially sensible during esport tournaments and competitions. Key considerations when building proper backend systems for esports are:
A system’s ability to handle an increasing workload without losing performance. Scalable backend systems are able to handle ever larger numbers of requests or amount of data without becoming less efficient or slower. Backend systems may be designed with specific architectural patterns to ensure scalability. Examples include microservices or distributed systems with the ability to scale horizontally by adding resources or replicating services.
It is the ability to deliver the expected results and meet the requirements of its users or clients without fail. This is an important consideration because it’s crucial for maintaining users’ and clients’ trust and confidence. Strategies to insure a backend’s reliability include fault-tolerant systems or redundant systems that allow backend services to continue functioning even when components fail or experience outages.
Protecting a system and its data from unauthorized access, tampering, or other malicious activity is a self-evident consideration in this day and age. Because backend systems can handle sensitive information, like financial transactions, personal data, or intellectual property, one of the priorities of any backend service provider is to keep this data safe and secure. There’s a family of security measures any backend service provider should implement, such as authentication and authorization protocols, firewalls, data encryption, and intrusion detection and prevention systems. Cyber attacks against the gaming sector have increased by 167% in the last year alone. This is an important reason to invest in secure backend systems, especially when hosting esport competitions that could be hacked and sabotaged by malicious actors.
Speed has always been a very salient aspect of user experience with computers, and the most important aspect during multiplayer esport events, and latency refers to a backend system’s time between a request to be processed and a response to be returned. The distance between the client and server; the complexity of the request and the system’s workload cause latency, as well as other factors. A videogame with a high level of latency is a problem, because it leads to delays in the moment to moment interactions expected to have in a multiplayer videogame. There are many strategies to reduce a backend system’s latency; for instance, optimizing the backend design, setting in place more powerful hardware and/or software resources, or distributing the workload across multiple servers by replicating services.
Other performance-related factors include throughput, the amount of data that can be processed at a given time, as well as resource utilization, the amount of resources being used by the system at a given time. Optimizing these factors can improve both a backend system’s performance and scalability.
In esports, connection speed is key to ensure fair competition, without which the spirit of the esport itself cannot be preserved.
Storing, organizing and managing data in backend infrastructure uses well-defined processes and systems, which can include tasks like definite data structure and schema, storing and retrieving data from databases, and protecting data by implementing security and access controls. There’s a critical relation between a backend system’s performance and reliability and effective data management, because the latter can help ensure data accuracy and integrity, optimize data-intensive operations, and protects against data loss or corruption. Different tools and technologies are used for backend system’s data management, such as database management systems, data warehousing systems, and data lakes. These use different data models, like relational databases or NoSQL databases, that may support different data types and structures.
Without proper data management systems, key aspects of multiplayer games like saves and scoring wouldn’t be reliable, resulting in frustration to gamers.
Overall, these key considerations are affected by a backend system’s design, the hardware and software resources at its disposal, and the workload itself. They require a combination of technical expertise, system design and ongoing maintenance and support. It all amounts to a priority in protecting the cooperative and/or competitive gameplay gamers are looking to experience.
There’s no rule beyond having a good multiplayer gameplay. Players simply have to enjoy the competitiveness for the videogame to become an esport. As developers, we have to consider the amount of traffic and users we’ll have to support, the reason why scalability becomes paramount. Imagine having to support those 380 million Monthly Active Users (MAU) like PUBG does. They didn’t start with an infrastructure for that amount of players, but with something smaller, such as Multiplay. Their chosen technology right now is AWS, where they can configure all the setup to their requirements, and scale up as needed with a mix of DynamoDB and Amazon S3 to reduce latency and increase security. This is especially relevant when games have a battle royale mode that has to match 100 Concurrent Users (CCU) in the same session and map. If there is any lag or communication problem, it can make the players lose unfairly, so it’s crucial for an esport to keep a steady flow of data with everyone’s position in real time.
It is advisable for games to start small, but with scalability in mind. This means that no matter the infrastructure chosen, the decision has to be made with the idea that games may grow. Another route is to choose a safe way to increase the size of the servers and power to process the data. Fall Guys has done it on Azure really fast. The best infrastructure for a videogame completely depends on the type of multiplayer it will have. A real-time connection will need bigger infrastructure, and is going to be more costly, compared to an asynchronous multiplayer connection like the ghost-double gamers play against in Mario Kart or Drivatars in Forza. Precision in real-time is what everyone looks for in an Esport game.
No multiplayer videogame is completed without leaderboards, achievements and other social interactions. In TagWizz, we always assess what is the type and flow of multiplayer experience we want the players to have. Based on that, we give recommendations as to the best architecture for each game.