Hey all,
I started messing around with developing a simple bot for 9Dragons.
Im using Java and robots api. (I know other languages matching better but this is my favourite :D )
My problem is Hackshield/GameGuard is blocking any input to the game. My testRobot works fine on private servers.
What I found out after some research:
Anyone ever put effort and time into this and found a way to bypass this ?
Greetz,
Prizzle
I started messing around with developing a simple bot for 9Dragons.
Im using Java and robots api. (I know other languages matching better but this is my favourite :D )
My problem is Hackshield/GameGuard is blocking any input to the game. My testRobot works fine on private servers.
What I found out after some research:
Code:
Assuming you are on a Windows machine, the call to java.awt.Robot calls are redirected to sun.awt.windows.WRobotPeer, which in turn calls native code in awt_Robot.cpp. You can check the source code of the awt_Robot.cpp here : http://www.koders.com/cpp/fidFFE004659A9CAB3DA2B3302C457E624AF6F3EEDF.aspx?s=GetDIBits#L232 Here you can see that the mouse events are realized with win32 call mouse_event(...) (defined in winuser.h) So your Robot mouse click calls are limited by the limitations of mouse_event(...). Then a little googling on this, reveals that some games have some sort of macro protection mechanism. They ignore mouse_event(...) routed methods and talk directly with the driver. Hackshield, for instance, provides such protection mechanisms to a number of games. So this is the reason why some games do not receive your Robot mouse clicks.
Anyone ever put effort and time into this and found a way to bypass this ?
Greetz,
Prizzle