2012-01-12 15 views
2

私のマルチプレイヤーiOSゲームでは、1人のプレイヤーが「ホスト」であり、特定のゲーム設定を決定する必要があります。彼がGCを介して友人を招待するとき、彼が運転席にいることは明らかですが、automatchで人々を一緒に連れて行くとき、私は選択をするダイアログにちょうど1つを持たせるためにドローストロー手順を行う必要があります。 今、私は、片側が明確に開始された設定から自動接続をどのように伝えることができないのか分かりません。 特定のAPI動作から控除できるかどうかについての考えはありますか?私は、didFindMatchコールは、少なくとも1人の招待されたプレイヤーが、それが純粋に自動化されていない場合(少なくとも1つの観察である場合)、常に元に戻ってくると考えました。明示的な招待状からiOS Gamecenterオートマチックを伝えることはできますか?

+0

これはまだ未解決の問題ですが、最新のiOSでは、いつも恐れていたことが起こりました。didFindMatchはすべてのプレイヤーが既に接続しているので、automatchに招待開始ゲームを知らせなくなりました。 他の誰かがこれを解決する手掛かりを持っていますか?オートマッチの取り組みに最初に参入した人を見つける方法はありますか?オートキャッチに入った最初の人を運転席に置くことも可能ですが、私はgamecenterを使わずに安定した方法でそれをどのように実装するかを手がかりにしていないので、シーケンス情報や集中的に生成されたタイムスタンプを提供します。 – habitoti

答えて

0

私はこの同じ質問をしていましたが、結局のところ、この唯一の方法は自分自身を追跡し、メッセージすることであると結論しました。

私の場合、イニシエータ側はゲームの開始方法を追跡し、その情報をゲームのセットアップに使用される最初のメッセージングシーケンスの一部として送信します。

APIは有用であると思われるため、この情報を提供するようには見えないので、Game Centerではすぐに利用できるはずです。

+0

オートチッチに参加するとは、ホスティングまたは参加することを意味します。明示的に選択しない限り(「既存のゲームに参加する」対「マッチをホストする」)、大幅に減少するでしょう利用可能なパートナー)。 – habitoti

+0

automatchパートナーが参加したときに誰が「運転席」にいるのかを判断するために、NSDate「1972年以降の秒」タイムスタンプ(タイムゾーン調整はされていません)を使用して解決しました。最初にゲームを開始した人がホストとして選ばれます。これはかなりうまく動作し、あなたが合理的にネットワーク接続されたデバイスのために調整されるように、世界中のすべてのクロックを想定することができる(少なくともこれはロケット科学、ちょうどゲーム;-) – habitoti

+0

ナッツではありません。タイムスタンプを使うのは素晴らしいアイデアだと思っていましたが、結局はあまり信頼できません。私はちょうど私のiPhone 4と私のiPodとそれをテストし、iPhoneは私が何を試しても、最も早いタイムスタンプを持っているようだ。 – PWiggin

関連する問題