I still have this from when tier 0.5 first got introduced and thought Id share it with you guys, I cant get this new one on the forums to work properly and I did manage with this one so here it goes As a sidenote I also still have one from Psycosis which I also add
Xfish from xeonz16:
Code:
; AutoIt Version: 3.0
; Name: Xfish
; Language: English
; Platform: WinXP
; Author: xeonz16
;
; Script Function:
; WoW Xfish
; Some hints and tips...Deviate fish and Oily Blackmouth are really the only kind that sell
;in my experience...I'm only 150 fishing though. If you leave bot on all night, it will fill your
;inventory up with 2-3 stacks of 'rare' fish and zillions of stacks of common crappy ones that
;you either destroy or sell for 20c a stack. I've found if you SPIKE your inventory before
;turning the bot on you can catch a way more rare fish. However, this will take longer.
;I've guessed the bot fills up a medium-low sized inventory in about 3-4 hours. For me,
;I have to go to work for periods of about 12 hours anyway, so I spike my inventory, by
;taking a stack of 20 oily blackmouth and splitting them into 20 stacks of 1. After 12 hours
;when I get home I've got 20 stacks of oily blackmouth instead of 2-3 stacks and 20 stacks of
;cheapo fish. You can catch oily blackmouth in the water near ratchet, and deviate fish
; + deviate scales I think in the oasis's scattered around the barrens. If you are gonna
;fish the oasis you need to pick a spot VERY carefully so the wandering centaurs don't
;kill you. When you catch these, you need to sell them to PLAYERS, namely alchemists...they won't
;get you crap from merchants.
;COMMON TROUBLESHOOTING--
;for troubleshooting the first thing you should do is set $splash to 1
; remember to turn it back to zero after you have the bot working...as leaving it on
;will limit the bot's lifespan to about 3-4 hours.
;this allows you to see which stage of the script the bot is in then
;if the mouse moves to a wrong location, then lower $colorvariance
;if the mouse doesn't move and the bot gets hung up on 'searching for feather' raise $colorvariance
;if the mouse moves to the feather, and then the bot says 'FISH!' without a splash, lower $splashvariance
; the bobber splashes and the bot does not do anything, raise $splashvariance
;move the variances in increments of 5 for best result...
;SLIGHTLY MORE ADVANCED TROUBLESHOOTING--
;for trouble FINDING THE BOBBER--
;notice there are several definitions of $feather commented out
;comment out the current one and use another, and then retry adjusting variances
;for trouble WITH SPLASHES--
;there are two pixelsearchs for splash, one uses $day and nother uses $night, you can
;remark one or the other out depending. You can also adjust the $s_offset. This determines
;how many pixels in each direction from the feather the bot 'searches' for the splash.
;if you tighten this down you will have less missfires.
;if you are getting lots of 'moonglare' you might have to move to another side of the lake
;too much moonglare will cause missfires, changing your location might be the only solution.
hotkeyset("{ESC}", "Term")
;these are the colorcodes obtained by pantless crab for different splashes
; Colour of splash -
; 0xA2A67D
; 0xC1AD7A
; 0xD0C08D
;this is the box definitions that decide how large of an area to scan for the feather
$left = 90
$top = 110
$right = 748
$bottom = 350
;these are various variables for the operation of fish bot
$day = 0xF6F6F6 ;splash color day
;$night = 0xEEEEEE ;splash color night
$feather = 0x31314E ;day --blue feather
;$feather = 0x1A130F ;night --dark dark red
;$feather = 0x501C0D ;day --bright red
;$feather = 0xC54819 ;night --bright red
$colourVariance =30 ;range of accepted values differing from original code for feather
$splashVariance =15 ;range of accepted values differing from original code for splash
$step =2 ;1 = search every pixel, 2 = search every other pixel...etc don't put higher then like 5
$s_offset =25 ;search offset, basically how large an area to search around the feather for splash
$splash =0 ;set this to 1 to view GUI messages, so you can tell where the bot gets hung up
;but turn it to zero once the bot is working, and the bot will 'last' for DAYS
;as compared to maybe 4-5 hours with GUI on.
$width = 100 ; width of GUI box
$height = 60 ; Height of GUI box--note these two are changed periodically through the script
dim $feather_cord, $time, $sp ;various definitions
while 1 ;main loop
sleep(1000)
WinActivate("World of Warcraft")
send("0")
sleep(4000)
$start2 = Timerinit() ;start timer
;this loop searches for feather
while 1
$dif = TimerDiff($start2)
if $dif > 35000 then ;if timer > then 35 seconds then restart bot IE can't find feather
exitloop
endif
sleep(1000)
$message = "Searching for feather..."
$height = 60
update_splash()
;find where the feather is located
$feather_cord = PixelSearch ($left, $top, $right, $bottom, $feather, $colourVariance, $step)
if NOT @error = 1 then
seterror(2) ;resets @error macro so it doesn't fire next loop
$message = "Found Something."
update_splash()
;setting arrayed cords to variables to allow easier manipulation
$featherx = $feather_cord[0]
$feathery = $feather_cord[1]
mousemove($featherx, $feathery) ;move mouse to feather
exitloop
endif
WEnd
$start = Timerinit()
;this loop waits for the splash once feather is found
While 1
sleep(400)
$message = "Waiting for bite..."
$height = 100
update_splash()
;calc area of probable splash
$s_left = ($featherx - $s_offset)
$s_top = ($feathery - $s_offset)
$s_right = ($featherx + $s_offset)
$s_bottom = ($feathery + $s_offset)
;these switch between day and night splash...I've been just commenting one of them out
$sp = Pixelsearch($s_left, $s_top, $s_right, $s_bottom, $day, $splashvariance)
;$sp = Pixelsearch($s_left, $s_top, $s_right, $s_bottom, $night, $splashvariance)
$dif = TimerDiff($start)
if $dif > 35000 then ;resets bot if no bite within 35 seconds
exitloop
endif
if ubound($sp) > 1 then ;if $sp returns cords then shift + rightclick, discards $sp cords
seterror(2)
$message = "Fish!"
$height = 60
update_splash()
send("{shiftdown}")
sleep(100)
mouseclick("right", $featherx, $feathery, 1, 1)
sleep(300)
send("{shiftup}")
exitloop
endif
WEnd
WEnd
;this func just updates splash message if the variable $splash is set to '1' in the beginning
func update_splash ()
if $splash = 1 then
SplashTextOn( "", $message , $width , $height ,1 ,1 , 17)
endif
endfunc
func Term ()
exit
endfunc
Fishbot from Psycosis:
Code:
;#########################################################################
; FishBOT by Psycosis taken from Foobie who adapted Pantless Krab's
;
; Version 1.4.8
;
; Note - By using the Fishing bot designed for World of Warcraft
; You understand the risks and agree that you will take all
; responsibility for this code. THe creater takes no responsibility
; for whatever happens to users who use and/or modify this code
;#########################################################################
;###########
; Globals
;###########
$title = "WoW FishBOT"
$win_title = "World of Warcraft"
; Sets up the Borders to fish in
$top_border_height = 23
$left_border_width = 4
; Sets up the Screen resolution $ make shure its in windowed mode
$screen_width = 800
$screen_height = 600
; Just a simple Timer
$time_to_wait = 30000
dim $start_time
;#########################################################################
; Hot Keys Section
;
; Set up a Hot key to be used later to end the script
;#########################################################################
HotKeySet("{PAUSE}", "request_end")
;#########################################################################
; Fish Bot View Paremeters
;
; Sets up the boundaries of the fishbot on the screen and returns
; some visual confirmation by moving the mouse in a square showing
; where the bot will be searching for the fishing bobber
;#########################################################################
if not WinExists($win_title, "") then
msg($win_title & " window must be open.")
Exit
endif
WinActivate($win_title, "")
WinSetOnTop($win_title, "", 0)
Sleep(500)
check_window()
$win_pos = WinGetPos($win_title, "")
$win_x = $win_pos[0] + $left_border_width
$win_y = $win_pos[1] + $top_border_height
$top = $win_y + (.25 * $screen_height)
$bottom = $top + (.35 * $screen_height) - 1
$left = $win_x + (.15 * $screen_width)
$right = $left + $screen_width - (.15 * 2.0 * $screen_width) - 1
Start_Bot()
;###########################
; Visual confirmation
; Area scanned for bobber
;###########################
MouseMove($left, $top, 2)
MouseMove($right, $top, 2)
MouseMove($right, $bottom, 2)
MouseMove($left, $bottom, 2)
cast_pole()
find_float()
;#########################################################################
;
; Function find_float
;
; Once bobber has been cast the bobber needs to be found via colors
; The most prominent color is the red so by default that is enabled
; More colors have been defined and you may switch them if you want
; The only reason to switch them is when fishing in Stormwind or at
; night when colors are all very diffrent.
;#########################################################################
func find_float()
;#####################
; Color Definitions
;#####################
$color_dark_purple = 0x463B4D
$color_dark_blue = 0x283A64
$color_red = 0xA72C0B
$color_stormwind_daylight_blue = 0x2B3254
$color_stormwind_daylight_red = 0x6B1F0C
$color_beige = 0xBB9B3D
$color_night_blue = 0x0B1931
$color_wc = 0x210B04
;#########################################################
; This is the color used to pixelsearch for the bobber.
; Change the color to a good color
; on the bobber that is prominent on the screen
;#########################################################
$color_to_use = $color_wc
;##################################################################
; This is the search tolerance. In areas where the bobber
; colors really stand out, you can use a fairly high threshold.
; In areas where the bobber colors are fairly muted in with
; the background, you will have to lower the values considerably.
;##################################################################
$bobber_search_tolerance = 20
;########################################################################
; It's better to use lower values here in favor of accurate searching.
; This will take more time for it to detect the bobber, but usually
; the splash doesn't occur until at least 30% of the time has run out,
; and by that time, it should have detected the bobber (assuming the
; color values and tolerance are correct).
;########################################################################
$bobber_search_step = 2
;#########################################################################
; Search for float. In certain lighting, the part of the float may look
; more purple than blue. In this case, using $color_red tends to work
; the best with a tolerance of 20.
;#########################################################################
while 1
if TimerDiff($start_time) >= $time_to_wait then
cast_pole()
endif
$pos = PixelSearch($left, $top, $right, $bottom, $color_to_use, $bobber_search_tolerance, $bobber_search_step)
if @error then
SetError(0)
else
MouseMove($pos[0], $pos[1], 2)
find_splash($pos[0], $pos[1] )
endif
Sleep(10)
wend
endfunc
;############################################################################
; Find that White Splash
;
; Basicly once you find the bobber you have to find the splash
; this function creates a smaller box around the bobber and watches
; for the white splash of the bobber. Once it finds the splash it
; calls for the function to right click and loot.
;############################################################################
func find_splash($float_x, $float_y)
$search_left = $float_x - 32
$search_right = $search_left + 52
$search_top = $float_y - 32
$search_bottom = $search_top + 64
;############################################################
; Usually you do not have to modify the search color for
; the splash, as the pixels have a very distinctive,
; bright color.
;############################################################
$splash_color = 0xF6F6F6
;############################################################
; Sometimes 30 tolerance works well, sometimes 20 is better
; in lit areas to avoid catching highlights in other things.
;############################################################
$splash_tolerance = 20
;############################################################
; The search step can be pretty small here (1 to 3) without
; worries because the search area is so small once it has
; been narrowed down - speed isn't much of an issue.
;############################################################
$splash_search_step = 2
;######################
; Search for splash
;######################
while TimerDiff($start_time) < $time_to_wait
$pos = PixelSearch($search_left, $search_top, $search_right, $search_bottom, $splash_color, $splash_tolerance, $splash_search_step)
if @error then
SetError(0)
else
;#####################
; Click on the splash
;#####################
send("{SHIFTDOWN}")
MouseClick("right");, $pos[0], $pos[1], 1, 2)
send("{ShiftUP}")
Sleep(5500)
ExitLoop
endif
Sleep(10)
wend
;######################################
; Cast pole and start all over again.
;######################################
cast_pole()
endfunc
; ##############################################################################
func cast_pole()
$start_time = TimerInit()
Send("1")
Sleep(1000)
endfunc
; ##############################################################################
func check_window()
$dimensions = WinGetClientSize($win_title, "")
if $dimensions[0] <> $screen_width or $dimensions[1] <> $screen_height then
msg("Invalid window size. You must use " & $screen_width & "x" & $screen_height & " resolution in window mode.")
Exit
endif
endfunc
; ##############################################################################
func msg($text)
MsgBox(0, $title, $text)
endfunc
; ##############################################################################
func msg_array($title, $array, $num_elements)
dim $text
$text = $array[0]
for $j = 1 to $num_elements - 1
$text = $text & ", " & $array[$j]
next
MsgBox(0, $title, $text)
endfunc
; ##########################################################
func request_end()
$MB_YESNO = 4
$MB_YES = 6
if MsgBox($MB_YESNO, $title, "End script?") == $MB_YES then
Exit
endif
endfunc
;###########################################################
func Start_Bot()
$MB_YESNO = 4
$MB_YES = 6
if MsgBox($MB_YESNO, $title, "Do you want to start the Bot?") == $MB_Yes then
else
Exit
endif
endfunc
; ##########################################################
func drain_timer()
Msg("Restart")
$start_time = $start_time - $time_to_wait
endfunc
; ##########################################################