无尽太空(Endless Sky):2D 沙盒太空探索与贸易战斗游戏
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
vibe-jet · cedrickchee/vibe-jet
Vibe Jet 是一个基于浏览器的 3D 多人飞行游戏项目,采用街机式玩法;仓库称其使用 Gemini 2.5 Pro 实验模型并通过“vibe coding”方式创作,主要语言为 HTML。项目主题还涉及 LLM 评估、飞行模拟与游戏开发,完整玩法范围与多人服务实现待...
Severed Chains 是《龙骑士传说》(The Legend of Dragoon)的社区逆向工程移植项目,它把自己明确定位为“不是模拟器”:项目把原主机上的汇编代码反汇编出来,再逐段改写成 Java 高层代码,最终让这款 PS1 时代的回合制 RPG 直接以 JVM 应用的形式运行在 PC、Mac、Linux 与 Steam Deck 上。根据 README 的说明,代码库本身不包含任何官方的《龙骑士传说》代码或素材,游戏资源是在运行时从用户自己提供的 ISO/BIN 光盘镜像中提取的,因此使用者必须先拥有合法的游戏镜像才能启动。
从完成度来看,项目组给出的当前进度相当直接:游戏已可完整通关,并称没有已知的崩溃问题;在原作基础上修复了许多原有的 bug;同时补充了不少原版并不存在的新功能与选项;还提供了一套仍在持续扩充的 Modding API,方便社区制作模组。换句话说,玩家拿到的不是一个只能跑到某个进度的技术验证品,而是一个从标题画面走完整流程的可游玩成品,这一点对于逆向重写类项目来说并不常见。
输入设备的适配是它区别于很多同人类项目的细节之一。README 写明手柄与游戏控制器得到完整支持,包括震动反馈;同时支持键盘操作,菜单中可用鼠标操作,默认按键方案可以直接在选项菜单里查看。控制器会被自动侦测,项目声称开箱支持 1800 种以上的控制器,如果遇到不在控制器数据库中的设备,可以联系开发者补充。文档同时提示了一个已知问题:使用 DS4windows 之类的控制器模拟层可能出状况,若确实要用,需要保证控制器没有被隐藏,并在开始游戏前关闭 DS4windows。
在分发与运行维护方面,Severed Chains 做了自动更新机制:当有新版本时,标题画面会出现“Update Available”按钮,点击后自动下载并应用更新,并且更新过程会保留玩家的存档、模组、ISO 镜像与配置文件,更新完成后重启游戏即可生效。它还考虑到搭载集成显卡与独立显卡的双显卡笔记本,提供了 GPU 偏好设置:Linux 与 Steam Deck 上会根据 launch.conf 的配置自动应用;Windows 上则有两种做法,一是运行可选的 gpu-optional-setup.bat 按提示完成一次性配置,二是手动在 Windows 的“显示 > 图形”设置里把 jdk25\bin\java.exe 添加为桌面应用并选定节能或高性能 GPU。在类 UNIX 系统上,launch.conf 中的 GPU_PREFERENCE 取 0 表示交由系统自动决定,取 1 表示使用独立显卡,取 2 表示使用集成显卡。
想参与代码或自行构建的人也有一条清晰的路径:需要先安装带命令行集成的 Git 客户端,把仓库克隆到本地;将《龙骑士传说》各张光盘的 ISO 或 BIN 放进 isos 目录;用 IDE 打开本地仓库(推荐 IntelliJ);Gradle 会自动配置工程并下载依赖,如果没有自动触发,可以在 Gradle 面板手动刷新,若失败需先排查错误(缺少命令行 git 也可能导致问题);最后直接运行项目即可。README 特别注明运行需要 Java 25。对模组作者,项目指向 Discord 的 #modding 频道作为交流入口。
从学习角度看,这个仓库的价值主要在工程侧而非玩法侧:它是一个规模不小的 Java 应用,示范了如何把一份从汇编反推出来的旧游戏逻辑组织成可维护的高层代码;如何在没有现成引擎的情况下自行搭建渲染、音频、输入(包括大规模控制器映射表)、存档与配置持久化等基础模块;如何实现带“保留用户数据”约束的增量自动更新;以及如何为既有游戏外挂式地设计一套 Modding API 并持续迭代。需要提醒的是,使用门槛并不低:必须自备光盘镜像与 Java 25 环境,Windows 多显卡机器上的 GPU 选择要做一次性配置,控制器模拟软件可能干扰识别;此外 README 中也特意声明本项目没有使用 AI 生成。对想研究逆向工程、老游戏移植与 Java 大型项目结构的人,这是一个很好的实读案例。
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...