[AutoIt] DirectInput ByPass

08/04/2014 21:54 Adiko#1
Hello, im trying to make simple bot for aion to work in background, but aion uses DirectInput. I've tried to send keystroke's with ControlSend and by user32.dll PostMessage, and it didn't worked. The only way it works its by clicking chat window, but i want it work as a movment control. Is there any function, that can solve this problem?
08/04/2014 23:17 Requi#2
Already tried to run it as admin?
08/05/2014 00:05 Adiko#3
UAC Off. so yee....

I've found some Direct Input Hooking dll's source's but i dont really know C++ so i can't really understant that. Can someone explain me how to implement that DLL to my AutoIt project, and properly use it?
08/07/2014 03:41 Requi#4
I just used ControlSend and run as admin. Be sure to have #RequireAdmin at the start of the script.
08/07/2014 12:54 Adiko#5
ControlSend seems to work only at chat functions and some other GUI buttons but i want it to use as movement of my character and it doesn't work at all. Also mouse clicks, they're working but it reads actual mouse position before posting a click so its actually dificullt to make background working bot when it needs to move your mouse.
08/07/2014 13:57 Requi#6
Maybe try to change the angle, by writing in the process memory. Would be quite easier, than trying to move the mouse in the background.

My code btw:
Code:
#RequireAdmin
HotKeySet("{F3}", "startBot")
HotKeySet("{ESC}", "exitBot")

$isRunning = False
pauseBot()

Func pauseBot()
	While 1
		Sleep(1000)
	WEnd
EndFunc

Func startBot()
	$isRunning = Not $isRunning
	If $isRunning Then
		While 1
			ControlSend("AION Client", "", "", "2")
			Sleep(500)
			ControlSend("AION Client", "", "", "1")
			Sleep(1000)
		WEnd
	Else
		pauseBot()
	EndIf
EndFunc

Func exitBot()
	Exit
EndFunc
It's working without any problems.