[AutoIt] ZK autoit exploit 2 clients menu

User Tag List

Results 1 to 5 of 5
  1. #1
    DeadlyDragon's Avatar Active Member
    Reputation
    31
    Join Date
    Sep 2006
    Posts
    125
    Thanks G/R
    1/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [AutoIt] ZK autoit exploit 2 clients

    READ EVERYTHING!!!
    Hey guys threw this together to try something new (text reading for friends list) i have NOT tested this much so have fun, read the instructions carefully! i wont explain how to set the zk save up as there are other threads doing so.

    this image search im testing for finding your friends, it uses the first 5 slots (can be changed) if it doesnt find the person u get and error. I have not been able to get the whole alphabet yet!! so check which letters u can use (i dont have access to all of them.

    if you dont have your windows resized to the smallest it wont pick them up either

    Place Array.au3, ImageSearch.au3 and image_get_info.au3 in the includes folder where u installed autoit
    Place ImageSearchDLL.dll in C:\Windows
    Have every single bmp in the same folder as the script
    You have to use the Windows 7 aero theme
    Start both diablos and shrink them ALL THE WAY, windowed mode, it will get to a point where u cant go anymore.
    Stick the leecher client on the left and host on right as shown in Diablo Example.jpg
    Before running the script, edit it and change the global variable at the top ($playername) to the name of the leecher (keep it short and it only dectect lowercase for now)
    for example if the leechers name was Gambit i would use "ambit" or unique letters "bit".
    RUN the autoit as admiN!!
    Log both characters in and make sure both are ingame (not the same game)
    then with host selected (right window) hit f1

    Some credit goes to lawlpwnage as i used bits of his code.

    here is the code but u do need the other files! (comments arent accurate and are lawlpwnages, i havnt really added my own,)

    Code:
    #include <Array.au3>
    #include <ImageSearch.au3>
    #include "image_get_info.au3"
    
    
    HotKeySet("{F1}", "Start")
    HotKeySet("{F2}", "End")
    
    
    Global $playername = "ath"
    
    
    While 1
        Sleep(100)
    WEnd
    
    
    Func Start()
       ; List D3 windows + handles
       $dClients = WinList("[CLASS:D3 Main Window Class]")
       ; Resume with the first client in the array, this being the (last) active client
       ;Resume($dClients[1][1])
       ;Resume($dClients[2][1])
       While 1
          $timer = TimerInit()
          ;Sleep until logged in
          Do
             Sleep(100)
          Until LoginCheck($dClients[1][1]) = 1
          ; Invite the leecher
          InviteParty($dClients[1][1])
          ErrorCheck($dclients[2][1])
          AcceptInvite($dClients[2][1])
          ; Sleep until the "leader" gets the 2nd party frame
          Do
             Sleep(100)
          Until PartyCheck($dClients[1][1]) = 1
          LeaveGame($dClients[2][1])
          Sleep(4000)
          LeaveGame($dClients[1][1])
          ; Resume with "Leecher"
          Resume($dClients[2][1])
          Resume($dClients[1][1])
          ; Sleep until logged in
          Do
             Sleep(100)
          Until LoginCheck($dClients[2][1]) = 1
          ; Check where Adria is at & click on her when found
          AdriaCheck($dClients[2][1])
          ; Check for quest popup & spam SPACE 4 times
          Local $counter = 0
          Do
             Sleep(100)
             $counter += 1
          Until PopupCheck($dclients[2][1]) = 1 ;Or $counter == 50
          ;ConsoleWrite(TimerDiff($timer) / 1000 & @CRLF)
          ;If $counter == 50 Then
             ;SLeep(100)
          ;Else
             For $i = 0 to 3
                ErrorCheck($dclients[2][1])
                Send("{SPACE DOWN}")
                ErrorCheck($dclients[2][1])
                Sleep(100)
                Send("{SPACE UP}")
                ErrorCheck($dclients[2][1])
                Sleep(100)
             Next
          ;EndIf
        WEnd
    EndFunc   ;==>Start
    
    
    Func Resume($handle)
        Local $dClient
        $dClient = WinGetPos($handle)
        If not (WinActive($handle)) Then
            WinActivate($handle)
            WinWaitActive($handle)
        EndIf
        While 1
            If Hex(PixelGetColor($dClient[0] + 170, $dClient[1] + 255)) = "00190400" Then
                Sleep(500)
                MouseClick("primary", $dClient[0] + 130 + Random(1, 40), $dClient[1] + 255 + Random(1, 3), 1, 2)
                ExitLoop
            EndIf
        WEnd
    ;~     ConsoleWrite("Resumed. Run #" & $r & @CRLF)
    EndFunc   ;==>Resume
    
    
    Func PartyCheck($handle)
        Local $dClient
        $dClient = WinGetPos($handle)
        If not (WinActive($handle)) Then
            WinActivate($handle)
            WinWaitActive($handle)
         EndIf
         ;MouseMove($dClient[0] + 13, $dClient[1] + 407)
         ;sleep(100)
         ;MsgBox(0, "", Hex(PixelGetColor($dClient[0] + 13, $dClient[1] + 407)))
        If Hex(PixelGetColor($dClient[0] + 13, $dClient[1] + 407)) = "001D1A17" Then
            Return 1
        Else
            Return 0
        EndIf
     EndFunc   ;==>PartyCheck
     
    Func LeaveGame($handle)
       Local $dClient
       $dClient = WinGetPos($handle)
          If not (WinActive($handle)) Then
          WinActivate($handle)
          WinWaitActive($handle)
       EndIf
       Send("{ESC DOWN}")
       Sleep(100)
       Send("{ESC UP}")
       Sleep(700)
       MouseClick("primary", $dClient[0] + 330 + Random(1, 5, 1), $dClient[1] + 340 + Random(1, 5, 1), 1, 1)
       Sleep(700)
       MouseClick("primary", $dClient[0] + 310 + Random(1, 5, 1), $dClient[1] + 370 + Random(1, 5, 1), 1, 1)
       Sleep(700)
    EndFunc
    
    
    Func InviteParty($handle)
       Local $dClient
       $dClient = WinGetPos($handle)
       If not (WinActive($handle)) Then
          WinActivate($handle)
          WinWaitActive($handle)
       EndIf
       Send("{O DOWN}")
       Sleep(100)
       Send("{O UP}")
       Sleep(500)
       FindandClick()
       Send("{O DOWN}")
       Sleep(100)
       Send("{O UP}")
       Sleep(500)
    EndFunc   ;==>InviteParty
    
    
    Func AcceptInvite($handle)
       Local $dClient
       $dClient = WinGetPos($handle)
       If not (WinActive($handle)) Then
          WinActivate($handle)
          WinWaitActive($handle)
       EndIf
       sleep(500)
       ErrorCheck($handle)
       MouseClick("primary", $dClient[0] + 701, $dClient[1] + 546)
       Sleep(300)
       ErrorCheck($handle)
       MouseClick("primary", $dClient[0] + 360, $dClient[1] + 382)
    EndFunc   ;==>AcceptInvite
    
    
    Func FindandClick()
       Global $playername
       $string = StringSplit($playername, "")
       $dClients = WinList("[CLASS:D3 Main Window Class]")
       $handle = $dClients[1][1]
       Local $dClient
       $dClient = WinGetPos($handle)
       If not (WinActive($handle)) Then
          WinActivate($handle)
          WinWaitActive($handle)
       EndIf
       $slots = 5
       $x = $dClient[0] + 537
       $y = $dClient[1] + 211
       $x2 = $dClient[0] + 761
       $y2 = $dClient[1] + 239
       $counter = 1
       $scounter = 1
       Do
          Do
             $text = StringReplace(StringStripCR("\"), @LF, "") & $string[$counter]
             $player = _ImageSearch(@ScriptDir & $text, $x, $y, $x2, $y2, "TRANSWHITE", 70, 1, 0)
             $text2 = StringReplace(StringStripCR("\"), @LF, "") & $string[$counter] & ".bmp"
             $aInfo = _ImageGetInfo($text2)
             If IsArray($player) And $counter < $string[0] Then
                $p = _ImageGetParam($aInfo, "Width")
                $a = $player[1]+$p
                $b = $player[2]-4
                $c = $player[1]+7+$p
                $d = $player[2]+8
                $x = $player[1]+1
                Do
                   $counter = $counter+1
                   $text = StringReplace(StringStripCR("\"), @LF, "") & $string[$counter]
                   $test = _ImageSearch(@ScriptDir & $text, $a, $b, $c, $d, "TRANSWHITE", 70, 1, 0)
                   $text2 = @ScriptDir & StringReplace(StringStripCR("\"), @LF, "") & $string[$counter] & ".bmp"
                   $aInfo = _ImageGetInfo($text2)
                   If IsArray($test) Then
                      $p = _ImageGetParam($aInfo, "Width")
                      $a = $test[1]+$p
                      $b = $test[2]-4
                      $c = $test[1]+7+$p
                      $d = $test[2]+8
                      $x = $test[1]+1
                   Else
                      $counter = 1
                   EndIf
                Until $counter == $string[0] Or $counter == 1
             EndIf
          Until $counter = $string[0] Or Not IsArray($player)
          $scounter = $scounter+1
          $x = $dClient[0] + 537
          $x2 = $dClient[0] + 761
          $y = $y+30
          $y2 = $y2+30
       Until $scounter > $slots Or $counter = $string[0]
       If IsArray($player) Then
          $x = $player[1]-150
          $y = $player[2]-10
          $x2 = $player[1]+150
          $y2 = $player[2]+20
       EndIf
       MouseClick("secondary", $player[1], $player[2])
       Sleep(500)
       MouseClick("primary", $player[1] + 77, $player[2] + 60)
    EndFunc
    
    
    Func LoginCheck($handle)
        Local $dClient
        $dClient = WinGetPos($handle)
        If not (WinActive($handle)) Then
            WinActivate($handle)
            WinWaitActive($handle)
         EndIf
        If Hex(PixelGetColor($dClient[0] + 30, $dClient[1] + 522)) = "00FFCB8C" Then
    ;~         ConsoleWrite("Logged in." & @CRLF)
            Return 1
        Else
            Return 0
        EndIf
    EndFunc   ;==>LoginCheck
    
    
    Func AdriaCheck($handle)
        Local $dClient
        $dClient = WinGetPos($handle)
        If not (WinActive($handle)) Then
            WinActivate($handle)
            WinWaitActive($handle)
        EndIf
        For $a = 0 To 6
            For $b = 0 To 1
                Local $coord = PixelSearch(30, 30, 160, 110, 0x3B2621, 3)
                If Not @error Then
                   MouseMove($coord[0], $coord[1])
                   Sleep(100)
                   $adria = _ImageSearch(@ScriptDir & "\adria", $dClient[0] + 5, $dClient[1] + 25, $dClient[0] + 260, $dClient[1] + 160, "TRANSFF00FF", 85, 1, 0)
                   If Not @error Then
                      MouseClick("primary", $coord[0], $coord[1])
                      Return 1
                   EndIf
                EndIf
            Next
        Next
    EndFunc   ;==>AdriaCheck
    
    
    Func ErrorCheck($handle2)
           Local $dClient
        $dClient = WinGetPos($handle2)
        If not (WinActive($handle2)) Then
            WinActivate($handle2)
            WinWaitActive($handle2)
         EndIf
         ;MouseMove($dClient[0] + 400, $dClient[1] + 267)
         ;MsgBox(0, "", Hex(PixelGetColor($dClient[0] + 400, $dClient[1] + 267)))
        If Hex(PixelGetColor($dClient[0] + 400, $dClient[1] + 267)) = "00B97203" Then
          MouseClick("primary", $dClient[0] + 390, $dClient[1] + 382)
        EndIf
     EndFunc   ;==>PopupCheck    
    
    
    Func PopupCheck($handle)
        Local $dClient
        $dClient = WinGetPos($handle)
        If not (WinActive($handle)) Then
            WinActivate($handle)
            WinWaitActive($handle)
         EndIf
         ErrorCheck($handle)
        If Hex(PixelGetColor($dClient[0] + 283, $dClient[1] + 463)) = "00000000" Then
    ;~         ConsoleWrite("Popup." & @CRLF)
            Return 1
        Else
            Return 0
        EndIf
     EndFunc   ;==>PopupCheck       
    
    
    Func End()
           Exit 0
    EndFunc   ;==>End

    let me know how it goes for you guys, PLEASE READ EVERYTHING!
    Attached Files Attached Files
    Last edited by DeadlyDragon; 06-29-2012 at 11:05 PM.

    [AutoIt] ZK autoit exploit 2 clients
  2. #2
    dav1234's Avatar Member
    Reputation
    2
    Join Date
    Jun 2012
    Posts
    5
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Trying to get this to work , what resolution are you running at for the main screen ? or does it not matter , also does the windows have to overlap like on your screenshot ?

    Thanks

  3. #3
    DeadlyDragon's Avatar Active Member
    Reputation
    31
    Join Date
    Sep 2006
    Posts
    125
    Thanks G/R
    1/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    resolution does not matter, just have to make sure the windows are as small as possible, windows do not have to overlap.

  4. #4
    Goldpen223's Avatar Master Sergeant
    Reputation
    23
    Join Date
    Apr 2012
    Posts
    103
    Thanks G/R
    0/0
    Trade Feedback
    2 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Can't get it to work for 64 bit windows. Get error "Failed to Load ImageSearchDLL.dll". I followed the instructions to a tee.

  5. #5
    DeadlyDragon's Avatar Active Member
    Reputation
    31
    Join Date
    Sep 2006
    Posts
    125
    Thanks G/R
    1/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I made it on a 32bit system not sure is the image search dll that i provided was made for 64

Similar Threads

  1. [AutoIt] Zoltun Kulle exploit leveling bot
    By sssniper86 in forum Diablo 3 Bots and Programs
    Replies: 36
    Last Post: 06-26-2012, 07:52 AM
  2. [Exploit] Darkmoon Faire, Lag, & AutoIt
    By sirdavino in forum World of Warcraft Exploits
    Replies: 15
    Last Post: 08-06-2008, 12:37 PM
  3. [Exploit] Easymode Airstrikes quest(G15 or autoit)
    By NRK in forum World of Warcraft Exploits
    Replies: 17
    Last Post: 06-07-2008, 08:31 AM
All times are GMT -5. The time now is 10:30 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search