This article presents a peer-to-peer overlay for massively multiplayer online games with a focus on fast-paced action. More than other genres, action games like first-person shooters employ fast and dynamic game mechanics. In multiplayer environments, these properties have to be reflected by the underlying network structure. At the same time, the system should be able to support a huge amount of users in order to deliver a massive experience to the participating players. The capacity of current client/server systems limits the number of players in a game, preventing the desired massive experience.
To provide both a scalable and a responsive system, we use a fully distributed peer-to-peer network with a dynamic connection scheme. By exploiting local interests in the virtual world, our system supports a huge number of users. Therefore, an area-of-interest mechanism is applied to the connection scheme. Users do not connect to all participating users, but they only establish connections to other users they are interested in. These neighbors are determined by the user's perception of the virtual world. Instead of using a purely distance-based approach, our system uses a more flexible neighbor-based approach that supports the use of multiple metrics to determine the set of interesting nodes for each user. A second kind of connection—so-called NetConnectors—utilizes the players' distribution in the virtual world to ensure overlay consistency. For the dissemination of messages, we use a publish/subscribe mechanism. This prevents inconsistencies introduced by unidirectional neighborhood relations that can occur with sender-oriented models. Further, the publish/subscribe mechanism models the users' interests more accurately. In addition to the regular sending mechanism, we implemented a Geocast algorithm that allows information distribution to arbitrary regions of the virtual world. While regular messages are always addressed to specific users, Geocasts cover certain geographical regions. Thus, Geocasts can be used to disseminate messages to all users that are located in the addressed region.
Simulations show that our design performs well in terms of scalability. By keeping the amount of connections per user nearly constant, users do not get overloaded with too many connections. This also applies for crowded regions where the user density is much higher compared to an evenly populated virtual world. Another important aspect of fast-paced multiplayer games is the users' motion behavior. Different movement strategies are evaluated for their impact on network load and connection dynamics.