【免费下载链接】LASRecomp
Static recompilation of Link's Awakening (Switch) to native macOS, Windows and Linux
LASRecomp 是一个把《塞尔达传说:织梦岛》(Switch 版)静态重编译为 macOS、Windows、Linux 原生应用的项目,它的一大亮点就是手柄设置与键位设置:全部按钮和按键都可以自由重映射,改动即时生效、自动保存,而且菜单布局固定,永远不会把你"锁"在游戏外面。
两个入口:从哪里打开手柄与键位设置
LASRecomp 提供两个完全相同的重映射界面,任选其一:
- 🎮游戏内:按
F1或Esc打开覆盖菜单(手柄玩家可用 Home / Xbox / PlayStation 键,或 Back + Start 同时按),第一个标签页就是Controls(控制)。 - ⚙️启动界面:标题画面选择Settings → Controls,还没开局就能先把键位调好。
界面上方会显示当前连接的手柄名称和按钮命名体系(Nintendo / Xbox / PlayStation 三选一,自动识别),下面是一张三列表格:Switch 输入 | 手柄按键 | 键盘按键,按玩家直觉排序——动作键、肩键、Plus / Minus、十字键、摇杆方向。
三步完成一次重映射:点击—按键—立即生效
操作逻辑是"点击一个绑定,然后按下新键",没有任何下拉菜单:
- 点击你想修改的格子,它会变为金色并显示
Press a button...或Press a key...,开始倒计时 5 秒; - 按下想要的新手柄按键(或键盘按键),立即绑定成功并自动保存;
- 结果会显示在表格上方,例如
A is now J.(A 现在绑定到了 J 键)。
几个贴心细节:
- 🔁冲突自动交换:如果新按键已被其他输入占用,两个输入会自动互换,界面会提示
swapped; - ⌨️Esc 取消:按
Esc或 5 秒内不按任何东西即取消,原绑定不变; - ⚠️保留键:
F1/F9/F11始终属于覆盖菜单、帧转储、全屏,不能被绑定;捕获键盘时手柄输入会被忽略,捕获手柄时键盘同样被忽略; - 🎮Home / Guide 键:在捕获手柄按键时按 Home / Xbox / PS 键会直接打开菜单,不会被占用——这是刻意设计的安全出口。
默认键位速查表
不想改就先用默认(由 runtime/hle/bindings.c 定义):
| Switch 输入 | 默认键盘 | 默认手柄 |
|---|---|---|
| A / B / X / Y | K / J / L / I | 东 / 南 / 北 / 西 动作键(Xbox 即 A/B/X/Y 位) |
| 左 / 右摇杆按下 | F / 小键盘 0 | L3 / R3 |
| L / R | Q / E | 左 / 右肩键 |
| ZL / ZR | 1 / 3 | 左 / 右扳机 |
| Plus / Minus | Enter / Backspace | Start / Back |
| 十字键 | 方向键 | 十字键 |
| 左摇杆方向 | WASD | 左摇杆(固定) |
| 右摇杆方向 | 小键盘 8 / 5 / 4 / 6 | 右摇杆(固定) |
注意:摇杆本身的方向(左摇杆 = 移动、右摇杆 = 视角)永远跟随物理摇杆,不可重映射;只有"摇杆按下"这个按键可以改。
手柄类型自动识别与按键图标
设置界面会按手柄品牌显示对应的按钮名称:Xbox 手柄显示A/B/X/Y、LB/RB、LT/RT,PlayStation 手柄显示十字/圆圈/方块/三角、L1/R1、L2/R2,其他手柄按 Nintendo 风格命名。
游戏内的按键提示图标同样跟随你的设置:SDL 报告手柄是 Xbox 或 PlayStation 时就显示对应图标(也可在 runtime/hle/input.c 中通过环境变量LARECOMP_PAD_TYPE=xbox|playstation|nintendo手动指定),并且图标会随重映射同步更新,不会出现"图标按 A、实际按的是 B"的尴尬。
设置保存到哪里:larecomp.ini 详解
所有改动自动写入larecomp.ini,只记录与默认值不同的项,文件位置(见 runtime/paths.h):
| 平台 | 位置 |
|---|---|
| macOS | ~/Library/Application Support/com.peiikai.lasrecomp/larecomp.ini |
| Windows | 可执行文件所在目录(绿色免安装) |
| Linux | ~/.local/share/lasrecomp/larecomp.ini |
文件是纯文本 INI 格式,支持手动编辑。手柄按键用位置名书写(east、south、lshoulder、ltrigger、dpad_up…),键盘用 SDL 扫描码名(K、Keypad 0、none),例如:
bind_pad_zl = rshoulder ; ZL 改到右肩键 bind_key_a = Z ; A 改到 Z 键 bind_key_rs_up = none ; 清空某个绑定解析与保存逻辑分别位于 runtime/hle/bindings.c 的bind_settings_load/bind_settings_save,输入定义见 runtime/input_bind.h。编辑前记得退出程序,改完重新打开即可生效。
常见问题:这些设置会影响菜单吗?
- 不会。菜单(覆盖菜单和启动界面)永远使用固定布局:右侧动作键 /
Enter确认,下方动作键 /Esc返回,菜单始终能用F1、Esc、Back + Start 或 Home / Guide 打开,所以任何重映射都不会把设置界面锁死(详见 runtime/ui/controls_ui.mm); - 改错了就点Reset controller to defaults或Reset keyboard to defaults,一键恢复默认;
- 改完后表格中偏离默认值的项会显示为金色文字,手动编辑导致的重复绑定会显示红色,方便排查。
💡小结:LASRecomp 的键位方案覆盖了动作键、肩键、扳机、十字键、摇杆按下乃至摇杆方向,手柄与键盘双轨独立配置,冲突自动交换、即时生效、自动保存——无论是 WASD 党还是数字小键盘党,都能在这里找到最顺手的布局。
【免费下载链接】LASRecomp
Static recompilation of Link's Awakening (Switch) to native macOS, Windows and Linux
相关推荐
gulp-uglify高级配置:自定义压缩选项提升前端性能
gulp uglify高级配置:自定义压缩选项提升前端性能 gulp uglify是一款基于UglifyJS的Gulp插件,能够帮助开发者通过自定义压缩选项显著
构建工具前端构建开发工具3分钟学会Windows键盘重映射:让每个按键都听你指挥
3分钟学会Windows键盘重映射:让每个按键都听你指挥 还在为键盘上某个按键失灵而烦恼?或者想要根据自己的使用习惯重新定义按键功能?键盘重映射技术正是解决这些
桌面应用LogiOps 按键重映射完全教程:让每个按钮都发挥最大价值
LogiOps 按键重映射完全教程:让每个按钮都发挥最大价值 LogiOps 是一款强大的非官方用户空间驱动程序,专为 HID++ 协议的 Logitech 设
驱动开发系统编程
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考