Our initial results are promising, showing that both ``edge-server'' and peer-to-peer style deployment scenarios incur lower per-node bandwidth requirements than traditional client-server and broadcast architectures and that inconsistency between object stores is relatively low, being primarily limited by replica discovery latency which we found to be about 300-400ms with 150 nodes.
Nonetheless, we should note that there are a few important problems in a distributed setting that the current Colyseus design does not address and we plan to explore in future work. Our current implementation can not tolerate node departures, but we believe that the presence of a large number of object replicas in our current design can be leveraged to provide continuity after node failures. In some deployment scenarios, a distributed architecture also raises issues about cheating. To address these problems, we believe we can leverage Colyseus' flexibility in object placement. For example, by carefully selecting the owners of primary objects, we may be able to limit the damage malicious players or nodes can inflict on others. Finally, our evaluation of Colyseus used computer controlled bots to emulate player behavior; it is well known that in games involving real players, flash crowds are not infrequent and have casued problems in statically partitioned server deployments. We plan to conduct a real world deployment of Colyseus to study the behavior of real players and believe that we can leverage the distributed nature of its design to balance load in the face of flash crowds when possible and gracefully degrade performance when not. We will be addressing these challenges in future work.