By Request Ultimate Slayer/Runic Automated Bow Crafting

amonseti

Grandmaster
Hey-O Been a While since I added a new macro , you can thank @goinghome421 as He requested this from me.

First this macro Is a bit different then my other macros and requires 3 separate macros (All included here) to operate:
Please see notes in the main "UltimateBowCrafting" macro for usage and requirements.

The first macro and the one you will run to start bow crafting
Name this macro UltimateBowCrafting
Code:
// $$$$$$$$       UltimateBowCrafting         $$$$$$$
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
// ?? By Amonseti
// ?? V2.1
// ??????????????????????????????????????????????????
// ?? !!!!!!!!!!!!!!!!!!IMPORTANT !!!!!!!!!!!!!!!!!!!
// ?? This macro requires 2 additional companion
// ?? macros [ CraftBows ] and [ SafeSpot ]
// ?? They are avalible in the same Thread you recived
// ?? This one.
// ??
// ?? Macro set Requirments
// ?? !! Important run this macro from your home (or
// ??    where the secure containers reside) !!
// ?? GM Fletching , Magery to cast recall
// ?? > Wood resources to craft bows (Insure Fletching
// ??   tool is set to the wood type you wish to craft
// ??   with.) This macro will account for Runic made
// ??   bows. Store these supplys in *resource container
// ?? > A good supply of fletching tools also stored
// ??   In the *resource container
// ?? > Recall Regents (black pearl, Mandrake, and
// ??   bloodmoss) Stored in the *resource container.
// ?? > 3 unique Rune books as follows:
// ??   1st] "Home Recall book"
// ??        A rune book with a default destination to
// ??        your home immediately adjacent to the secured
// ??        *resource container. the "Home Recall book"
// ??   2nd] "Brit Crafting Area Recall Book"
// ??         A Rune book with a default destination to
// ??        Brit Crafting area withing reach of any of
// ??        the trash bins.
// ??   3rd] "SafeSpot Recall Book"
// ??        A rune book with a default destination to
// ??        A safe spot. This will be where your crafter
// ??        is sent to at a conclusive (Ending) result
// ??        during the macro operation. Once your
// ??        crafter has been sent to this location He/She
// ??        Will run a few steps north and then hide. It
// ??        is advised to mark a rune for this book where
// ??        it will cause your crafter to run onto a teleport
// ??        tile in your house.
// ?? > 2 Unique Containers stacked on each other on the steps
// ??   of your home, usage as follows:
// ??   - The first container is the Resource container.
// ??     This Container will hold everything you need for
// ??     the macro to operate, including recall regs, the desired
// ??     wood(PLANKS) you want to make bows with. and fletching
// ??     tools. if any of these items become depleted the macro will
// ??     will send you crafter to the Safe spot. and stop running.
// ??   - The 2nd Secure Container starts empty and is where
// ??     the crafted Slayer/Runic bows will be placed.
// ??
// ???????????????????????????????????????
//
// !! Clear data
unsetalias 'ASRHomeRecall'
unsetalias 'ASRBritCraftRecall'
unsetalias 'ASRResources'
unsetalias 'ASRSlayers'
unsetalias 'ASRTrash'
unsetalias 'ASRSafeSpot'
//
//
headmsg 'Please Select SafeSpot Recall Book' '2124'
if not findalias 'ASRSafeSpot'
  promptalias 'ASRSafeSpot'
endif
//
//
headmsg 'Please Select Home Recall Book' '2124'
if not findalias 'ASRHomeRecall'
  promptalias 'ASRHomeRecall'
endif
//
headmsg 'Please Select Brit Crafting Area Recall Book' '2124'
if not findalias 'ASRBritCraftRecall'
  promptalias 'ASRBritCraftRecall'
endif
//
headmsg 'Please Select Resource Container' '2124'
if not findalias 'ASRResources'
  promptalias 'ASRResources'
endif
//
headmsg 'Please Select Slayer Container' '2124'
if not findalias 'ASRSlayers'
  promptalias 'ASRSlayers'
endif
///
//pause 2000
cast "Recall"
waitfortarget 15000
target! 'ASRBritCraftRecall'
pause 1300
//
//
headmsg 'Please Select Trash' '2124'
if not findalias 'ASRTrash'
  promptalias 'ASRTrash'
endif
//
playmacro 'CraftBows'

First companion Macro Set it to loop
Must name this macro Exsactly> CraftBows
Code:
// $$$$$$$$                  CraftBows                   $$$$$$$

// $$$$$$$$    UltimateBowCrafting Companion Macro "A"   $$$$$$$
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
// ?? By Amonseti
// ?? V2.1
// ??????????????????????????????????????????????????
// ?? !!!!!!!!!!!!!!!!!!IMPORTANT !!!!!!!!!!!!!!!!!!!
// ?? !!!!!!!DO NOT RUN THIS MACRO DIRECTLY !!!!!!!!!
// ?? !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//
//
//
//      SET THIS MACRO TO LOOP !!
//
//
//
if @counttype '0x1bd7' 'any' 'backpack' < 10
  headmsg 'Need More wood'
  cast "Recall"
  waitfortarget 15000
  target! 'ASRHomeRecall'
  pause 1300
  useobject 'ASRResources'
  pause 500
  if @findtype 0x1bd7 'any' 'ASRResources'
    if @counttype 0x1bd7 'any' 'ASRResources' < 200
      moveitem 'found' 'backpack' 0 0 0
      pause 600
    else
      moveitem 'found' 'backpack' 0 0 0 200
      pause 600
    endif
  else
    headmsg 'Wood has been depleted' '1165'
    playmacro 'SafeSpot'
  endif
  //--------
  //restock Mandrakeroot
  if @findtype 0xf86 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Mandrake' '1165'
    playmacro 'SafeSpot'
  endif
  //
  //restock BloodMoss
  if @findtype 0xf7b 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Bloodmoss' '1165'
    playmacro 'SafeSpot'
  endif
  //restock Blackpearl
  if @findtype 0xf7a 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Blackpearl' '1165'
    playmacro 'SafeSpot'
  endif
  //---------
  pause 1300
  cast "Recall"
  waitfortarget 15000
  target! 'ASRBritCraftRecall'
  pause 1300
endif
//
////////
//
pause 600
//headmsg 'Checking for tools'
if not @findtype '0x1022' '0' 'backpack' 'any' '2'
  headmsg 'No Fletching Tools Found'
  //stop
  cast "Recall"
  waitfortarget 15000
  target! 'ASRHomeRecall'
  pause 600
  useobject 'ASRResources'
  pause 1500
  if @findtype 0x1022 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0
    pause 600
  else
    headmsg 'Out of Fletching Tools' '1165'
    playmacro 'SafeSpot'
  endif
  //--------
  //restock Mandrakeroot
  if @findtype 0xf86 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Mandrake' '1165'
    playmacro 'SafeSpot'
  endif
  //
  //restock BloodMoss
  if @findtype 0xf7b 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Bloodmoss' '1165'
    playmacro 'SafeSpot'
  endif
  //restock Blackpearl
  if @findtype 0xf7a 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Blackpearl' '1165'
    playmacro 'SafeSpot'
  endif
  //---------
  pause 1000
  headmsg 'time to recall'
  cast "Recall"
  waitfortarget 15000
  target! 0x405008d8
  pause 1300
endif
//
//
// Create a bow
pause 500
usetype '0x1022' 'any' 'backpack' '2'
pause 500
replygump 0x38920abd 15
waitforgump 0x38920abd 15000
pause 500
replygump 0x38920abd 2
waitforgump 0x38920abd 15000
//+++++++++++++++++++++++++++++++++++++++++++++
pause 600
if @injournal 'crafted a slayer' 'system'
  sysmsg '!----SLAYER WEAPON MADE----!' 33
  clearjournal
  run "West"
  run "West"
  run "West"
  run "West"
  run "West"
  //
  cast "Recall"
  waitfortarget 15000
  target! 'ASRHomeRecall'
  pause 1300
  //
  useobject 'ASRSlayers'
  pause 500
  while @findtype 0x13b2 'any' 'backpack'
    moveitem 'found' 'ASRSlayers' 0 0 0
    pause 600
  endwhile
  //--------
  //restock Mandrakeroot
  if @findtype 0xf86 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Mandrake' '1165'
    playmacro 'SafeSpot'
  endif
  //
  //restock BloodMoss
  if @findtype 0xf7b 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Bloodmoss' '1165'
    playmacro 'SafeSpot'
  endif
  //restock Blackpearl
  if @findtype 0xf7a 'any' 'ASRResources'
    moveitem 'found' 'backpack' 0 0 0 2
    pause 600
  else
    headmsg 'Out of Blackpearl' '1165'
    playmacro 'SafeSpot'
  endif
  //---------
  //
  cast "Recall"
  waitfortarget 15000
  target! 'ASRBritCraftRecall'
  pause 1300
else
  if @injournal 'your material and skill have added' 'system'
    sysmsg '!----RUNIC BOW MADE----!' 33
    clearjournal
    run "West"
    run "West"
    run "West"
    run "West"
    run "West"
    //
    cast "Recall"
    waitfortarget 15000
    target! 'ASRHomeRecall'
    pause 1300
    //
    useobject 'ASRSlayers'
    pause 500
    while @findtype 0x13b2 'any' 'backpack'
      moveitem 'found' 'ASRSlayers' 0 0 0
      pause 600
    endwhile
    //
    //
    //--------
    //restock Mandrakeroot
    if @findtype 0xf86 'any' 'ASRResources'
      moveitem 'found' 'backpack' 0 0 0 2
      pause 600
    else
      headmsg 'Out of Mandrake' '1165'
      playmacro 'SafeSpot'
    endif
    //
    //restock BloodMoss
    if @findtype 0xf7b 'any' 'ASRResources'
      moveitem 'found' 'backpack' 0 0 0 2
      pause 600
    else
      headmsg 'Out of Bloodmoss' '1165'
      playmacro 'SafeSpot'
    endif
    //restock Blackpearl
    if @findtype 0xf7a 'any' 'ASRResources'
      moveitem 'found' 'backpack' 0 0 0 2
      pause 600
    else
      headmsg 'Out of Blackpearl' '1165'
      playmacro 'SafeSpot'
    endif
    //---------
    pause 1300
    cast "Recall"
    waitfortarget 15000
    target! 'ASRBritCraftRecall'
    pause 1300
  else
    useobject 'ASRTrash'
    pause 500
    while @findtype 0x13b2 'any' 'backpack'
      //if @findtype 0x13b2 'any' 'backpack'
      moveitem 'found' 'ASRTrash' 0 0 0
      pause 600
    endwhile
    //
    clearjournal
    pause 500
  endif
endif

2nd companion Macro
Must name this macro Exsactly> SafeSpot
Code:
// $$$$$$$$                  SafeSpot                    $$$$$$$
// $$$$$$$$    UltimateBowCrafting Companion Macro "B"   $$$$$$$
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
// ?? By Amonseti
// ?? V2.1
// ??????????????????????????????????????????????????
// ?? !!!!!!!!!!!!!!!!!!IMPORTANT !!!!!!!!!!!!!!!!!!!
// ?? !!!!!!!DO NOT RUN THIS MACRO DIRECTLY !!!!!!!!!
// ?? !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
cast "Recall"
waitfortarget 15000
target! 'ASRSafeSpot'
pause 1300
run "North"
run "North"
run "North"
run "North"
run "North"
pause 1000
useskill 'Hiding'


 

Mordraer

Novice
This is an amazing macro. One question though - mine ends when it makes a slayer bow. Is there a way to have it continue looping and continuing to make slayer bows until it runs out of resources to continue before recalling home and hiding?

Also sometimes it hangs up when trying to recall back to Brit Crafting Area and ends up staying at the Safe Spot and then the macro stalls out looking for a trashcan that isn't there. Thoughts?
 

SpLiCe

New Member
having same issue, the recall is on fizzles ill fix my magery but every slayer made stops the macro
 

Steezie E

Master
Pretty cool macro. Too bad it is stuff like this that will cause Garriott to roll over in his space sarcophagus.
 
Top