DJCJ Arcade Vibe 项目

专为 macOS 打造的原生应用,为用户提供了一个优雅的图形界面来浏览和启动自己的 MAME 游戏收藏

DJCJ Arcade 是一款专为 macOS 打造的原生应用,为用户提供了一个优雅的图形界面来浏览和启动自己的 MAME 游戏收藏。MAME(Multiple Arcade Machine Emulator)是开源街机模拟器领域的标杆项目,支持运行几乎所有年代久远的街机游戏、家用电脑和游戏主机,涵盖了大约五万种硬件平台和十四万物程序列。然而 MAME 本身没有友好的前端界面,所有游戏在内部都以短名称存储(如 sprint2、qbert、a2600),用户如果不知道确切名称就几乎无法找到想玩的游戏。DJCJ Arcade 正是来解决这个问题的——它读取用户本地安装的 MAME 目录,将所有游戏以真实名称、年份、厂商、封面图和运行视频的方式呈现出来,让用户能够真正找到、浏览并启动自己想玩的游戏。

项目简介

DJCJ Arcade 的核心定位是「给 MAME 装上一扇明亮的门」。它不是一个模拟器,而是一个前端浏览和启动工具——游戏运行的还是 MAME本身,但找游戏、看游戏、启动游戏的体验被彻底重新设计。应用读取用户本地的 MAME 安装目录,始终确保显示内容与用户实际安装的版本完全匹配,不存在其他游戏数据库同步延迟或版本错位的问题。

核心功能

智能游戏目录浏览

DJCJ Arcade 的中间主区域是一个功能完整的游戏列表视图。用户可以按名称、年份、厂商等维度对列表排序,还可以叠加第二层排序(例如先按厂商排序、再按年份排序)。内置过滤功能可以排除克隆体(clone)和 MAME 当前运行效果不佳的游戏。对于 Atari 2600、Game Boy 这种「平台型」硬件,DJCJ Arcade 支持展开查看该平台下所有游戏的完整列表,而不只是母平台的一行记录。搜索框支持跨全目录名称搜索。

知道你真正拥有什么

MAME 的游戏目录包含了所有它支持的游戏,但这不等于用户本地实际拥有的文件。DJCJ Arcade 维护了一个「拥有」(Have)状态列,并在界面上提供了「仅显示能运行的游戏」的过滤开关。用户可以让 MAME 审计整个收藏夹,对任意一款游戏,可以精确查看它需要哪些文件、已有哪些文件、文件存放在哪里、MAME 认为文件是否可用。这彻底解决了「我记得下载过这个游戏但不知道能不能玩」的困扰。

收藏夹与智能收藏

用户可以将游戏和平台分组到收藏夹中,收藏夹可以嵌套文件夹,一个游戏可以出现在多个收藏夹里。重点功能是「智能收藏」(Smart Collection):用户定义一个筛选条件(例如「 Atari 在 1970 到 1989 年间发布的所有游戏」),智能收藏夹会自动保持最新状态,无需人工维护。每次用户获取新的 ROM 文件,符合条件的游戏会自动出现在对应的智能收藏夹中。

右侧详情面板

选中任意游戏后,右侧面板显示丰富的补充资料:游戏运行短视频、原始说明书扫描件、封面图、宣传海报,以及游戏的详细参数信息。这些资料大部分来自 MAME 社区维护的独立媒体包,虽然是可选下载,但有了它们游戏库变得真正可用、好看。用户可以在设置中选择需要显示哪些类型的资料以及它们的排列顺序。

启动代码(Launch Codes)

这是 DJCJ Arcade 最具技术深度的功能之一。MAME 的设置体系是分层的:全局设置 → 硬件平台设置 → 芯片组设置 → 单个游戏设置,每一层都可以覆盖上一层的配置。当用户想调整某个游戏的显示效果时,对应的设置可能在任意一层中,层层覆盖的关系非常复杂,普通用户根本无从下手。Launch Codes 将指定游戏的完整设置栈全部展开,按顺序显示所有层级的配置,用颜色区分哪些层实际生效、哪些层为空。用户可以直接编辑任意层的设置,并保存为命名版本(例如「矢量游戏加粗光束」),方便在不同的视觉风格之间切换。

右侧面板设置

对于每次启动都要调整的设置(如全屏、是否拉伸画面、艺术边框、CRT 扫描线效果),DJCJ Arcade 在主界面底部提供了快捷面板,无需进入设置文件即可调整,且可以针对单次启动调整。这些设置同样支持保存为命名预设,方便不同类型的游戏使用不同的视觉方案。

加载存档管理

对于有多个磁盘驱动器的电脑硬件(如有硬盘和多个软盘驱动器的电脑),DJCJ Arcade 支持保存「加载存档」(Loadout):将特定磁盘指定到特定驱动器,给存档命名,可以保存多个。这样每次启动硬件时不需要手动一个个加载磁盘,直接选择加载存档即可。

技术实现

DJCJ Arcade 是一款 macOS 原生应用,采用 Cocoa 框架开发,充分利用了 macOS 的原生界面特性。从技术实现上看,有几个值得关注的方面。

数据层:DJCJ Arcade 直接解析 MAME 的内置目录文件(history.dat、mame.ini 等),获取完整的游戏元数据。它并不依赖外部数据库,而是实时读取用户本地 MAME 安装的实际数据,这是它始终与用户环境保持同步的关键。

媒体包处理:封面图、运行视频、说明书扫描件等媒体文件存储在独立于 MAME 主程序的媒体包中。DJCJ Arcade 支持加载这个媒体包,并在界面中优雅地展示这些资料。当媒体包不存在时,应用仍然完整可用,只是媒体展示区留空。

模拟器集成:DJCJ Arcade 本身不包含模拟器,它通过命令行调用用户本地安装的 MAME 可执行文件来实际启动游戏。这种松耦合设计意味着用户可以使用任何版本的 MAME,DJCJ Arcade 只是提供了一层优雅的调用界面。

原生 macOS 体验:作为一款原生 Cocoa 应用,DJCJ Arcade 在界面流畅度、系统集成(快捷键、菜单栏、拖拽操作)上都达到了 macOS 应用的原生水准,与那些用跨平台框架或 Electron 写的模拟器前端相比用户体验明显更好。

快速上手

第一步:从 GitHub releases 下载 DJCJ Arcade 的 macOS 安装包,完成安装。

第二步:在 Mac 上安装 MAME(通过 Homebrew 或从 MAME 官网下载),将想玩的游戏 ROM 文件放入 MAME 指定的目录。

第三步:启动 DJCJ Arcade,应用会自动检测系统中的 MAME 安装路径,并读取游戏目录。

第四步:浏览游戏列表,使用过滤和搜索功能找到想玩的游戏,选中后查看右侧面板中的视频和封面。

第五步:按 Command+L 或点击 Launch 按钮启动游戏,游戏由 MAME 在后台运行,DJCJ Arcade 负责所有的浏览和配置工作。

适用人群

DJCJ Arcade 面向以下用户:

拥有大量 MAME 游戏收藏的 Mac 用户:收藏了几千款游戏但无法有效管理和查找,希望有一个美观的图形界面来浏览和启动游戏,而非在终端里记忆短名称。

街机游戏怀旧玩家:想重温童年时代的街机游戏,但不想折腾复杂的命令行参数,只想像现代游戏启动器一样点几下就进入游戏。

MAME 进阶用户:已经使用 MAME 但希望更高效地管理设置、加载存档、查看游戏详情,对 MAME 的能力有充分了解但不满足于其原始界面。

游戏收藏整理者:拥有完整的 ROM 收藏,希望对收藏进行分类、整理、智能筛选,DJCJ Arcade 的收藏夹和智能收藏功能提供了比任何文件管理器更专业的游戏管理能力。

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论