SatanikStar
28th September 2005, 07:10
This was made using autoit, source is included for anyone who wants to go over the code an compile it/change it themselves. Credits to deuss, for the idea, and robotfood, for helping me with the getasynckeystate function.
Credits
robotfood, showing me the GetAsycnKeyState (aka _IsPressed)
deuss, the idea for anti-recoil
VAC2 proof (should in theory stay that way)
Works on all first person shooter games
How Far... = How many pixels to move down
How Fast... = How fast to move down x pixels
How To Use
Select Key
Select How Fast... (0-10, 0 being fastest, 10 being slowest)
Select How Far... (number of pixels to move)
You can press Esc to exit or click the Off button
http://rapidshare.de/files/5618746/anti-recoil.exe.html
#include<GUIConstants.au3>
#include<Constants.au3>
#include<String.au3>
If Not IsDeclared('WS_CLIPSIBLINGS') Then Global $WS_CLIPSIBLINGS = 0x04000000
$GUI = GuiCreate("Anti-Recoil - By BoB", 100, 200,(@DesktopWidth-500)/2, (@DesktopHeight-400)/2 , $WS_OVERLAPPED+$WS_CAPTION+$WS_SYSMENU+$WS_MINIMIZ EBOX+$WS_VISIBLE+$WS_CLIPSIBLINGS)
; Misc
$lastspeed = IniRead("Anti-Recoil.ini", "Info", "$lastspeed", "0")
$lastvalue = IniRead("Anti-Recoil.ini", "Info", "$lastvalue", "1")
$grpvalue = GUICtrlCreateGroup("", 7, 45, 29, 25)
$grpspeed = GUICtrlCreateGroup("", 7, 90, 29, 25)
;Labels
$lblRecoilKey = GUICtrlCreateLabel("Recoil Key", 10, 125, -1, 15)
$lblvalue = GUICtrlCreateLabel($lastvalue, 10, 55, 20, 13)
$lblspeed = GUICtrlCreateLabel($lastspeed, 10, 100, -1, 13)
$lblvaluemsg = GUICtrlCreateLabel("How Far...", 10, 33, -1, 15)
$lblspeedmsg = GUICtrlCreateLabel("How Fast...", 10, 78, -1, 15)
;Buttons
$btnON = GUICtrlCreateButton("On", 10, 5)
$btnOFF = GUICtrlCreateButton("Off", 40, 5)
$btnEditValue = GUICtrlCreateButton("Edit", 45, 48)
$btnEditSpeed = GUICtrlCreateButton("Edit", 45, 94)
;Menu
$menu1 = GUICtrlCreateMenu("Program")
$menuitemEdit = GUICtrlCreateMenuitem("Edit Value", $menu1)
$menuitemExit = GUICtrlCreateMenuitem("Exit", $menu1)
;Combo Menu
$combo = GUICtrlCreateCombo("Select Key...", 10, 140, 100)
$combo2 = GUICtrlSetData(-1,"Mouse1|Mouse2|Mouse3|Enter|Shift|Ctrl|Alt|End","")
Func _IsPressed($hexKey)
Local $aR, $bO
$hexKey = '0x' & $hexKey
$aR = DllCall("user32", "int", "GetAsyncKeyState", "int", $hexKey)
If Not @error And BitAND($aR[0], 0x8000) = 0x8000 Then
$bO = 1
Else
$bO = 0
EndIf
Return $bO
EndFunc
Func AskValue()
$value = InputBox("Enter Value", "Please enter a value between 1-999.")
If $value>=1 And $value<=999 Then
$value1 = GUICtrlSetData($lblvalue, $value)
$writevalue = IniWrite("Anti-Recoil.ini", "Info", "$lastvalue", "" & $value)
Elseif $value<=0 Or $value>=1000 Then
msgbox(0, "Error", "Invalid input, please input a number between 1-999")
$value = 1
Elseif $value = "" Then
msgbox(0, "Error", "Value was not entered, please input a number between 1-999")
$value = 1
EndIf
EndFunc
Func AskSpeed()
$speed = InputBox("Enter Value", "Please enter a value between 0-10")
If $speed>=0 And $speed<=10 Then
$speed1 = GUICtrlSetData($lblspeed, $speed)
$writespeed = IniWrite("Anti-Recoil.ini", "Info", "$lastspeed", "" & $speed)
Elseif $speed<=-1 Or $speed>=10 Then
msgbox(0, "Error", "Invalid input, please input a number between 0-10")
$speed = 1
Elseif $speed = "" Then
msgbox(0, "Error", "Value was not entered, please input a number between 0-10")
$speed = 1
EndIf
EndFunc
Func CheckCombo()
$key = GUICtrlRead($combo)
If $key = "Mouse1" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "01")
Elseif $key = "Mouse2" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "01")
Elseif $key = "Ctrl" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "11")
Elseif $key = "Alt" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "12")
Elseif $key = "End" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "23")
Elseif $key = "Shift" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "10")
Elseif $key = "Mouse3" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "04")
Elseif $key = "Enter" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "0D")
EndIf
EndFunc
Func Recoil()
While 1
GuiSetState()
$recoilkey = Iniread("Anti-Recoil.cfg", "Info", "$recoilkey", "01")
$exitkey = Iniread("Anti-Recoil.cfg", "Info", "$exitkey", "1B")
$pos = MouseGetPos()
$ypos = $pos[0]
$xpos = $pos[1] + $lastvalue
$msg = GuiGetMsg()
If _IsPressed($recoilkey) = 1 Then
$movemouse = MouseMove($ypos, $xpos, $lastspeed)
Elseif _IsPressed($exitkey) = 1 Then
Exit
Elseif $msg = $btnOFF Or $msg = $GUI_EVENT_CLOSE Then
Exit
Endif
Wend
EndFunc
GuiSetState()
While 1
$msg = GuiGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $menuitemExit
Exit
Case $msg = $menuitemEdit
AskValue()
Case $msg = $btnEditValue
AskValue()
Case $msg = $btnEditSpeed
AskSpeed()
Case $msg = $btnON
Recoil()
Case $msg = $btnOFF
Exit
Case $msg = $combo
CheckCombo()
EndSelect
Wend
I AM AWARE this comes up as a virus on some virus scanners, I can only assume this is because of the function I used to detected if mouse1 is being clicked or not, this is why the source code is provided, and anyone can at their own will decompile it and check it.
File: anti-recoil.exe
Status: INFECTED/MALWARE
MD5 732ee40487b01c22c5a08de554ea5f30
Packers detected: Analyzing...
Scanner results
AntiVir Found nothing
ArcaVir Found Trojan.Clicker.Small.Ht
Avast Found nothing
AVG Antivirus Found nothing
BitDefender Found nothing
ClamAV Found nothing
Dr.Web Found nothing
F-Prot Antivirus Found nothing
Fortinet Found nothing
Kaspersky Anti-Virus Found nothing
NOD32 Found nothing
Norman Virus Control Found nothing
UNA Found nothing
VBA32 Found nothing
Credits
robotfood, showing me the GetAsycnKeyState (aka _IsPressed)
deuss, the idea for anti-recoil
VAC2 proof (should in theory stay that way)
Works on all first person shooter games
How Far... = How many pixels to move down
How Fast... = How fast to move down x pixels
How To Use
Select Key
Select How Fast... (0-10, 0 being fastest, 10 being slowest)
Select How Far... (number of pixels to move)
You can press Esc to exit or click the Off button
http://rapidshare.de/files/5618746/anti-recoil.exe.html
#include<GUIConstants.au3>
#include<Constants.au3>
#include<String.au3>
If Not IsDeclared('WS_CLIPSIBLINGS') Then Global $WS_CLIPSIBLINGS = 0x04000000
$GUI = GuiCreate("Anti-Recoil - By BoB", 100, 200,(@DesktopWidth-500)/2, (@DesktopHeight-400)/2 , $WS_OVERLAPPED+$WS_CAPTION+$WS_SYSMENU+$WS_MINIMIZ EBOX+$WS_VISIBLE+$WS_CLIPSIBLINGS)
; Misc
$lastspeed = IniRead("Anti-Recoil.ini", "Info", "$lastspeed", "0")
$lastvalue = IniRead("Anti-Recoil.ini", "Info", "$lastvalue", "1")
$grpvalue = GUICtrlCreateGroup("", 7, 45, 29, 25)
$grpspeed = GUICtrlCreateGroup("", 7, 90, 29, 25)
;Labels
$lblRecoilKey = GUICtrlCreateLabel("Recoil Key", 10, 125, -1, 15)
$lblvalue = GUICtrlCreateLabel($lastvalue, 10, 55, 20, 13)
$lblspeed = GUICtrlCreateLabel($lastspeed, 10, 100, -1, 13)
$lblvaluemsg = GUICtrlCreateLabel("How Far...", 10, 33, -1, 15)
$lblspeedmsg = GUICtrlCreateLabel("How Fast...", 10, 78, -1, 15)
;Buttons
$btnON = GUICtrlCreateButton("On", 10, 5)
$btnOFF = GUICtrlCreateButton("Off", 40, 5)
$btnEditValue = GUICtrlCreateButton("Edit", 45, 48)
$btnEditSpeed = GUICtrlCreateButton("Edit", 45, 94)
;Menu
$menu1 = GUICtrlCreateMenu("Program")
$menuitemEdit = GUICtrlCreateMenuitem("Edit Value", $menu1)
$menuitemExit = GUICtrlCreateMenuitem("Exit", $menu1)
;Combo Menu
$combo = GUICtrlCreateCombo("Select Key...", 10, 140, 100)
$combo2 = GUICtrlSetData(-1,"Mouse1|Mouse2|Mouse3|Enter|Shift|Ctrl|Alt|End","")
Func _IsPressed($hexKey)
Local $aR, $bO
$hexKey = '0x' & $hexKey
$aR = DllCall("user32", "int", "GetAsyncKeyState", "int", $hexKey)
If Not @error And BitAND($aR[0], 0x8000) = 0x8000 Then
$bO = 1
Else
$bO = 0
EndIf
Return $bO
EndFunc
Func AskValue()
$value = InputBox("Enter Value", "Please enter a value between 1-999.")
If $value>=1 And $value<=999 Then
$value1 = GUICtrlSetData($lblvalue, $value)
$writevalue = IniWrite("Anti-Recoil.ini", "Info", "$lastvalue", "" & $value)
Elseif $value<=0 Or $value>=1000 Then
msgbox(0, "Error", "Invalid input, please input a number between 1-999")
$value = 1
Elseif $value = "" Then
msgbox(0, "Error", "Value was not entered, please input a number between 1-999")
$value = 1
EndIf
EndFunc
Func AskSpeed()
$speed = InputBox("Enter Value", "Please enter a value between 0-10")
If $speed>=0 And $speed<=10 Then
$speed1 = GUICtrlSetData($lblspeed, $speed)
$writespeed = IniWrite("Anti-Recoil.ini", "Info", "$lastspeed", "" & $speed)
Elseif $speed<=-1 Or $speed>=10 Then
msgbox(0, "Error", "Invalid input, please input a number between 0-10")
$speed = 1
Elseif $speed = "" Then
msgbox(0, "Error", "Value was not entered, please input a number between 0-10")
$speed = 1
EndIf
EndFunc
Func CheckCombo()
$key = GUICtrlRead($combo)
If $key = "Mouse1" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "01")
Elseif $key = "Mouse2" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "01")
Elseif $key = "Ctrl" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "11")
Elseif $key = "Alt" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "12")
Elseif $key = "End" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "23")
Elseif $key = "Shift" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "10")
Elseif $key = "Mouse3" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "04")
Elseif $key = "Enter" Then
IniWrite("Anti-Recoil.ini", "Info", "$recoilkey", "0D")
EndIf
EndFunc
Func Recoil()
While 1
GuiSetState()
$recoilkey = Iniread("Anti-Recoil.cfg", "Info", "$recoilkey", "01")
$exitkey = Iniread("Anti-Recoil.cfg", "Info", "$exitkey", "1B")
$pos = MouseGetPos()
$ypos = $pos[0]
$xpos = $pos[1] + $lastvalue
$msg = GuiGetMsg()
If _IsPressed($recoilkey) = 1 Then
$movemouse = MouseMove($ypos, $xpos, $lastspeed)
Elseif _IsPressed($exitkey) = 1 Then
Exit
Elseif $msg = $btnOFF Or $msg = $GUI_EVENT_CLOSE Then
Exit
Endif
Wend
EndFunc
GuiSetState()
While 1
$msg = GuiGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $menuitemExit
Exit
Case $msg = $menuitemEdit
AskValue()
Case $msg = $btnEditValue
AskValue()
Case $msg = $btnEditSpeed
AskSpeed()
Case $msg = $btnON
Recoil()
Case $msg = $btnOFF
Exit
Case $msg = $combo
CheckCombo()
EndSelect
Wend
I AM AWARE this comes up as a virus on some virus scanners, I can only assume this is because of the function I used to detected if mouse1 is being clicked or not, this is why the source code is provided, and anyone can at their own will decompile it and check it.
File: anti-recoil.exe
Status: INFECTED/MALWARE
MD5 732ee40487b01c22c5a08de554ea5f30
Packers detected: Analyzing...
Scanner results
AntiVir Found nothing
ArcaVir Found Trojan.Clicker.Small.Ht
Avast Found nothing
AVG Antivirus Found nothing
BitDefender Found nothing
ClamAV Found nothing
Dr.Web Found nothing
F-Prot Antivirus Found nothing
Fortinet Found nothing
Kaspersky Anti-Virus Found nothing
NOD32 Found nothing
Norman Virus Control Found nothing
UNA Found nothing
VBA32 Found nothing