Jump to content

Aimbot Proof Of Concept


Simucal
 Share

Recommended Posts

I'm pretty sure it's not about recognizing programs, it's more about recognizing what they're doing in memory. So if you have a program that's searching pixels in CS... They'll detect that and you'll be banned.

This aimbot is pretty good, but for a game like CS pixel searching wouldnt be the answer. You would have to do some sort of memory hack or DLL injection to be more efficient.

I've made one for cs.. uses colored models, and is insane fast.. I'll release the code here(phear not, they cant use it without the right madals!)

Opt("MouseClickDelay", 0)
Opt("WinTitleMatchMode", 4)

;3501824 < -- teh ct color
;3502081 < -- teh alternative ct color(?)
;8923697 < -- teh t color(?)
;7143424 < -- teh alternative t color...

HotKeySet("{pause}", "_Pause")

Global $pause = True
Global $cStatus
Global $tmp
Global $TimerHandle

Global $SearchColor = 7143424; T
;~ Global $SearchColor = 2378241; CT
Global $SearchDiff = 20;T
;~ Global $SearchDiff = 20;CT
Global $SearchStep = 1; 1 = No jumps(scans every pixel within the $SearchArea square)
Global $SearchArea = 10
Global $ShootDelay = 100
Global $ShootShoot = False

While 1
    
    If Not $pause And WinActive("classname=Valve001") Then
        $mPos = MouseGetPos()
        
        $cStatus = PixelSearch($mPos[0]-$SearchArea, $mPos[1]-$SearchArea, $mPos[0]+$SearchArea, $mPos[1]+$SearchArea, $SearchColor, $SearchDiff, $SearchStep)
        
        If IsArray($cStatus) Then
            MouseMove($cStatus[0], $cStatus[1]-5, 0)
            If $ShootShoot Then
                If $TimerHandle <> "" Then
                    If TimerDiff($TimerHandle) >= $ShootDelay Then
                        $TimerHandle = ""
                        MouseClick("left")
                    EndIf
                Else
                    $TimerHandle = TimerInit()
                EndIf
            EndIf
        EndIf
        
        $cStatus = 0
        $tmp = 0
        
    EndIf
    
    Sleep(10)
    
WEnd


Func _Pause()
    
    $pause = Not $pause
    
    If $pause Then
        TrayTip("Paused", "Aiming paused", 15)
    Else
        TrayTip("Unpaused", "Aiming!", 15)
    EndIf
    
EndFunc

Only problem is.. it's kind of hard detecting a color which have several different shades depending on the light and stuff - which is all part of counter-strike... so i almost had to be doing a screenshot on every new map to get the "correct" color for that map >.> that was a pain. otherwise it workt quite good. :D

Edited by FreeFry
Link to comment
Share on other sites

  • 1 month later...
  • Replies 86
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

If you guys think this is fast, you should see how fast it goes in a compiled language!

You don't have to do anything tricky with "solid colored models", you can just wait for a simple pixel change (AWPing in CS1.6) is enough if you preaim correctly. All you need is a 1px gap to see if someone is coming, scan a 4x4 pixel block around the cursor and shoot when PixelCheckSum changes. It's really more practical, and much less detectable, especially since if you had the cursor snapping to almost the exact same spot every time. Making it very detectable, while also making the game that much slower.

(4:30AM, falling asleep typing this, will fix errors in the morning if I spot them :P)

Edited by Insolence
"I thoroughly disapprove of duels. If a man should challenge me, I would take him kindly and forgivingly by the hand and lead him to a quiet place and kill him." - Mark TwainPatient: "It hurts when I do $var_"Doctor: "Don't do $var_" - Lar.
Link to comment
Share on other sites

  • 2 weeks later...

Alright, I just figured this out, and I must say, AMZING job and good work.

EDIT:

I've seen alot of confusion about this, and that.

I don't think alot of you understand how VAC works, for CS of course. It shouldent block anything auto-it will try to send. You *should* be able to do a pixel search, NO problem, as well as every other function this method includes.

The only way I seem the detecting it is scanning for it via memory, or a CRC checksum..

Edited by lolp1
Link to comment
Share on other sites

I hope I'm not too late here in saying thankyou for this piece of code (Proof of concept). I've managed to code myself a medal of honour spearhead aimbot now and its working damn good. Some little tweaks to do here and there and I'll paste the code if anyone's interested :)

Mabsey

Link to comment
Share on other sites

I hope I'm not too late here in saying thankyou for this piece of code (Proof of concept). I've managed to code myself a medal of honour spearhead aimbot now and its working damn good. Some little tweaks to do here and there and I'll paste the code if anyone's interested :)

Mabsey

Glad to see you could use it.

AutoIt Scripts:Aimbot: Proof of Concept - PixelSearching Aimbot with several search/autoshoot/lock-on techniques.Sliding Toolbar - Add a nice Sliding Toolbar to your next script. Click the link to see an animation of it in action!FontInfo UDF - Get list of system fonts, or search to see if a particular font is installed.Get Extended Property UDF - Retrieve a files extended properties (e.g., video/image dimensions, file version, bitrate of song/video, etc)
Link to comment
Share on other sites

If you guys think this is fast, you should see how fast it goes in a compiled language!

You don't have to do anything tricky with "solid colored models", you can just wait for a simple pixel change (AWPing in CS1.6) is enough if you preaim correctly. All you need is a 1px gap to see if someone is coming, scan a 4x4 pixel block around the cursor and shoot when PixelCheckSum changes. It's really more practical, and much less detectable, especially since if you had the cursor snapping to almost the exact same spot every time. Making it very detectable, while also making the game that much slower.

(4:30AM, falling asleep typing this, will fix errors in the morning if I spot them :P)

True, but making a bot like that will leave you doing nothing except waiting 'till someone passes by and you will probably get yelled at and kicked for camping, which is no fun either.

I totally agree with you about choosing a compiled language for speed reasons. :)

Simucal, I can't remember whether or not I thanked you for this. This is some good coding, keep it up. :D

Link to comment
Share on other sites

  • 2 weeks later...

You could take a screenshot while in game, then use the AutoIt Info Utility to find the most unique pixel color on the target you are trying to hit.

AutoIt Scripts:Aimbot: Proof of Concept - PixelSearching Aimbot with several search/autoshoot/lock-on techniques.Sliding Toolbar - Add a nice Sliding Toolbar to your next script. Click the link to see an animation of it in action!FontInfo UDF - Get list of system fonts, or search to see if a particular font is installed.Get Extended Property UDF - Retrieve a files extended properties (e.g., video/image dimensions, file version, bitrate of song/video, etc)
Link to comment
Share on other sites

Should be in your AutoIt install directory.

For me, the install placed a link for it in Start->Programs->AutoIt v3->AutoIt Window Info Utility

AutoIt Scripts:Aimbot: Proof of Concept - PixelSearching Aimbot with several search/autoshoot/lock-on techniques.Sliding Toolbar - Add a nice Sliding Toolbar to your next script. Click the link to see an animation of it in action!FontInfo UDF - Get list of system fonts, or search to see if a particular font is installed.Get Extended Property UDF - Retrieve a files extended properties (e.g., video/image dimensions, file version, bitrate of song/video, etc)
Link to comment
Share on other sites

So is Examiner and Venom08 the same person?

Well, yes... he must of completed the autoit-123 program and it posted his score. Then when he went to post a comment on the forum he was still logged in as examiner accidentally.

AutoIt Scripts:Aimbot: Proof of Concept - PixelSearching Aimbot with several search/autoshoot/lock-on techniques.Sliding Toolbar - Add a nice Sliding Toolbar to your next script. Click the link to see an animation of it in action!FontInfo UDF - Get list of system fonts, or search to see if a particular font is installed.Get Extended Property UDF - Retrieve a files extended properties (e.g., video/image dimensions, file version, bitrate of song/video, etc)
Link to comment
Share on other sites

Just a question along the lines of pixel searching etc in FPS games.

Was just doing some testing with pixel searching for a enemy colour in medal of honor allied assault.

Result is gun points straight up to the ceiling and shoots?

would this possibly happen on other FPS games, any one found this?

A reason I think>>?? My mouse is in the middle of the screen. say x = 512 (approx) y = 385 (approx).

pixel searching 100 by 100 around cursor. enemy colour found at say x: 400 y: 200.

use the MouseMove() function to those cords. Basically the mouse never gets to those cords because they keep changing on the screen if you know what i mean (when the mose moves up, so does the screen) so the mouse never gets to 400, 200 cords until you run out of screen. Will only get there once you can not look up any further.

Anyone found anything similar? (if you know what the hell im on about) If so any ideas on how to fix this?

Link to comment
Share on other sites

That happened to me when I tried to make a Counter Strike 1.5 aim-bot.

Pixel searching doesn't work with these games. Because the whole context moves with the mouse it's pretty hard to do that...

This might help you:

Func _MouseMoveRelative ($iX, $iY)
    Local Const $MOUSEEVENTF_MOVE = 0x01
    DllCall ("user32.dll", "int", "mouse_event", _
                                "int", $MOUSEEVENTF_MOVE, _
                                "int", $iX, _
                                "int", $iY, _
                                "int", 0, _
                                "int", 0)
EndFunc

This functions is gonna move the mouse X and Y pixels from it's position.

So, try pixelsearching and calculating the distance the point is from the center of the screen. Then _MouseMoveRelative those distances.

EDIT: I just tested it and it works. PixelSearch for the color you want, and you get the X and Y. Just use _MouseMoveRelative (X - MouseGetPos(0), Y - MouseGetPos(1)).

Edited by CoePSX

[quote name='Valik' post='301213' date='Jan 31 2007, 10:36 PM']You seem to have a habit of putting things in the wrong place. I feel sorry for any female you attempt to have sex with.[/quote][font="Lucida Sans Unicode"][/font]

Link to comment
Share on other sites

That happened to me when I tried to make a Counter Strike 1.5 aim-bot.

Pixel searching doesn't work with these games. Because the whole context moves with the mouse it's pretty hard to do that...

This might help you:

Func _MouseMoveRelative ($iX, $iY)
    Local Const $MOUSEEVENTF_MOVE = 0x01
    DllCall ("user32.dll", "int", "mouse_event", _
                                "long", $MOUSEEVENTF_MOVE, _
                                "int", $iX, _
                                "int", $iY, _
                                "int", 0, _
                                "int", 0)
EndFunc

This functions is gonna move the mouse X and Y pixels from it's position.

So, try pixelsearching and calculating the distance the point is from the center of the screen. Then _MouseMoveRelative those distances.

Ah ha, I knew that was the way. Now I know how. Thanks
Link to comment
Share on other sites

  • 1 year later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...