6.2.5 The Bottom-Up Approach: Distributed Ecosystems for Online Gaming and the Metaverse

Course subject(s) 6: Distributed Ecosystems: Putting It All Together

Online gaming, and more recently the metaverse, seem prime examples of bottom-up approaches. Such applications can benefit greatly from developing a good platform, which can support the rapid pace of innovation and the high likelihood that products are quickly discarded as they fail in the cut-throat market.

Online gaming operations: the popularity distribution is highly skewed toward the most popular games

Figure 1. Online gaming operations: the popularity distribution is highly skewed toward the most popular games.

Not much expertise exists at the start of each gaming genre. Enabled by the emergence of social media platforms, which include both the community and the technology platforms supporting them, social games emerged at the end of the 2009 and matured through the 2010s. The market was characterized by trial and error. In one of the early studies of social gaming operations [1], we observed the popularity of the over 10,000 games in the social gaming genre forms a nearly Pareto distribution, one where the most popular games are much more popular than the next, who are much more popular than the next, etc.; Figure 1 depicts this effect. (Similar effects appear regardless of the online gaming genre.)

References:

[1] Alexandru-Corneliu Olteanu, Alexandru Iosup, Nicolae Tapus (2013) Towards a workload model for online social applications. Proc. of ICPE 2013.

Starting at the Bottom

Every online game must provide a compelling virtual world. But the start can be challenging.

Designers of new online games, especially designers working on new game genres, often start small, with proofs of concept, learning on the way and refining the product. Early Facebook games were relatively simple, providing only a few of the functional properties we discussed in Modules 2 and 3. For example, in the early hit FarmVille by Zynga, it was not uncommon for inconsistent views to be presented to the player viewing their farm and to their visitors; sometimes, inconsistencies would persist for tens of minutes, even without further changes to the state of the farm.

Issues with performance and other non-functional requirements are common when online games start, and in some cases can damage the game developer’s reputation. For example, Cyberpunk 2077, released in 2020, was released to acclaim for the Windows platform, but the console versions suffered initially from many performance issues. Responding to negative reviews and player requests, Sony and Microsoft removed the game from their platforms until the performance issues were comprehensively fixed.

Support for advanced resource management and scheduling is also not considered by many starting game developers. Zynga learned quickly that hosting new games is risky because, as our study [1] and others indicate, few social games manage to grow their player base enough to provide a good return on investment. Thus, Zynga started to self-host only games that have proven successful, with proof-of-concept first being deployed on cloud resources.

References:

[1]  Alexandru-Corneliu Olteanu, Alexandru Iosup, Nicolae Tapus (2013) Towards a workload model for online social applications. Proc. of ICPE 2013.

Upward, Toward Comprehensive Virtual World Platforms and, Beyond, to the Metaverse

Toward comprehensive virtual-world platforms: Modern online games already start with ambitious goals for their virtual worlds. A typical goal at the start of the 2020s, aligned with the success of games such as PUBG, Minecraft, and Among Us, and of platforms such as Roblox:

Goal: Build an efficient platform for massive scalability, aiming for 1 billion players.

Specific requirements emerge:

  1. Scalability is thus the most important technical requirement. A game such as World of Warcraft, or a platform such as that provided by Roblox, can easily require over 10,000 servers and need to manage over 350,000 containers.
  2. Stability and availability, where the game response times are stable and the game nearly always responds, are also essential.
  3. Extreme automation for the client, as games need to work for a diverse population, of different ages, technical capabilities, languages, etc.
  4. Operational simplicity, from running the online game or gaming platform, to observing and benchmarking.
  5. Portability, which typically also means ease of containerization so that the virtual world can run on a variety of devices and hardware platforms.
  6. Support for the digital continuum, so resources can be provisioned quickly from a variety of operators, and capacity planning with any frequency can be integrated into operations. The game platform should run on local clusters, burst to clouds, use edge resources when advantageous, etc.
  7. Integration of development tools with the production environment, so developers can quickly experience and test production-like situations, and experiments can be easily conducted.
  8. Allowing clients to ‘do their own thing’, from developing and sharing content, to creating their own, private game instances, to which they can invite their friends, to supporting large, public, community-wide events. In particular, spectating (and streaming it) is an important activity for many social users.

Each of these requirements has specific solutions.

Toward the Metaverse: Continuing along this line, modern online games consist of at least four pillars, of which the virtual world is just one. We survey them in the video clip The Four Technology Pillars of an Online Game (Section 6.2.6). These pillars do not only offer support for online gaming. We conjecture they will be important pillars of emerging metaverse technologies.

Creative Commons License
Modern Distributed Systems by TU Delft OpenCourseWare is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Based on a work at https://online-learning.tudelft.nl/courses/modern-distributed-systems/
Back to top