Networked games have rapidly evoved from small 4-8 person, one-time play games to large-scale persistent games involving thousands of participants. However, most of these games have centralized client-server architectures which create significant robustness and scalability bottlenecks. This thesis proposes a new modular distributed architecture for interactive multiplayer games. This architecture, called Colyseus, consists of three independent, interacting components: Object Placement, Object Discovery and Replica Synchronization. This modularization enables a variety of optimizations which are used critically for load-balancing, for supporting a wide range of consistency requirements and adhering to the tight latency constraints of fast-paced games. This allows to prevent computational and bandwidth hot-spots in the system. Finally, in order to make the system deployable in a peer-to-peer setting, I propose security mechanisms to detect cheating and punish cheating players. I expect these techniques to be applicable to a wide range of multi-party collaborative applications as well.
Last modified: Tue Apr 18 10:18:19 EDT 2006