Hydra: a massively-multiplayer peer-to-peer architecture for the game developer

We present the design and implementation of Hydra, a peer-to-peer architecture for massively-multiplayer online games. By supporting a novel augmented server-client programming model with a protocol that guarantees consistency in the messages committed when nodes fail, existing game developers can realize the benefits of a peer-to-peer architecture without the burden of handling the complexities associated with network churn. Our key contribution is the development of a programming interface that is intuitive and easy to use, and that can be supported transparently at the network layer. We have implemented a prototype of Hydra and we demonstrate that our proposed architecture is practical by developing two games under the Hydra framework: a simple "capture the flag" tank game and a squad-based real-time strategy (RTS) game. Our experience in developing these games suggests that our proposed programming model is suitable for game development. Our preliminary experiments also show that Hydra imposes only a small message overhead and is thus scalable.

[1]  Hiroaki Hazeyama,et al.  Zoned federation of game servers: a peer-to-peer approach to scalable multi-player online games , 2004, NetGames '04.

[2]  Emmanuel Frécon,et al.  DIVE: a scaleable network architecture for distributed virtual environments , 1998, Distributed Syst. Eng..

[3]  Tobin J. Lehman,et al.  The Almaden OptimalGrid project , 2003, 2003 Autonomic Computing Workshop.

[4]  Honghui Lu,et al.  Peer-to-peer support for massively multiplayer games , 2004, IEEE INFOCOM 2004.

[5]  Srinivasan Seshan,et al.  Colyseus: A Distributed Architecture for Online Multiplayer Games , 2006, NSDI.

[6]  Steve Benford,et al.  Supporting Rich And Dynamic Communication In Large-Scale Collaborative Virtual Environments , 1999, Presence: Teleoperators & Virtual Environments.

[7]  Marios Assiotis,et al.  A distributed architecture for MMORPG , 2006, NetGames '06.

[8]  Abdennour El Rhalibi,et al.  Agents-based modeling for a peer-to-peer MMOG architecture , 2005, CIE.

[9]  Christophe Diot,et al.  MiMaze, a 3D Multi-Player Game on the Internet , 1998 .

[10]  Steve Benford,et al.  Crowded collaborative virtual environments , 1997, CHI.

[11]  Keiichi Yasumoto,et al.  A distributed event delivery method with load balancing for MMORPG , 2005, NetGames '05.

[12]  Son T. Vuong,et al.  MOPAR: a mobile peer-to-peer overlay architecture for interest management of massively multiplayer online games , 2005, NOSSDAV '05.

[13]  Antony I. T. Rowstron,et al.  Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems , 2001, Middleware.

[14]  Brian Neil Levine,et al.  Cheat-proof playout for centralized and distributed online games , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[15]  Thorsten Hampel,et al.  A peer-to-peer architecture for massive multiplayer online games , 2006, NetGames '06.

[16]  Insup Lee,et al.  Is runtime verification applicable to cheat detection? , 2004, NetGames '04.

[17]  Marco Roccetti,et al.  Fast delivery of game events with an optimistic synchronization mechanism in massive multiplayer online games , 2005, ACE '05.

[18]  Srinivasan Seshan,et al.  Mercury: supporting scalable multi-attribute range queries , 2004, SIGCOMM '04.

[19]  Miguel Castro,et al.  Scribe: a large-scale and decentralized application-level multicast infrastructure , 2002, IEEE J. Sel. Areas Commun..

[20]  Chris Greenhalgh,et al.  Awareness-based communication management in the MASSIVE systems , 1998, Distributed Syst. Eng..