KeyBindingExtensions
KeyBindingExtensions:扩展六轨按键绑定,支持鼠标按键和同键多轨道绑定,沿用游戏内设置与保存方式。
| Date uploaded | a week ago |
| Version | 1.1.1 |
| Download link | MengLei-KeyBindingExtensions-1.1.1.zip |
| Downloads | 44 |
| Dependency string | MengLei-KeyBindingExtensions-1.1.1 |
This mod requires the following mods to function
BepInEx-BepInExPack_IL2CPP
BepInEx pack for IL2CPP x64 Unity games. Preconfigured and ready to use.
Preferred version: 6.0.755README
KeyBindingExtensions(按键绑定扩展)
扩展 In Falsus 的六轨按键绑定,支持鼠标按键,以及同一个键盘键或鼠标按钮绑定多个轨道。通过游戏内操作设置配置,保留原有的应用、保存和恢复默认功能。
使用
- 打开“设置”中的操作设置页。
- 点击任意一个轨道键位槽。
- 按下要绑定的键盘键或鼠标按钮;鼠标按钮会显示为
Mouse0、Mouse1等。 - 点击原版“应用”按钮保存。
Mouse0、Mouse1、Mouse2 分别是左键、右键和中键,Mouse3、Mouse4 是 Input System 的前进键和后退键。模组优先通过这些标准 ButtonControl 读取每个原始事件,并同时保留 MouseState.buttons 的完整 16 位状态读取,因此同一路径可处理 Mouse0 至 Mouse15;如果自定义鼠标布局还在 allControls 中公开其他 ButtonControl,这些控件也会获得稳定的 MouseN 并可绑定。实际可用按钮取决于鼠标、驱动和 Unity 所公开的控件。
选择槽位所用的首次点击不会立即成为绑定。再次点击同一个槽位可以绑定 Mouse0;也可以在选择槽位后按侧键。应用按钮、恢复默认和键盘重新绑定继续生效。
同一个键盘键或鼠标按钮可以绑定任意多个轨道。依次选中要共用键位的槽位,逐一绑定同一个按键,再点击“应用”;设置其他槽位时不会替换已有绑定。游玩时按下、保持和松开会同时作用于全部对应轨道。
绑定写入游戏原有的 keybind_BottomLane0 至 keybind_BottomLane5 偏好项,不创建第二份配置。重新打开设置、进入歌曲或重启游戏后,设置槽位和轨道按键提示器都会显示并使用已保存的 MouseN。这些保留值需要本模组才能显示和触发;停用模组前可先在操作设置中恢复默认。
安装
建议通过 In Falsus 的 Thunderstore/r2modman 安装。依赖中的 BepInExPack_IL2CPP 会由模组管理器处理,本包不携带 BepInEx、Doorstop 或 .NET 运行时。Thunderstore 包标识为 MengLei-KeyBindingExtensions,插件 DLL 名为 KeyBindingExtensions.dll,可与 ParticleFusion 和 SkillSelection 分别启用或停用。
若已安装旧包 MengLei-MouseKeyBindings,先在模组管理器中卸载旧包,再安装 MengLei-KeyBindingExtensions。手动安装时先移除旧的 MouseKeyBindings.dll,再放入 KeyBindingExtensions.dll。按键绑定仍保存在游戏原有的偏好项中。
输入行为
鼠标按下和释放使用 Input System 原始事件时间。只有 MouseN 当前实际绑定在六轨之一、GameScene 已登记在原版始终接收输入栈且暂停层未显示时,事件才会进入现有六轨处理路径;角色选择、设置和其他菜单不会收到 MouseN 合成键。释放事件还会在帧末用对应 ButtonControl 的当前物理状态校正,避免事件布局漏报释放后轨道保持点亮。暂停弹窗出现时,已经接受按下的轨道会立即收到配对释放,并在暂停层完全关闭前保持失效。
鼠标绑定不包含 Ctrl、Alt 或 Shift 组合。原有键盘绑定及其修饰键匹配不受修改。
兼容范围
当前适配 Steam App ID 3971950、Unity 6000.3.9f1 和 IL2CPP 元数据版本 39。实现依赖游戏当前的 InputManager、LaneKeyBindSettingsContainer、GameScene 和 KeyPressedIndicator 互操作接口;游戏更新这些接口后需要同步更新模组。
CHANGELOG
Changelog
1.1.1
- 项目目录、项目文件、程序集与 DLL 名统一为 KeyBindingExtensions,以
MengLei-KeyBindingExtensions独立包重新发布。 - 沿用原插件 GUID 和游戏按键偏好,保持鼠标按键及同键多轨道绑定行为。
- 补充从旧包
MengLei-MouseKeyBindings卸载后安装新包的迁移说明。
1.1.0
- 模组显示名统一为 KeyBindingExtensions(按键绑定扩展),更新介绍与使用说明;保留原有插件 GUID、DLL 和发布包标识。
- 支持同一个键盘键或鼠标按钮绑定多个轨道,设置新槽位时保留其他轨道已有绑定。
- 同键轨道同步接收按下、保持、松开和原始输入时间,各轨道继续独立执行原版判定,按键提示同步点亮和熄灭。
1.0.1
- 适配游戏 1.0.6:设置页刷新轨道键名时不再以鼠标保留值索引键盘,修复绑定鼠标后插件报错停用的问题。
1.0.0
- 新增独立的 MouseKeyBindings 插件。
- 六个轨道键位槽支持
Mouse0至Mouse4标准按钮事件、Mouse0至Mouse15原生状态位,以及自定义鼠标布局额外公开的全部ButtonControl。 - 沿用原版重复绑定检查、应用、恢复默认和偏好保存流程。
- 设置页和歌曲场景的按键提示器均以
MouseN显示鼠标绑定,并隔离选择槽位所用的首次点击。 - 游玩时只把当前六轨绑定的鼠标键发送给已登记在始终接收栈中的
GameScene;不向菜单注入合成键,并在暂停层出现时立即配对释放。 - 输出文件为
MouseKeyBindings.dll。 - 发布包采用 Thunderstore 标准结构,不携带 BepInEx 或运行时文件。