postreply Home » Forums » Final Fantasy XI » FFXI Submissions

Voke Bot - Works With ACTool {Premium Please} : FFXI Submissions

Posted: January 2nd, 2006, 2:00 pm
xagashi
Alright, i've decided to post my voke bot that has worked great for getting spook. I really hpe this is the one to get me premium. It took me a fair amountof trial and error. But it should work like a charm now. This will work just like any voke bot out there.

Code: Select all

Global $x         =     0         ; X-coordinate for pixel
Global $y         =     0         ; Y-coordinate for pixel
Global $yellow    =     0    ; Normal, unclaimed color. Most important. (RGB Decimal value)
Global $red       =     0    ; Color when player has claimed. (RGB Decimal value)
Global $purple    =     0    ; Color when claimed by another. (RGB Decimal value)
Global $orange    =     0    ; Color when mob has been "called-for-help" on. (RGB Decimal value)
Global $provoke   =     "^8"        ; Provoke macro
Global $vokenum   =     20          ; Number of times to spam provoke macro
Global $up        =     "w"         ; The 'Up' or 'Forward' key
Global $wskill    =     "!4"        ; Weaponskill macro
Global $seconds   =     300         ; Number of seconds to spam weaponskill macro

WinWaitActive("FFXiApp")

While 1

   While 1

      FindTarget()

      Provoke()

      Engage()

      If CheckClaim() = 1 Then ExitLoop

   WEnd

   Approach()

   Screenshot()

   Wskill()

WEnd








Func FindTarget()
   AutoItSetOption("SendKeyDelay", 0)
   While 1
      Send("{TAB}")
      If PixelGetColor($x,$y) = $yellow Then ExitLoop
   WEnd
EndFunc


Func Provoke()
   Local $i = 0
   While $i <= $vokenum
      send($provoke)
   WEnd
EndFunc


Func Engage()
   AutoItSetOption("SendKeyDelay", 100)
   Sleep(1000)
   Send("/a <bt>{ENTER}")
EndFunc


Func CheckClaim()
   AutoItSetOption("SendKeyDelay", 60)
   While 1
      Send("{TAB}")
      Select
         Case PixelGetColor($x,$y) = $red
                Send("/dance{ENTER}/echo **** Target acquired at>>{ENTER}/clock{ENTER}/echo **** Terminating. . .{ENTER}")
                return (1)
         Case PixelGetColor($x,$y) = $purple
                Send("/angry motion{ENTER}/echo **** Target lost at>>{ENTER}/clock{ENTER}/echo **** Reseting. . .{ENTER}")
            return (0)
         Case PixelGetColor($x,$y) = $orange
                Send("/angry motion{ENTER}/echo **** Target called-for-help'd at>>{ENTER}/clock{ENTER}/echo **** Attempting to reclaim. . .{ENTER}")
            return (0)
         Case Else
                Send("/echo **** Error. Target Lost at>>{ENTER}/clock{ENTER}/echo **** Reseting. . .{ENTER}")
            return (0)
      EndSelect
   WEnd
EndFunc


Func Approach()
   Sleep(1000)
   Send("{" & $up & " down}")
   Sleep(5000)
   Send("{" & $up & " up}")
   Sleep(1000)
EndFunc


Func Screenshot()
   Send("]")
   Sleep(1000)
   Send("[")
   Sleep(4000)
   Send("]")
EndFunc


Func Wskill()
   Local $i = 0
   While $i <= $seconds
      Send($wskill)
      Sleep(1000)
      $i = $i + 1
   WEnd
EndFunc


This provoke bot is based off the popular 'unique pixel' method. A pixel must be found that is unique to the mob's name. Although extremely fast, this proves to be the biggest drawback to this method of detection as the pixel data isn't readily available. Perhaps if the rest of this thread was dedicated to the posting of pixel data for NM's then this Provoke bot would be complete.

Oh, one last note: The color of the pixels must be in RGB Decimal format. To convert this easily in windows, open up the Calculator and switch to Hex mode. Then punch in the color value. Afterwords switch it back to Decimal mode. Voila. Color value in decimal. ^_^


FAQ

Q:When you say Provoke macro do you mean just a /ja "Provoke" <t> or a full one with /wait 1's and 3 provokes to spam it faster? Also, i dont know anything about coding >< with the ^8 for the voke macro, what does that mean? alt-8? same for weapon skill, !4 = ?

A:Nope, I just mean a /ja "Provoke" <t> macro.

I made the bot so that it will spam that macro 20 times with 0ms key delay, so no need to put in any extras. ^^

As far as the ^'s and !'s work: ^ = Ctrl and ! = Alt

So ^1 = Ctrl+1 and !9 = Alt+9


I'm currently working on a new release of this bot using FFACT instead.
Posted: January 2nd, 2006, 2:17 pm
lilfisher

Total Posts: 6810
Joined: March 1st, 2005, 12:13 pm
User avatar
you need to write the script in VB not actools as these are not an actools forum. no

_________________
Click to buy a premium account
Want Advertisements After The Last Post Removed? Create A Free Account!
blue large dotWho is online
Users browsing this forum: No registered users and 10 guests
postreply