scummvm · scummvm/scummvm
ScummVM 是一个用 C++ 编写的开源游戏引擎重实现,跨多平台。它替换游戏自带的执行文件,让玩家在更多设备上运行经典点击式冒险游戏、文字冒险和 RPG,但需自备游戏数据文件。项目最初为 LucasArts 的 SCUMM 引擎游戏(如《疯狂豪宅》《...
ScummVM 是一个以虚拟机方式运行经典冒险游戏的运行环境。README 的定位很明确:只要你自己持有游戏数据文件,就可以借助 ScummVM 游玩经典的图形点击式冒险游戏、文字冒险游戏以及 RPG。它不分发游戏本体,也不修改游戏内容,而是用自身的可执行文件替换原游戏随盘附带的启动程序,从而让同一份游戏数据在更多设备上运行起来。
项目主体使用 C++ 编写,仓库即 ScummVM 的主代码库,官网、兼容性列表、下载页、进度报告与捐助信息都汇总在 https://www.scummvm.org/。
ScummVM 的名字来自两段历史:
项目最初确实是为运行 LucasArts 的 SCUMM 引擎游戏而设计,但随着时间推移,支持范围不断扩展,逐步覆盖了大量其他作品。README 中点名的代表性标题包括 Broken Sword、Myst 与 Blade Runner,并提到还有大量不那么知名、值得挖掘的作品。完整支持列表以官方 wiki 的 Supported Games 分类页为准,页面也提醒:不在该列表或兼容性列表中标记为可通关的游戏,其已知问题无需再报。
README 为「没耐心」的玩家准备了极简流程:
小技巧:想一次性添加多个游戏,可点击 Add game 按钮上的小箭头并选择 Mass Add。此时同样让你选一个目录,但 ScummVM 会递归搜索所有子目录中的受支持游戏。
问题追踪使用 ScummVM Issue Tracker(bugs.scummvm.org),用 GitHub 账号登录即可。提交前请确认:
报告正文建议包含:ScummVM 版本、缺陷细节与复现步骤(尽量附日志、截图等)、游戏语言、游戏版本(例如 talkie 或 floppy)、运行平台与编译器(例如 Win32、Linux 或 FreeBSD)、可附上的存档;如果问题是近期才出现的,请补充最后一个正常版本与第一个出问题的版本,便于通过 diff 快速定位。另外,一个 issue 只报一个问题,混在一起会难以跟踪状态。
NEWS.md 提供详尽的版本变更记录。ScummVM 是一个体量很大的 C++ 跨平台项目,适合作为「引擎逆向重实现」类课题的观察样本:可以重点看它如何用统一的可执行文件替换原游戏启动器、如何组织多款游戏的兼容性配置与选项对话框,以及如何借助 wiki/兼容性列表管理庞大的支持矩阵。动手前建议先从官网下载稳定版体验一次「添加游戏 → 启动」的完整流程,再进入源码。
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
id Software 公开的初代 DOOM 源代码,限非盈利使用。README 说明:运行仍需...
id Software 以 GPL 许可证发布的《雷神之锤3竞技场》(Quake III Arena)源...