問題タブ [gkturnbasedmatch]

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 投票する
0 に答える
77 参照

ios - Game Center のターンベースのマッチメイキングの問題

ゲームセンターを利用してターン制ゲームをやっています。私はほとんどのインとアウトを把握しました。ただし、プレイヤーが試合を辞退すると、GameCenter は自動的にそのプレイヤー スロットを、試合を探しているプレイヤーで埋めようとします。私はこの動作が発生することを望んでおらず、私の人生でそれを無効にする方法を見つけることはできません.

注: アプリをどのように実行するかについて明確ではない可能性があることを認識しているため、誰かが辞任した場合のゲームプレイの流れは次のとおりです。

試合が満席 > プレイヤーが辞退し、ゲームのピースがゲームから削除される > すでに試合に参加しているプレイヤーが引き続きプレイし、新しい参加者が試合中に参加することは許可されません。

誰かがこの問題について何か洞察を持っているなら、私は感謝します.
前もって感謝します!

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

ios - GameKit エラーは、プレーヤーが認証されていないことを示していますが、.authenticated プロパティ = true

iOS で GameKit を使用したターンベースのゲームがあります。通常、Game Center での認証は機能します。私のゲームは機能し、一定期間、動きを前後に送ることができます。ただし、一定ではありませんが比較的頻繁に、Game Center でアクション (たとえば、新しいマッチを見つける) を実行しようとすると、次のエラーで失敗します。

エラー Domain=GKErrorDomain Code=6 「ローカル プレーヤーが認証されていないため、要求された操作を完了できませんでした。」UserInfo={NSLocalizedDescription=ローカル プレーヤーが認証されていないため、要求された操作を完了できませんでした。}

それでも、 GKLocalPlayer.localPlayer().authenticated = true は、エラーが発生する直前と直後の両方です。このエラーが発生した後、認証 viewController が表示されず、認証に依存する GameKit メソッドが機能しなくなります (元に戻りません)。次に、アプリをバックグラウンドに送信してからフォアグラウンドに戻すと、アクションを再試行してもエラーは返されません (新しいログインとパスワードの入力は必要ありません)。

この同様の観察によると:

GKLocalPlayer 認証が機能しないが、isAuthenticated が YES を返す (Game Center サンドボックス)

1.デバイスの日付が正しくない場合、Game Center は認証を完了できません。そのため、先に進み、現在の日付を確認してください。

  1. あなたはこれをしたかもしれません。I trust you - iOS シミュレーター >> コンテンツと設定をリセット"

シミュレーターではなくデバイスでこの問題が発生しており、#2を除外しています。誰かが#1で私を助けてくれますか?ここで私は世間知らずかもしれませんが、私の iPhone と iPad は正しい時刻と日付を持っています。チェックして設定する必要がある何かまたは他の場所はありますか?

では、これが問題でない場合、他に何が問題になる可能性がありますか? 私はiOS9を実行しています。

0 投票する
0 に答える
136 参照

ios - Game Center のターン制マルチプレイヤーを既存のバンドル ID に追加する

App Store でいくつかのバージョンが既にリリースされているアプリ (ゲーム センターのリーダーボードを含む) に TBM を追加しようとしています。

まず、iTunes Connect で新しいテスト アプリを作成し、必要なすべての基本的なメソッドを実装しました。すべてがスムーズに機能していました。次に、フレームワークをライブ アプリに統合しました。ある程度は機能しますが、いくつかの問題があります。最も明白なもの:

  • receivedTurnEventForMatch が起動しない
  • Game Center の通知が届かない

簡単に言うと、テスト プロジェクトに戻り、バンドル ID をライブ アプリの ID に置き換えたところ、まったく同じ問題が発生しました。もちろん、このアプリでは Game Center が有効になっており、リーダーボードは期待どおりに機能しています。

何が問題なのかについて何か考えはありますか? GC 機能を既存のアプリに拡張する際に注意すべきことはありますか?

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

ios - Game Center の新しいマッチへの招待は、自動的に招待者によって即座に拒否されました

GKTurnBasedMatch を使用する Game Center/GameKit iOS アプリ (Swift2 iOS9) があります。私はオンライン GC フレンドのサブセットのみに問題があり、それらとの新しいマッチがすぐに拒否されます。これは友人によって行われるのではなく、どういうわけか自動的に行われます。他の友達とは、試合が受け取られ、問題なく続行されます。

Game Center が新しい対戦を自動的に辞退する条件 (適切な条件と不正な条件) は何ですか?

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

ios - GKTurnBasedMatch が次のプレイヤーに進まない

したがって、私の試合には2人のプレーヤーがいます。プレーヤー 1 が新しい試合を作成するとき、endTurnWithNextParticipantsメソッドを使用して、2 人の参加者を持つ GKTurnBasedMatch の参加者配列プロパティを nextParticipants に提供します。

しかし、プレーヤー 1 のデバイスでは、自分の番だと言い続けます。プレイヤー 2 のデバイスには、「自分の番」と表示されます。

助言がありますか?

編集:

これが私がどのように使用したかですendTurnWithNextParticipantscurrentTurnBasedMatchGKTurnBasedMatch のインスタンスです。インスタンスに 2 人の参加者 (プレーヤー 1 と 2) が正しく含まれていることを確認しました。そして、完了にはエラーはありません。

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

ios - 最新対戦データ ゲームセンター

ゲームセンターを使ってターン制ゲームをやっています。次のプレイヤーにターンを送る、ターンをスキップする、マッチを終了するなど、すべてが正常に機能しています。唯一の問題は、ユーザーがGame Center 経由で送信された通知をクリックしない限り、最新の試合データを取得できないことです。誰かが私にいくつかのデータを送信し、通知を受け取りましたが、ユーザーは通知をクリックしなかったとします。この場合、ユーザーは最新の試合または試合データを取得していません。これについての解決策を教えてください。

前もって感謝します!