告别存档丢失!XGP存档提取器全面支持Palworld游戏备份与迁移

告别存档丢失!XGP存档提取器全面支持Palworld游戏备份与迁移

【免费下载链接】XGP-save-extractor Python script to extract savefiles out of Xbox Game Pass for PC games 【免费下载链接】XGP-save-extractor 项目地址: https://gitcode.com/gh_mirrors/xg/XGP-save-extractor

你是否曾因Xbox Game Pass(XGP)平台的存档机制限制,无法自由备份或迁移《幻兽帕鲁(Palworld)》的珍贵存档?当需要重装系统、更换设备或分享存档时,这种封闭性往往成为玩家最大痛点。现在,XGP存档提取器(XGP-save-extractor)正式发布新版本,新增对《幻兽帕鲁》的完整支持,彻底解决这一难题。本文将详细介绍如何利用这一工具实现存档的无缝管理,包含完整操作指南、技术原理解析及常见问题解决方案。

核心功能与适用场景

XGP存档提取器是一款专为Windows平台设计的Python工具,旨在解析XGP/UWP应用的存档封闭性,支持将加密存储的游戏存档转换为通用格式。本次更新后,玩家可通过以下方式受益:

应用场景传统解决方案XGP存档提取器优势
系统重装前存档备份依赖Xbox云同步(不稳定)本地生成ZIP包,100%数据掌控
多设备间存档迁移不支持跨设备直接迁移导出通用格式,U盘/云盘轻松传输
存档修改与MOD支持无法访问原始存档文件提取原始.sav文件,支持第三方工具
防止存档损坏/误删无有效防护手段定期备份,一键恢复历史版本

特别针对《幻兽帕鲁》,工具已完成以下适配优化:

  • 支持v0.1.5.0及以上版本存档格式
  • 自动识别"PocketpairInc.Palworld_ad4psfrxyesvt"应用包
  • 保留存档文件结构,确保修改后可正常回导

技术实现原理

XGP存档存储机制解析

XGP游戏存档采用微软WGS(Windows Game Save)系统,其核心特点是加密容器化存储。以《幻兽帕鲁》为例,存档文件实际存储路径为:

%LOCALAPPDATA%\Packages\PocketpairInc.Palworld_ad4psfrxyesvt\SystemAppData\wgs\<用户ID>_<标题ID>

该目录下包含:

  • containers.index:存档容器索引文件
  • 多个GUID命名的子目录:每个目录对应一个存档容器
  • 容器内文件:采用UUID命名的加密二进制数据

提取器工作流程

工具通过以下四步实现存档解析(对应main.py核心逻辑):

mermaid

关键技术点在于专用处理器(handler) 的实现。在games.json配置中,Palworld采用"palworld"处理器:

{
    "name": "Palworld",
    "package": "PocketpairInc.Palworld_ad4psfrxyesvt",
    "handler": "palworld"
}

该处理器会执行特殊转换:将容器名称中的短横线替换为目录分隔符,并自动添加.sav后缀,最终生成符合游戏加载规范的文件结构。

完整操作指南

前置准备

  1. 环境要求

    • Windows 10/11系统(64位)
    • Python 3.8+环境(推荐3.10版本)
    • 已安装《幻兽帕鲁》并至少运行一次
  2. 工具获取

    git clone https://gitcode.com/gh_mirrors/xg/XGP-save-extractor
    cd XGP-save-extractor
    pip install -r requirements.txt  # 如无requirements.txt可跳过
    

提取存档步骤

  1. 运行提取器

    python main.py
    
  2. 选择游戏 程序会自动列出已安装的支持游戏,找到并确认"Palworld"条目:

    Installed supported games:
    - Palworld
      Save files for user GamerTag123:
      - Players/0/save.sav
      - Worlds/DefaultWorld.sav
      Save files written to "palworld_gamertag123_20250911_153045.zip"
    
  3. 获取存档文件 提取完成后,当前目录会生成类似palworld_gamertag123_20250911_153045.zip的文件,内部结构如下:

    palworld_gamertag123_20250911_153045.zip
    ├── Players/
    │   └── 0/
    │       └── save.sav       # 玩家数据存档
    └── Worlds/
        └── DefaultWorld.sav   # 世界数据存档
    

存档恢复与迁移

  1. 替换存档 将提取的.sav文件复制到目标设备的对应路径(需先通过工具提取目标设备存档结构):

    <目标设备提取的ZIP包>\Players\0\save.sav
    
  2. 导入XGP 使用相同工具在目标设备执行提取操作时,程序会自动检测并合并存档(需确保用户ID匹配)。

高级技术解析

WGS容器格式深度剖析

XGP存档采用微软专有容器格式,每个容器包含:

  • 索引文件(containers.index):记录容器元数据,采用Little-Endian编码
  • 容器数据文件:GUID命名的目录下存储实际文件,通过UUID映射

解析代码片段(main.py):

def read_user_containers(user_wgs_dir: Path) -> Tuple[str, List[Dict[str, Any]]]:
    containers_idx_path = user_wgs_dir / "containers.index"
    with containers_idx_path.open("rb") as f:
        f.read(4)  # 跳过文件头
        container_count = struct.unpack("<i", f.read(4))[0]  # 读取容器数量
        # 后续解析容器名称、GUID及文件列表...

Palworld存档特殊处理

与其他游戏不同,《幻兽帕鲁》存档采用多级目录结构,工具通过"palworld"处理器实现路径转换:

elif handler_name == "palworld":
    for container in containers:
        fname = container["name"].replace("-", "/")  # 将容器名转换为路径
        fname += ".sav"  # 添加存档后缀
        fpath = container["files"][0]["path"]
        save_meta.append((fname, fpath))

例如将容器名"Players-0"转换为"Players/0/save.sav"路径。

常见问题解决方案

问题1:工具未检测到Palworld游戏

可能原因

  • 游戏安装路径异常
  • 注册表中未正确注册包名

解决方案

  1. 验证游戏包名是否存在:
    Get-AppxPackage *Palworld*
    
  2. 若输出为空,修复游戏安装:
    • 打开Microsoft Store → 我的库 → 找到Palworld → 点击"修复"

问题2:提取的存档无法导入其他设备

排查步骤

  1. 检查ZIP包完整性:确保包含Players和Worlds两个目录
  2. 确认目标设备游戏版本与原设备一致
  3. 替换存档时需关闭游戏进程,避免文件锁定

问题3:Python执行报错"缺少依赖"

解决命令

pip install struct uuid zipfile pathlib

未来功能展望

根据项目开发计划,后续版本将重点增强以下特性:

  • 可视化界面:替代命令行操作,降低使用门槛
  • 存档对比工具:支持不同版本存档的差异分析
  • 云同步集成:直接对接OneDrive/百度云等平台
  • 批量处理功能:同时管理多个游戏存档

项目贡献指南: 开发者可通过修改games.json添加新游戏支持,格式规范如下:

{
    "name": "游戏名称",
    "package": "UWP包全名",
    "handler": "处理器类型",  // 可选1c1f/1cnf/palworld等
    "handler_args": { "suffix": ".sav" }  // 处理器参数
}

总结与使用建议

XGP存档提取器为《幻兽帕鲁》玩家提供了关键的存档管理能力,帮助玩家实现存档的自主管理。建议玩家:

  1. 每周至少执行一次存档备份,防止意外丢失
  2. 重大更新前单独备份,避免版本不兼容问题
  3. 存档文件存储在多个位置(本地+云盘),提高安全性

通过本文介绍的方法,你已掌握XGP存档提取器的完整使用流程。如有任何技术问题,可通过项目Issue页面提交反馈,开发团队将提供持续支持。现在就动手尝试,让你的《幻兽帕鲁》存档真正属于自己!

【免费下载链接】XGP-save-extractor Python script to extract savefiles out of Xbox Game Pass for PC games 【免费下载链接】XGP-save-extractor 项目地址: https://gitcode.com/gh_mirrors/xg/XGP-save-extractor

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值