Heady Kiola macro using Wassup's metalring macro

Macro depository for macros written before the user variable changes that broke all of them.

Moderator: MacroQuest Developers

OnyxSkyDV
a lesser mummy
a lesser mummy
Posts: 46
Joined: Wed Sep 18, 2002 1:02 pm

Heady Kiola macro using Wassup's metalring macro

Post by OnyxSkyDV » Fri Jun 13, 2003 8:04 pm

Here is Wassup's macro that I redid for heady kiolas. I had to remove the turbo, and adjust the delay a bit, but it's still fast as all getout. :)

OnyxSkyDV

_______________________________________


| Kiola2.mac
|
| Created by Wassup / reworded for Kiolas by OnyxSkyDV
|
| Combines a Water Flask, Bottle, and two Packets of Kiola Sap.
|
|

#define DelayValue v95

Sub Main

|Set the delay value
/varset DelayValue 1

/sendkey down ctrl

:CombineLoop
|Get first component
/finditem "water flask"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick
|Place water flask in Brew Barrel
/click left enviro 0
/delay $DelayValue
/if "$cursor(name)"=="Water Flask" /goto :ReClick

|Get second component
/finditem "Bottle"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick2
|Place ore in Brew Barrel
/click left enviro 1
/delay $DelayValue
/if "$cursor(name)"=="Bottle" /goto :ReClick2

|Get file
/finditem "Packet of Kiola Sap"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick3
|Place file in Brew Barrel
/click left enviro 2
/delay $DelayValue
/if "$cursor(name)"=="Packet of Kiola Sap" /goto :ReClick3

|Get file
/finditem "Packet of Kiola Sap"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick4
|Place file in Brew Barrel
/click left enviro 3
/delay $DelayValue
/if "$cursor(name)"=="Packet of Kiola Sap" /goto :ReClick4


|Click the Combine button
/click left enviro combine
:WaitCombine
/delay 1

|Always going to have the file as a result of the combine
/if $cursor()==True {
/goto :AutoDrop
} else /goto :WaitCombine

|Drop everything in auto equip
:AutoDrop
/if $cursor()==True {
/click left auto
/delay 1
/goto :AutoDrop
}

|Start a new Combine
/goto :CombineLoop

:EndIt
/zapvars
/sendkey up ctrl
/endmacro

/return

OnyxSkyDV
a lesser mummy
a lesser mummy
Posts: 46
Joined: Wed Sep 18, 2002 1:02 pm

one thought

Post by OnyxSkyDV » Fri Jun 13, 2003 8:08 pm

One thing I noticed was that while it was performing the macro it tied up the system pretty well.. Was not real successful getting it to take the /end input from the command line to stop it before I ran out of components.

Any suggestions on what could be added to help with that. Should you get a GM tell you would probably want to get it stopped pretty quick... :)


OnyxSkyDV

wassup
Official Guardian and Writer of TFM
Official Guardian and Writer of TFM
Posts: 1487
Joined: Sat Oct 26, 2002 5:15 pm

Re: one thought

Post by wassup » Fri Jun 13, 2003 10:24 pm

OnyxSkyDV wrote:One thing I noticed was that while it was performing the macro it tied up the system pretty well.. Was not real successful getting it to take the /end input from the command line to stop it before I ran out of components.

Any suggestions on what could be added to help with that. Should you get a GM tell you would probably want to get it stopped pretty quick... :)


OnyxSkyDV
It will stop itself if you run out of any of the components. When /finditem doesn't find anything the macro stops, at least it appears to do that to me.

What you have to do is hit the CTRL key then a hotkey with /endmacro though if you want to stop it whenever you want to.

Another thing you want to look at:

Code: Select all

|Click the Combine button 
/click left enviro combine 
:WaitCombine 
/delay 1 

|Always going to have the file as a result of the combine 
/if $cursor()==True { 
/goto :AutoDrop 
} else /goto :WaitCombine 
Will cause an infinite loop if you fail a combine, unless Heady Kiola is a no fail combine.

Might want to modify that part just a little bit.

OnyxSkyDV
a lesser mummy
a lesser mummy
Posts: 46
Joined: Wed Sep 18, 2002 1:02 pm

Addition

Post by OnyxSkyDV » Sun Jun 15, 2003 2:39 pm

Good idea, I had missed that Wassup, and never failed any of the heady kiolas. so did not see the error crop up. :)

Here is an updated one, let me know what you think.

| Kiola2.mac
|
| Created by Wassup / reworded for Kiolas by OnyxSkyDV
|
| Combines a water flask, Bottle, and two kiola sap packets.
|
|

#define DelayValue v95
#define FailedWait v50

Sub Main

|Set the delay value
/varset DelayValue 1

|Set the FailedWait value
/varset FailedWait 0

/sendkey down ctrl

:CombineLoop
|Get first component
/finditem "water flask"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick
|Place water flask in Brew Barrel
/click left enviro 0
/delay $DelayValue
/if "$cursor(name)"=="Water Flask" /goto :ReClick

|Get second component
/finditem "Bottle"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick2
|Place ore in Brew Barrel
/click left enviro 1
/delay $DelayValue
/if "$cursor(name)"=="Bottle" /goto :ReClick2

|Get file
/finditem "Packet of Kiola Sap"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick3
|Place file in Brew Barrel
/click left enviro 2
/delay $DelayValue
/if "$cursor(name)"=="Packet of Kiola Sap" /goto :ReClick3

|Get file
/finditem "Packet of Kiola Sap"
/delay $DelayValue
/if $cursor()!=True /goto :Endit

:ReClick4
|Place file in Brew Barrel
/click left enviro 3
/delay $DelayValue
/if "$cursor(name)"=="Packet of Kiola Sap" /goto :ReClick4


|Click the Combine button
/click left enviro combine
:WaitCombine
/delay 1
/varadd FailedWait 1

/if n $FailedWait>2 /goto :AutoDrop

/if $cursor()==True {
/goto :AutoDrop
} else /goto :WaitCombine

|Drop everything in auto equip
:AutoDrop
/if $cursor()==True {
/click left auto
/delay 1
/goto :AutoDrop
}
/varset FailedWait 0
|Start a new Combine
/goto :CombineLoop

:EndIt
/zapvars
/sendkey up ctrl
/endmacro

/return

wassup
Official Guardian and Writer of TFM
Official Guardian and Writer of TFM
Posts: 1487
Joined: Sat Oct 26, 2002 5:15 pm

Post by wassup » Sun Jun 15, 2003 3:24 pm

For combines that can be failed and do not use tools, I think I would maybe try using events to detect a failed combine.

Your method gives you a way out of the indefinite loop if it happens so should be ok.