Skip to main content
本文說明 Game Saves 的六部分同步流程。雖然行為可能會因您使用的特定 Game Saves API 而略有不同,但使用者起始的存檔的一般流程是相同的。步驟如下。
  1. 遊戲啟動
  2. 連線檢查
  3. 資料擁有權檢查
  4. 與雲端同步資料
  5. 遊戲迴圈
  6. 工作階段結束

遊戲啟動

遊戲啟動時,第一個步驟是判斷要為哪位使用者管理 Game Saves。如果使用者在另一部裝置上有作用中的遊戲工作階段,系統對話方塊會要求使用者切換裝置。如果使用者切換,另一部裝置會將其最新的本機 Game Saves 資料同步到新裝置。如果您希望資料保留在本機並繫結到裝置,可以使用僅限機器的提供者。此選項會將 null 使用者控制代碼傳入 Game Saves API。 遊戲選取使用者之後,會使用該使用者的控制代碼初始化 Game Saves。在初始化期間,Game Saves 會連線到 XBOX 網路,以準備使用者的儲存空間。 相關的系統對話方塊: 您似乎已在另一部裝置上登入。 如需使用者模型與使用者管理的資訊,請參閱使用者模型。 如需儲存空間的資訊,請參閱 Game Saves 儲存系統。 同步程序第一個步驟的流程圖。

連線檢查

接著,遊戲會判斷是否能連線到 XBOX 網路,以確認是否可以同步到雲端。如果遊戲無法連線,使用者會看到重試或以離線模式繼續遊戲的選項。Game Saves 可以在離線模式下執行。 相關的系統對話方塊:我們目前無法將您的資料與雲端同步。 我們無法取得您最新的存檔資料。

離線行為

同步程序中連線檢查步驟的流程圖。

資料擁有權檢查

確認連線之後,遊戲會判斷裝置是否有權修改資料。如果有,裝置就可以取得遊戲的鎖定。若要取得與釋放鎖定,遊戲需要存取 XBOX services。 遊戲會檢查是否有另一部裝置持有使用者資料的鎖定。該裝置可能因為下列原因而仍保留鎖定。
  • 與 XBOX 網路中斷連線,使裝置無法呼叫 WebReleaseLock。
  • 另一部裝置正在上傳大型 Game Save,因此無法呼叫 WebReleaseLock。
如果另一部裝置持有鎖定,使用者有下列選項。
  • 強制從另一部裝置取得鎖定,導致另一部裝置遺失工作階段資料。
  • 再次嘗試以一般方式取得鎖定。
  • 取消取得鎖定。
如果使用者取消取得鎖定,遊戲會以離線模式啟動。 如需更多連線中斷與鎖定案例,請參閱連線中斷與鎖定案例。 相關的系統對話方塊: 您的另一部 XBOX 主機需要很長的時間才能同步到雲端 如需透過 XBOX 網路監視鎖定取得的詳細資料,請參閱檢查 Game Saves 網路流量。 同步程序中資料擁有權檢查的流程圖。

與雲端同步資料

遊戲取得使用者資料的鎖定之後,會將該資料與雲端同步。接著,遊戲會判斷要執行下列哪一個動作:
  • 上傳本機 Game Saves 資料。
  • 下載雲端資料並更新本機 Game Saves 資料。
  • 不採取任何動作。
  • 解決任何資料衝突。
遊戲會比較兩個時間戳記來做出判斷。
  • 本機存檔時間:此裝置上次寫入存檔的時間
  • 雲端存檔時間:雲端複本上次更新的時間

四種同步結果

如果發生從雲端下載,會出現同步對話方塊正在同步…的資料。如果使用者使用此對話方塊取消 Game Saves,遊戲會以離線模式繼續。

變更與存檔狀態

此案例假設使用者在兩部裝置 (裝置 A 與裝置 B) 上遊玩。 本機已變更 使用者在裝置 A 上離線時取得進度。例如,使用者在沒有網際網路連線的情況下,在裝置 A 上升到 126 級。 雲端已變更 自使用者上次同步裝置 A 以來,已從裝置 B 上傳進度。例如,使用者在裝置 B 上升到 99 級並上傳到雲端。 兩者皆已變更 使用者在裝置 A 上離線遊玩。自上次同步裝置 A 以來,使用者也在裝置 B 上遊玩。例如,裝置 A 為 126 級,雲端為 99 級。 如果發生衝突,系統會以對話方塊提示使用者解決:您要使用哪一個?

不可部分完成性

Game Saves 在容器 (資料夾) 層級是不可部分完成的。如果雲端資料夾包含對應本機資料夾未包含的 Blob,系統會將這兩個資料夾視為不同。此差異會造成衝突。 同步程序中雲端同步的流程圖。

遊戲迴圈

遊戲迴圈是遊戲工作階段的作用中部分。它會在遊戲完成將存檔資料與雲端同步之後開始。 在作用中的遊戲工作階段期間,遊戲會在本機讀取與寫入存檔資料。在此期間建立或更新的所有資料都會保留在 Game Saves 本機儲存空間中,直到系統執行雲端同步為止。 如果主機或 PC 符合下列其中一個條件,遊戲迴圈會在使用者的遊戲工作階段結束時結束。當主機或 PC 觸發狀態變更 (例如暫停、終止、登出或其他系統事件) 時,工作階段即結束。

定期同步到雲端

每經過 30 分鐘的遊戲時間,遊戲就會嘗試自動同步到雲端。此行為以下列案例為依據。 遊戲迴圈與 Game Saves 互動的流程圖。

工作階段結束

遊戲工作階段結束後,遊戲會將新資料上傳到雲端。裝置有連線時,會嘗試將資料上傳到雲端。資料上傳之後,鎖定即會釋放。 若要在 XBOX 網路上查看鎖定釋放以進行偵錯,請參閱檢查 Game Saves 網路流量。 同步程序中工作階段結束行為的流程圖。

連線中斷與鎖定案例

連線中斷期間寫入的資料會儲存在 Game Saves 本機儲存空間中,並在連線恢復後上傳。不過,如果使用者嘗試使用另一部裝置,目前的裝置會因為連線中斷而無法釋放鎖定。使用者可以強制將鎖定轉移到另一部裝置。視這些鎖定轉移發生的時間而定,遊戲可能會有不同的行為。

遊戲啟動前連線中斷

時機:使用者在沒有連線的情況下啟動遊戲。
由於沒有連線,遊戲會提供使用者以離線模式啟動的選項。當裝置重新連線到 XBOX 網路,且雲端包含較新的資料時,遊戲會將本機資料視為過時。在此情況下,遊戲會透過暫停作業終止應用程式來結束遊戲工作階段。 相關的系統對話方塊:我們需要關閉此遊戲或應用程式

遊戲迴圈期間連線中斷

時機:使用者處於作用中的遊戲工作階段,且遊戲仍持有鎖定。在某個時間點,連線中斷。遊戲接著允許在連線中斷期間繼續遊玩。

工作階段結束前連線中斷 (終止或暫停)

時機:玩家在裝置中斷連線時結束/暫停遊戲。裝置仍有未同步的本機資料。

電源中斷

電源中斷的行為與連線中斷類似。主要差異在於任何進行中的存檔作業都會遺失。
Last modified on October 6, 2026