我想要实现在某些游戏(DNF)中,某键按住后自动连发,仅游戏内生效,且不影响正常打字,且同时可以响应多个按键。 在此基础上还想要一些高级的可以编程的宏功能,类似自动连招。
我之前使用 AHK 开发了一套工具,上面说的功能都能实现。但是 AHK 最低的时间间隔只能是 16ms(这个好像是和系统时钟有关),并且 CPU 占用略高,在高负载的时候延迟会变高。 然后有朋友给我推荐了 reWASD ,这个东西我试过之后,发现 cpu 占用很低,并且延迟也非常低,但是一个是他收费,一个是他影响打字,并且不太好做宏。 本人更希望可以找到一些免费的方案,以用于给更多的游戏玩家提供方便。
本人有一定的 node 开发经验,但是对 win32 编程不太擅长,所以手搓驱动估计是不太行了,不知道有没有现成方案可以参考。
我尝试过使用Interception驱动,但是这个目前有一个问题,就是在响应事件的时候,第一次按下触发后,要等待 1 秒左右才有后续的触发,有点类似我们键盘平时按住一个字母一样,但是这种并不能满足需求。参考https://github.com/oblitum/Interception/issues/183
1
TomVista 176 天前
鼠标键盘宏
|
3
yorath 176 天前
Keyboard Input WDF Filter Driver (Kbfiltr)
https://github.com/microsoft/windows-driver-samples/tree/main/input/kbfiltr |
4
vmebeh 176 天前 via iPhone
FindWindow 根据窗口类和名来找到目标窗口的 hWnd
GetForegroundWindow 定期获取最前的窗口 hWnd 比较两个 hWnd 来判断当前窗口是不是目标窗口 用 SendInput 发按键消息 如果需要拦截部分按键消息就需要底层键盘钩子:SetWindowsHookEx |
8
jim9606 176 天前 via Android
你确定你这么在内核里改键盘事件不会被反作弊认定为外挂?
你还不如考虑下有可编程固件的小键盘。 |
10
SkywalkerJi 176 天前
要过反作弊吗?
需要的话我觉得还是放弃吧,不如乖乖给罗技雷蛇交钱。 |
11
minami 176 天前
程序的 16ms 定时精度可以改的,对应的 WIN32 接口是 https://learn.microsoft.com/en-us/windows/win32/api/timeapi/nf-timeapi-timebeginperiod
|
12
minami 176 天前
@minami 搜了下 AHK 的文档不是有写吗 https://www.autohotkey.com/docs/v1/lib/Sleep.htm
|
13
ysc3839 176 天前 via Android
你想低成本搞的话,那还是别整驱动了,有没有现成的驱动还不好说,就算有也很难绕过反作弊。
现在更多是用个单片机模拟 USB 键鼠。 |
14
danbai 176 天前 via Android
dd 键鼠驱动
|
15
pinkbook 176 天前
花钱买外挂,外挂开发人员就是整天研究这些的的,还能帮你规避一下容易过的反作弊
|
17
mouyase OP @SkywalkerJi 不需要,连发这东西好多年一直大活都在用,他游戏里自带就三种不同的连发,只不过在打团帧率低的时候基本都失灵罢了
|