他把十五年的ROM收藏从十几个移动硬盘里解放出来,现在找游戏像在Netflix选片一样直观。
作者是个老派模拟器玩家,收藏整理得相当用心。但讽刺的是,这些文件始终躺在各种外置存储设备里——保存得整整齐齐,却根本没法用。想玩个Dreamcast或NDS游戏?得先翻找对应硬盘、连上电脑、启动模拟器。 friction 高到让人放弃。
他意识到自己拥有的只是"档案",而非"游戏库"。既然照片用Immich、电影用Plex都能把冷数据变成可交互的内容,游戏为什么不行?这就是RomM进入他视野的原因。
从文件夹到真正的游戏库
安装RomM之前,他的游戏库本质上就是按平台分组的目录结构。这本来没问题,直到你面对:五花八门的命名规则、多碟PlayStation游戏、重复版本、区域标签……十五年积累下来的"数字 cruft",让找游戏变成体力活。
RomM扫描文件夹后,开始识别平台、关联文件、清理组织。最终呈现的不是"Super Metroid (Japan, USA) (En, Ja)"这种文件名,而是Plex风格的页面:封面图、描述、发售信息、平台分类,还有嵌入的YouTube视频和游戏进度工具。
现在所有游戏都扔在NAS上,不用想某个标题存在哪。直接搜索就行——和Plex解决的是同一个发现难题。没人想浏览存储路径,RomM给的是一个真正的库。
元数据管理一直是痛点。作者试过各种工具,包括号称解决类似问题的树莓派定制方案,但元数据始终很娇气。接入IGDB后,RomM能拉取包装盒艺术、截图、发行商信息、发售日期、类型标签——基本上是你期望现代游戏库具备的一切。
更关键的是,这一切都在本地运行。没有订阅费,没有服务关停风险,数据完全属于自己。
浏览器里直接玩
组织功能已经够好,但RomM的真正杀手锏是EmulatorJS集成。配置完成后,可以直接在浏览器里启动游戏,无需本地模拟器。
作者测试了从Atari到PS1的各种平台,大部分运行流畅。性能取决于设备,但在现代硬件上,16位及更早的游戏基本没问题。设置需要一点功夫——要配置核心、BIOS文件、控制映射——但完成后体验相当优雅。
这对他的工作流程是颠覆性的。以前想在笔记本上快速玩两把,得先确认ROM在哪、复制过来、配置模拟器。现在打开浏览器、登录RomM、点击即玩。游戏进度通过模拟器的存档状态保存,可以在设备间同步。
当然有限制。高性能模拟(如PS2、GameCube、Switch)在浏览器里不太现实,这些场景RomM会回退到传统方式:提供下载链接,让你在本地模拟器打开。这是务实的妥协,而非缺陷。
自托管的隐性成本
RomM不是开箱即用的消费级产品。需要Docker知识、NAS或服务器、以及愿意折腾的心态。作者用的是Unraid NAS,安装通过Community Applications插件完成,相对顺畅。但配置扫描路径、IGDB API密钥、EmulatorJS集成,仍然需要阅读文档和反复调试。
IGDB集成值得一提。这是RomM元数据能力的核心,但需要Twitch开发者账号和API密钥。设置过程对非技术用户不够友好,不过一次配置后基本无需维护。
另一个细节:ROM文件的命名规范。RomM的识别算法相当聪明,但面对特别混乱的收藏(比如作者那种十五年积累的),仍然需要手动整理或批量重命名。作者花了一个周末做这件事,之后全自动运行。
谁该考虑这个方案
作者明确划定了适用人群。如果你只有几十个ROM,直接存在电脑上、用本地前端(如RetroArch或LaunchBox)更简单。如果你追求零配置,像Antstream或Xbox Game Pass这样的流媒体服务更省事。
但如果你是:收藏规模以TB计、已经在用NAS、对数据主权有执念、愿意用前期配置换取长期自主——RomM几乎是唯一的选择。它填补了Plex模式在游戏领域的空白。
作者特别提到一个被忽视的场景:多人共享。他的RomM实例配置了多用户支持,家人和朋友可以各自拥有游戏进度、收藏列表、游玩统计。这在传统本地模拟器设置里几乎不可能实现。
技术架构的启示
RomM的设计选择反映了一个更广泛的工具趋势:把"文件系统"抽象成"服务层"。作者的其他自托管工具——Immich处理照片、Plex处理视频、Audiobookshelf处理有声书——遵循同一范式。数据存在NAS上,但交互通过专门的、优化的界面完成。
这种架构的优势在复古游戏场景尤为明显。ROM文件本身是小众格式,需要特定知识才能使用。RomM做的是翻译工作:把技术细节(核心选择、BIOS依赖、控制配置)封装在易用的界面之后。
EmulatorJS的集成尤其巧妙。它不是在服务器端运行游戏(那需要昂贵的GPU和复杂的串流基础设施),而是把模拟器核心和ROM文件发送到浏览器,利用客户端的算力。这解释了为什么设置需要指定哪些平台启用浏览器播放——服务器只负责文件传输,实际模拟在本地完成。
对作者而言,这套系统的价值在于"可维护性"。十五年的收藏以前是个负担:备份、整理、迁移都令人头疼。现在它是一个活的库,持续被使用、被享受、被扩展。这种从"囤积"到"使用"的心态转变,是自托管工具承诺但很少真正兑现的东西。
作者最后提到一个细节:RomM的统计页面显示他已经在这个库上花费了超过400小时。这个数字让他意识到,好的工具不仅改变行为,还改变自我认知——他不再只是"有个游戏收藏的人",而是"活跃的玩家"。
这种身份转换的微妙之处,可能是产品设计的最高境界。
热门跟贴