OpenDriver2/REDRIVER2

GitHub: OpenDriver2/REDRIVER2

将 PlayStation 游戏 Driver 2 的 MIPS 机器码完整逆向还原为 C 源码并实现跨平台原生运行的开源逆向工程项目。

Stars: 1264 | Forks: 71

# REDRIVER2 (逆向工程版 Driver 2) 在 Windows 上运行的游戏: ![](https://i.ibb.co/2q1pp06/red2.png) 在 Firefox Web 浏览器中运行的游戏: ![](https://i.ibb.co/JxfC5xX/aaa.png) 在 PlayStation(模拟)上运行的游戏 ![](https://i.ibb.co/ydLsK9z/aaa.png) 构建状态(Windows 和 Linux): [![构建状态](https://ci.appveyor.com/api/projects/status/9abepvls6jexapqy/branch/master?svg=true)](https://ci.appveyor.com/project/SoapyMan/redriver2-10jm8/branch/master) ### 简介 - 这是一个原版游戏——它经过了仔细且完整的反汇编,并从 MIPS 逆向翻译回了 C 语言(Memory Card 菜单除外)——***不涉及任何模拟*** - 游戏相较于原版 PlayStation 版本有了*显著改进*,修复了原始 Bug,并完善了一些未完成的玩法内容 - 它现在可以在 Windows、Linux 上运行,并且即将支持其他平台(包括向 PlayStation 的反向移植),同时利用 [Psy-X (Psy-Cross)(前身为扩展版 TOMB5 模拟器)](https://github.com/OpenDriver2/REDRIVER2/tree/master/src_rebuild/PsyX)作为 PlayStation 的移植层 - 基础 Mod 支持——通过 [OpenDriver2Tools](https://github.com/OpenDriver2/OpenDriver2Tools) 提供纹理和模型替换功能 ### 这是如何做到的? - 所有信息(变量、类型和函数名)均从调试符号(.SYM)、driver_psx_level 和 DLE 中获取 - 使用 Ghidra 项目(基于意大利语 SYM)来处理 overlay 和简单的代码复杂分支——半自动反编译 - 当遇到 Ghidra 无法妥善处理的情况时,使用基于西班牙语 SYM 的 IDB——手动反编译(主要是 GTE 代码) 历史: - 2019年2月19日 - 创建了基础框架,进行了长达一年的准备工作 - 2020年3月28日 - 开始重新实现游戏,游戏开场动画可运行 - 2020年9月19日 - 游戏重新实现完成 - 游戏已完全可玩 - 2021年1月15日 - 代码重构完成 ### 如何使用 请参阅 [Wiki/安装说明](https://github.com/OpenDriver2/REDRIVER2/wiki/Installation-instructions) ### 如何贡献? 请参阅 [为项目做贡献](https://github.com/OpenDriver2/REDRIVER2/wiki/Contributing-to-project) 页面 ### 未来计划 - ***OpenDriver2*** 项目——完全重写,增加大量新功能,例如*新渲染器和声音引擎、Lua 脚本、Driver 1 内容支持* ### 致谢 - **SoapyMan** - 首席逆向工程师和程序员 - **Fireboyd78** - 代码重构与改进 - **Krishty, someone972** - 早期格式解码 - **Gh0stBlade** - 作为 Psy-Cross 基础的 HLE 模拟器代码 [(链接)](https://github.com/TOMB5/TOMB5/tree/master/EMULATOR) - **Ben Lincoln** - [This Dust Remembers What It Once Was](https://www.beneaththewaves.net/Software/This_Dust_Remembers_What_It_Once_Was.html) (*TDR*) - **Stohrendorf** - [Symdump](https://github.com/stohrendorf/symdump) 工具
标签:Driver 2, Ghidra, IDA, MIPS汇编, PlayStation, PSX, Psy-X, URL提取, Wayback Machine, Web浏览器, 云资产清单, 反汇编, 反编译, 复古游戏, 客户端加密, 开源游戏, 游戏Modding, 游戏移植, 游戏逆向, 源码还原, 经典游戏重制, 调试符号, 软件重构, 逆向工程, 驱动程序2