私の Android ゲームでは、プレイヤーが友達を後で行われるゲーム マッチに招待できるようにしたいと考えています。対戦を作成したプレイヤーがこの日時を選択します。これらの招待を保留できるようにしたいのです。つまり、ユーザーは招待をすぐに受け入れる必要はなく、日付より前であればいつでも受け入れることができる保留リストに入れておきます。ゲームが行われる時間。ゲーム自体はリアルタイムベースのゲームです。
Google Play Game Services を使用して、ゲーム内でこれを達成したり、アチーブメントなどの他のことを達成したりすることを考えましたが、実際のゲームではうまくいくと思います。クロスプラットフォームで動作することも大きなプラスです。問題は、招待がゲーム サービスによってどのように処理されるかです。Google 開発者ドキュメントから: https://developers.google.com/games/services/common/concepts/realtimeMultiplayer
Room : ゲームが行われる仮想会議スペース。プレイヤーはルームに招待されるか、自動的にルームにマッチングされます。同じルームに接続しているプレイヤー同士でゲームデータを交換できます。
参加者: ゲームに参加できるプレイヤー。ローカル プレーヤーは、サークルから他のプレーヤーにルームへの招待を送信したり、ランダムなプレーヤーとの自動マッチングを要求したりできます。招待が送信されたプレイヤーには、ゲームの招待を受け入れるよう通知が表示されます。プレーヤーが招待を受け入れると、ルームに参加します。ルーム内の参加者の状態は、Google Play ゲーム サービスによって管理され、ゲーム クライアントに送信されます。
これはすべてその場で行われ、すべてのプレイヤーが招待を受け入れたらすぐにゲームがプレイされることになっています。私の質問は、私の招待システムを使用するために、Google Play ゲーム サービスでこれを回避する方法はありますか? または、私が達成したいことをサポートできる他のゲーム サービスはありますか?
ゲーム サービスでの回避策について私が持っていたアイデアの 1 つは、それを 2 つの異なる招待のように処理することです。プレイヤーは、しばらくしてから行われるゲームに友人を招待します。招待された友人がこの招待を受け入れると、ゲームが開始される 10 分前にアプリケーションでタイマーが設定されます。タイマーが切れると、プレイヤーがゲームに参加するかどうかを受け入れることができるダイアログが表示されます。これでルームが作成され、ゲームは通常のリアルタイム マルチプレイヤー ゲームのように機能します。このソリューションの問題は、招待状です。それらが保留になることはないと思いますが、その場で受け入れられる必要があります。これは、私のアプリケーションが機能するはずの方法ではありません。