检索在认证测试期间生成的游戏保存文件

那么,你的认证报告是否列出了故障?

这种情况并不少见,尤其是在所有错误尚未解决之前的可选认证测试通过期间。 在工作室的开发构建中重现这些问题往往是一项挑战。

如果故障转储不可用或无用,则可能是帐户证书使用的保存文件。 通过将证书测试帐户中的保存文件应用到开发沙盒测试帐户,你可以更轻松地开始处理此问题。

本文介绍相关实现方法。

如何从 CERT 获取保存并将其应用到测试帐户

XblConnectedStorage 将从 Xbox Live CERT 沙盒中获取保存的 blob。

XbStorage(NDA 主题)要求授权 用于将保存应用到主机开发沙盒中的测试帐户。

XGameSaveUtil 用于将保存应用到电脑开发沙盒中的测试帐户。

先决条件

  1. 正在使用的电脑上安装的 GDK 或 GDK 工具
  2. 将凭据登录到从中发布游戏的合作伙伴中心帐户
    • 具有对游戏产品的 Xbox Live“工具访问”权限(权限文档
    • 如果登录是来宾帐户,则需要来宾帐户所在的 Microsoft Entra 租户名称(可能采用 ?.onmicrosoft.com 格式)。
  3. 合作伙伴中心中“游戏设置/标识详细信息”部分中游戏的 Xbox 服务配置 ID (SCID)。
  4. 来自同一位置的游戏的程序包系列名称 (PFN)。
  5. 要检索其保存的帐户的玩家代号,由认证团队提供。
  6. 认证使用的沙盒名称:CERT 或 CERT.DEBUG。
  7. 要向其应用保存的测试帐户的电子邮件地址。

从 Xbox Live 检索保存的 blob

  1. 打开 GDK 命令提示符窗口

  2. 使用 xbldevaccount 从先决条件 #2 登录到合作伙伴中心帐户,例如:

    C:\temp>xbldevaccount signin --name billyray@mylovelygamecompany.com

    如果在另一个租户上以来宾身份登录,请使用 --租户选项,例如:

    C:\temp>xbldevaccount signin --name billyray@mylovelygamecompany.com --tenant sombodyelseslovelygamecompany.onmicrosoft.com
  3. 使用 XblConnectedStorage 命令行从 Xbox Live 中拉取保存,例如:

    C:\temp>xblconnectedstorage --scid 00000000-0000-0000-0000-000012345678 -s CERT --gamertag "2 SomeCertAccount" --output .\GameSaveFrom2SomeCertAccount.xml
    Using Dev account billyray@mylovelygamecompany.com from WindowsDevCenter
    Operation complete. Downloaded 4 save containers to .\GameSaveFrom2SomeCertAccount.xml.

如果一切顺利,现在应在指定的 xml 文件中保存 Blob。 应能够在其中看到 base64 编码的二进制 Blob。 有关文件格式的详细信息,请参阅 此处(NDA 主题)要求授权

将保存应用到测试帐户(主机)

按照 xbstorage 文档中的说明将 xml 文件应用于存储空间,例如:

C:\temp>xbstorage import .\GameSaveFrom2SomeCertAccount.xml /msa:MLGC-MyTestAccount0000@xboxtest.com /replace /verbose

将保存应用到测试帐户(电脑)

按照 XGameSaveUtil 文档中的说明将 xml 文件应用于存储空间,例如:

C:\temp>xgamesaveutil import .\GameSaveFrom2SomeCertAccount.xml /pfn:mygame_xxxxxx /replace

注意事项

定时

由于需要测试认证的方式,该帐户可能会在出现问题后继续使用。 认证报告通常在测试完成后颁发。

这可能会导致 Xbox Live 上的保存内容比出现问题时使用的保存内容更新。

Xblconnectedstorage 输出目录

如果不向 xblconnectedstorage.exe 提供 --output,它将尝试输出到当前工作目录。 如果刚启动 GDK 命令提示符,则可能是你的 Windows 系统目录,因此 xblconnectedstorage 将失败。 建议显式显示并提供 --output 参数以指向可写位置。

现代玩家代号

此过程当前未通过新式玩家代号进行测试。