# Ship of Harkinian：基于反编译源码的《时之笛》原生移植

> 以《时之笛》反编译项目的源码为基础，将游戏构建为原生 PC 程序，用 libultraship 替代 N64 的 libultra SDK，并以 DirectX 11、OpenGL 或 Metal 渲染。不随附游戏素材，而是从使用者自备的受支持 ROM 转换生成 .o2r 归档；移植版还加入了即时存档、替换与自定义素材等增强功能。

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

## 使用条件与局限

- **前提条件：**游玩需要合法取得且受支持的《时之笛》ROM；docs/supportedHashes.json 列出 19 条 SHA-1 记录，涵盖 PAL、NTSC（美版／日版）、GameCube、Master Quest 及调试版。仓库不含受版权保护的素材，素材由该 ROM 转换为 oot.o2r 或 oot-mq.o2r；使用预构建版本同样需要 ROM。
- **前提条件：**README 说明提供 Windows、Linux（AppImage）和 macOS 版本，渲染可选 DirectX 11、OpenGL 或 Metal；CMake 中还有 Nintendo Switch 与 CafeOS（Wii U）分支。从源码构建需 CMake 3.26+、Python 3、Git 以及 libultraship 和 Torch 子模块；Windows 另需 Visual Studio 2022（v143），Linux 需列明的发行版软件包及最低 GCC／Clang 版本。
- **范围：**README 介绍 Ship of Harkinian 以 libultraship 为基础，并依赖《时之笛》反编译项目提供的源码；soh/src 目录即为这部分源自反编译的游戏代码。产物是加入新功能的修改版原生移植（CMake 项目版本 9.3.0），不是一致性 ROM 构建，也不是逐字节重建。
- **测试证据：**所审 CI 工作流构建 Windows、macOS 和 Linux 软件包并生成 soh.o2r，不与原版游戏进行玩法或保真度比对。
- **许可：**固定版本的仓库根目录没有许可证文件，GitHub 也未识别出许可证；随机器中的 3drando 组件附有自身的许可证，子模块为独立仓库，任天堂内容仍保有其权利。README 声明项目不支持盗版。

## 一手来源

1. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/README.md>
2. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/BUILDING.md>
3. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/supportedHashes.json>
4. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/CMakeLists.txt>
5. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/.gitmodules>
6. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/soh/.gitrepo>
7. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/CREDITS.md>
8. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/.github/workflows/generate-builds.yml>
9. <https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/soh/soh/Enhancements/randomizer/3drando/LICENSE.md>

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

- [sm64ex：基于反编译成果的 Super Mario 64 增强版 PC 移植](https://awesomerea.org/zh/resources/sm64ex-pc-port-case/index.md) · 案例
- [SpaghettiKart：基于反编译源码的《马力欧卡丁车 64》原生移植](https://awesomerea.org/zh/resources/spaghettikart-mk64-port-case/index.md) · 案例
- [Starship：基于反编译的 Star Fox 64 PC 移植](https://awesomerea.org/zh/resources/starship-sf64-pc-port-case/index.md) · 案例
- [Super Mario Sunshine：基于 AI 辅助反编译的原生 PC 移植](https://awesomerea.org/zh/resources/sms-pc-port-case/index.md) · 案例
- [TH08 Web：基于重建源码的 WebAssembly 移植](https://awesomerea.org/zh/resources/th08-web-wasm-port-case/index.md) · 案例
- [TonyWasAProSkater：派生自一致性反编译的 THPS1 原生移植](https://awesomerea.org/zh/resources/thps1-decomp-native-port-case/index.md) · 案例

## 关于此条目

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