案例
memory of alessa:进行中的 Silent Hill 3 PS2 匹配反编译
将 Silent Hill 3(《寂静岭 3》,NTSC-U v1.02)的 PS2 可执行文件及 40 个覆盖模块反编译为面向 Metrowerks CodeWarrior 的 C,同时反编译 Silent Hill 2 引擎,借助 2001 年原型版的调试符号为共享代码提供原始命名。构建时尚未匹配的函数仍使用生成的汇编,链接结果以 SHA-256 对照仓库中提交的哈希。README 称项目尚处早期;decomp.dev 报告所列提交时 Silent Hill 3 约 9%、Silent Hill 2 约 58% 的函数已匹配。
- 目标
- 游戏
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 来源复核于
- 证据档位
- C2 有代码和文档,缺演示或下载
- 星标
- 169
- 最近提交
- 2026-11-10
- 主要语言
- C
- 许可(GitHub 识别)
- MIT
GitHub 数据,截至 2026-11-10
证据
- 观察到
- 有代码和文档;未发现下载方式或演示。
- 检查于
- 2026-11-09
使用条件与局限
- 目标为 Silent Hill 3 北美 v1.02(SLUS_206.22)及来自 0.10 VW047-U1 原型版的 Silent Hill 2 引擎。未匹配函数用汇编链接;项目分别报告 718/8,002 和 2,530/4,371 个函数匹配。
- 需自备 Silent Hill 3 的 SLUS_206.22 可执行文件和 B0.MFA 归档;可选的 Silent Hill 2 构建需要原型版 SLUS_202.28 及其覆盖模块。
- 主机为 x86-64 Linux、Apple Silicon macOS 或通过 WSL 的 Windows,需 Python 3、wget 和构建工具。make 下载 Silent Hill 3 所用 CodeWarrior PS2 3.0.3 或 Silent Hill 2 所用 2.4、wibo、PS2 binutils v0.10 和 objdiff,并使用 mwccgap 子模块。
- diff.sh 用 SHA-256 核对重建的可执行文件和覆盖模块;CI 之外不匹配不会使 make 失败。CI 使用私有容器镜像。
- 项目代码采用 MIT;游戏和素材另有权利约束。十五个文件带有 Sony 保密声明,vsm 目录包含反汇编的 VU 微码。项目从 2026-09-26 起禁止 LLM 参与贡献。
引用
BibTeX
@misc{silent-hill-3-memory-of-alessa-decomp-case,
title = {{memory of alessa: an in-progress Silent Hill 3 PS2 matching decompilation}},
howpublished = {\url{https://github.com/dreamingmoths/memory-of-alessa}},
url = {https://github.com/dreamingmoths/memory-of-alessa},
urldate = {2026-10-19},
note = {Awesome REA entry: \url{https://awesomerea.org/zh/resources/silent-hill-3-memory-of-alessa-decomp-case/}}
}纯文本
memory of alessa: an in-progress Silent Hill 3 PS2 matching decompilation。https://github.com/dreamingmoths/memory-of-alessa(访问于 2026-10-19)。Awesome REA 条目:https://awesomerea.org/zh/resources/silent-hill-3-memory-of-alessa-decomp-case/
有帮助?在 GitHub 上为 Awesome REA 加星2.4k
关于此条目
说明已依据一手来源复核。
一手来源
- README.md GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- docs/development.md GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- docs/llm-policy.md GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- Makefile GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- silent-hill-3/Makefile GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- silent-hill-2/Makefile GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- tools/scripts/diff.sh GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- silent-hill-3/config/SLUS_206.22/checksum.sha GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- .github/workflows/build.yaml GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- .gitmodules GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- include/sce GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- vsm GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- LICENSE GitHub · dreamingmoths/memory-of-alessa · 修订 28cb323
- https://decomp.dev/dreamingmoths/memory-of-alessa