Persistence in Massively Multiplayer Online Games

K. Zhang, B. Kemme, A. Denault

The most important asset of a Massively Multiplayer Online Game is its world state, as it represents the combined efforts and progress of all its participants. Thus, it is extremely important that this state is not lost in case of server failures. Survival of the world state is typically achieved by making it persistent, e.g., by storing it in a relational database. The main challenge of this approach is to track the large volume of modifications applied to the world in real time. This paper compares a variety of strategies to persist changes of the game world. While critical events must be written synchronously to the persistent storage, a set of approximation strategies are discussed and compared that are suitable for events with low consistency requirements, such as player movements. An analysis to better understand the possible limitations and bottlenecks of these strategies is presented using experimental data from an MMOG research framework. Our analysis shows that a distance-based solution offers the scalability and efficiency required for large-scale games as well as offering error bounds and eliminating unnecessary updates associated with localized movement.
Workshop on Network and Systems Support for Games (NetGames), October 2008.