• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->
Ultimate Clickie Macro

Utility Ultimate Clickie Macro 1.0

Download now:  Join us with Level 2 access or earn your way in with  RedCents.
Other Authors
Software Requirements
Server Type
🏢 Live 🏘️ Emu TLP Test
I wanted a utility to click my Cauldron of Many Things such as Cauldron, and used it for quite a while. But then I decided to expand it a bit to click other items I had in inventory to produce different things that I might need/want. I also wanted to combine it with training myself to tolerate alcohol. This is the result. any many thanks to TreeHugginDruid for the start!

Rich (BB code):
#include spell_routines.inc

#Event BagsFull     "#*#There was no place to put that!#*#"
#Event BagsFull     "#*#There are no open slots for the held item in your inventory.#*#"
#Event LoreItem      "#*#You cannot loot this Lore Item.#*#"
#Event Camping     "#*#seconds to prepare your camp."
#Event BoozeItUp   "#*#You have become better at Alcohol Tolerance#*#"

Sub Main

  |-- If you use this macro, modify:
  |-- The values in the Clickies array to be items you want to click to
  |-- produce objects
  |-- The values in the ItemsToDestroy array to be items you do not want
  |-- once they are produced or to limit the quantity of produced items
  |-- The value of the cDrink variable to be the item you wish to consume
  |-- while training to drink alcohol

  |-- declare an array of all items to click and the quantities. 
  |-- Element definition: <Item To Click>|<Created Item>|<Quantity to Keep>
  |-- If <Created Item> and <Quantity To Keep> are not defined, the item is
  |-- just clicked and any results of the item are checked to see if they are
  |-- to be destroyed with the ItemsToDestroy array
  |-- If <Quantity To Keep> is defined, the <Item To Click> is clicked then the
  |-- resulting <Created Item> quantity count is checked and if it is under
  |-- <Quantity To Keep>, it is kept.  Otherwise it is destroyed
  /declare Clickies[10] string outer NULL

  /varset Clickies[1] Cauldron of Countless Goods
  /varset Clickies[2] Cauldron of Endless Goods
  /varset Clickies[3] Cauldron of Many Things
  /varset Clickies[4] Brell's Brew Dispenser|Brell Day Ale|10
  /varset Clickies[5] Endless Turkeys|Cooked Turkey|10
  /varset Clickies[6] Spiced Iced Tea Dispenser|Spiced Iced Tea|20

  |-- declare an array of all the items to DELETE
  |-- Element definition: <Cursor Item>|<Quantity to Keep>
  |-- If <Quantity to Keep> is defined, the <Cursor Item> quantity is checked
  |-- and if less than <Quantity to Keep> it it kept.  Otherwise it is destroyed
  /declare ItemsToDestroy[50] string outer NULL

  /varset ItemsToDestroy[1] Mardu's Maniacal Mask
  /varset ItemsToDestroy[2] Tideslasher
  /varset ItemsToDestroy[3] Elemental Shard
  /varset ItemsToDestroy[4] Worlu's Windcloak
  /varset ItemsToDestroy[5] Worlu's Prying Eyes
  /varset ItemsToDestroy[6] Rod of Mechamagical Mastery
  /varset ItemsToDestroy[7] Shard of the First Minion
  /varset ItemsToDestroy[8] Regal Tonic of Greater Healing
  /varset ItemsToDestroy[9] Pail of Slop
  /varset ItemsToDestroy[10] Majestic Tonic of Healing
  /varset ItemsToDestroy[11] Mardu's Mercurial Visor
  /varset ItemsToDestroy[12] Skull of the Spire Servant
  /varset ItemsToDestroy[13] Void Shard
  /varset ItemsToDestroy[14] Wand of Temporal Mastery
  /varset ItemsToDestroy[15] Ether-Fused Shard
  /varset ItemsToDestroy[16] Wavethrasher
  /varset ItemsToDestroy[17] Brightedge
  /varset ItemsToDestroy[18] Imprint of the Enhanced Minion|1
  /varset ItemsToDestroy[19] Bulkwark of Many Portals|4
  /varset ItemsToDestroy[20] Tavon's Polished Gemstone|8
  /varset ItemsToDestroy[21] Tavon's Burnished Gemstone|6

  |-- is the toon going to booze it up? Define what to drink
  /declare cDrink string local
  /varset cDrink Brell Day Ale

  | reference variables that do not need to be altered
  /declare ItemKeepCount integer outer
  /declare i int local
  /declare bFound bool local
  /declare bCast bool local
  /declare nClickie int local
  /declare cClickie string local
  /declare cWhatToClick string local
  /declare cWhatToGet string local
  /declare nHowMany int local

  /declare cItemToDestroy string local
  /declare cItem string local

  /echo Running ClickStuff Macro
  /popup Running ClickStuff Macro

    /for nClickie 1 to ${Clickies.Size}

      |--- Continue checking for an item on the cursor until
      |--- there isn't one
        /if (${Cursor.ID}) {

          /varset bFound false

          /for i 1 to ${ItemsToDestroy.Size}
            /varset cItemToDestroy ${ItemsToDestroy[${i}]}
            /varset cItem ${cItemToDestroy.Arg[1,|]}
            /varset nHowMany ${cItemToDestroy.Arg[2,|]}

            |--- if we find the item, get out of the loop
            /if (${Cursor.Name.Equal[${cItem}]}) {
              /if (!${nHowMany} || ${FindItemCount[=${cItem}]} > ${nHowMany}) /varset bFound true

          /next i

          |--- Are we keeping or destroying the item?
          /if (${bFound}) {
            /echo ${Time.Date}-${Time} Destroy - ${Cursor.Name}.

          } else {
            /echo ${Time.Date}-${Time} Keep - ${Cursor.Name}.

          /delay 2s
          /goto :ItemOnCursor

      | --- Start the summoning process
      /varset cClickie ${Clickies[${nClickie}]}

      |-- See if there is a clickie defined
      /if (${cClickie.NotEqual[NULL]}) {

        /varset cWhatToClick ${cClickie.Arg[1,|]}
        /varset cWhatToGet ${cClickie.Arg[2,|]}
        /varset nHowMany ${cClickie.Arg[3,|]}

        |-- if there are quantites and items defined, check them first
        /varset bCast true
        /if (${cWhatToGet.NotEqual[NULL]} && (${nHowMany})) {
          /if (${FindItemCount[=${cWhatToGet}]} >= ${nHowMany}) /varset bCast false

        |-- Can we cast and is the item ready?
        /if (${bCast} && ${FindItem[=${cWhatToClick}].ID} && ${Me.ItemReady[${cWhatToClick}]}) {

          /useitem "${cWhatToClick}"

          /if (${Me.Casting.ID}) {
            /delay 2s
            /goto :CastingCheck

          |--- More than likely the item was clicked.  Put in a pause to allow
          |--- the user to override the default actions of the macro as well as
          |--- not flood the application with requests from the macro
          /delay 4s


      /delay 1s

    /next nClickie

    | -- see if we can take a drink
    /if (${Me.Skill[Alcohol Tolerance]} < 450) {
      /if (${FindItem[=${cDrink}].ID} && ${Me.ItemReady[${cDrink}]}) {
        /useitem "${cDrink}"
        /delay 1s

    /delay 1s
    /goto :MainLoop

Sub Event_BagsFull

  /echo *** Bags are full, time to cleanup ! ***
Sub Event_LoreItem
  /echo + You attempted to summon a lore item you already have.
Sub Event_Camping
  /echo Camp command detected.  Ending macro.
Sub Event_BoozeItUp
    /echo Alcohol Tolerance >> ${Me.Skill[Alcohol Tolerance]} <<     Drunkeness >> ${Me.Drunk} <<
First release
Last update
0.00 star(s) 0 ratings

Share this resource