In more recent versions (2.1+, and one older version before it) I noticed that the client stopped counting keys simulated by programs such as autohotkey.
Now this is a good thing, but here’s the bad part:
Say you remap Q to type W. Whatpulse doesn’t count W (which is good), but it no longer counts Q either. So if I need to remap some keys for playing certain games, those keys won’t be counted at all.
Would be nice if it could be changed in such a way to keep tracking the original key regardless of whether it’s remapped or not. And yes it’s possible (I don’t really know how though).
Note: I had to repost this from my original account (Robby250) because for some reason it’s been unable to post on these forums for the past half year or so.
Whatever program you’re using the remap the keys, is blocking the real input event from WhatPulse and sends the fake input event to Windows, which is blocked. There is no way to count it in the client, because the real event has been blocked.
But it’s not blocked. I’ll show you a short video since I don’t really know how else to prove it. The program does require administrator rights to detect the “blocked” key, but I’m running Whatpulse as administrator and it’s still not detecting it.
So what’s happening in the video is this:
On the left is whatpulse, on the right another key counting program which works the way I’d like whatpulse to work.
Q is remapped to W.
I select the notepad, and I press Q several times on a line. Whatpulse doesn’t detect the keys, but the other software does.
Then I type enter twice and press W several times on another line, which both whatpulse and the other program detect properly.
The other program detects fake input events and shows them. It does not see the real input event, only the fake one. WhatPulse blocks fake input events and does not see the real event, so nothing happens.
You probably didn’t watch the video, because when I pressed Q it showed as W in the notepad, but was added correctly as Q in the other program. It wasn’t a fake input.
If I assign more buttons to a single one the other program correctly detects only one button as well.
I did and saw what the program did. Thing is, it most likely received the fake event input and then did a translation of the key code it received. When translated, the key turns into the right key. But still while acting on the fake input event.
This should be fairly easy to check in that program, do you have a link?
Here, I doubt that it translates the input though, otherwise it would’ve detected the key when it wasn’t running as administrator as well, but it didn’t.
One more thing, Whatpulse still doesn’t seem to detect keys pressed while holding the Alt modifier, I posted this around a year ago and I think you said that it doesn’t happen to you when you try it. Well now I have everything completely new, such as computer and operating system (Windows 7 x64 bit), and it’s still happening.
Alt+key = only detects Alt
Shift/Ctrl+key = detects both
Alt+Shift+key = only detects Alt
Ctrl+Alt+key = detects everything
Ctrl+Alt+Shift+key = detects everything
It does, I can see the API calls being made when hooking into it. The reason why it only translated when running as administrator, is because access to that information (scan/key codes, keyboard status), requires admin rights.
So unless the WhatPulse client goes from reactive to proactive; polling the keyboard instead of waiting for events, there’s not really a way for it to catch them.
And polling isn’t really an option, performance wise.
Could you at least make an option in the settings to poll it for those who can afford the performance drop? Would be much appreciated.
Thanks a lot for looking into it though.
Maybe. I’ll put it on the case list. It’ll require a complete overhaul of the current input hook, allowing for polling to be used, so it’s not an easy or quick change.