ByteNoteByteNote
十年逆向,DOS 版《银河飞将》终于能双人合作了
字

字节笔记本

2026年11月6日 · 约 1 分钟读完

十年逆向,DOS 版《银河飞将》终于能双人合作了

API中转
¥120

1990 年的《银河飞将》(Wing Commander)是 DOS 时代的太空射击标杆,单人剧情经典,双人合作?原程序压根没有这个概念。一位开发者的 Show HN 帖子(248 分)讲了一个十年的故事:逆向这款 DOS 游戏,最终让它在三十年后的今天跑出了双人合作模式。

wcmulti 项目页

思路聪明在「不碰原程序」:wcmulti 不修改游戏本体,而是监视游戏的共享内存区域,读取飞行状态、武器、目标这些实时数据,再据此注入友军与敌情,让两个玩家在同一个战场上各自开各自的机。项目页公开了实现细节与截图,从内存布局分析到多人同步的设计都有记录,对一个 DOS 年代的程序来说,这份逆向文档本身就是教材。

这类项目的价值从来不只是情怀。为老软件「外挂」现代能力(联网、合作、渲染增强)而不改动原二进制,是逆向工程里最克制也最可复用的一条路:原程序保持原样,一切增强都在进程外完成。游戏圈之外,这套思路同样适用于遗留企业软件的现代化改造。

对独立开发者,这个十年故事还有一层隐喻:很多「不可能」只是「还没人做十年」。当然,多数人不会花十年在一个 DOS 游戏上,但把「逆向学习」当成理解系统的手段,这个项目展示了它能走到多远。技术路径也值得留档:不改原二进制、监视共享内存、进程外注入增强,这三件套同样适用于遗留企业软件的现代化改造,原系统保持原样,增强全部外挂。项目页公开了内存布局分析与同步设计的文档,逆向爱好者可以按图索骥。

相关文章

分享: