> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 玩家資料重設工具 (XblPlayerDataReset.exe)

> XblPlayerDataReset.exe 命令列工具,可在 XBOX 服務沙箱中重設玩家或玩家群組的成就、排行榜、統計資料與遊戲歷程記錄。

<Note>
  在 2026 年 8 月,我們修正了一個問題:依 XUID 重設玩家資料時會發生權限錯誤 (HTTP 401),即使帳戶已獲授與正確的 Partner Center 權限也是如此。此修正是在 XBOX 服務後端進行,因此會自動套用。您不需要安裝新版的 GDK、XBOX 服務工具套件或此工具本身。如果您先前遇到此錯誤並採取了因應措施,或曾被告知您的 Partner Center 權限設定不正確,可以依照下列步驟重試此工具。[依 XUID 重設](#reset-by-xuid)中所述的 "Tools Access" 權限仍為必要。
</Note>

玩家資料重設工具可用於重設測試沙箱中一位玩家或一組玩家的資料。您可以重設成就、排行榜、統計資料與遊戲歷程記錄等資料。個別帳戶可依其電子郵件地址或 XUID 重設。若要依 XUID 重設,您必須先執行 XblDevAccount.exe 工具,登入擁有待重設帳戶的 Partner Center 帳戶。若要依測試帳戶的電子郵件地址重設,您需要知道該測試帳戶的密碼。

此工具不會重設玩家的連線儲存空間(遊戲存檔)。若要管理連線儲存空間,請見[連線儲存空間工具 (XblConnectedStorage.exe)](/tools/tools-services/live-connected-storage-tool)。

此命令列工具是 GDK 的一部分,另外也包含在 XBOX 服務工具套件中。若要了解如何取得 XblPlayerDataReset.exe 工具,請見 [XBOX 服務開發工具](/tools/tools-services/live-tools)。

`--xuid`、`--user` 與 `--file` 選項彼此互斥。請連同 `--scid` 與 `--sandbox`,只指定其中一個選項。

## 依 XUID 重設

若要使用玩家資料重設工具依 XUID 重設使用者,用於登入(透過 XblDevAccount.exe)的開發者帳戶必須具備特定產品的適當權限。請注意,"Tools Access" 不是帳戶層級的權限,而是產品層級的權限。因此,您必須為每一個要重設玩家資料的產品逐一授與 "Tools Access" 權限。

1. 使用具有系統管理權限的開發者帳戶登入 Partner Center。
2. 瀏覽至帳戶設定 => [使用者頁面](https://partner.microsoft.com/dashboard/account/usermanagement)。
3. 按一下需要 "Tools Access" 權限的使用者或群組。
4. 如果該使用者或群組目前被指派為標準角色(例如 Developer),您需要切換至 "Customize permissions"。
5. 在下一頁,移至 "Product-level" 權限表格,展開 "XBOX Live" 表格標頭,並找到 "Tools access" 欄。
6. 針對您要授與 "Tools Access" 權限的產品或產品群組,明確勾選該核取方塊。

權限設定完成後,即可依下列方式重設測試帳戶資料:

```cmd theme={null}
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --xuid <XUID1,XUID2,XUID3,...>
```

## 依電子郵件地址重設

若要依測試帳戶電子郵件地址重設,您需要知道每個測試帳戶的密碼。請使用下列命令,系統會快顯視窗讓您以測試使用者身分登入:

```cmd theme={null}
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --user <XXXXXX-aaa@xboxtest.com,XXXXXX-bbb@xboxtest.com,...>
```

## 依檔案重設

若要依檔案重設,您可以傳遞下列檔案的位置:XUID 分隔檔、電子郵件分隔檔,或 [Partner Center 帳戶匯出檔](/services/xbox-services/develop/test-accounts/live-exporting-test-accounts)。

```cmd theme={null}
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --file </path/to/file>
```

對於分隔檔,工具會檢查第一行來決定如何讀取檔案。如果該行包含 `@` 字元,整個檔案會被視為電子郵件地址清單;否則會被視為 XUID 清單。分隔檔中請勿包含標頭列,因為它會被剖析為一個帳戶。

Partner Center 帳戶匯出檔會自動偵測,但僅在原始標頭列存在且未經修改時才會偵測:

```text theme={null}
Xuid,Email,Gamertag,IsDeleted,AccountId,Etag,Subscriptions,Keywords
```

如果您在試算表應用程式中開啟匯出檔,並以重新排序或重新命名的欄位儲存,標頭就不再會被辨識,檔案會改以一般分隔檔讀取。

<Warning>
  從 Partner Center 帳戶匯出檔重設之前,請先使用 XblDevAccount.exe 登入。當已登入 Partner Center 帳戶時,工具會讀取 `Xuid` 欄並重設帳戶,不再另行提示。當未登入任何帳戶時,工具會改用 `Email` 欄,並提示您輸入檔案中每個帳戶的密碼。
</Warning>

## 分隔符號選項

您可以選擇性地為 `--xuid` 與 `--user` 選項,以及傳遞給 `--file` 的分隔檔,設定自訂分隔符號。預設分隔符號為逗號 (,)。

```cmd theme={null}
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --xuid <XUID1*XUID2*XUID3*...> --delimiter *
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --user <XXXXXX-aaa@xboxtest.com$XXXXXX-bbb@xboxtest.com$...> --delimiter $
XblPlayerDataReset.exe --scid <SCID> --sandbox <SNDBOX.0> --file </path/to/file> --delimiter %
```

僅會使用該值的第一個字元。如果您傳遞長度超過一個字元的值,其餘字元會被忽略,而不會被視為多字元分隔符號。

當傳遞給 `--file` 的檔案是 Partner Center 帳戶匯出檔時,分隔符號會被忽略,因為該格式一律以逗號分隔。

## 帳戶的處理方式

帳戶的處理方式取決於您使用的選項。

當您依 XUID 重設,或從解析為 XUID 的檔案重設時,帳戶會以最多 10 個為一批進行處理。同一批次內的帳戶會平行重設,各批次則依序執行。

當您依電子郵件地址重設時,帳戶會逐一處理,因為每個帳戶都必須個別登入。如果任何測試帳戶登入失敗,工具會立即停止,且不會嘗試清單中其餘的帳戶。

每個帳戶在回報為失敗之前,會自動重試最多五次,且工具會等候服務完成每次重設後才繼續。因此,單一帳戶可能需要最多約一分鐘才會回報最終結果。請讓工具執行完畢,而不要取消它,尤其是在重設大量清單時。

## 輸出

無論命令成功或失敗,您都會看到類似下列的輸出。

***成功***

```cmd theme={null}
Resetting player data for SCID <SCID> in sandbox <SNDBOX.0>
Using Dev account contoso@contoso.com from WindowsDevCenter
Processing batch of 2 account(s).
Resetting player 2814000000000001 result: Succeeded
Resetting player 2814000000000002 result: Succeeded
Player data has been reset successfully.
```

***錯誤***

```cmd theme={null}
Resetting player data for SCID <SCID> in sandbox <SNDBOX.0>
Using Dev account contoso@contoso.com from WindowsDevCenter
Processing batch of 1 account(s).
Resetting player 2814000000000001 result: CompletedError. Will retry.
Retrying 1 accounts. 4 more attempt(s).
Failed to reset 1 account(s): 2814000000000001
An error occurred while resetting player data:
```

重設也可能逾時。逾時表示工具停止等候結果,並不代表重設必定失敗。該工作可能仍會在服務中完成。

```cmd theme={null}
Player data reset has timed out:
```

## 結束代碼

工具成功時傳回 0,失敗時傳回 -1。從指令碼或自動化測試流程呼叫此工具時,請檢查結束代碼,而不要依賴主控台文字。

<Warning>
  在兩種未重設任何內容的情況下,工具也會傳回 0:當未指定 `--xuid`、`--user` 或 `--file` 之中任何一項時,以及傳遞給 `--file` 的檔案無法讀取時。如果您的自動化只檢查結束代碼,這些情況看起來可能像是成功執行。請確認輸出中包含您預期重設的每個帳戶的結果行。
</Warning>

## 疑難排解

### 無法向 XBOX Live 授權帳戶

```cmd theme={null}
Unable to authorize the account with XBOX Live and scid : <SCID> and sandbox : <SNDBOX.0>, please contact your administrator.
```

此訊息伴隨 HTTP 401 錯誤出現。在 2026 年 8 月之前,服務端的一個問題導致所有依 XUID 重設的開發者都會發生此錯誤,包括 Partner Center 權限設定正確的開發者。該問題已修正,且此修正不需要更新工具或 GDK。

如果您仍然看到此錯誤,請確認已登入的帳戶具備該產品的 "Tools Access" 權限(如[依 XUID 重設](#reset-by-xuid)所述),並確認 SCID 與沙箱與您鎖定的產品相符。如果您最近在 Partner Center 中變更過權限,請使用 XblDevAccount.exe 登出後重新登入,以便核發新的權杖。

### 您的帳戶沒有執行此作業的存取權

```cmd theme={null}
Your account doesn't have access to perform the operation, please contact your administrator.
```

此訊息伴隨 HTTP 403 錯誤出現。請為該產品授與 "Tools Access" 權限,如[依 XUID 重設](#reset-by-xuid)所述。

### 依 XUID 重設需要已登入的 Partner Center 帳戶

```cmd theme={null}
Resetting by XUID requires a signed in Partner Center account. Please use "XblDevAccount.exe signin" to log in.
```

在依 XUID 重設之前,或從 Partner Center 帳戶匯出檔重設之前,請先執行 `XblDevAccount.exe signin`。

### 無法登入測試帳戶

```cmd theme={null}
Failed to log in to test account <XXXXXX-aaa@xboxtest.com>.
```

工具無法登入該測試帳戶。請確認電子郵件地址與密碼,並確認該帳戶屬於您傳遞給 `--sandbox` 的沙箱。發生此情況時工具會停止,因此清單中其餘的帳戶不會被重設。


## Related topics

- [Godot 與社群引擎總覽](/zh-TW/paths/community-engines/overview.md)
- [PFLeaderboardsGetEntityLeaderboardResponse](/zh-TW/services/playfab/api-references/c/pfleaderboardstypes/structs/pfleaderboardsgetentityleaderboardresponse.md)
- [PFStatisticsGetStatisticDefinitionResponse](/zh-TW/services/playfab/api-references/c/pfstatisticstypes/structs/pfstatisticsgetstatisticdefinitionresponse.md)
- [PFStatisticsStatisticDefinition](/zh-TW/services/playfab/api-references/c/pfstatisticstypes/structs/pfstatisticsstatisticdefinition.md)
- [PFStatisticsUpdateStatisticDefinitionRequest](/zh-TW/services/playfab/api-references/c/pfstatisticstypes/structs/pfstatisticsupdatestatisticdefinitionrequest.md)
