用这个开源项目在 Linux 上玩复古视频游戏
创始人
2024-03-02 07:23:57
0

ScummVM 是在现代硬件上玩老式视频游戏的最直接的方法之一。

玩冒险游戏一直是我使用计算机经验的一个重要部分。从最早的基于文本的冒险游戏到 2D 像素艺术、全动态视频和 3D 游戏,冒险游戏类型为我提供了很多美好的回忆。

有时我想重温那些老游戏,但它们很多都是在 Linux 出现之前发布的,那么我如何去重玩这些游戏呢?我使用 ScummVM,说实话,这是我最喜欢的开源项目之一。

什么是 ScummVM

ScummVM

ScummVM 是一个设计用来在现代硬件上玩老式冒险游戏的程序。ScummVM 最初是为了运行使用 卢卡斯艺术 LucasArt 的 疯狂豪宅脚本创作工具 Script Creation Utility for Maniac Mansion (SCUMM)开发的游戏,现在支持许多不同的游戏引擎。它可以支持几乎所有经典的 雪乐山娱乐 Sierra On-Line 和卢卡斯艺术的冒险游戏,以及其他发行商的大量冒险游戏。ScummVM 并不支持所有的冒险游戏(目前),但它可以用来玩数百种冒险游戏。ScummVM 可用于多个平台,包括 Windows、macOS、Linux、Android、iOS 和一些游戏机。

为什么使用 ScummVM

有很多方法可以在现代硬件上玩老游戏,但它们往往比使用 ScummVM 更复杂。DOSBox 可以用来玩 DOS 游戏,但它需要调整设置,使其以正确的速度进行游戏。Windows 游戏可以用 WINE 来玩,但这需要游戏及其安装程序都与 WINE 兼容。

即使游戏可以在 WINE 下运行,一些游戏仍然不能在现代硬件上很好地运行,因为硬件的速度太快了。这方面的一个例子是《 国王密使 6 King’s Quest VI 》中的一个谜题,它涉及将点燃的鞭炮带到某个地方。在现代硬件上,鞭炮爆炸的速度太快了,这使得在角色不死很多次的情况下不可能到达正确的位置。

ScummVM 消除了其他玩复古冒险游戏的方法中存在的许多问题。如果是 ScummVM 支持的游戏,那么它的配置和玩都很简单。在大多数情况下,将游戏文件从原始游戏光盘复制到一个目录,并在 ScummVM 中添加该目录,就可以玩该游戏了。对于多张光盘上的游戏,可能需要重命名一些文件以避免文件名冲突。需要哪些数据文件的说明以及任何重命名的说明都记录在 每个支持的游戏 的 ScummVM 维基页面上。

ScummVM 的一个奇妙之处在于,每一个新版本都会增加对更多游戏的支持。ScummVM 2.2.0 增加了对十几种互动小说解释器的支持,这意味着 ScummVM 现在可以玩数百种基于文本的冒险游戏。ScummVM 的开发分支应该很快就会变成 2.3.0 版本,它整合了 ResidualVM 对 3D 冒险游戏的支持,所以现在 ScummVM 可以用来玩《 冥界狂想曲 Grim Fandango 》、《神秘岛 3:放逐者Myst III: Exile》和《 最长的旅程 The Longest Journey 》。其开发分支最近还增加了对使用 Adventure Game Studio 创建的游戏的支持,这为 ScummVM 增加了成百上千的游戏。

如何安装 ScummVM

如果你想从你的 Linux 发行版的仓库中安装 ScummVM,过程非常简单。你只需要运行一个命令。然而,你的发行版可能会提供一个旧版本的 ScummVM,它不像最新版本那样支持许多游戏,所以要记住这一点。

在 Debian/Ubuntu 上安装 ScummVM:

sudo apt install scummvm

在 Fedora 上安装 ScummVM:

sudo dnf install scummvm

使用 Flatpak 或 Snap 安装 ScummVM

ScummVM 也可以以 Flatpak 和 Snap 的形式提供。如果你使用这些方式之一,你可以使用以下命令来安装相关的版本,它应该总是 ScummVM 的最新版本。

flatpak install flathub org.scummvm.ScummVM

snap install scummvm

编译 ScummVM 的开发分支

如果你想尝试 ScummVM 尚未稳定的开发分支中的最新和主要的功能,你可以通过编译 ScummVM 的源代码来实现。请注意,开发分支是不断变化的,所以事情可能不总是正确的。如果你仍有兴趣尝试开发分支,请按照下面的说明进行。

首先,你需要为你的发行版准备必要的开发工具和库,这些工具和库在 ScummVM 维基上的 编译 ScummVM/GCC 页面列出。

一旦你安装了先决条件,运行以下命令:

git clone 
cd scummvm
./configure
make
sudo make install

向 ScummVM 添加游戏

将游戏添加到 ScummVM 是你在游戏前需要做的最后一件事。如果你的收藏集中没有任何支持的冒险游戏,你可以从 ScummVM 游戏 页面下载 11 个精彩的游戏。你还可以从 GOG.com 购买许多 ScummVM 支持的游戏。如果你从 GOG.com 购买了游戏,并需要从 GOG 下载中提取游戏文件,你可以使用 innoextract 工具。

大多数游戏需要放在自己的目录中(唯一的例外是由单个数据文件组成的游戏),所以最好先创建一个目录来存储你的 ScummVM 游戏。你可以使用命令行或图形化文件管理器来完成这个工作。在哪里存储游戏并不重要(除了 ScummVM Flatpak,它是一个沙盒,要求游戏存储在 ~/Documents 目录中)。创建这个目录后,将每个游戏的数据文件放在各自的子目录中。

一旦文件被复制到你想要的地方,运行 ScummVM,并通过点击“Add Game…”将游戏添加到收藏集中,在打开的文件选择器对话框中选择适当的目录,并点击“Choose”。如果 ScummVM 正确检测到游戏,它将打开其设置选项。如果你想的话,你可以从各个标签中选择高级配置选项(也可以在以后通过使用“Edit Game…”按钮进行更改),或者你可以直接点击“OK”,以默认选项添加游戏。如果没有检测到游戏,请查看 ScummVM 维基上的 支持的游戏 页面,以了解特定游戏的数据文件可能需要的特殊说明的细节。

现在唯一要做的就是在 ScummVM 的游戏列表中选择游戏,点击“Start”,享受重温旧爱或首次体验经典冒险游戏的乐趣。


via: https://opensource.com/article/21/4/scummvm-retro-gaming

作者:Joshua Allen Holm 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

开源版Genie 3世界模...
机器之心报道 作者:泽南、杨文 国产开源版 Genie 3 问...
2025-08-19 11:12:44
信AI排行榜,不如信它们的...
文章开头问大家一个问题,如果想知道最近哪个 AI 牛,你会怎么查?...
2025-08-17 06:12:54
Switch 2创意手柄座...
边玩游戏边吃薯条很不方便?没关系,已经有高能人士帮玩家们想到解决方...
2025-07-30 13:13:55
一句话就能生成「我的世界」...
在 2025 世界人工智能大会(WAIC)现场,腾讯正式发布并开源...
2025-07-27 18:43:29
三星Galaxy AI大幅...
你距离通关最后一轮或打破个人最佳纪录只有一步之遥,这款游戏你已经苦...
2025-07-25 17:13:56
今年 Steam 平台约有...
IT之家 7 月 19 日消息,前V社顾问 Ichiro Lamb...
2025-07-19 22:42:16

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...