Simple Fast Ghom Script menu

User Tag List

Results 1 to 3 of 3
  1. #1
    goofinator's Avatar Member
    Reputation
    2
    Join Date
    Jun 2012
    Posts
    33
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Simple Fast Ghom Script

    Ok first off i love to tinker with scripts to make them my own and get them to work for me, so if you are like me you may appreciate this script. Now i don't know how to code, i made this by simply looking things up, all in all it took about an hour to throw together and i haven't tested it as much as i want to yet.

    Simply this script does checks to see if you are in the proper menu's, checks for ghom quest and clicks it, checks to see if you are in town, goes to ghom, checks to see if boss dies so you don't have any of this leaving game before he dies or doing 5 more rotations after he is dead. Checks for legs/sets only. DOES NOT, salvage/repair/stash. I wanted a simple script, the more you add i find the more things go wrong.

    This script works for me, and may need tinkering to get to work for others, i just thought i'd share my source code for others to play with or to improve upon. It does use imagesearch for the ghom quest location, so you may need to make your own .pngs.

    You need the ImageSearch.au3 script/dll for this to work.

    I haven't tested this 100% yet, i did get stuck in an endless loop on me earlier but i think i addressed that. And it is clicking on the gold atm, which may click on unwanted items.

    Edit: 1920 x 1080 only, and i use melee characters for this
    and you must be on the Breached Keep part of the quest

    Edit: May 2nd, 2014: Upadated code, the only thing that will stop this script is a D/C. Added F7 to stop script, as well added a check to make sure the breached keep is selected before it looks for the ghom quest.

    And its fast!
    Simple Fast Ghom Script-ghom-pngSimple Fast Ghom Script-ghom2-pngSimple Fast Ghom Script-breached-pngImageSearch.rar

    Code:
    ;Credit Due, gg-bots for his t6 chest script, his pixel location/ hex color tool was valuable to this project, as well as his legendary pickup script.
    #include <ImageSearch.au3>
    
    HotKeySet("{F7}", "ExitScript")
    Global $casenumber = 0
    Global $number = 0
    Global $gamecount = 1
    
    while 1
    	Resume()
    wend
    
    Func ExitScript()
    	Exit
    EndFunc
    
    func print($Print)
    	ToolTip($Print & ",   Game # " & $gamecount, 10, 10)
    	sleep(10)
    EndFunc
    
    Func Resume();Main menu, checks to see if at default character screen, opens game settings, checks to see if there, selects ghom quest both if you didn't kill ghom and if you did kill him in previous game.
    	winactivate("Diablo III")
    	local $Counter = 0
    	While $Counter <=1
    		MenuCheck(1)
    		IF $number = 1 Then
    			Print("Found Home Screen")
    			$number = 0
    			MouseClick("left", 250, 570, 1, 0)
    			$Counter = $Counter + 1
    
    			sleep(1000)
    		Else
    			Print("Didn't find Home Screen")
    			Send("{ESC}")
    			sleep(500)
    
    			MenuCheck(2)
    			If $number = 2 Then
    				Print("Found GameSettings Menu")
    				Send("{ESC}")
    				$number = 0
    			EndIf
    			sleep(500)
    
    			MenuCheck(3)
    			If $number = 3 Then
    				LeaveGame()
    				$Counter = $Counter + 1
    				$number = 0
    			EndIf
    		EndIf
    	WEnd
    
    		Print("Creating Game")
    		MouseClick("left", 950, 665, 1, 0);Clicks change button
    		sleep(400)
    		MouseClick("left", 1178, 716, 2, 0);Clicks arrow down
    		sleep(400)
    		MouseClick("left", 1178, 716, 2, 0);Clicks arrow down
    		sleep(400)
    		MouseClick("left", 1178, 716, 2, 0);Clicks arrow down
    		sleep(1000)
    
    		local $y = 0, $x = 0
    
    		If _ImageSearchArea("breached.png", 1, 700, 308, 1185, 732, $x, $y, 10) Then
    			MouseClick("left", $x, $y, 1, 0)
    		EndIf
    
    		$y = 0
    		$x = 0
    		sleep(300)
    
    		If _ImageSearchArea("ghom.png", 1, 700, 308, 1185, 732, $x, $y, 0) or  _ImageSearchArea("ghom2.png", 1, 700, 308, 1185, 732, $x, $y, 0)Then;Searches for ghom, then selects, extra clicks, i know was lazy, but needed if it is a new ghom kill.
    			MouseClick("left", $x, $y, 2, 0);Selects Quest
    			sleep(400)
    			MouseClick("left", 880, 780, 1, 0);Ok button 1
    			sleep(400)
    			MouseClick("left", 1150, 870, 1, 0);Start button
    			sleep(400)
    			MouseClick("left", 850, 655, 1, 0);Ok button 2
    			sleep(400)
    			MouseClick("left", 1150, 870, 1, 0);Start button
    			Print("Entering Game")
    			sleep(10000)
    			Ghom()
    		EndIf
    EndFunc
    
    
    Func Ghom();checks to see if in the town yet.
    
    	Local $Counter = 0
    	while $Counter <=10
    		$InGame = PixelSearch(1642, 137, 1676, 156, 0x68C3E1, 10);In town yet?
    		IF @error Then
    			Sleep(2000)
    			$Counter = $Counter + 1
    			If $Counter = 10 Then
    				$number = 3
    				LeaveGame()
    			EndIf
    
    		Else
    			Print("In Town")
    			$Counter = 11
    			Ghom1()
    		EndIf
    	WEnd
    EndFunc
    
    
    Func Ghom1();clicks the depths 3 on map, checks to see if in depths 3
    	Send("{M Down}")
    	Send("{M UP}")
    	Sleep(400)
    	MouseClick("left", 692, 785, 1, 0);Click depths 3 on map
    	Sleep(500)
    
    	$Counter = 0
    	While $Counter <=10
    		$Depths3 = PixelSearch(1174, 732, 1240, 773, 0x15020E, 5);In Depths 3 yet?
    		IF @error Then
    			Sleep(2000)
    			$Counter = $Counter + 1
    			If $Counter = 10 Then
    				$number = 3
    				LeaveGame()
    			EndIf
    		Else
    			Print("Going to Larder")
    			$Counter = 11
    			Sleep(500)
    			Ghom2()
    		EndIf
    	WEnd
    EndFunc
    
    Func Ghom2();clicks the larder, checks to see if in room
    	MouseClick("left",1681, 265, 2, 0);Click the Larder
    	sleep(500)
    	$Counter = 0
    	While $Counter <=10
    		$TheLarder = PixelSearch(514, 628, 551, 641, 0x171500, 5);In the Larder yet?
    		If @error Then
    			Sleep(2000)
    			$Counter = $Counter + 1
    			If $Counter = 10 Then
    				$number = 3
    				LeaveGame()
    			EndIf
    		Else
    			Print("Going to Ghom")
    			$Counter = 11
    			Sleep(300)
    			Ghom3()
    		EndIf
    	WEnd
    EndFunc
    
    Func Ghom3();Moves to ghom
    	MouseClick("left", 1607, 52, 1, 0);first click down hallway
    	Sleep(3000)
    	MouseClick("left", 1626, 71, 1, 0);click into boss room
    	Sleep(8500)
    	MouseClick("left", 1411, 377, 1, 0);postition character for boss fight
    	Sleep(3000)
    	MouseMove(946, 439, 0);center mouse on character for when ghom comes into melee range, has better chance of targeting him.
    	CheckBoss()
    EndFunc
    
    Func CheckBoss();Checks to see if boss is alive, if he is he only attacks until he is dead.
    	Local $Counter = 0
    	While $Counter <=1
    		$Boss = PixelSearch(780, 67, 797, 88, 0x8B682D, 5);Boss dead?
    		If @error Then
    			Print("Boss Dead")
    			Sleep(1500)
    			Print("Looting")
    			Send("{ESC}")
    			Loot()
    			Sleep(200)
    			Send("{ESC DOWN}")
    			Send("{ESC UP}")
    			Sleep(200)
    			LeaveGame()
    			$Counter = 2
    		Else
    			Print("Boss Alive")
    			StartFight()
    		EndIf
    	WEnd
    EndFunc
    
    Func StartFight()
    	Send("{LSHIFT DOWN}")
    	Send("1")
    	sleep(40)
    	Send("2")
    	Sleep(40)
    	Send("3")
    	Sleep(40)
    	Send("4")
    	Print("Sending Right Click")
    	MouseDown("right")
       	Sleep(3000)
    	MouseUp("right")
    	Print("Sending Left Click")
    	MouseDown("left")
       	Sleep(2000)
    	MouseUp("left")
    	Send("{LSHIFT UP}")
    	Sleep(300)
    EndFunc
    
    Func Loot() ;//These functions basically look for Chests/Bodies and also loots Legs/Sets.
    	$LegColor = PixelSearch(780, 278, 1188, 679, 0xFF8000, 2)
    	If Not @error Then
    		 MouseClick("left", $LegColor[0], $LegColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	 Sleep(150)
    	$SetColor = PixelSearch(780, 278, 1188, 679, 0x00FF00, 2)
    	If Not @error Then
    		 MouseClick("left", $SetColor[0], $SetColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	 $GemColor = PixelSearch(780, 278, 1188, 679, 0x99BBFF, 2)
    	If Not @error Then
    		 MouseClick("left", $GemColor[0], $GemColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	 Sleep(150)
    	 $LegColor = PixelSearch(780, 278, 1188, 679, 0xFF8000, 2)
    	If Not @error Then
    		 MouseClick("left", $LegColor[0], $LegColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	$SetColor = PixelSearch(780, 278, 1188, 679, 0x00FF00, 2)
    	If Not @error Then
    		 MouseClick("left", $SetColor[0], $SetColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	 $GemColor = PixelSearch(780, 278, 1188, 679, 0x99BBFF, 2)
    	If Not @error Then
    		 MouseClick("left", $GemColor[0], $GemColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	 $LegColor = PixelSearch(780, 278, 1188, 679, 0xFF8000, 2)
    	If Not @error Then
    		 MouseClick("left", $LegColor[0], $LegColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	$SetColor = PixelSearch(780, 278, 1188, 679, 0x00FF00, 2)
    	If Not @error Then
    		 MouseClick("left", $SetColor[0], $SetColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    	Sleep(150)
    	 $GemColor = PixelSearch(780, 278, 1188, 679, 0x99BBFF, 2)
    	If Not @error Then
    		 MouseClick("left", $GemColor[0], $GemColor[1], 1, 1)
    		 Sleep(1800)
    	 EndIf
    EndFunc
    
    Func MenuCheck($casenumber)
    
    	Switch $casenumber
    		Case 1
    			$MainMenu = PixelSearch(496, 657, 526, 684, 0x4A1408, 2);Main Menu
    			If Not @error Then
    				$number = 1
    			EndIf
    
    		case 2
    			$GameSettings = PixelSearch(873, 258, 1021, 362, 0xBB1CBE, 2);Gamesettings menu
    			If Not @error Then
    				$number = 2
    			EndIf
    		case 3
    			$LeaveGameMenu = PixelSearch(851, 962, 878, 986, 0x290400, 8);Leave game menu
    			If Not @error Then
    				$number = 3
    			EndIf
    
    	EndSwitch
    EndFunc
    
    Func LeaveGame()
    	Print("Leaving Game")
    	Local $Counter = 0
    
    		MenuCheck(3)
    		If $number = 3 Then
    			MouseClick("left", 236, 480, 1, 0)
    			$number = 0
    			Sleep(14000)
    			$gamecount = $gamecount + 1
    		Else
    
    			Send("{ESC DOWN}")
    			Send("{ESC UP}")
    			Sleep(200)
    		EndIf
    
    EndFunc
    Attached Files Attached Files
    Last edited by goofinator; 05-02-2014 at 04:51 AM.

    Simple Fast Ghom Script
  2. #2
    goofinator's Avatar Member
    Reputation
    2
    Join Date
    Jun 2012
    Posts
    33
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Did a longer test with it, works for what i want it to do. Doesn't get stuck/stop anymore. But still pics up the odd piece of garbage, something to do with the ghom death scene and it clicking, but this was ran for an extended period of time and it only picked up a few.

    Edit: t1 run, i only had 14m gold to start and was at around 128 paragon lvl, i stopped the script at 350 runs, not sure on the time frame i think around 6 hours, but i don't have the greatest dps in the world

    Simple Fast Ghom Script-legsc-jpg
    Last edited by goofinator; 05-02-2014 at 04:38 AM.

  3. #3
    arezz2's Avatar Member
    Reputation
    1
    Join Date
    Dec 2011
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    delete this post pls.
    Last edited by arezz2; 05-04-2014 at 05:47 PM.

Similar Threads

  1. [Selling] « Diablo 3 Power Leveling Quick, Simple, Fast , Cheap [EU] »
    By yellowspark in forum Diablo 3 Buy Sell Trade
    Replies: 20
    Last Post: 04-15-2013, 09:55 AM
  2. Looking for simple auto it script for paragon leveling.
    By discostews in forum Diablo 3 General
    Replies: 2
    Last Post: 09-02-2012, 11:31 AM
  3. Simple CrewSkill BoT Script
    By Fadore in forum SWTOR Bots and Programs
    Replies: 1
    Last Post: 01-15-2012, 08:11 PM
  4. [Lua Script] Simple teleporter lua script
    By diviee3 in forum WoW EMU Questions & Requests
    Replies: 2
    Last Post: 06-27-2010, 03:07 PM
  5. A simple fast to use bot
    By Iluvbots in forum World of Warcraft Bots and Programs
    Replies: 4
    Last Post: 12-23-2007, 08:28 PM
All times are GMT -5. The time now is 08:15 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