近期开始回忆杀状态,在 Steam 上购买并游玩了一些以前玩过的经典小游戏,其中包括来自 PopCap 宝开出品的《吞食鱼:2》。

可能人老了吧,新的游戏都玩不动了,要么烧脑要么太肝,还是这种休闲小游戏玩法简单又上头!

当时这部作品也有人将它翻译成《大鱼吃小鱼》,其中“吞食鱼”这个说法来源自《幻想游戏》系列。它也推出过很多“不同版本”的续集(其实就是一个整合包),汇聚了很多来自不同厂商的休闲游戏。

吞食鱼 2.webp

游戏玩到了,BGM 也在反复洗脑了,那么如何将游戏里面的音乐提取出来继续听呢。了解博主过去黑历史的朋友应该知道,当时老喜欢用各种方式去提取各种游戏的资源素材了,其中《摩尔庄园》、《疯狂农场》等游戏都是我的常顾对象,收集各种游戏的 BGM 并且偶尔拿出来播放算是我的一个小众爱好。

我找到了当年的一些素材提取工具(文件的修改日期为 2015 年,实际可能更早),其中有一款工具叫做 XMPlay,它可以用于 MO3 音乐的播放和提取。

MO3 是一种音频文件格式,主要用于模块化音乐,类似于其他 MOD 格式(如 IT、XM、S3M 等)。它由 Ian Luck 为 BASSMOD 引擎开发,MO3 文件的一个显著特点是它使用 MP3 或 Ogg Vorbis 格式来编码音频样本,这使得文件体积相对较小,同时能够保持较高的音质

参考:MO3 是什么格式,为什么现在几乎没人使用了

对于模块化音乐,我的理解就是它将每一个音乐节拍的声音都作为一个片段存储,播放过程则是将所有片段循环复用,有点类似于 MID 音频格式,但是 MID 格式外放出来的音色受操作系统、播放软件等的影响较大

时隔已久,我甚至都忘记了当年是怎么使用它提取音乐了,一番研究后总算是找到了办法。

顺带一提,我 Google 之后得到的结果往往都是要你付费购买某些软件,几乎没什么中文文章提到过这些东西,看来确实有些小众啊,那么我就水一篇文章简单记录一下

首先从 un4seen 下载并打开 XMPlay 播放器,这里我使用的旧版本,界面稍微比较复古。

XMPlay 播放器界面.webp

正常打开一首 MO3 音乐播放(吞食鱼游戏目录下有个 music 文件夹里面就是),此时从播放器主界面右键 -> Options -> Output -> Output Device 选择 "WAV Writer" -> Apply

XMPlay 播放器导出界面.webp

此时点击音乐播放按钮,就会弹出对应的另存为界面,依次确认导出,所有的音乐都会导出成功。

如果导出的音乐存在部分内容丢失或中断的情况,可能是因为你在播放器已经开始播放了,点击“停止播放”按钮再试一次即可

目前博主已知使用 MO3 格式作为背景音乐解决方案的游戏包括:

  • 吞食鱼:2(Feeding Frenzy)
  • 幻幻球(Peggle)
  • 仓鼠球(Hamster Ball)

理论上多数同期游戏都采用了这个方案,性价比特别高,比存储完整的 MP3、OGG 等格式都小,保真度还高。可惜从宝开《植物大战僵尸》等作品开始,都采用了 PAK 打包普通的音乐格式,此方案不再流行,也算是时代的眼泪了吧!