A guide to get notAres's script running on various 16:10 and above resolutions. menu

User Tag List

Page 1 of 4 1234 LastLast
Results 1 to 15 of 55
  1. #1
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    A guide to get notAres's script running on various 16:10 and above resolutions.

    First, a big thanks and +rep to notAres and everyone who has been contributing to his script.

    Right now, this will work with 1.3a, the 1.3b imagesearch script would need additional tweaking which I haven't played with yet.

    I have an eyefinity setup, 3x 24" 16:10 monitors. So my naitive desktop resolution is 5992x1200, meaning notAres's awesome script wouldn't work right out of the box for me. I had been making much more complicated and unnecessary changes than what was needed, trying to get it working for myself. What needs to be done, is get it set up to work in a 16:9 window, instead of fullscreen-windowed.

    What this is good for, is running it in a 1920x1080 window if your default resolution is 1920x1200 or above, 1600x900 if you have 1680x1050, 1366x768 if you have 1440x900, etc... I have not tested it below 1600x900, but it should work. I've seen plenty of people asking for 800x600, which would take a lot of work to recode, but you can try this at either 854x480, 960x540, both of which are 16:9 resolutions. They may be too small and throw the pathing off, again I have not tested that small.

    Figure out which 16:9 resolution closest matches your default. Once you have that, lets get to the actual code changes.

    So, the first change that needs to be made, is right at the top, after the green comment text (line 21), you need to put in these 2 lines

    Code:
    Opt('MouseCoordMode', 2)
    Opt('PixelCoordMode', 2)
    This will cause the script to only take into account your active window. So when the script is pulling up the coords where to shoot and move, it will see them properly.

    The next change comes at lines 52 and 53. You want to change "@Desktopwidth" and "@Desktopheight", to whatever 16:9 resolution you're going to make the D3 window. Save your changes, that's it for now. May need to come back to make one more change, but we'll get to that.

    Next, you need to open up your D3Prefs.txt file. It should be in "C:\Users\%UserName\Documets\Diablo III". It's always best to make a backup copy when making any changes, just to be safe. The block of text you're looking for is the one starting at DisplayModeWindowMode, and ends at DisplayModeHeight. Here's the ones you want to change, what to set them to.

    Code:
    DisplayModeWindowMode "1"
    DisplayModeUIOptWidth "1920"
    DisplayModeUIOptHeight "1080"
    DisplayModeWidth "1920"
    DisplayModeHeight "1080"
    Of course, change the 1920's and 1080's to your own resolution. Save it, make it read only.

    That's all the changes that should need to be made. Run Diablo, run the script, test it out. You should have Diablo running in a window, with the script properly functioning.

    Now, one change you may need to make, is if the script isn't detecting the cellar door. If when you get to the cellar part, and the mouse isn't hovering over the door, you'll need to change where it's looking. Get to the point where your character pauses to look for the door, stop the script. Go into AutoIt folder, and open up AutoIt Window Info. Go top Options>Coord Mode, choose Window. Click the little left\right arrows to choose the mouse tab. Click (don't release, you have to hold the button down) on the finder tool, and move to where your mouse needs to be to detect the door. That'll show you under position the coords you're looking for. Go to line 89 in the code, and change the "300" and "100" to those respective coords you just found, and do the same for line 102. Save your code, and it should now be fine.


    As I said, I haven't tested this below 1600:900, but his code is set up so it should work on other 16:9 resolutions. I hope this helps someone else who was bummed that they didn't have a 16:9 resolution and couldn't use the script

    A guide to get notAres's script running on various 16:10 and above resolutions.
  2. #2
    JuniorFisherman's Avatar Member
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    18
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    So if I have 1680x1050, can I change the resolution of the D3prefs to 1280x720?

    Edit: Oh snap nvm, yup, it works. ^
    +rep o-o
    Last edited by JuniorFisherman; 06-10-2012 at 12:04 PM. Reason: rawr

  3. #3
    shujinku's Avatar Member
    Reputation
    1
    Join Date
    Apr 2007
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i dont know what i m doing wrong but it doesnt work for 1600x900 -.- just annoyin

  4. #4
    JuniorFisherman's Avatar Member
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    18
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Gotta change this:
    Code:
    DisplayModeWinWidth "___"
    DisplayModeWinHeight "___"
    DisplayModeUIOptWidth "___"
    DisplayModeUIOptHeight "___"
    DisplayModeWidth "___"
    DisplayModeHeight "___"
    to your game resolution with the 16:9 ratio, and it should work fine!

  5. #5
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by shujinku View Post
    i dont know what i m doing wrong but it doesnt work for 1600x900 -.- just annoyin
    If you follow the steps, editing the code and your D3Pref's as described, it should work perfectly. What's happening when you're trying it?

    Glad to hear it works on 1280x720 JuniorFisherman. I didn't try it lower than 1600x900, but notAres' code is pretty solid, it should work on any 16:9 resolution.

  6. #6
    Overfl0w's Avatar Member
    Reputation
    1
    Join Date
    Jan 2008
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Still not working. Cant even see the entrance, when he runs their for the check.. any solutions? got 16:9 with 1280x720 ingame.
    also switched it in d3prefs to 1280x720

  7. #7
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Overfl0w View Post
    Still not working. Cant even see the entrance, when he runs their for the check.. any solutions? got 16:9 with 1280x720 ingame.
    also switched it in d3prefs to 1280x720
    Are you able to take a screen shot of where you are when it checks? Do you have 25% movements speed (10% from boots and 15% from passive)? Do you have the Tactical Advantage passive? Most of the times if you're not getting to the entrance, you're not moving fast enough.

  8. #8
    Overfl0w's Avatar Member
    Reputation
    1
    Join Date
    Jan 2008
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    A guide to get notAres's script running on various 16:10 and above resolutions.-cain-jpg

    Hes running straight into the wall.

  9. #9
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Make sure you have the proper build and movement speed.

    I'd go back through, and just double check that you followed all the steps. The whole point of having it run in a window, instead of fullscreen windowed, is so it can work for anybody, regardless of what your computer\resolution is. If it worked for JuniorFisherman in 1280x720, there is no reason it shouldn't work for you as long as you followed the steps exactly..

  10. #10
    Overfl0w's Avatar Member
    Reputation
    1
    Join Date
    Jan 2008
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Dont know. Changed it to 1650x1020 and hes running in now. But can barely see the entrance at top, but he is far away from hitting it with the mouse

  11. #11
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Overfl0w View Post
    Dont know. Changed it to 1650x1020 and hes running in now. But can barely see the entrance at top, but he is far away from hitting it with the mouse
    Right in the first post, it says that can happen, and how to correct it.

  12. #12
    shujinku's Avatar Member
    Reputation
    1
    Join Date
    Apr 2007
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Simonzi View Post
    If you follow the steps, editing the code and your D3Pref's as described, it should work perfectly. What's happening when you're trying it?

    Glad to hear it works on 1280x720 JuniorFisherman. I didn't try it lower than 1600x900, but notAres' code is pretty solid, it should work on any 16:9 resolution.
    my character is just loging in running with the mouse over my screen uses teleport login out and restart. he isnt even moving :l

  13. #13
    dcplee's Avatar Private
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    can some1 post their paste bin for 1600 x 900 its clicking all over the place and can't even find resume

  14. #14
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Before I even post the code, I want to make sure this is clear, and I can't stress it enough. Either read the green text at the top, or through the first post here

    For this to work, you need certain passives, and you need 10% movement speed on your boots.

    Now, when you start the script, for about 30 seconds or so, it's going to look like it's not working. The mouse will move around your menu screen, it'll open your banner edit page thing, etc... But after about 30 seconds, it will start the proper loop. This is normal.

    I don't have a PasteBin account, so here's the code for 1600x900.

    Code:
        ;notAres' Sarkoth DH Gold Script 1.3a - 6/9/2012 - Holy shit look how beautiful this code is. Utilized ExitLoop to perfect the efficiency when dead/logging out/in need of repair
        ;Thread: http://ownedcore.com/forums/diablo-3/diablo-3-bots-programs/354464-goldfarming-notares-sarkarth-dh-gold-script-autoit-script-1920x1080.html
        ;Please notice I changed some variable names around and added a variable for teleport time. $waittime is now appropriately named $loadtime.
        ;WONT WORK UNLESS MOVE IS BOUND TO MIDDLE MOUSE (Mouse 3) -- NOT MOVE/INTERACT
        ;Required build: http://us.battle.net/d3/en/calculator/demon-hunter#aRYXVT!aTW!YcaZbY
        ;Required movement speed: 25% (10% boots + 15% passive 'Hot Pursuit')
        ;Required display mode for cellar detection: "FULLSCREEN WINDOWED"
        ;Official supported resolution: 1920x1080
        ;;;;;
        ;Features:
        ;Loot scanning. Will only pick up rare/legendary/set pieces [IMPROVED]
        ;Randomized aiming coordinates (but still static path)
        ;Randomized pickup timers for variation in runs
        ;Automatic repair on yellow status icon
        ;Automatic resolution adjustment (16:9 only) [BUGGY - need someone to tweak coords]
        ;Death check
        ;Open window check (in rare case it gets stuck in menu)
        ;;;;;
        ;Original:
        ;[Goldfarming] AFK 150k-200k Gold Per Hour by mackus101 @ ownedcore
        
        Opt('MouseCoordMode', 2)
        Opt('PixelCoordMode', 2) 
    
        Global $Paused
        HotKeySet("=","Leave")  ;script started by pressing =
        HotKeySet("-", "Pause") ;script paused by pressing -
        HotKeySet("x", "Stop") ;script stopped by pressing x
         
        $walktime = 3000 ; time in ms the script waits for you to enter and load the cellar. Slow this down for slower move speeds and loading times
        $loadtime = 3200 ; time in ms the script waits for the game to load before it starts pathfinding. Slow this down for slower hard drives
        $tptime =       6900 ; time in ms the script waits for teleport before exiting the game
        $yellow =       0xFFF000 ; yellow color code (repair icon)
        $red =          0xD90000 ; red color code (repair icon)
         
        $LootRares = True ; Change this to false if you don't want the bot to pick up rares (good for legendary/set only, recommend setting LootGems to False)
        $LootGems = False ; Change this to true if you want to pick up gems (messy, can fill up bag with whites/blues)
        $Amethyst = 0xAC7FFF
        $Ruby = 0xB01D2D
        $Emerald = 0x58EE33
        $Topaz = 0xFFFF59
         
        $go = True
        $Leave = False
        $Dead = False
        $Logout = False
        $Window = False
        $default_resolutionX = 1920
        $default_resolutionY = 1080
        $x_ratio = 1600 / $default_resolutionX
        $y_ratio = 900 / $default_resolutionY
        $i = 0
         
        Call("RestartRun")
         
        Func RestartRun()
           While $go
                  if($Leave) Then
                         $i = 0
                         Sleep(800) ;had to add this since the icon doesn't show up RIGHT away in game
                         Call("CheckDead")
                         Call("CheckRepair")
                         If $Window Then
                                MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                Sleep($loadtime)
                                $Window = False
                                ExitLoop
                         ElseIf $Dead or $Logout Then
                                ExitLoop
                         EndIf
                         MouseClick("middle", Round(500*$x_ratio), Round(250*$y_ratio)) ;starts the run [waypoint 1]
                         Sleep(900)
                         Send("2")
                         Sleep(250)
                         MouseClick("middle", 1, Round(370*$y_ratio)) ;waits ~1 second then [waypoint 2]
                         Sleep(1500)
                         MouseClick("middle", Round(400*$x_ratio), Round(600*$y_ratio)) ;middle of courtyard [waypoint 3]
                         Sleep(40)
                         Send("2")
                         Sleep(20)
                         Send("3")
                         Sleep(600)
                         Send("1")
                         Sleep(300)
                         MouseMove(Round(300*$x_ratio),Round(100*$y_ratio),1) ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
                         Sleep(790)
                         Call("CheckDead")
                         If $Window Then
                                MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                Sleep($loadtime)
                                $Window = False
                                ExitLoop
                         ElseIf $Dead or $Logout Then
                                ExitLoop
                         EndIf
                         $Pixel2 = PixelSearch(0,0, Round(600*$x_ratio), Round(600*$y_ratio),0x334FB7,3) ;checks for open cellar (in a 600x400 box from the top left - where it should always be)
                                   If Not @error Then
                                          MouseClick("left",Round(300*$x_ratio),Round(100*$y_ratio)) ;Entrance to cellar
                                          Sleep(300)
                                          Send("2")
                                          Sleep($walktime)
                                          MouseClick("middle",Round(110*$x_ratio),Round(1000*$y_ratio)) ;moves to doorway leading to rare inside cellar
                                          Sleep(2500)
                                          MouseMove(Round(440*$x_ratio),Round(80*$y_ratio),1) ;hovers over the rare Sarkoth
                                          Sleep(10)
                                          Send("{SHIFTDOWN}")
                                          MouseDown("right") ;attack middle
                                          Sleep(1200)
                                          Send("4")
                                          Sleep(3000)
                                          MouseUp("right")
                                          MouseClick("left",Round(440*$x_ratio),Round(80*$y_ratio),2)
                                          MouseMove(Round(240*$x_ratio),Round(75*$y_ratio),1) ;attack left
                                          Sleep(40)
                                          MouseDown("right")
                                          Sleep(2800)
                                          MouseUp("right")
                                          MouseMove(Round(590*$x_ratio),Round(50*$y_ratio),1) ;attack right
                                          MouseDown("right")
                                          Sleep(1800)
                                          MouseUp("right")
                                          MouseDown("left")
                                          MouseMove(Round(Random(240,260)*$x_ratio),Round(75*$y_ratio),1) ;attack left
                                          Sleep(1200)
                                          MouseMove(Round(Random(560,600)*$x_ratio),Round(50*$y_ratio),1) ;attack right
                                          Sleep(1200)
                                          MouseUP("left")
                                          Sleep(10)
                                          MouseClick("right",Round(620*$x_ratio),Round(20*$y_ratio),2) ;break the table & chair
                                          Sleep(10)
                                          Send("{SHIFTUP}")
                                          Sleep(400)
                                          MouseClick("middle",Round(530*$x_ratio),Round(170*$y_ratio)) ;location of sarkoth after death
                                          Sleep(2100)
                                          MouseClick("middle",Round(580*$x_ratio),Round(460*$y_ratio)) ;move to left top corner for gold
                                          Sleep(1100)
                                          MouseClick("middle",Round(1330*$x_ratio),Round(330*$y_ratio)) ;move to right top corner for gold
                                          Sleep(1100)
                                          Send("4")
                                          MouseClick("middle",Round(1010*$x_ratio),Round(940*$y_ratio)) ;move to middle before looting
                                          Call("CheckLoot")
                                          Send("t")
                                          Sleep($tptime)
                                          Call("CheckDead")
                                          If Not $Logout And Not $Dead And Not $Window Then
                                                 Sleep(300)
                                                 Send("{ESCAPE}") ;menu
                                                 Sleep(200)
                                                 MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                                                 Sleep($loadtime)
                                                 Call("CheckDead")
                                                 If Not $Logout Then
                                                        MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                        Sleep($loadtime)
                                                 EndIf
                                          Else
                                                 MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                 Sleep($loadtime)
                                                 $Window = False ; reset the flag so it doesn't think a window is always up
                                          EndIf
                                   Else
                                          Sleep(10)
                                          MouseClick("middle",Round(1100*$x_ratio),Round(600*$y_ratio)) ;moves between caltrops for safety before teleporting back to town
                                          Sleep(200)
                                          Send("1")
                                          Sleep(620)
                                          Send("2")
                                          Sleep(40)
                                          Send("t")
                                          Sleep($tptime)
                                          Call("CheckDead")
                                          If Not $Logout And Not $Dead And Not $Window Then
                                                 Sleep(300)
                                                 Send("{ESCAPE}") ;menu
                                                 Sleep(200)
                                                 MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                                                 Sleep($loadtime)
                                                 Call("CheckDead")
                                                 If Not $Logout Then
                                                        MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                        Sleep($loadtime)
                                                 EndIf
                                          Else
                                                 MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                 Sleep($loadtime)
                                                 $Window = False ; reset the flag so it doesn't think a window is always up
                                          EndIf
                                EndIf
                  EndIf
           WEnd
           Call("RestartRun")
        EndFunc
         
        Func CheckDead()
        Call("CheckWindow")
        $YouHaveDied = PixelSearch(Round(620*$x_ratio), Round(325*$y_ratio), Round(625*$x_ratio), Round(330*$y_ratio), 0xFFFFFF) ; checks for white text "YOU HAVE DIED"
        If Not @error Then
           If Not $Window Then
                  $Dead = True
                  Sleep(100)
                  Send("{Escape}")
                  Sleep(10)
                  MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                  Sleep(11000)
                  Sleep($loadtime)
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
           Else
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
                  $Dead = False
           EndIf
        Else
           $Dead = False
        EndIf
        $LogoutTimerCancel = PixelSearch(Round(900*$x_ratio), Round(240*$y_ratio), Round(1010*$x_ratio), Round(290*$y_ratio), 0x993827) ; checks for cancel button on logout timer
        If Not @error Then
           Sleep(11000)
           Sleep($loadtime)
           If Not $Window Then
                  $Dead = True
                  $Logout = True
                  Sleep($loadtime)
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
           Else
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
                  $Logout = False
           EndIf
        Else
           $Logout = False
        EndIf
        EndFunc
         
        Func CheckWindow()
        $CloseButton = PixelSearch(Round(1570*$x_ratio), Round(110*$y_ratio), Round(1590*$x_ratio), Round(120*$y_ratio), 0x8C2300) ; checks for the red color of the "X" on an open window
        If Not @error Then
           Sleep(200)
           Send("{SPACE}") ;close any open windows
           $Window = True
        Else
           $Window = False
        EndIf
        EndFunc
         
        Func CheckRepair()
        $RepairArea = PixelSearch(Round(1480*$x_ratio), 0, Round(1570*$x_ratio), Round(100*$y_ratio), $yellow)
           If Not @error Then
                  Call("DoRepair")
           EndIf
        $RepairAreaRed = PixelSearch(Round(1480*$x_ratio), 0, Round(1570*$x_ratio), Round(100*$y_ratio), $red)
           If Not @error Then
                  Call("DoRepair")
           EndIf
        EndFunc
         
        Func DoRepair()
        Sleep(100)
        Send("t")
        Sleep($tptime)
        MouseClick("left", Round(1480*$x_ratio),Round(281*$y_ratio)) ;begin movement towards merchant
        Sleep(1500)
        MouseClick("left", Round(1316*$x_ratio),Round(206*$y_ratio)) ;moves to get merchant in screen
        Sleep(1500)
        MouseClick("left", Round(845*$x_ratio),Round(225*$y_ratio)) ;NPC Merchant to the right of cain's home
        Sleep(1200)
        MouseClick("left", Round(521*$x_ratio),Round(506*$y_ratio)) ;button to open up repair menu
        Sleep(400)
        MouseClick("left", Round(260*$x_ratio),Round(595*$y_ratio)) ;button to pay for repairs
        Sleep(200)
        Call("CheckDead")
        If Not $Dead and Not $Logout Then
           Send("{ESCAPE}") ;closes repair tab
           Sleep(100)
           Send("{ESCAPE}") ;menu
           Sleep(10)
           MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
           Sleep($loadtime)
           MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
           Sleep($loadtime)
        EndIf
        EndFunc
         
        Func CheckLoot()
        Sleep(Random(500,2000))
        $SetLoot = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0x02CE01, 2) ; set loot
        If Not @error Then
           MouseClick ('left', $SetLoot[0], $SetLoot[1])
           Sleep(Random(800,1200))
           $i+= 1
           If $i <= 6 Then
                  Call("CheckLoot")
           EndIf
        EndIf
        $LegendaryLoot= PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0xBF642F, 2) ; legendary loot
        If Not @error Then
           MouseClick ('left', $LegendaryLoot[0], $LegendaryLoot[1])
           Sleep(Random(800,1200))
           $i+= 1
           If $i <= 6 Then
                  Call("CheckLoot")
           EndIf
        EndIf
        If $LootRares Then
           $RareLoot = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0xBBBB00, 2) ; rare loot (darker for compatibility)
           If Not @error Then
                  MouseClick ('left', $RareLoot[0], $RareLoot[1])
                  Sleep(Random(700,900))
                  $i+= 1
                  If $i <= 6 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
        EndIf
        If $LootGems Then
           $AmethystDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Amethyst,8)
           If Not @error Then
                  MouseClick("left", $AmethystDrop[0], $AmethystDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $RubyDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Ruby,6)
           If Not @error Then
                  MouseClick("left", $RubyDrop[0], $RubyDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $EmeraldDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Emerald,11)
           If Not @error Then
                  MouseClick("left", $EmeraldDrop[0], $EmeraldDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $TopazDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Topaz,2)
           If Not 1 = 1 Then ; change to 'If Not @error Then' if you want to search for topazes
                  MouseClick("left", $TopazDrop[0], $TopazDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
        EndIf
        EndFunc
         
        Func Pause()
           $Leave = False
        EndFunc
         
        Func Stop() ;to allow the script to stop
            Exit
        EndFunc
         
        Func Leave()
           $Leave = True
        EndFunc
    Now again, you HAVE to edit your D3Prefs.txt file. Locate these lines, and make them these exact values.

    Code:
    DisplayModeWindowMode "1"
    DisplayModeWinLeft "1"
    DisplayModeWinTop "1"
    DisplayModeWinWidth "1616"
    DisplayModeWinHeight "938"
    DisplayModeUIOptWidth "1600"
    DisplayModeUIOptHeight "900"
    DisplayModeWidth "1600"
    DisplayModeHeight "900"
    When you run D3, it should launch in a 1600x900 window, not fullscreen, or windowed fullscreen. Load the scrip, press the "=" key, watch your cursor bounce around the D3 window for a bit, then it'll be off. I just tested it personally, and it works fine. There is absolutely no reason it shouldn't work for anyone else, unless you are not doing something correct. That's the whole point of having it run in windowed mode.

  15. #15
    Simonzi's Avatar Active Member
    Reputation
    20
    Join Date
    Jun 2012
    Posts
    147
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Here's the info for 1280x720.

    Now, when I was testing the 1280x720 variation myself, it wouldn't work at first, it wouldn't move from the resume game screen. What you need to do, right when you start it, is just watch it. Your mouse will bounce around, open up the banner edit page. It will close that, then it will open up your character stats page. As soon as it opens up your character stat page, just hit the space bar to close it. It will then click the resume game button, and function normally from there. Just that first time when it starts, you need to hit the space bar when it opens up your character stats page (not the banner one).

    Code:
        ;notAres' Sarkoth DH Gold Script 1.3a - 6/9/2012 - Holy shit look how beautiful this code is. Utilized ExitLoop to perfect the efficiency when dead/logging out/in need of repair
        ;Thread: http://ownedcore.com/forums/diablo-3/diablo-3-bots-programs/354464-goldfarming-notares-sarkarth-dh-gold-script-autoit-script-1920x1080.html
        ;Please notice I changed some variable names around and added a variable for teleport time. $waittime is now appropriately named $loadtime.
        ;WONT WORK UNLESS MOVE IS BOUND TO MIDDLE MOUSE (Mouse 3) -- NOT MOVE/INTERACT
        ;Required build: http://us.battle.net/d3/en/calculator/demon-hunter#aRYXVT!aTW!YcaZbY
        ;Required movement speed: 25% (10% boots + 15% passive 'Hot Pursuit')
        ;Required display mode for cellar detection: "FULLSCREEN WINDOWED"
        ;Official supported resolution: 1920x1080
        ;;;;;
        ;Features:
        ;Loot scanning. Will only pick up rare/legendary/set pieces [IMPROVED]
        ;Randomized aiming coordinates (but still static path)
        ;Randomized pickup timers for variation in runs
        ;Automatic repair on yellow status icon
        ;Automatic resolution adjustment (16:9 only) [BUGGY - need someone to tweak coords]
        ;Death check
        ;Open window check (in rare case it gets stuck in menu)
        ;;;;;
        ;Original:
        ;[Goldfarming] AFK 150k-200k Gold Per Hour by mackus101 @ ownedcore
        
        Opt('MouseCoordMode', 2)
        Opt('PixelCoordMode', 2) 
    
        Global $Paused
        HotKeySet("=","Leave")  ;script started by pressing =
        HotKeySet("-", "Pause") ;script paused by pressing -
        HotKeySet("x", "Stop") ;script stopped by pressing x
         
        $walktime = 3000 ; time in ms the script waits for you to enter and load the cellar. Slow this down for slower move speeds and loading times
        $loadtime = 3200 ; time in ms the script waits for the game to load before it starts pathfinding. Slow this down for slower hard drives
        $tptime =       6900 ; time in ms the script waits for teleport before exiting the game
        $yellow =       0xFFF000 ; yellow color code (repair icon)
        $red =          0xD90000 ; red color code (repair icon)
         
        $LootRares = True ; Change this to false if you don't want the bot to pick up rares (good for legendary/set only, recommend setting LootGems to False)
        $LootGems = False ; Change this to true if you want to pick up gems (messy, can fill up bag with whites/blues)
        $Amethyst = 0xAC7FFF
        $Ruby = 0xB01D2D
        $Emerald = 0x58EE33
        $Topaz = 0xFFFF59
         
        $go = True
        $Leave = False
        $Dead = False
        $Logout = False
        $Window = False
        $default_resolutionX = 1920
        $default_resolutionY = 1080
        $x_ratio = 1280 / $default_resolutionX
        $y_ratio = 720 / $default_resolutionY
        $i = 0
         
        Call("RestartRun")
         
        Func RestartRun()
           While $go
                  if($Leave) Then
                         $i = 0
                         Sleep(800) ;had to add this since the icon doesn't show up RIGHT away in game
                         Call("CheckDead")
                         Call("CheckRepair")
                         If $Window Then
                                MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                Sleep($loadtime)
                                $Window = False
                                ExitLoop
                         ElseIf $Dead or $Logout Then
                                ExitLoop
                         EndIf
                         MouseClick("middle", Round(500*$x_ratio), Round(250*$y_ratio)) ;starts the run [waypoint 1]
                         Sleep(900)
                         Send("2")
                         Sleep(250)
                         MouseClick("middle", 1, Round(370*$y_ratio)) ;waits ~1 second then [waypoint 2]
                         Sleep(1500)
                         MouseClick("middle", Round(400*$x_ratio), Round(600*$y_ratio)) ;middle of courtyard [waypoint 3]
                         Sleep(40)
                         Send("2")
                         Sleep(20)
                         Send("3")
                         Sleep(600)
                         Send("1")
                         Sleep(300)
                         MouseMove(Round(300*$x_ratio),Round(100*$y_ratio),1) ;moves cursor over to the cellar so the proper blue pixel becomes highlighted
                         Sleep(790)
                         Call("CheckDead")
                         If $Window Then
                                MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                Sleep($loadtime)
                                $Window = False
                                ExitLoop
                         ElseIf $Dead or $Logout Then
                                ExitLoop
                         EndIf
                         $Pixel2 = PixelSearch(0,0, Round(600*$x_ratio), Round(600*$y_ratio),0x334FB7,3) ;checks for open cellar (in a 600x400 box from the top left - where it should always be)
                                   If Not @error Then
                                          MouseClick("left",Round(300*$x_ratio),Round(100*$y_ratio)) ;Entrance to cellar
                                          Sleep(300)
                                          Send("2")
                                          Sleep($walktime)
                                          MouseClick("middle",Round(110*$x_ratio),Round(1000*$y_ratio)) ;moves to doorway leading to rare inside cellar
                                          Sleep(2500)
                                          MouseMove(Round(440*$x_ratio),Round(80*$y_ratio),1) ;hovers over the rare Sarkoth
                                          Sleep(10)
                                          Send("{SHIFTDOWN}")
                                          MouseDown("right") ;attack middle
                                          Sleep(1200)
                                          Send("4")
                                          Sleep(3000)
                                          MouseUp("right")
                                          MouseClick("left",Round(440*$x_ratio),Round(80*$y_ratio),2)
                                          MouseMove(Round(240*$x_ratio),Round(75*$y_ratio),1) ;attack left
                                          Sleep(40)
                                          MouseDown("right")
                                          Sleep(2800)
                                          MouseUp("right")
                                          MouseMove(Round(590*$x_ratio),Round(50*$y_ratio),1) ;attack right
                                          MouseDown("right")
                                          Sleep(1800)
                                          MouseUp("right")
                                          MouseDown("left")
                                          MouseMove(Round(Random(240,260)*$x_ratio),Round(75*$y_ratio),1) ;attack left
                                          Sleep(1200)
                                          MouseMove(Round(Random(560,600)*$x_ratio),Round(50*$y_ratio),1) ;attack right
                                          Sleep(1200)
                                          MouseUP("left")
                                          Sleep(10)
                                          MouseClick("right",Round(620*$x_ratio),Round(20*$y_ratio),2) ;break the table & chair
                                          Sleep(10)
                                          Send("{SHIFTUP}")
                                          Sleep(400)
                                          MouseClick("middle",Round(530*$x_ratio),Round(170*$y_ratio)) ;location of sarkoth after death
                                          Sleep(2100)
                                          MouseClick("middle",Round(580*$x_ratio),Round(460*$y_ratio)) ;move to left top corner for gold
                                          Sleep(1100)
                                          MouseClick("middle",Round(1330*$x_ratio),Round(330*$y_ratio)) ;move to right top corner for gold
                                          Sleep(1100)
                                          Send("4")
                                          MouseClick("middle",Round(1010*$x_ratio),Round(940*$y_ratio)) ;move to middle before looting
                                          Call("CheckLoot")
                                          Send("t")
                                          Sleep($tptime)
                                          Call("CheckDead")
                                          If Not $Logout And Not $Dead And Not $Window Then
                                                 Sleep(300)
                                                 Send("{ESCAPE}") ;menu
                                                 Sleep(200)
                                                 MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                                                 Sleep($loadtime)
                                                 Call("CheckDead")
                                                 If Not $Logout Then
                                                        MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                        Sleep($loadtime)
                                                 EndIf
                                          Else
                                                 MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                 Sleep($loadtime)
                                                 $Window = False ; reset the flag so it doesn't think a window is always up
                                          EndIf
                                   Else
                                          Sleep(10)
                                          MouseClick("middle",Round(1100*$x_ratio),Round(600*$y_ratio)) ;moves between caltrops for safety before teleporting back to town
                                          Sleep(200)
                                          Send("1")
                                          Sleep(620)
                                          Send("2")
                                          Sleep(40)
                                          Send("t")
                                          Sleep($tptime)
                                          Call("CheckDead")
                                          If Not $Logout And Not $Dead And Not $Window Then
                                                 Sleep(300)
                                                 Send("{ESCAPE}") ;menu
                                                 Sleep(200)
                                                 MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                                                 Sleep($loadtime)
                                                 Call("CheckDead")
                                                 If Not $Logout Then
                                                        MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                        Sleep($loadtime)
                                                 EndIf
                                          Else
                                                 MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                                                 Sleep($loadtime)
                                                 $Window = False ; reset the flag so it doesn't think a window is always up
                                          EndIf
                                EndIf
                  EndIf
           WEnd
           Call("RestartRun")
        EndFunc
         
        Func CheckDead()
        Call("CheckWindow")
        $YouHaveDied = PixelSearch(Round(620*$x_ratio), Round(325*$y_ratio), Round(625*$x_ratio), Round(330*$y_ratio), 0xFFFFFF) ; checks for white text "YOU HAVE DIED"
        If Not @error Then
           If Not $Window Then
                  $Dead = True
                  Sleep(100)
                  Send("{Escape}")
                  Sleep(10)
                  MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
                  Sleep(11000)
                  Sleep($loadtime)
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
           Else
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
                  $Dead = False
           EndIf
        Else
           $Dead = False
        EndIf
        $LogoutTimerCancel = PixelSearch(Round(900*$x_ratio), Round(240*$y_ratio), Round(1010*$x_ratio), Round(290*$y_ratio), 0x993827) ; checks for cancel button on logout timer
        If Not @error Then
           Sleep(11000)
           Sleep($loadtime)
           If Not $Window Then
                  $Dead = True
                  $Logout = True
                  Sleep($loadtime)
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
           Else
                  MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
                  Sleep($loadtime)
                  $Logout = False
           EndIf
        Else
           $Logout = False
        EndIf
        EndFunc
         
        Func CheckWindow()
        $CloseButton = PixelSearch(Round(1570*$x_ratio), Round(110*$y_ratio), Round(1590*$x_ratio), Round(120*$y_ratio), 0x8C2300) ; checks for the red color of the "X" on an open window
        If Not @error Then
           Sleep(200)
           Send("{SPACE}") ;close any open windows
           $Window = True
        Else
           $Window = False
        EndIf
        EndFunc
         
        Func CheckRepair()
        $RepairArea = PixelSearch(Round(1480*$x_ratio), 0, Round(1570*$x_ratio), Round(100*$y_ratio), $yellow)
           If Not @error Then
                  Call("DoRepair")
           EndIf
        $RepairAreaRed = PixelSearch(Round(1480*$x_ratio), 0, Round(1570*$x_ratio), Round(100*$y_ratio), $red)
           If Not @error Then
                  Call("DoRepair")
           EndIf
        EndFunc
         
        Func DoRepair()
        Sleep(100)
        Send("t")
        Sleep($tptime)
        MouseClick("left", Round(1480*$x_ratio),Round(281*$y_ratio)) ;begin movement towards merchant
        Sleep(1500)
        MouseClick("left", Round(1316*$x_ratio),Round(206*$y_ratio)) ;moves to get merchant in screen
        Sleep(1500)
        MouseClick("left", Round(845*$x_ratio),Round(225*$y_ratio)) ;NPC Merchant to the right of cain's home
        Sleep(1200)
        MouseClick("left", Round(521*$x_ratio),Round(506*$y_ratio)) ;button to open up repair menu
        Sleep(400)
        MouseClick("left", Round(260*$x_ratio),Round(595*$y_ratio)) ;button to pay for repairs
        Sleep(200)
        Call("CheckDead")
        If Not $Dead and Not $Logout Then
           Send("{ESCAPE}") ;closes repair tab
           Sleep(100)
           Send("{ESCAPE}") ;menu
           Sleep(10)
           MouseClick("left", Round(956*$x_ratio),Round(579*$y_ratio)) ;button to leave game
           Sleep($loadtime)
           MouseClick("left", Round(230*$x_ratio),Round(416*$y_ratio)) ;button to resume game from main menu
           Sleep($loadtime)
        EndIf
        EndFunc
         
        Func CheckLoot()
        Sleep(Random(500,2000))
        $SetLoot = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0x02CE01, 2) ; set loot
        If Not @error Then
           MouseClick ('left', $SetLoot[0], $SetLoot[1])
           Sleep(Random(800,1200))
           $i+= 1
           If $i <= 6 Then
                  Call("CheckLoot")
           EndIf
        EndIf
        $LegendaryLoot= PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0xBF642F, 2) ; legendary loot
        If Not @error Then
           MouseClick ('left', $LegendaryLoot[0], $LegendaryLoot[1])
           Sleep(Random(800,1200))
           $i+= 1
           If $i <= 6 Then
                  Call("CheckLoot")
           EndIf
        EndIf
        If $LootRares Then
           $RareLoot = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), 0xBBBB00, 2) ; rare loot (darker for compatibility)
           If Not @error Then
                  MouseClick ('left', $RareLoot[0], $RareLoot[1])
                  Sleep(Random(700,900))
                  $i+= 1
                  If $i <= 6 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
        EndIf
        If $LootGems Then
           $AmethystDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Amethyst,8)
           If Not @error Then
                  MouseClick("left", $AmethystDrop[0], $AmethystDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $RubyDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Ruby,6)
           If Not @error Then
                  MouseClick("left", $RubyDrop[0], $RubyDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $EmeraldDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Emerald,11)
           If Not @error Then
                  MouseClick("left", $EmeraldDrop[0], $EmeraldDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
           $TopazDrop = PixelSearch(Round(400*$x_ratio), 0, Round(1690*$x_ratio), Round(900*$y_ratio), $Topaz,2)
           If Not 1 = 1 Then ; change to 'If Not @error Then' if you want to search for topazes
                  MouseClick("left", $TopazDrop[0], $TopazDrop[1])
                  Sleep(Random(900,1400))
                  $i+= 1
                  If $i <= 10 Then
                         Call("CheckLoot")
                  EndIf
           EndIf
        EndIf
        EndFunc
         
        Func Pause()
           $Leave = False
        EndFunc
         
        Func Stop() ;to allow the script to stop
            Exit
        EndFunc
         
        Func Leave()
           $Leave = True
        EndFunc
    D3Prefs.txt for 1280x720

    Code:
    DisplayModeWindowMode "1"
    DisplayModeWinLeft "1"
    DisplayModeWinTop "1"
    DisplayModeWinWidth "1296"
    DisplayModeWinHeight "758"
    DisplayModeUIOptWidth "1280"
    DisplayModeUIOptHeight "720"
    DisplayModeWidth "1280"
    DisplayModeHeight "720"
    I'll be back with an even lower res one hopefully in a few minutes.

Page 1 of 4 1234 LastLast

Similar Threads

  1. Failing to get my scripts running
    By Peterk426 in forum Diablo 3 Bots Questions & Requests
    Replies: 1
    Last Post: 07-08-2012, 07:04 PM
  2. I need help getting notAres 1.9.3 to 800x600 or a 800x600 similar to his script
    By notAres800x600 in forum Diablo 3 Bots Questions & Requests
    Replies: 0
    Last Post: 06-28-2012, 04:29 AM
  3. The Complete Guide to Getting the PTR
    By Alkhara Majere in forum World of Warcraft Guides
    Replies: 4
    Last Post: 07-27-2007, 03:32 AM
  4. looking for a guide to get me from 300 to 375 in enchanting
    By bait in forum World of Warcraft General
    Replies: 2
    Last Post: 01-22-2007, 06:33 PM
  5. Imperial Armor (guide to get)
    By oninuva in forum World of Warcraft Guides
    Replies: 7
    Last Post: 05-05-2006, 03:17 PM
All times are GMT -5. The time now is 07:25 AM. 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