案例
《马力欧卡丁车 Wii》:进行中的 PAL 版一致性反编译
《马力欧卡丁车 Wii》的进行中一致性反编译,目标为 PAL 版(RMCP01):用 Metrowerks 编译器从 C 与 C++ 源码重建 main.dol 和 StaticR.rel 模块,并与仓库保存的 SHA-1 比对。构建从使用者自备的光盘镜像中拆分这些二进制,开发时用 objdiff 比对目标文件。README 的进度徽章指向的 decomp.dev 页面在审阅时无法访问,默认分支最后更新于 2025 年 9 月。
使用条件与局限
- README 只列出一个支持版本 RMCP01(PAL 版);configure.py 未定义其他版本,CI 也只构建 RMCP01。仓库由 riidefi/mkw 更名而来,README 的徽章和克隆命令仍使用旧名;CONTRIBUTING.md 和 HACK.md 仍描述早先基于 mkwutil 与 ppcdis 的构建结构,而固定提交中已不含这些内容。产物是 Wii 的 main.dol 和 StaticR.rel,不是 PC 移植。
- 需将自己的 RMCP01 光盘镜像复制到 orig/RMCP01,可接受 ISO(GCM)、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式,config.yml 记录了两个二进制的预期 SHA-1。README 称仓库不含任何游戏素材或汇编;decomp-toolkit 依据仓库提交的、源自游戏的符号表和拆分表,在本地拆分 main.dol 与 StaticR.rel。
- 构建需要 Python 与 ninja,可在 Windows(推荐原生工具)、macOS(需 wine-crossover)或 Linux(x86 上自动下载 wibo,其他架构用 Wine)上进行。configure.py 固定 decomp-toolkit v1.3.0、objdiff v2.4.0、binutils 2.42-1、sjiswrap v1.2.0、wibo 0.6.16 及 20240706 编译器包;游戏、NW4R、EGG、RFL 和 MSL 代码及链接器使用 Metrowerks Wii/0x4201_127,Revolution SDK、TRK、DWC 和 GameSpy 库使用 GC/3.0a5.2。
- 标为 Matching 的目标文件(configure.py 所列 213 个中有 106 个;105 个为 NonMatching,2 个为 Equivalent)由源码编译,各二进制的其余部分取自拆分出的原始文件;默认 ninja 目标会先按 config/RMCP01/build.sha1 校验 main.dol 和 StaticR.rel,再报告进度。CI 在存放原始文件的私有容器中构建 RMCP01,并上传进度报告。审阅时 decomp.dev 在新旧仓库名下均无报告,因此不引用完成度数字;本合集未运行构建。
- 仓库采用 CC0-1.0;lib/gamespy 沿用 IGN Entertainment 为 GameSpy SDK 提供的 BSD 式许可证,任天堂的游戏、光盘内容和下载的编译器各自保留权利。所审来源未确立 AI 或 REA 使用,也不主张运行复现。
关于此条目
- 类型
- 案例
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 目标
- 游戏
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · snailspeed3/mkw · 修订 78572c9
- configure.py GitHub · snailspeed3/mkw · 修订 78572c9
- config/RMCP01/config.yml GitHub · snailspeed3/mkw · 修订 78572c9
- config/RMCP01/build.sha1 GitHub · snailspeed3/mkw · 修订 78572c9
- tools/project.py GitHub · snailspeed3/mkw · 修订 78572c9
- CONTRIBUTING.md GitHub · snailspeed3/mkw · 修订 78572c9
- HACK.md GitHub · snailspeed3/mkw · 修订 78572c9
- .github/workflows/build.yml GitHub · snailspeed3/mkw · 修订 78572c9
- LICENSE GitHub · snailspeed3/mkw · 修订 78572c9
- lib/gamespy/license.txt GitHub · snailspeed3/mkw · 修订 78572c9