How Can MMOs Better Prepare for their Own Popularity?
Last month, Media Tonic’s Fall Guys: Ultimate Knockout got off to a bit of a false start. 1.5 million users tried to connect within the first 24 hours and the game couldn’t handle the weight. Even more dramatically, in March of this year Last Oasis was taken offline for a week to resolve the server issues it faced on launch. Popular demand causing game launches to go awry is not a new trend, and it’s a problem that has plagued MMOs since their inception. So why does it keep happening, and how can studios better prepare for their big day?
Despite the scale tests and beta phases that can run for a year or more, handling the high volume of players that comes with the initial release of a game is a technically complex challenge. Moving parts including the number of players, their geographic distribution and session length all have architectural implications, and place a high level of strain on a game’s infrastructure.
Yet, while the unpredictability of concurrent users means that MMOs are incredibly vulnerable to the pressures of demand, the solutions are often undesirable. For instance, pre-provisioning servers and letting them sit idle in case your game exceeds all expectations in number of downloads and players is financially ruinous. Although the specific bottlenecks and chokepoints in architecture may be particular to a given game, at its core, the issue lies with the infrastructure being overloaded and unable to carry out intensive computational activity.
Lessons from EVE Aether Wars
Something of an outlier in their approach is CCP Games whose flagship release, EVE Online, is a single-sharded game that allows huge numbers of players to exist and play in the same world together. Implementing techniques such as Time Dilation (TiDi) which slows down time so the server can keep up during computationally heavy activity (e.g. large scale battles); it trades off seamless gameplay in exchange for the vast number of players it can handle.
Holding the record for the most connected clients in a given game, CCP Games have always looked for opportunities to push the boundaries further and engaged with us to stretch multiplayer gaming to its limits. Hadean’s spatial simulation library, Aether Engine was integrated into their architecture for a series of experimental scale tests entitled Eve Aether Wars. Running on an Azure backbone, the event ran 10k concurrent players at 30hz (equivalent to the required rate of a first person shooter on PS4 or Xbox One), providing a smoother, faster and richer gameplay experience that alleviated the need for TiDi, all without spiralling costs.
Aether Engine dynamically maps “virtual space” to “CPU space” and allocates more or less resources depending on the computational requirements, enabling simulations to grow (or shrink) as required. Moreover, through spatial acceleration data structures, Aether Engine simplifies the simulation’s complexity, which in a naive implementation would grow exponentially and lead to uncapped server costs as more and more players connect with a game.
With the biggest and most forward thinking games already embracing Aether Engine, it spells optimism for MMO developers tired of the inevitable chaos of launch day. Through distributed computing, these events will no longer be times for the PR machine to go into a defensive overdrive explaining away poor performance, but rather a day of celebration and optimism knowing that a stable and robust release is in place – even if it surpasses all expectations in popularity.