-
InputHumanizer library for ExileAPI
I'm releasing an an ExileAPI plugin that is more of a plugin for plugins.
A lot of plugins have been adding their own custom input handling/delays recently... so instead I wanted to create a single location where plugins could just hook into already implemented humanizing sort of logic. Its far from perfect and may not even be effective against preventing detection/reports... but its a step forward.
Usage and installation instructions can be found on the github repo. GitHub - sychotixdev/InputHumanizer
For non-developers, this library won't be particularly useful. You will need to wait for developers to add the functionality into their plugins.
Example converted plugin: GitHub - sychotixdev/HighlightedItems
-
Post Thanks / Like - 4 Thanks
-
Active Member
Originally Posted by
Sychotix
I'm releasing an an ExileAPI plugin that is more of a plugin for plugins.
A lot of plugins have been adding their own custom input handling/delays recently... so instead I wanted to create a single location where plugins could just hook into already implemented humanizing sort of logic. Its far from perfect and may not even be effective against preventing detection/reports... but its a step forward.
Usage and installation instructions can be found on the github repo.
GitHub - sychotixdev/InputHumanizer
For non-developers, this library won't be particularly useful. You will need to wait for developers to add the functionality into their plugins.
Example converted plugin:
GitHub - sychotixdev/HighlightedItems
is it already in the newest hud? or i need to update that highlighteditems?
-
Originally Posted by
camapxam
is it already in the newest hud? or i need to update that highlighteditems?
No, its not built into HUD. You'll need to put this plugin into your /Plugins/Source/ directory and the lib into your root directory. If you want to use my version of HighlightedItems, you'll need to replace the one that comes delivered with HUD. Note, I'm bad at maintaining plugins... so no guarantees HighlightedItems gets all the latest updates from its main repo =P Its mostly just an example of how to convert a plugin to using this library.
-
Post Thanks / Like - 1 Thanks
camapxam (1 members gave Thanks to Sychotix for this useful post)
-
Active Member
Originally Posted by
Sychotix
No, its not built into HUD. You'll need to put this plugin into your /Plugins/Source/ directory and the lib into your root directory. If you want to use my version of HighlightedItems, you'll need to replace the one that comes delivered with HUD. Note, I'm bad at maintaining plugins... so no guarantees HighlightedItems gets all the latest updates from its main repo =P Its mostly just an example of how to convert a plugin to using this library.
ok, i got the dll and the new hightlighted in source, and the lib in root, looking forward to how it works (hopefully) in a few hours, always like this one, love the button
-
Originally Posted by
camapxam
ok, i got the dll and the new hightlighted in source, and the lib in root, looking forward to how it works (hopefully) in a few hours, always like this one, love the button
Make sure you adjust the delays within the plugin, otherwise it might be INCREDIBLY slow
-
Active Member
Originally Posted by
Sychotix
Make sure you adjust the delays within the plugin, otherwise it might be INCREDIBLY slow
got it, will do
-
Member
Idk why but for me highlighted items when I press the dump inventory button it will try to click on like where my right ring is instead of on the items in inventory.
-
Member
My typical go-to for this problem is WindMouse (from the old Runescape botting days): WindMouse, an algorithm for generating human-like mouse motion | ben.land
I'm super curious if this helps, as I would assume (no evidence to back this up, just purely based on a hunch) that mouse movement is probably not going to do much (considering the lack of care for simulated input), if anything the new introduced delay from waiting for the mouse to get to it's destination is probably the most help. I imagine a sequence of server actions, executed in the same order with the same delta in ms done for hours straight is to blame for most "botting" bans.
-
Post Thanks / Like - 1 Thanks
Sychotix (1 members gave Thanks to PoThePlug for this useful post)
-
Originally Posted by
PoThePlug
My typical go-to for this problem is WindMouse (from the old Runescape botting days):
WindMouse, an algorithm for generating human-like mouse motion | ben.land
I'm super curious if this helps, as I would assume (no evidence to back this up, just purely based on a hunch) that mouse movement is probably not going to do much (considering the lack of care for simulated input), if anything the new introduced delay from waiting for the mouse to get to it's destination is probably the most help. I imagine a sequence of server actions, executed in the same order with the same delta in ms done for hours straight is to blame for most "botting" bans.
Interesting library. We're using Kalon with this library, which seems to work pretty well. And yes, I agree with your assessment on mouse movement not doing much but delays (probably) will. This library gives a more realistic algorithm for delays (since humans aren't truely random in their action speed) so hopefully others will find it helpful. If nothing else, it makes it easier to implement without changing your plugins a ton.
-
Member
@Sychotix Can I use it without async context?
Btw, a question regarding async stuff - I've looked into the usage of async in some of the plugins and NGL, it didn't inspire me to change the code. Maybe we can have AsyncBaseSettingsPlugin that can be easily extended to have all basic methods (i.e. init / render / tick) async by default?
-
Member
Originally Posted by
Sychotix
Interesting library. We're using Kalon with this library, which seems to work pretty well. And yes, I agree with your assessment on mouse movement not doing much but delays (probably) will. This library gives a more realistic algorithm for delays (since humans aren't truely random in their action speed) so hopefully others will find it helpful. If nothing else, it makes it easier to implement without changing your plugins a ton.
Servers do not collect a mouse internal data. Mouse internal data can be analyzed only with by client, and here he not looking how you make movements, he just looking at mouse hid packets (hello kernel mode, like Vanguard, when if you made a setcursorpos u will be insta banned for 1 sec). if server protected by any antibot system, like a cloudfire/recaptcha or ets, he collect only Fitt's law rules or any others statistic rules, and build prediction model by them. Until client its not protected at kernel level when you with 100% chance can say its cheat or not, you can teleport the cursor, it doesn't affect anything
-
Originally Posted by
cout00
Servers do not collect a mouse internal data. Mouse internal data can be analyzed only with by client, and here he not looking how you make movements, he just looking at mouse hid packets (hello kernel mode, like Vanguard, when if you made a setcursorpos u will be insta banned for 1 sec). if server protected by any antibot system, like a cloudfire/recaptcha or ets, he collect only Fitt's law rules or any others statistic rules, and build prediction model by them. Until client its not protected at kernel level when you with 100% chance can say its cheat or not, you can teleport the cursor, it doesn't affect anything
I mean... they already use GetCursorPos to track mouse movement and use those coordinates when processing click events. They can absolutely track mouse movement (if they wanted to) client-sided without getting having to go kernel at all. That said, I do agree that it is unlikely that they are currently doing this. I just saw no harm in adding it.
@APXEOLOG, I've considered adding co-routine support... yeah. It would be easier for some of the older plugins so that they don't have to be rewritten. I just haven't gotten to it yet.
-
Member
> Until client its not protected at kernel level when you with 100% chance can say its cheat or not, you can teleport the cursor, it doesn't affect anything
Btw Undecember has this kind of protection (they install kernel-mode anti-cheat). Didn't stop me from using a custom keyboard/mouse driver to bypass that protection