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

遊戲 Lag 白皮書 › 只有部分人遇到的問題

頻道、實例、相位不同 Different channel / instance / phase

原因 ID pt-phase · 主要負責 遊戲開發團隊(伺服器開發) · 協同 遊戲開發團隊(用戶端開發)

在含圖解與實驗的完整版中開啟卡片 →

兩個角色在不同的頻道或實例(instance),或處在依任務進度決定能看到哪些 NPC 的不同「相位」時,看到的是不同的世界。

為什麼 第二個角色被分配到其他頻道,或任務階段不同 → 於是 伺服器不會把該 NPC 送給那個角色(正常) → 畫面上 只有一邊沒有 NPC。看起來像 bug,但符合設計

症狀
看不見/幽靈物件
因素
遺失
誰會遇到
同一台電腦只有其中一個用戶端, 只有我
何時
一直都有, 剛登入/維護剛結束
負責單位
主要負責 遊戲開發團隊(伺服器開發) · 協同 遊戲開發團隊(用戶端開發)
遊戲開發團隊要做的事
伺服器:把頻道、相位資訊送給用戶端,在 QA 檢查清單加入「確認兩個角色的頻道與任務階段」。用戶端:在畫面上顯示頻道與相位。
圖表上
只有部分偏高 · 各用戶端周圍的物件數、頻道與相位
查看位置
在遊戲畫面比較兩個角色的頻道編號與該任務的進行階段,調成相同的頻道與階段後再看一次。有伺服器物件傳送 log 的話,確認沒有把那個 NPC 送給該角色的原因(頻道、相位)
符合的跡象
兩個角色的頻道或任務階段不同,調成相同後就看得到 NPC
不符合的跡象
頻道與階段都相同、仍只有一邊沒有時,要查載入中抵達的出現通知被丟棄、剛進場時湧入的出現資訊遺失、視野登錄順序錯亂
確認方式
在玩家端環境確認
深入了解
也要確認任務進度是以帳號為單位還是以角色為單位儲存。同一帳號的兩個角色,一邊的進度可能會改變另一邊的相位。

出處

  1. Actor Relevancy in Unreal Engine Epic Games
    伺服器對每條連線只複製相關(relevant)的 actor,不相關的 actor 不傳送
  2. Object visibility (Netcode for GameObjects 2.5) Unity
    以 CheckObjectVisibility 決定每個用戶端看得到的物件,隱藏的物件不會傳送給該用戶端

相關原因

同一層:只有部分人遇到的問題

同一症狀(看不見/幽靈物件)在其他層的原因

查看含圖解與實驗的完整版卡片