按键重映射 全局、按核心、按游戏三层覆盖
为什么需要手动重映射
自动配置解决了 90% 的问题,但以下情况需要手动调:
- 某款游戏的确认/取消键逻辑和大多数游戏相反(比如日系游戏 B 是确认、A 是取消)
- 你习惯的按键布局和默认不同(比如把 L1 设成快进)
- 某些特殊核心需要特定的按键(比如 N64 的 C 摇杆)
- 模拟器里的按钮和原机不同,你想复刻原机布局
三个层级
RetroArch 的按键映射有三层覆盖机制:
| 层级 | 配置入口 | 生效范围 |
|---|---|---|
| 全局 | Settings → Input → Player X Binds | 所有 Core / 所有游戏 |
| 按核心 | Quick Menu → Controls → Save Core Remap File | 该 Core 下的所有游戏 |
| 按游戏 | Quick Menu → Controls → Save Game Remap File | 仅当前这一款游戏 |
优先级从低到高——按游戏覆盖按核心,按核心覆盖全局。
这是 RetroArch 最强大的设置系统之一——独立模拟器没有这么灵活的三层覆盖。
实战:全局映射
Settings → Input → Player 1 Binds:
- 选一个按钮条目(比如 A Button)
- 按 Enter / 确认键
- 按下你想绑定的物理键(键盘键或手柄按钮)
- RetroArch 会自动录下这个键
- 继续下一个按钮
全局映射配置完后,进 Quick Menu → Controls → Save Core Remap File 保存一份全局备份。
实战:按游戏重映射
最常见的需求——某款游戏的确认键要和其他游戏相反:
- 启动这个游戏
- Quick Menu → Controls
- 看到当前按键布局
- 选中要改的按钮,按 Enter,然后按你想绑定的物理键
- 全部改完后,选 Save Game Remap File
Save Game Remap File 非常重要——不保存的话退出游戏就丢失了,下次进又回到全局/核心级别的映射。
菜单按键 vs 游戏按键
RetroArch 有两套按键设置:
- 游戏按键(Settings → Input → Player X Binds):游戏运行时的按键
- 菜单按键(Settings → Input → Menu Controls):RetroArch 菜单导航时的按键
两套独立配置。菜单里的确认/取消反直觉?Settings → Input → Menu Controls → Menu Swap OK & Cancel Buttons——打开后菜单导航时 A 和 B 的功能互换。这只影响菜单,不影响游戏内的按键。
快捷键也要单独绑定
Settings → Input → Hotkey Binds 是第三套按键设置——专门绑定快捷功能(快进、倒带、保存状态、打开 Quick Menu 等)。
快捷键需要先绑定一个 Enable Hotkey 键——其他快捷键都要先按住它才触发,防止游戏中误触。典型配置:
| 快捷键 | 建议绑定 | 用途 |
|---|---|---|
| Enable Hotkey | L1(或 Select) | 快捷键前置 |
| Fast Forward | L2 | 跳过过场动画、练级 |
| Rewind | R2 | 失误后退几秒 |
| Save State | R3 | 存进度 |
| Load State | L3 | 读进度 |
| Menu Toggle | F1(键盘)或 L3+R3(手柄) | 打开 Quick Menu |
| Quit Game | Select(按住) | 退出游戏回主菜单 |
快捷键绑定的是 RetroPad 按钮,不受全局/核心/游戏三层映射影响——它是独立的。
重映射文件在哪
重映射文件存在 RetroArch 安装目录的 config/remaps/ 子目录下,按 Core 名分组。可以手动编辑(纯文本 JSON),也可以在 RetroArch 里通过 Save 入口生成。