0

ゲームセンターでターンベースのゲームに取り組んでいます。次の問題を辛抱強く調査しましたが、誰かが解決策を提供してくれることを願っています。

特定のマップで自動対戦ゲームを開始しました。同じマップを選択したプレイヤーだけに接続してプレイしたいと思います。それを制限する方法はありますか?

ありがとうございました。

4

1 に答える 1

1

実際、私の問題の解決策は非常に簡単で、もう少し読む必要がありました。マッチ リクエストが作成されると、プロパティ playerGroup を設定して、グループのプレイヤーのみが同じグループのプレイヤーに接続するように制限できます。

ただ、フレンド招待時にこのプロパティを設定するとうまくいかず、自動対戦でしか機能しないようです。したがって、誰かがそれを計画している場合は、それを回避する方法を見つける必要があります.

GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 4;
request.playerGroup = MyMap_Forest | MyRulesCaptureTheFlag;

ゲームで playerGroup プロパティを設定すると、同じ playerGroup 値を共有するリクエストを持つプレイヤーのみが Game Center によって自動マッチングされます。プレーヤー グループの値は任意です。たとえば、異なる playerGroup 値を定義して、次のフィルターのいずれかを実装できます。

ゲームでは、スキル レベルに基づいてプレーヤーを制限できます。複数のゲーム モードを提供するゲームでは、これを使用して、プレイヤーをプレイしたい特定のゲームに絞り込むことができます。アプリ内購入を通じてボーナス コンテンツを提供するゲームは、同じコンテンツを所有するプレイヤー同士を一致させることができます。

playerGroup を 0 に設定するか、まったく設定しないと、その試合のプレイヤー グループが存在しないため、誰でも誰とでも接続できます。

于 2013-10-14T07:13:18.690 に答える