旷野之息存档编辑器指南:用 BOTW-Save-Editor-GUI 在 Switch 上修改卢比、武器与耐久
【免费下载链接】BOTW-Save-Editor-GUIA Work in Progress Save Editor for BOTW项目地址: https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI
BOTW-Save-Editor-GUI 是一款运行在修改版 Switch 上的《塞尔达传说:旷野之息》(BotW)存档编辑器,以自制程序(homebrew)形式直接读写游戏存档,可修改卢比数量、武器/弓箭/盾牌的持有数量、耐久度和词条(modifier)。它面向拥有改机 Switch、不想手动处理存档文件的玩家:无需计算偏移地址,用方向键即可完成常见数值调整。项目使用 C 语言与 SDL2 开发,GPL v3 许可,目前仍属开发中状态(WIP),功能有限制,下文会先讲清边界再给操作步骤。
先看清边界:它能改什么,不能改什么
新手最常踩的坑是预期不符。根据仓库信息,当前的能力范围是:
| 类别 | 支持情况 |
|---|---|
| 卢比数量 | 支持,Y 键打开数字键盘输入 |
| 武器/弓箭/盾牌数量 | 支持 |
| 武器/弓箭/盾牌耐久度 | 支持 |
| 词条(攻击力、暴击、长距离投掷、三连射、快速射击、盾滑、盾防等) | 支持,列表见后文界面说明 |
| 自动备份存档 | 不支持,README 将其列为待办项,需手动备份 |
| 其他物品类型(材料、钱袋以外的道具) | 暂不支持 |
两个必须明确的前提:
- 它不是 PC 工具,而是 Switch 自制程序,编译产物为
.nro,需要在改机 Switch 上运行。 - 它通过系统接口挂载当前登录用户的 BotW 存档(source/mount.c 中按 BotW 的 titleID 挂载
save:分区),因此存档无需你手动复制出来。 - 存档解析按游戏版本区分的偏移表在 source/botw_backend.c 中维护,目前覆盖 7 个版本;如果你的游戏版本较新且读档异常,优先怀疑版本兼容。
启动前必查项
改存档是高风险操作,README 作者明确声明"编辑前请务必备份,存档丢失概不负责"。开始之前按顺序确认:
- 备份存档。用你常用的改机备份工具(HBS 等,以你的设备环境为准)把整个 BotW 存档导出一份,存放在 SD 卡外或独立目录。这是唯一可靠的回滚手段。
- 退出游戏。官方说明的操作顺序是:用当前用户启动 BotW,等到标题画面后退出并关闭游戏。这能确保存档已完整写回,避免编辑器与游戏同时持有存档。
- 确认运行环境。编译需要 DevkitPro + LibNX 工具链,以及 SDL2、SDL2_ttf、SDL2_gfx、SDL2_image 四套库(见 Makefile 的链接项)。运行端需要能加载自制程序的 Switch 固件。
如何编译并首次运行
克隆仓库:
git clone https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI cd BOTW-Save-Editor-GUI设置 DevkitPro 环境变量后执行make:
export DEVKITPRO=/path/to/devkitpro make成功后会在项目目录生成BOTW-Save-Editor-GUI.nro(及.pfs0等文件),把.nro拷入 Switch 的自制程序目录运行即可。若 make 报Please set DEVKITPRO,说明环境变量未生效;若链接阶段找不到 SDL 相关库,检查 libnx/PORTLIBS 下是否装齐上述四个 SDL 扩展库。
修改流程:从选档到保存的 6 步
界面操作全部基于手柄按键,逻辑与 Switch 系统菜单一致:
| 按键 | 作用 |
|---|---|
| 方向键 | 移动光标、切换存档槽位/物品/翻页 |
| A | 确认选择 |
| B | 取消选择、返回上级 |
| Y | 打开数字键盘输入数值 |
| + | 退出程序(若有改动会先弹保存确认) |
旷野之息存档编辑器存档槽位选择界面
- 选择存档槽位。方向键左右切换槽位,A 确认。编辑器会读取各槽位的封面缩略图(
caption.jpg)帮助辨认;无存档的槽位显示占位图。程序启动时会检测第 6 槽(save:/6/caption.jpg)是否存在,自动区分 5 槽或 7 槽模式。 - 浏览物品列表。左侧为武器列表(每页 5 条,左下角显示页码),右侧显示选中项的详情,右上角实时显示当前卢比数。
- 查看与编辑数值。详情区列出 Quantity(数量)和 Durability(耐久度)两项,下方提供 Edit Modifier、Edit Quantity 入口。
- 修改词条。进入 Edit Modifier 后从词条列表勾选/取消(带
*为强化变体,如 Critical hit up * 表示暴击强化词条),列表中会标注词条适用的物品类型(Weapon/Bow/Shield)。 - 输入数值。按 Y 调出数字键盘逐位输入,A 确认,B 或 Y 关闭键盘。
- 保存。按 + 退出时弹出 "Save Changes?" 对话框:A 保存、X 放弃、B 返回继续编辑。选 A 后只把发生变化的字段写回存档(源码中按新旧值比对写入),不会整文件重写。
旷野之息存档编辑器物品列表与卢比显示主界面
旷野之息存档编辑器武器详情与编辑选项界面
旷野之息存档编辑器词条选择列表界面
旷野之息存档编辑器数字键盘输入界面
旷野之息存档编辑器保存确认对话框界面
验证方法与回滚清单
改完后不要直接开新档验证,按以下顺序检查:
- 改前:截图或记录卢比数、目标武器的数量/耐久/词条,作为对照基准。
- 改后:正常进入 BotW,先打开菜单确认卢比数值;武器数量用"丢弃一件"的方式验证(避免消耗影响游戏内数据);词条可在武器详情页查看属性变化。
- 回滚:一旦游戏内数值异常或存档损坏,用改机工具把备份存档完整写回,不要尝试"只覆盖单个文件"式的修补。
遇到异常时的排查思路:
| 现象 | 可能原因 | 处理 |
|---|---|---|
| 启动即报错(存档挂载失败) | 未登录用户、游戏版本不兼容、改机环境异常 | 确认当前用户有 BotW 存档;确认游戏已更新到编辑器支持的版本之一 |
| 槽位全部显示占位图 | 当前用户无 BotW 存档 | 换到实际存档所在的用户账号 |
| 数值改了但游戏内不变 | 写入字段与游戏版本偏移不符 | 核对游戏版本,必要时回滚存档 |
| 列表条目异常重复或缺失 | WIP 阶段的已知缺陷 | 作者已声明项目含 bug,回滚存档后等待更新 |
风险表:哪些事情不要做
| 风险 | 说明 | 缓解措施 |
|---|---|---|
| 存档损坏导致存档丢失 | 编辑器直接写回原始存档分区,WIP 项目存在 bug | 每次编辑前独立备份一份 |
| 无自动备份功能 | README 待办事项,当前版本不提供 | 用外部备份工具,不要依赖编辑器 |
| 版本兼容范围有限 | 偏移表覆盖 7 个存档版本 | 升级游戏前确认编辑器是否已更新对应偏移 |
| 数值越界 | 过大的数量/数值可能超出存档字段上限 | 先小步修改验证,确认生效后再调整 |
另提醒一点:该项目为 GPL v3 许可(以仓库 LICENSE 为准),二次分发修改版时需遵守相应条款;存档修改只建议用于本地单机体验,多人联机场景存在封禁风险,建议以官方规则为准。
进阶:源码结构与可参与点
代码量不大,适合通读。按目录划分:
- source/main.c:SDL 初始化、资源加载、主循环与按键分发
- source/MainMenu.c:菜单与界面状态机
- source/botw_backend.c:存档解析核心,各版本的字段偏移表与读写逻辑都在这
- source/mount.c:挂载/卸载 BotW 存档分区
- source/translations.c:物品名与词条的显示翻译
- romfs/:打包进程序的资源,含 198 张武器图标(64×64)、背景与按钮图片、Arial 字体
README 列出的待办是:存档自动备份、支持更多物品、屏幕底部增加按键提示。如果你熟悉 BotW 存档结构或 LibNX 开发,这三项都是可以直接认领的方向;补充存档版本偏移或新增物品支持前,先对照 botw_backend.c 中现有版本的偏移组织方式。
下一步
建议按"备份 → 小步修改 → 游戏内验证 → 确认无误再扩大改动"的节奏使用:第一次只改卢比,确认读写链路正常后,再动武器数量与词条。出现任何异常,立即回滚备份,不要带着可疑存档继续尝试。
【免费下载链接】BOTW-Save-Editor-GUIA Work in Progress Save Editor for BOTW项目地址: https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考