Node.jsとSocket.ioで大規模なマルチプレイヤーゲームを構築しています。すべてのプレイヤーは同じ無限の地図上を移動します(Minecraftと思う)。プレイヤーが動くにつれて、私は彼らに見えるタイルをロードします。プレイヤーが自分の動きを動かすときには、それらを見ることができるすべてのプレイヤーに送信する必要があります。マルチプレイヤーでソケットを管理するSocket.io Game
私の質問は、私のソケットの構造についてはどうすればいいですか?すべてのプレイヤーのために1つのソケットを持つことは、規模が変わるようには見えません。私は世界を塊に分けることができますが、塊の境界をどのように管理するかはわかりません。ほとんどのプレイヤーはほとんどの時間を見ることができないので、各プレーヤーのソケットは、それらに関連するアップデートだけを取得することをお勧めします。
私は、Socket.ioには、同じメッセージを受け取るソケットだけである「部屋」の概念があります。近くに移動する他のプレイヤーのソケットを追加するために、接続された各プレイヤーに別々の部屋を用意することは可能でしょうか?プレーヤーが動くたびに、その部屋にメッセージを送ることができました。視聴者が退室したり入室した場合、どのように管理できますか?
明らかにこれはあいまいな質問ですが、私はベストプラクティスアドバイスを探しています。件名に関する記事へのリンクは高く評価されます。
[Quadtrees](http://en.wikipedia.org/wiki/Quadtree)を使用してプレーヤーの場所を検索したことがありますか?これにアプローチする方法を探すのに適した場所は、[BrowserQuest source](https://github.com/mozilla/BrowserQuest)です。 – hughsk