問題タブ [gamekit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
7100 参照

ios - GameCenterでGKLocalPlayerを認証する

GameCenterでGKLocalPlayerを認証しようとしています。ただし、Appleが提供するコード

私のためにトリックをしていないようです。「GameCenterサーバーに接続できませんでした」というアラートが常に表示されます。「再試行」または「キャンセル」のオプションがあります。どちらのNSLogステートメントも実行されないので、completionHandlerも起動されないと思います。

再試行を押すと、次のエラーが発生します。

誰が何が悪いのか分かりますか?

0 投票する
3 に答える
2625 参照

iphone - ユーザー変更時のGameKit通知

ゲームキットに問題があります。すべて正常に動作しますが、唯一の問題は、ログに記録されたユーザーの変更です。アプリの実行中に、gamecenter でユーザーがいつサインアウトまたはアカウントを変更したかを知りたいです。この種の通知に次のコードを使用しましたが、機能しません

通知を受け取りません。この cos in ビューはロードされました!

何か案は??私を助けてください!!

ゲームセンターのサインインと通知のみで新しいプロジェクトを作成しようとしましたが、問題は解決しません:(

何を忘れたの??

0 投票する
2 に答える
783 参照

iphone - 同じアプリを実行している 2 つの iOS デバイス間でオブジェクトを転送する最良の方法は何ですか?

iOS アプリで、同じアプリを実行している別の iOS デバイスにオブジェクトを転送できるようにしようとしています。オブジェクトのメモリは数千 KB 程度です。これを行う方法について誰か提案がありますか?FTPの使用を検討していますが、少し面倒です。GameKit の使用に関する提案はありますか? または、他の何か?

0 投票する
2 に答える
1403 参照

objective-c - Game Center から GKPlayer のステータスを取得するにはどうすればよいですか?

リストまたは個々のエイリアスを取得または使用すると、ログに記録されたオブジェクトGKLocalPlayerは次のようになります。loadPlayersForIdentifiers:identifiers withCompletionHandler:GKPlayerGKPlayer

私の質問は、このオブジェクトから を取得するにはどうすればよいstatusですか? また、このオブジェクトの型は正確には何ですか? GKPlayerクラスには「rid」または「status」プロパティがないため、次のようなことをすると:

「構造体または共用体ではないメンバー 'ステータス' の要求」エラーが発生します。

0 投票する
3 に答える
5342 参照

iphone - ターンベースのマルチプレイヤーiPhoneゲーム用に独自のゲームサーバーを構築する

ゲームキットプログラミングガイドから..。

マルチプレイヤーを使用すると、オンラインマルチプレイヤーゲームのプレイに関心のあるプレイヤーがお互いを発見し、対戦に参加することができます。必要に応じて、アプリケーションでGame Kitを使用してすべての参加者を接続するか、GameKitにプレーヤーのリストを配信させることができます。後者の場合、プレーヤーを提供するサーバーに接続する独自のネットワーク実装を提供します

Game Center用のマルチプレイヤーのターンベースのiPhoneゲームを作成したいので、独自のゲームサーバーを作成する必要があります。プレーヤーの認証、スコアボード、プレーヤーのペアリングにGame Center APIを使用する予定ですが、マルチプレーヤー通信を制御するために独自のターンベースのゲームサーバーを構築する必要があります。これは時間ベースのゲームであるため、サーバーは、ゲームの開始の同期や、ゲームの完了時にプレーヤーに通知するなどの処理を、試合の結果とともに処理します。この時点で、私はゲームサーバーの構築をどこから始めればよいかを理解しようとしていますが、それをカバーする優れたリソースを見つけるのに本当に苦労しています...

  1. ターンベースのゲームサーバーがどのように構造化および実装されているか。理想的には、例のコードが記載された本やオンライン記事を見つけたいのですが、iPhoneでのマルチプレイヤーゲームについて説明している本はすべて同じことを言っています。 「Webサーバーの開発はこの本の範囲外ですが、そのようなサーバーに接続するために必要なクライアント側のコードに焦点を当てます。」。Webサーバーの開発に関する情報はどこにありますか?!

  2. 使用するのに適したライブラリ/API

  3. セキュリティ上の懸念と一般的な解決策
  4. 既存のオープンソースパッケージ
  5. 他の今後のプロジェクトでRubyonRailsを学びたいと思っていましたが、1つの石で2羽の鳥を殺したいのですが、このフレームワークはターンベースのゲームサーバーを実装するのにうまく機能しますか?

誰かがこのトピックをカバーするいくつかの良い本やオンラインリソースに私を導くのを手伝ってもらえますか?または私の質問に直接答えますか?ゲームサーバーの開発は、iOSゲームセンター用のゲームを構築する人にとって非常に一般的な問題であると考えなければなりません。ほとんどのゲームはマルチプレーヤーであるためですが、その方法をカバーするリソースがない理由がわかりません。

よろしくお願いします!

0 投票する
3 に答える
708 参照

iphone - GameCenter - アプリ内購入を考慮

私には、Apple が GameCenter の実装を少し急いでいたように見えます。多分私は何かを見落としています。

アプリ内購入を提供するゲームを作成する場合 (たとえば、追加のマップやアドオンを販売したい場合)、GKMatchRequest を使用して同じマップ (複数) を共有するプレイヤーを一致させる方法はありますか? つまり、アプリ内購入が重複していますが、まったく同じではありません。

あるいは、レース ゲームで車を売りたいと思うかもしれません。すべての車ではなく、一部の車を共有しているプレイヤーと対戦するにはどうすればよいでしょうか? GKMatchRequest の playerGroup プロパティは、ユーザーが同じグループに属している場合にのみ比較されるため、できないと思います。

したがって、あるユーザーがマップ A とマップ B を購入し、別のユーザーがマップ B とマップ C を購入した場合、マップ B を一緒にプレイすることはできますが、それらを一致させる方法はありません。もちろん、ユーザーがプレイしたいマップを指定する必要があるように、インターフェースを実装することもできます。ただし、アプリ内購入がどちらかまたは両方の質問ではなく、ゲーム内で組み合わされる可能性がある他のシナリオがあります (たとえば、バトル ゲームでさまざまな種類の兵士を購入し、兵士の一部を共有するプレイヤーと対戦できる場合)。タイプ... ゲーム自体で、プレイヤーが共有しないタイプを除外するロジックを実装できます)。

誰でもうまくいく解決策を考えることができますか?

0 投票する
2 に答える
9488 参照

iphone - iPhone GameKit: Sandbox との通信 - GKErrorDomain コード 3

GameKit GKErrorDomain Code 3 の経験はありますか? サンドボックスのリーダーボードにスコアをアップロードしようとすると、エラー メッセージが表示されます。iOS リファレンス ライブラリにIndicates that an error occurred when communicating with Game Centreは、完全なエラー メッセージは次のとおりです。

環境:

  • リクエストは 4.1 シミュレーターから行われています
  • GameKit は、サンドボックスにログインしたローカル プレイヤーを認証しました
  • 「Standard」という名前のリーダーボードが iTunes Connect に作成されました
  • シミュレーターで Web を閲覧できます

スコアをアップロードするために使用するコードは次のとおりです

0 投票する
1 に答える
291 参照

objective-c - 新しいiOSGameKitがデリゲートとブロックに分割されるのはなぜですか?

GameKitの最近の改訂は、単にブロックの技術デモである可能性があります。または、特定のGameKit APIの「オンリターン」機能は、専用のデリゲートクラスに値するほど重要ではなく、ブロックが非公式プロトコルの機能を果たすようになりました。

主観的な質問のように感じますが、おそらく決定的な答えがあります。「GameKitのAPIがデリゲートクラスとブロックに分割されるのはなぜですか?」

編集:http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/のドキュメントを参照してください

0 投票する
1 に答える
597 参照

iphone - GameCenter - 着信の処理など

次のシナリオではどうしますか。

  1. マルチプレイヤー ゲームを実装するときは、GKMatchmaker を使用してプレイヤーを見つけます。
  2. 必要な数のプレイヤーが接続したら、対戦を開始します。
  3. ここで、プレーヤーの 1 人が着信を受け取ります。

今何?ユーザーが電話に出ると、アプリケーションはバックグラウンドに移行し、GameCenter への接続が失われますよね?

選手をどうするか、試合をどうするか。

切断されたプレイヤーの負けとしてそのゲームを評価し、残りのプレイヤーとの試合を続行する必要があると思います。

これを処理するより良い方法を思いついた人はいますか?

0 投票する
2 に答える
858 参照

iphone - ネットワーク障害後のGKAchievementのレポートを保存して再試行するにはどうすればよいですか?

Appleは、GKAchievementを報告したいがネットワークエラーが発生した場合、これを処理する最善の方法は、GKAchievementを保存して(場合によってはアレイに追加して)、定期的に成果の報告を試みることです。

成果を保存するのに最適な場所はどこですか?NSUserDefaultsで十分でしょうか、それともプロパティリストの方が適しているでしょうか。

いつ、どのくらいの頻度で報告を試みる必要がありますか?アプリケーションの起動時、または10分ごとのようなものですか?