Page 1 of 1

Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Fri Oct 23, 2020 8:28 am
by tenente
XMBC Version: 2.19.2
Windows Version: w10
Mouse Information (brand/model): taipan raizer
Relevant Computer Information (CPU, RAM etc):
Did the problem occur after an upgrade of XMBC? (If so, from what version?): N
Did the problem occur after a Windows update/upgrade? (If so, from what version?): N
How long have you used XMBC?: 5 mounths
What language and keyboard layout do you use in Windows?: english

Clear description of the problem - try and include as much information as possible, including what button and mappings you are having problems with (if applicable).:

Hi after an uptade on Albion Online game the Keyboard macros stop working, im already open on admin mode the program. I tink there was an c++ update on that last version


this works normaly lasts months but after this last update the action {PRESS}{SHIFT}{LMB}{RELEASE} stop work

Re: Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Sat Oct 24, 2020 5:52 pm
by phil
If it worked before the game update, and does not work now (no change in XMBC) then I suspect the game has blocked simulated input to prevent cheats. Not much I can do about that - suggest you ask the game developers if/why they have blocked MS's SendInput API?

Having said that, the macro {PRESS}{SHIFT}{LMB}{RELEASE} is wrong (makes no sense) you are not telling it what to release.
I would have thought simply {SHIFT}{LMB} would have worked here?!

Or, as PRESS means to press the NEXT key in sequence (in this case shift) but you must then release shift so I would expect {RELEASE}{SHIFT}, so perhaps try {PRESS}{SHIFT}{LMB}{RELEASE}{SHIFT}

Either way, I suspect the game has blocked XMBC/Sendinput if it worked before!

Re: Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Tue Oct 27, 2020 12:25 pm
by tenente
Thanks for the anwers. i think this command has bemm blocked. You have any ideas how to make this tipe of action works?

Re: Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Wed Oct 28, 2020 10:15 am
by phil
If the game blocks SendInput then I think your out of luck. Unless you were able to emulate a physical keyboard with some external device, or a keyboard filter driver (they may exist, I am not sure) then any other way of sending input is likely to use this Microsoft API and also be blocked.

I have always wondered if it would be possible to emulate a physical USB keyboard or mouse using something like a raspberry pi/arduino dedicated hardware which you could communicate with over the network to tell it what to send - way more advanced than something like XMBC as it will involve custom hardware & software combination - not something I would be able to do myself (nor am particularly interested in), but it would be impossible to block that with any anti=cheat software I know of!

Re: Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Tue Nov 03, 2020 3:31 am
by starf1337
To OP: If you are using right shift you may need to run an AHK script on top of it. Such as:

Send {LShift Down}
KeyWait RShift
Send {LShift Up}

You may have to adjust key repeat speed setting if the press time is too short. KeyWait and certain hardware interrupts sometimes conflict.

Thanks to some brief exchanges with Phil (XMBC Creator) I found some useful resources for understanding this. Search for quadibloc scan codes.

Phil: Yes, are correct that Arduino is undetectable (at least to every single application for which I have used it except for one game combined with UnoWifi... but that is an extreme circumstance as it has a human-verification element). But you are incorrect about how complicated it is; I use your software because it is beyond my own talents. Arduino is simple. It is weird, a bit like learning Assember but once you get the basics it gets easy but time-consuming. All of my gamepads have arduinos controllers in them. Not so much for cheating but rather a more perfect mapping without custom-configuration for each game between the keyboard/mouse and the gamepad regardless if it is a shooter, RPG, web browser or even word processor (yeah... that last one was a waste of time). Anyway I humbly suggest an option for treatment of AltGr and related codes. Some programs use LShift/LAlt but for others we would use the keys near ULDR instead of WASD, so some of us would rather have it unable to work with one than the other.

Whatever the case, between XMBC and AHK there is always a solution. Obviously XMBC is the faster, easier solution. I think something should be done for AltGr options.

Re: Action {PRESS}{SHIFT}{LMB}{RELEASE} stop working

Posted: Wed Nov 04, 2020 12:21 am
by phil
Not entirely sure what you mean about AltGr options? What options? Please expand (maybe not here - maybe in a PM) just because I'm not sure what you mean - and why it cant already be done in XMBC (apologies if we have already discussed this - my memory this year seems to be all mixed up for some reason!)

But unfortunately in the OP's case, XMBC is failing to send keys - its being rejected by Windows (UIPI rejection/error messages). I believe this is the anticheat engine in use - and in the past I have not been able to circumvent it (not that I spent much time on it as thats not my goal).

The whole Arduino thing interests me having an electronics background (although not really used for 30 years and things have moved on a bit - I still enjoy getting the soldering iron out occasionally - although all my little projects tend to have been Pi based and mostly home automation related - why by something like Hive when you can make your own and keep re-making it when it breaks/things change haha - and I wonder why I have no time for XMBC :)). I noted that this can also be done with a raspberry pi zero/zero w where it may be possible to communicate (over the LAN) to the pi zero which acts as a USB keyboard/mouse device... But its a pet project idea that likely will never happen and even if it did, be too complex for the majority to make public! Interested however in how you use the Arduino - presumably its all per-programmed up front to work with the inputs they have (direct from the game controllers)?