Code:
Global $Paused
Global $Paused
$default_resolutionX = 1920
$default_resolutionY = 1080
$x_ratio = @Desktopwidth / $default_resolutionX
$y_ratio = @Desktopheight / $default_resolutionY
Dim $Color, $Left, $Top, $Right, $Bottom
$Color = 0xFFFF00 ;rare color code
$Color2 = 0x6969;FF ;blue color code I have the ; in the 6969ff so it doesent pickup remove if you want it too!
$Color3 = 0xBF642F ;legendary color code
$Color4 = 0x00FF00 ;SET color
$Left = 300
$Top = 0
$Right = 1920
$Bottom = 1080
$x = 1
$LeftClear = 1000
$RightClear = 1299
$TopClear = 412
$BottomClear = 620
$BlueClear = 0x111E34
$WhiteClear = 0x100908
$HasCleared = 0
$Amethyst = 0xA56DF1
$Ruby = 0xFA8078
$Emerald = 0x51965B
$Topaz = 0xFFFF59
$LeaveVar = 1
$ResumeVar = 1
$go = True
While $go = true
HotKeySet("=","Start")
HotKeySet("x", "Stop")
Wend
Func StartRun()
MouseClick("middle", Round(500*$x_ratio), Round(250*$y_ratio)) ;starts the run [waypoint 1]
Sleep(630)
Send("1")
Sleep(650)
MouseClick("middle", 137, 223) ;waits 1 second then [waypoint 2]
Call("CheckDead")
Sleep(100)
Send("2")
Sleep(1700)
MouseClick("middle", 74, 373) ;middle of courtyard
Call("CheckDead")
Sleep(1500)
Send("3")
sleep(200)
;cellar check
MouseMove(235, 299, 1) ;moves cursor over to the cellar ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
Sleep(525)
$Pixel2 = PixelSearch(0,0,(960 * $x_ratio),(540 * $y_ratio),0x3B62E3,3) ;searches for the specific blue pixel that only occurs when mouse hovers over open cellar
If Not @error Then
MouseClick("left", 235, 299) ;Entrance to cellar
Sleep(525)
Call("RunCellar")
EndIf
Call("CheckDead")
MouseMove(320, 337, 1) ;moves cursor over to the cellar ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
Sleep(300)
$Pixel2 = PixelSearch(0,0,(960 * $x_ratio),(540 * $y_ratio),0x3B62E3,3) ;searches for the specific blue pixel that only occurs when mouse hovers over open cellar
If Not @error Then
MouseClick("left",320, 337) ;Entrance to cellar
Sleep(525)
Call("RunCellar")
EndIf
Call("CheckDead")
MouseMove(349, 334, 1) ;moves cursor over to the cellar ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
Sleep(250)
$Pixel2 = PixelSearch(0,0,(960 * $x_ratio),(540 * $y_ratio),0x3B62E3,3) ;searches for the specific blue pixel that only occurs when mouse hovers over open cellar
If Not @error Then
MouseClick("left",349, 334) ;Entrance to cellar
Sleep(525)
Call("RunCellar")
EndIf
Call("CheckDead")
MouseMove(262, 203, 1) ;moves cursor over to the cellar ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
Sleep(250)
$Pixel2 = PixelSearch(0,0,(960 * $x_ratio),(540 * $y_ratio),0x3B62E3,3) ;searches for the specific blue pixel that only occurs when mouse hovers over open cellar
If Not @error Then
MouseClick("left", 262, 203) ;Entrance to cellar
Sleep(525)
Call("RunCellar")
Else
Call("NoCellar") ;send you to the townportal sequence
EndIf
EndFunc
Func RunCellar() ;this is the sequence for when you are inside the cellar
if not @error Then
Call("CheckDead")
Sleep(150)
Send(2)
Sleep(2800)
MouseClick("middle", 463, 831)
Sleep(1100)
MouseClick("middle", 582, 493) ;moves to doorway leading to rare inside cellar
Sleep(1300)
MouseMove(Round(579 * $x_ratio),Round(209 * $y_ratio),1) ;hovers over the rare Sarkoth
Send(4)
Sleep(500)
Send("{SHIFTDOWN}")
Sleep(500)
MouseClick("left",Round(600 * $x_ratio),Round(239 * $y_ratio),1)
sleep(500)
MouseDown("right") ;attack middle
Sleep(3800)
MouseMove(Round(467 * $x_ratio),Round(269 * $y_ratio),1) ;attack left, add more sleep time if you can't kill minion on left
Sleep(3000)
MouseMove(Round(682 * $x_ratio),Round(147 * $y_ratio),1) ;attack right
Sleep(2700)
MouseUP("right")
Sleep(300)
Send("{SHIFTUP}")
Sleep(500)
MouseClick("middle",Round(579 *$x_ratio),Round(209 * $y_ratio)) ;location of sarkoth after death
Sleep(1400)
call("FindItem")
call("FindItem")
call("FindItem")
call("FindItem")
MouseClick("left",Round(912*$x_ratio),Round(300 * $y_ratio)) ;moves to right top corner for gold
Sleep(500)
Send("t")
Sleep(7500)
Call("CheckRepair")
EndIf
EndFunc
Func NoCellar() ; town portal sequence if the cellar is not there
if not @error then
Call("CheckDead")
Send("t")
Sleep(7300)
Call("CheckDead")
Call("CheckRepair")
EndIf
EndFunc
Func CheckRepair()
If $x > 9 Then
MouseClick("middle", Round(1480 * $x_ratio),Round(281 * $y_ratio));begin movement towards merchant
Sleep(1400)
MouseClick("middle", Round(1316 * $x_ratio),Round(206 * $y_ratio)) ;moves to get merchant in screen
Sleep(1750)
MouseClick("left", Round(845 * $x_ratio),Round(225 * $y_ratio)) ;NPC Merchant to the right of cain's home
Sleep(1000)
MouseClick("left", Round(521 * $x_ratio),Round(506 * $y_ratio)) ;button to open up repair menu
Sleep(1000)
MouseClick("left", Round(260 * $x_ratio),Round(595 * $y_ratio)) ;button to pay for repairs
Sleep(500)
Send("{ESCAPE}") ;close menu
Sleep(500)
$x = 0
Call("LeaveGame")
Else
$x = $x + 1
Call("LeaveGame")
EndIf
EndFunc
Func FindItem()
$SearchResult = PixelSearch($Left, $Top, $Right, $Bottom, $Color) ;searches for rares
If Not @error Then
$HasCleared = 0
call("ClearInv")
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
Sleep(1500)
EndIf
$SearchResult = PixelSearch($Left, $Top, $Right, $Bottom, $Color2 ) ;searches for magics
If Not @error Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;clicks magic
Sleep(10)
EndIf
$SearchResult = PixelSearch($Left, $Top, $Right, $Bottom, $Color3 ) ;searches for legendarys
If Not @error Then
$HasCleared = 0
call("ClearInv")
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;clicks legendary
Sleep(2000)
EndIf
$SearchResult = PixelSearch($Left, $Top, $Right, $Bottom, $Color4) ;searches for SETS
If Not @error Then
$HasCleared = 0
call("ClearInv")
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
Sleep(2000)
EndIf
; search for gems
$SearchResult = PixelSearch(300, 45, 1190, $Bottom, $Amethyst,8) ;searches for gems
If Not @error Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
Sleep(1500)
EndIf
$SearchResult = PixelSearch(300, 45, 1190, 624, $Ruby,5) ;searches for gems
If Not @error Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
Sleep(1500)
EndIf
$SearchResult = PixelSearch(300, 45, 1190, 624, $Emerald,9) ;searches for gems
If Not @error Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
Sleep(1500)
EndIf
; $SearchResult = PixelSearch(300, 45, 1190, 624, $Topaz,2) ;searches for gems
; If Not @error Then
; MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10) ;IF ITS THERE IT CLICKS IT.
; Sleep(800)
; EndIf
EndFunc
Func ClearInv()
Send("{i}")
Sleep(800)
$SearchResult = PixelSearch($LeftClear, $TopClear, $RightClear, $BottomClear, $WhiteClear)
If Not @error Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10)
Sleep(500)
MouseClick("left", Round(697* $x_ratio),Round(459 * $y_ratio))
Sleep(800)
$HasCleared = 1
EndIf
$SearchResult = PixelSearch($LeftClear, $TopClear, $RightClear, $BottomClear, $BlueClear)
If Not @error Then
If $HasCleared = 0 Then
MouseClick("left", $SearchResult[0], $SearchResult[1], 1, 10)
Sleep(500)
MouseClick("left", Round(697* $x_ratio),Round(459 * $y_ratio))
Sleep(500)
$HasCleared = 1
EndIf
EndIf
Send("{ESCAPE}")
Sleep(500)
EndFunc
Func LeaveGame()
Send("{ESCAPE}") ;opens menu
Sleep(1000)
MouseClick("left", Round(956 * $x_ratio),Round(579 * $y_ratio)) ;button to leave game
Sleep(3000)
Call("CheckResume")
EndFunc
Func CheckResume()
Call("CheckWindow")
if $LeaveVar > 24 Then
MouseClick("left", Round(230 * $x_ratio),Round(416 * $y_ratio)) ;button to resume game from main menu
Sleep(2000)
Call("JoinGame")
$LeaveVar = 1
Else
Sleep(500)
$Pixel3 = PixelSearch(1160,700,1180,730,0xE1B559,3)
If Not @error Then
MouseClick("left", Round(230 * $x_ratio),Round(416 * $y_ratio)) ;button to resume game from main menu
Sleep(2000)
Call("JoinGame")
$LeaveVar = 1
Else
$LeaveVar = $LeaveVar + 1
Call("CheckResume")
EndIf
EndIf
EndFunc
Func JoinGame()
if $ResumeVar > 11 Then
$ResumeVar = 1
Call("StartRun")
Else
Sleep(500)
$Pixel3 = PixelSearch(725,720,770,750,0xDC1D1D,8)
If Not @error Then
$ResumeVar = 1
Call("StartRun")
Else
Sleep(500)
$LeaveVar = $LeaveVar + 1
Call("JoinGame")
EndIf
EndIf
EndFunc
Func CheckWindow()
$Pixel3 = PixelSearch(1115,75,1125,85,0xFFD594,4)
If Not @error Then
Send("{ESCAPE}")
Sleep(500)
Call("CheckResume")
EndIf
$Pixel3 = PixelSearch(815,150,830,165,0xFFD594,4)
If Not @error Then
Send("{ESCAPE}")
Sleep(500)
Call("CheckResume")
EndIf
EndFunc
Func CheckDead()
$Pixel3 = PixelSearch(990,247,1000,259,0xFFFFFF,4)
If Not @error Then
Sleep(500)
Call("LeaveGame")
EndIf
EndFunc
Func Pause()
$Leave = False
EndFunc
Func Stop() ;to allow the script to stop
Exit
EndFunc
Func Start()
Call("StartRun")
EndFunc
I'd be happy to use someone's elses script, I just want a working one! It's frustrating