DOS游戏"F-15 Strike Eagle II"逆向工程项目需要DOS测试飞行员
摘要
1989年DOS游戏F-15 Strike Eagle II的逆向工程项目已完成C代码重构,现寻求测试飞行员来查找可执行文件中的错误,这些文件可与原始游戏文件一起使用。
暂无内容
查看缓存全文
缓存时间: 2026/06/20 17:16
# 空军需要你!
来源:https://neuviemeporte.github.io/f15-se2/2026/06/20/needyou.html
\(*本文是系列文章(https://neuviemeporte.github.io/category/f15-se2.html)的一部分,主题是我的业余项目:通过对原始二进制文件进行逆向工程,还原1989年游戏《F-15 Strike Eagle II》(https://neuviemeporte.github.io/f15-se2/2022/06/05/origins.html)的C语言源代码。*\)
我必须承认,项目目前的进展速度令人难以置信。一个多月前,我们似乎还需要花费数年时间,将汇编代码费力地重写成C语言,才能让第二个游戏可执行文件(`egame`)看起来像点样子,而第三个(`end`)还遥遥无期。然而,就在撰写本文时,所有可执行文件的C代码都已重建完成,所有数据已从汇编移至C语言,大部分纯汇编代码已由C语言实现的功能替代,大多数例程和数据结构也被赋予了有意义的名称。我们正在考虑在不久的将来,从仓库分出一个分支用于移植项目。
但是,这种在完整性和能力上的爆炸式增长也意味着,我们正在放弃仅仅检查重构后的操作码是否匹配的相对平静的领域,而是需要在实际中维持一个可运行的游戏。工具链能够确保随着我们持续修改,操作码与原版保持一致,但它无法捕捉所有错误,尤其是那些与数据布局有关的错误。
## 招募试飞员
鉴于社区参与如何推动了项目的发展,我希望我们能请求更多一点帮助。F-15 Strike Eagle II 的重建项目现已开放,正在招募试飞员进行数字飞行,以找出我们可能遗漏的错误。目前,最新版本(https://github.com/neuviemeporte/f15se2-re/releases/tag/v0.9.1)是`v0.9.1`,它应与原版游戏的`451.03`版本(包含沙漠风暴扩展包)配合使用——只需将可执行文件放入游戏文件夹,替换原版文件(请提前备份),可能还需移除原版`f15.com`,以确保不会在启动时使用旧版代替新版`f15.exe`,然后起飞即可。它不会进入设置界面,而是默认使用MCGA/VGA显示模式,无声音,无摇杆。但游戏的所有三个部分(任务简报、飞行和任务讲评)应能正常工作。
如果*无法*正常工作,我们欢迎提交错误报告(https://github.com/neuviemeporte/f15se2-re/issues)。我们正在寻找崩溃、图形异常、按键失灵等问题。如果方便,请附上截图(在dosbox中按`Ctrl+F5`)。描述问题发生前的操作,将有助于我们重现问题并希望开发出修复方案。
值得注意的是,这是一次逐错误还原,因此原版游戏中存在的任何行为都需要保持不变(暂时)。原版游戏存在一些3D物体消失、飞机倒飞且燃油耗尽时向天空坠落等问题。因此,在报告问题之前,最好确认该问题是否在原版中也存在。保留一份原版副本作为参考是个好主意。
感谢每一位决定提供帮助的人,也感谢迄今为止为项目做出贡献的所有人,使项目能够达到这个里程碑。我期待着下一个里程碑,也很高兴大家能一同参与这段旅程。
相似文章
Captain Bible 逆向工程
Peter Kelly 的仓库记录了 1990 年代 DOS 游戏《Captain Bible in the Dome of Darkness》的逆向工程,提供了可重现的 QEMU 环境、研究笔记和洁净室引擎规范。
Show HN:我逆向工程了《Test Drive III》(1990年DOS游戏)的世界地图
对1990年DOS游戏《Test Drive III》的地图进行了逆向工程和提取,提供了在线查看器和OBJ导出功能。该项目包含文件格式规范及提取工具。
最普通的 C++ 项目:在 GTA 3 中编码 B2 隐形轰炸机
一位开发者解释了为 Mac 构建开源 RE3 项目、修复鼠标输入 bug,并计划在 GTA 3 中添加 B2 隐形轰炸机,重点讨论软件工程方法论。
Ogre Battle 64 重编译项目进度99.05%
本项目旨在使用N64Recomp工具链将N64游戏Ogre Battle 64静态重编译为原生PC可执行文件,主要代码段已完全重编译。工作主要由DeepSeek v4/v4.1 Flash AI模型完成。
Voyager 1 FDS 计算机模拟器
一个开源的 Voyager 1 飞行数据子系统模拟器,重现了具有 8K 内存的 806.4 kHz 计算机,并包含扫描的 JPL 原始文档。