2017-05-15 2 views
0

ディープストリームゲームとマルチプレイヤーゲームで見たチュートリアルでは、ゲームの状態全体が同期されていました。 パフォーマンスとセキュリティ上の理由から、各プレイヤーは自分が見ることができる他のプレーヤーの状態のみを受け取る大規模なマルチプレイヤーゲームでは、これは受け入れられません。 ディープストリームでこれを行うための最良のパターンは何ですか? 私はデータ同期を使用しないことを考えていましたが、1つのトピック/プレーヤーを使用し、サーバーティックごとに関連する状態サブセットのみを各プレーヤーのトピックに公開します。ディープストリーム:大規模なマルチプレイヤーゲームで状態のサブセットを同期する方法

あなたはどう思いますか?このユースケースの自動フィルタリング機能はありますか?あなたの助け

答えて

1

ため

おかげで私はあなたのための最良のオプションは、パーソナライズされたイベントを使用することだと思います。あなたがユーザー1234で、ゲームabcdに参加した場合、あなたはgame/abcd/1234/movementという名前のイベントを購読することができます。このイベントはメッセージを受け取ることができます

{ 
    "player": 5678, 
    "x": 70, 
    "y": 90 
} 

あなたは自由にイベント名を自由に設定できます。ポイントは、ゲームID、レシーバのユーザID、およびイベントタイプの識別子が含まれていることです。こうすることで、バックエンドはデータを必要とするユーザーにのみデータを送信することができます。

+0

これは私がやって来た解決策です。ありがとう! – lambdacalculus

関連する問題