# 《天空之剑》：以哈希校验重新链接的 Wii 版反编译

> 以使用者自备的 NTSC-U 1.0（SOUE01）光盘文件为起点，为《塞尔达传说 天空之剑》Wii 版的 main.dol 和 REL 模块重建 C++ 源码。标为一致的对象由源码编译，再与从原文件拆分出的其余对象链接，并以 SHA-1 哈希校验结果；仓库不含素材或汇编，也不是移植。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-18
- 收录于：2026-10-18
- 原始资源：<https://github.com/zeldaret/ss>
- 一手来源：<https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/skyward-sword-decomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/skyward-sword-decomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/skyward-sword-decomp-case/index.md)

## 使用条件与局限

- **前提条件：**构建需要使用者自己的 SOUE01 游戏：README 指明只需其数据分区中的 sys/main.dol 和 files/rels.arc。仓库不含游戏素材或汇编；decomp-toolkit 依据 config/SOUE01 中的输入哈希和拆分表，在本地将使用者的文件拆分为对象。
- **前提条件：**在 Windows 上可直接用 Python 与 ninja 构建；Linux／macOS 需 ninja，并会自动下载 wibo 包装器。configure.py 固定 decomp-toolkit v1.7.1、objdiff v3.4.1、binutils 2.42-1 及 20250812 编译器包，大部分代码选用 Metrowerks Wii/1.5，大部分 NW4R 代码选用 Wii/1.3；开发时用 objdiff 逐个对象比对。
- **范围：**README 称其为进行中的 Wii 版反编译，目前唯一支持的版本是 SOUE01（NTSC-U 1.0）；configure.py 还列出 SOUP01，但固定版本中只有 SOUE01 的配置。产物是 Wii 用的重建 main.dol 和 REL 组，不是 PC 可执行文件或移植。
- **测试证据：**默认 ninja 目标只对标为 Matching 的单元（configure.py 中有 493 个，另有 536 个仍为 NonMatching）链接由源码编译的对象，其余单元使用从原文件提取的对象，再按 build.sha1 校验 main.dol 和 636 个 REL。校验通过表示输出一致。decomp.dev 针对该固定提交的报告显示，27.89% 的代码字节及 76,968 个函数中的 33,940 个已匹配；CI 使用存放游戏文件的私有容器。
- **许可：**仓库采用 CC0-1.0；该声明不涵盖任天堂的游戏及其文件，也不涵盖下载的编译器。

## 一手来源

1. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/README.md>
2. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/configure.py>
3. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/tools/project.py>
4. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/config/SOUE01/config.yml>
5. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/config/SOUE01/build.sha1>
6. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/LICENSE>
7. <https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/.github/workflows/build.yml>
8. <https://decomp.dev/zeldaret/ss>
9. <https://web.archive.org/web/20261020041301/https://decomp.dev/zeldaret/ss/SOUE01/d3d8e3cbf3d353b2231f06690965cac5366e28a1.json>

## 同分区更多条目：游戏

- [Sly Cooper and the Thievius Raccoonus：PlayStation 2 一致性反编译](https://awesomerea.org/zh/resources/sly1-matching-decomp-case/index.md) · 案例
- [Snowboard Kids 2：大模型辅助的 N64 匹配反编译](https://awesomerea.org/zh/resources/snowboardkids2-decomp-case/index.md) · 案例
- [Snowboard Kids：智能体辅助的 N64 匹配反编译](https://awesomerea.org/zh/resources/snowboardkids-matching-decomp-case/index.md) · 案例
- [《索尼克 Advance》1 与 2：一致性 GBA 反编译及宽屏移植](https://awesomerea.org/zh/resources/sonic-advance-1-2-decomp-port-case/index.md) · 案例
- [Sonic Advance 3：AI 辅助匹配单个敌人模块](https://awesomerea.org/zh/resources/sa3-marun-ai-decomp-case/index.md) · 案例
- [《星际火狐 64》：完整的 Nintendo 64 版一致性反编译](https://awesomerea.org/zh/resources/sf64-matching-decomp-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
