한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

ゲームラグ白書 › 一部のユーザーだけに起きる問題

チャンネル・インスタンス・フェーズの違い Different channel / instance / phase

原因ID pt-phase · 主担当 ゲーム開発チーム・サーバー開発 · 副担当 ゲーム開発チーム・クライアント開発

図と実験のあるメインページでこのカードを開く →

2つのキャラクターが別のチャンネルやインスタンスにいたり、クエストの進行度によって見えるNPCが変わる別の「フェーズ」にいたりすると、互いに違う世界を見ることになります。

なぜ 2つ目のキャラクターが別のチャンネルに割り当てられるか、クエストの段階が違う → すると サーバーがそのキャラクターにはそのNPCを送らない(正常) → 画面では 片方にだけNPCがいない。バグのように見えるが設計どおり

症状
表示されない・ゴースト
要因
パケットロス
誰に起きるか
同じPCの片方のクライアントだけ, 自分だけ
いつ
常に, 接続直後・メンテ明け
担当
主担当 ゲーム開発チーム・サーバー開発 · 副担当 ゲーム開発チーム・クライアント開発
ゲーム開発チームの対応
サーバー:チャンネル・フェーズの情報をクライアントに送る、QAチェックリストに「2つのキャラクターのチャンネル・クエスト段階を確認」を追加。クライアント:チャンネル・フェーズを画面に表示。
グラフでは
一部だけ高い · クライアントごとの周囲のオブジェクト数、チャンネル・フェーズ
確認箇所
2つのキャラクターのチャンネル番号とそのクエストの進行段階をゲーム画面で比較し、同じチャンネル・段階にそろえて再確認。サーバーのオブジェクト送信ログがあれば、そのNPCをそのキャラクターに送らなかった理由(チャンネル・フェーズ)を確認
該当する場合
2つのキャラクターのチャンネルかクエスト段階が違い、同じにそろえるとNPCが見える
該当しない場合
チャンネル・段階が同じなのに片方にだけいないなら、ロード中に届いた出現通知の破棄、入場直後に集中する出現情報の欠落、視界登録の順序の乱れ側
確認手段
ユーザー側の環境で確認
もっと詳しく
クエストの進行をアカウント単位で保存しているか、キャラクター単位で保存しているかも確認します。同じアカウントの2つのキャラクターなら、片方の進行がもう片方のフェーズを変えることがあります。

出典

  1. Actor Relevancy in Unreal Engine Epic Games
    サーバーは接続ごとに関連する(relevant)アクターだけをレプリケートし、関連しないアクターは送らない
  2. Object visibility (Netcode for GameObjects 2.5) Unity
    CheckObjectVisibilityでクライアントごとに見えるオブジェクトを決め、隠したオブジェクトはそのクライアントに送信しない

あわせて読みたい原因

同じ層:一部のユーザーだけに起きる問題

同じ症状(表示されない・ゴースト)を起こすほかの層の原因

図と実験のあるメインページでこのカードを見る