不写一行代码把手柄映射到键盘鼠标:UCR 完整指南 📅 2026/8/22 15:36:17 不写一行代码把手柄映射到键盘鼠标UCR 完整指南【免费下载链接】UCRUniversal Control Remapper [ALPHA]项目地址: https://gitcode.com/gh_mirrors/ucr/UCR假如你有一台只认键盘的老游戏机、或是一款输入延迟调教不到位的 FPS 游戏而你手里只有一个手柄——大部分游戏内置的设置界面解决不了这种需求。Universal Control RemapperUCR就是干这件事的开源工具它通过图形界面把各种输入键盘、鼠标、摇杆接到各种输出键盘、鼠标、vJoy 虚拟手柄、Titan One 硬件上全程不用碰 AutoHotkey 代码。⚙️ 让 UCR 跑起来的最短路径UCR 是绿色单文件应用没有安装步骤获取代码git clone https://gitcode.com/gh_mirrors/ucr/UCR或从发布页拿压缩包注意别点 GitHub 顶部的绿色 Download 按钮把文件解压到一个文件夹双击UCR.exe启动无需预装 AutoHotkey无其他依赖启动后主界面就是插件列表和配置区下面两步就能完成第一次映射。 第一次映射的三步做法手柄 A 键变空格以最常见的把手柄 A 键当键盘空格用为例新建配置Profile给这套映射起个名字比如Game Controls后续所有插件都挂在配置下管理添加插件选ButtonToButton它的作用就是一对一地把按键转成按键绑定输入输出在输入区选手柄的 A 键输出区选键盘空格保存生效每个插件实例在 UCR 里有自己的小面板输入输出选择器会记住上次保存的值下次启动不用重配。️ 按需求挑插件这几类覆盖大多数场景内置插件在Plugins/Core/目录下各插件的实际分工是ButtonsToAxis把多个按键组合成一个模拟轴适合赛车游戏的油门刹车AxesToMouse摇杆轴转成鼠标移动FPS 瞄准场景的主力AxisSplitter一根轴按正负方向拆成两路输出负方向走低、正方向走高飞行模拟里拆操纵面很方便AxisToButtons/AxisRangeToButtons轴值到按键、按阈值区间切按键做档位、分段触发ProfileSwitcher按一下快捷键直接切换到指定配置松开切回去多游戏并存时省手动操作需要细看实现的话Plugins/Core/ 下的示例代码 都是可读的 AHK 类照着改就能得到自己的变体。 用配置树管理多个游戏单个游戏一套配置只是基础用法UCR 的真正结构是父子配置子配置继承父配置里的全部插件再叠加自己的修改典型用法是做Shift 层父配置放基础控制子配置放按住某键时才生效的特殊功能切换配置等价于切换手感方案规划中还有按前台应用自动激活配置的能力配置混乱时别在界面里逐个找命令行切换更精确。语法是UCR.exe CLI.ahk 父配置 子配置参数支持配置 GUID 或名称不区分大小写只传父配置就只激活父配置UCR.exe CLI.ahk MAME megaman这条命令会找父配置MAME下的megaman找不到子配置时回退到父配置。相关逻辑分别在 Classes/Profile.ahk 和 Classes/ProfileTreeBase.ahk 里。❓ Xbox 手柄和虚拟手柄最容易踩的两个坑坑一物理 Xbox 手柄本身无法被重映射。UCR 目前改不了游戏看到的物理 Xbox 控制器这是设计边界不是故障。两条单向路是通的读 Xbox 手柄的输入、输出到 vJoy 可以读普通手柄、模拟一个虚拟 Xbox 输出也可以。坑二XInput 必须从菜单开启Bind Mode 对 Xbox 无效。如果拔了 UCR 手柄就正常、开着就失灵多半就是忘了这步——从主菜单开启 XInput 支持后重启 UCR 再插手柄。部分手柄One、Elite、无障碍版只认 XInput 模式。要输出虚拟 XboxvJoy时按这个顺序操作安装最新版 vJoy 驱动首次运行 UCR 后检查加载状态主菜单 IOClasses → vJoy → Show vJoy log日志正常后安装 SCPVBusIOClasses → vJoy → Install SCPVBus该步骤失败时打开管理员命令提示符进 UCR 的Resources/ScpVBus/目录手动跑install.bat目录里有对应的卸载脚本 进阶把插件串成一条控制链单个插件只是一段转换串起来才有复杂逻辑。一个典型接法左摇杆 → AxisSplitter → 两路分别输出鼠标精细瞄准 虚拟摇杆移动再叠一个ProfileSwitcher挂在某个键上按住切到狙击配置、松开切回移动配置就等于手柄上多了个 Shift 键。链子越长中间环节越多能用直接映射解决的就不必绕弯每个插件都占一点系统开销。️ 想改规则自己写插件的门槛插件本质是一个继承 UCR 基类的 AHK 文本文件class 插件名 extends _UCR.Classes.Plugin实现Init()往自己的面板加控件用AddControl挂上输入/输出选择器和需要持久化的参数控件即可框架会处理保存、激活/停用通知这些杂事。GUI 控件基类在Classes/GuiControls/里可以翻。调试别直接改主程序仓库里Sandbox/目录提供了MockUCR.ahk和 Bind Control 沙盒脚本专门用来隔离测试插件行为正式发布前把配置备份一份改动用版本管理跟踪。收尾提醒README 明确写了这个 AHK 版本正在逐步淘汰官方建议新项目迁到 C# 版本老版本继续可用但不再获得主要更新。如果只是要一个现在就能用的映射方案上面的路径直接照做即可配置目录里存的都是纯文本定期备份到安全位置就够稳妥了。【免费下载链接】UCRUniversal Control Remapper [ALPHA]项目地址: https://gitcode.com/gh_mirrors/ucr/UCR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考