国服PC光遇无法改键位的临时解决方案。
本软件涉及到DLL注入与Inline Hook技术,可能引起游戏运行不稳定、掉帧等情况,请谨慎使用。
本软件将持续提供支持,直至网易官方支持键位修改。
下载release/latest中最新版本dll,并使用任一dll注入工具将其注入进光遇进程内。
也可下载压缩包(不是source code)并解压后在游戏启动后管理员权限运行start.bat。
本软件可通过快捷键在游戏内快速切换不同的键位映射方案与开关全局键位映射。
默认的开关快捷键为Ctrl+F5,切换方案快捷键为Ctrl+F3。首次启动时,若配置文件中指定了至少一个键位映射,则键位映射默认开启,且使用配置文件中的方案,即默认方案。否则键位映射将默认关闭。
按下切换方案快捷键时,若键位映射为关闭状态则自动开启,同时遍历软件同目录下schemes\文件夹下所有.txt文件,并尝试解析为映射方案。软件将记忆上一次运行时的键位映射方案于.skykey-store文件中。
若上一次运行或切换时的方案被删除,则软件回退至默认方案。若无默认方案则关闭映射。
# 配置文件示例
#
# 冒号前十六进制数表示要被映射的按键的扫描码,
# 冒号后十六进制数表示要把按键映射到哪个按键。
#
# 也就是说,当你按下前者对应的按键时,游戏将
# 接收到后者对应按键被按下。
#
# 该按键映射对于游戏内全局有效,请谨慎使用。
# 键位方案切换
hotkey_next: Ctrl+F3
# 键位映射开关
hotkey_enable: Ctrl+F5
# 下为默认映射表
# Shift映射至Tab
0x002A: 0x000F
# Tab映射至Z
0x000F: 0x002C
# T映射至Shift
0x0014: 0x002A
在DLL同目录下新建skykey-config.txt(注意后缀名),并将上述内容复制进文件内保存。
配置文件中#开头的行作为注释,不会被处理。若多行的被映射按键相同,仅最靠后的行生效。
扫描码十六进制可在MSDN中表内Scan 1 Make列查询到。
键位方案的书写与上述配置文件相同,但无需hotkey选项,仅需指定键位即可。示例如下:
# Q -> Y, C4
0x0010: 0x0015
# W -> U, D4
0x0011: 0x0016
# E -> I, E4
0x0012: 0x0017
# R -> O, F4
0x0013: 0x0018
# T -> P, G4
0x0014: 0x0019
# Y -> H, A4
0x0015: 0x0023
# U -> J, B4
0x0016: 0x0024
# 其后省略...
键位方案请保存为UTF-8格式的txt文件,并放置于dll同目录下的schemes\文件夹中。
本项目使用MinGW-x64编译。将本仓库clone至本地,切换进仓库根目录新建名为dist的文件夹,并执行mingw32-make即可。