Scripting Resources & Utilities > UOSteam scripts

AssistUO - Lethal Darts Quest

(1/3) > >>

Kraz:
I decided to create a sample of a script using AUO, that will help people getting used with syntax and functions.


--- Code: ---Instructions:
1. Reward Box should not be a regular backpack, choose a wooden box or another container;
2. You may need to edit a few values such as waitforcontext entry on Restock beetle, gump data, etc depending on your shard.

--- End code ---


--- Code: ---// Author: Kraz
// Description: Lethal Darts Quest Maker
if not listexists 'Recipes'
 @createlist 'Recipes'
 @pushlist 'Recipes' 'Night Reaper'
 @pushlist 'Recipes' 'Mischief Maker'
endif
if not listexists 'Talismans'
 @createlist 'Talismans'
 @pushlist 'Talismans' 0x2f58
 @pushlist 'Talismans' 0x2f59
 @pushlist 'Talismans' 0x2f5a
 @pushlist 'Talismans' 0x2f5b
endif
if not listexists 'Skills'
 @createlist 'Skills'
 @pushlist 'Skills' 'Alchemy Bonus'
 @pushlist 'Skills' 'Blacksmithing Bonus'
 @pushlist 'Skills' 'Carpentry Bonus'
 @pushlist 'Skills' 'Inscription Bonus'
 @pushlist 'Skills' 'Tailoring Bonus'
 @pushlist 'Skills' 'Tinkering Bonus'
endif
if not @findobject 'Quest Giver'
 promptalias 'Quest Giver'
endif
if not @findobject 'Restock'
 promptalias 'Restock'
 // Always open restock backpack once
 waitforcontext 'Restock' 9 5000
else
 if serial 'Restock' != serial 'self'
  if not timerexists 'feedPet'
   createtimer 'feedPet'
  endif
  // Hourly feed pet
  if timer 'feedPet' >= 3600000
   feed 'Restock' 'Meat'
   pause 1000
   settimer 'feedPet' 0
  endif
 endif
endif
if not @findobject 'Reward Box'
 promptalias 'Reward Box'
endif
if not @findobject 'Trash Barrel'
 promptalias 'Trash Barrel'
endif
if @findtype 0x1bfb 'any' 'backpack' 10
 if @useobject 'Quest Giver'
  waitforgump 0x88bc0b07 5000
  if @ingump 0x88bc0b07 'Lethal Darts'
   replygump 0x88bc0b07 4
   if color 'found' == 0
    waitforcontext 'self' 5 5000
    waitfortarget 5000
    @target! 'found'
    waitfortarget 5000
    @canceltarget
   endif
   @useobject 'Quest Giver'
   waitforgump 0x88bc0b07 5000
   replygump 0x88bc0b07 8
   waitforgump 0x88bc0b07 5000
   replygump 0x88bc0b07 5
   pause 1000
   // Handle reward bags
   while @findtype 0xe75 'any' 'backpack'
    @setalias 'trash' 'found'
    @useobject! 'trash'
    pause 1000
    // Runics
    while @findtype 0x1022 'any' 'trash'
     @moveitem! 'found' 'Reward Box'
     pause 1000
    endwhile
    // Recipes
    while @findtype 0x2831 0 'trash'
     for 0 to 'Recipes'
      if @property Recipes[] 'found'
       @moveitem! 'found' 'Reward Box' 80
       pause 1000
       break
      endif
     endfor
     @ignoreobject 'found'
    endwhile
    // Talismans
    for 0 to 'Talismans'
     while @findtype Talismans[] 0 'trash'
      if @property 'Exceptional Bonus' 'found' >= 25
       for 0 to 'Skills'
        if @property Skills[] 'found' >= 25
         @moveitem! 'found' 'Reward Box' 160
         pause 1000
         break
        endif
       endfor
      endif
      @ignoreobject 'found'
     endwhile
    endfor
    @moveitem! 'trash' 'Trash Barrel'
    pause 1000
   endwhile
  else
   replygump 0x88bc0b07 2
  endif
 endif
 pause 500
elseif @movetype 0x1bfb 'Restock' 'backpack' 0 0 0 0 200
 pause 1000
else
 sysmsg 'Out of bolts!' 25
 stop
endif
@clearignorelist

--- End code ---

TrailMyx:
Looks very interesting!  Thanks for sharing with this community, Kraz!

Kraz:

--- Quote from: TrailMyx on February 04, 2013, 09:55:58 AM ---Looks very interesting!  Thanks for sharing with this community, Kraz!

--- End quote ---

No problems, as a side note, it uses a Beetle as restock, you can easily cut it off in case you need.
Another thing is, AUO isnt based on screen pixels so you can minimize your UO while making quests.

Updated with an automatically feedPet timer sample :)

Crome969:

--- Quote from: Kraz on February 04, 2013, 10:34:16 AM ---
--- Quote from: TrailMyx on February 04, 2013, 09:55:58 AM ---Looks very interesting!  Thanks for sharing with this community, Kraz!

--- End quote ---

No problems, as a side note, it uses a Beetle as restock, you can easily cut it off in case you need.
Another thing is, AUO isnt based on screen pixels so you can minimize your UO while making quests.

Updated with an automatically feedPet timer sample :)

--- End quote ---
Thanks for your Contribution.
What makes me wonder , are you the same Kraz who published this Script for Stealth at their forum?

Kraz:

--- Quote from: Crome969 on February 05, 2013, 01:16:44 AM ---
--- Quote from: Kraz on February 04, 2013, 10:34:16 AM ---
--- Quote from: TrailMyx on February 04, 2013, 09:55:58 AM ---Looks very interesting!  Thanks for sharing with this community, Kraz!

--- End quote ---

No problems, as a side note, it uses a Beetle as restock, you can easily cut it off in case you need.
Another thing is, AUO isnt based on screen pixels so you can minimize your UO while making quests.

Updated with an automatically feedPet timer sample :)

--- End quote ---
Thanks for your Contribution.
What makes me wonder , are you the same Kraz who published this Script for Stealth at their forum?

--- End quote ---

Yes, like over 1 year ago I played with that bot program and released a script in Python to make any type of craft/delivery quest.
Unfortunately their *python* module *was* not stable enough, not sure how it works now.

AssistUO cut the work by half, if you take a look you'll see that there are a few lines of pure "setup" and the macro itself is simple, our command based language is pretty effective and easy to use :).

Navigation

[0] Message Index

[#] Next page

Go to full version