Macro depository for macros written before the user variable changes that broke all of them.
Moderator: MacroQuest Developers
-
Imperfect
- Macro Author

- Posts: 319
- Joined: Fri Jun 14, 2002 1:52 am
Post
by Imperfect » Sun Jun 30, 2002 9:19 am
I based this off of Plazmic's I also have a version based off of L124rd's It is kind of buggy though in that after it makes the first fillet it will try and buy more meat.
Code: Select all
| - bear.mac -
| Code Blatantly Stolen from the sample in the latest release and modified by me for my Use -Imperfect
|
#include routines.mac
Sub Main
/mqlog
/varcalc v50 $char(plat)*10+$char(gold)
/varset t0 3000
/varset t1 0
/call FindCombiner Baking
/if $return==99 /return
/varset v80 $return
:StartLoop
/cleanup
/click left auto
/click right inv $v80
/if $pack($v80,empty)==FALSE /call CleanPack
/if $pack($v80,empty)==FALSE /goto :TooFull
/sendkey down ctrl
/call MakeCheese
/sendkey up ctrl
| /if n $t1==0 /call CastCHA
/call SellBuy
/if $t0==0 /call LogStats
/goto :StartLoop
:TooFull
/echo You are too full on stuff, aborting macro.
/return
Sub CleanPack
/varcalc v2 $pack($v80,slots)-1
/sendkey down shift
/for v1 0 to $v2
/click left pack $v80 $v1
/click left auto
/next v1
/sendkey up shift
/return
Sub MakeCheese
:MakeCheese
/finditem "Bear Meat"
/click left pack $v80 0
/finditem "Filleting Knife"
/click left pack $v80 1
/if "$item($v80,0,name)"=="Bear Meat" /if "$item($v80,1,name)"=="Filleting Knife" /goto :DoCombine
/return
:DoCombine
/click left pack $v80 combine
:LoopWait
/if "$cursor()"=="NULL" /goto :LoopWait
/if "$cursor(name)"=="Filleting Knife" /goto :Failed
/click left auto
:LoopFail
/if "$cursor()"=="NULL" /goto :LoopFail
:Failed
/click left auto
/goto :MakeCheese
/return
Sub SellBuy
| Open merchant
/click left auto
/target Nicoela
/face
/press u
/delay 25
/sendkey down shift
| Sell our cheese
:SellCheese
/varset v98 $char(gold)
/finditem "Filleted Bear"
/if $find()==FALSE /goto :DoneSelling
/click left merchant buy
:WaitSale
/if n $v98==$char(gold) /goto :WaitSale
/goto :SellCheese
:DoneSelling
/varset v51 0
/finditem "Bear Meat"
/if $find()==TRUE /varset v51 1
| Buy Bottles of Milk
/click left merchant 11
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/sendkey up shift
/press esc
/return
Sub LogStats
| Calc profit in gold
/varcalc v51 $char(plat)*10+$char(gold)-$v50
| calc plat/hr
/varcalc v52 $v51*360/$running
| Plat
/varcalc v53 $v51/10
| left over gold
/varcalc v54 $v51%10
/echo Profit: $v53.$v54pp, avg: $v52pp/hr
/mqlog Run time: $running sec, Profit: $v53.$v54pp, Average = $v52pp/hr
/varset t0 3000
/return
Sub BuyItem
/varcalc v98 $char(gold)*100+$char(silver)*10+$char(copper)
/click left merchant buy
:WaitBuy
/varcalc v97 $char(gold)*100+$char(silver)*10+$char(copper)
/if n $v98==$v97 /goto :WaitBuy
/return
Sub CastCHA
/target myself
/call Event_CastFizzle
:LoopFizzle
/doevents
/if n $t9>0 /goto :LoopFizzle
/varset t1 30m
/return
Sub Event_CastFizzle
/delay 5
/cast 1
/varset t9 7s
/return
This next one should be a bit more stable with laggy pc's There is a bug though. I need to figure out exactly what I did wrong with my theft of L124rd's code.
Code: Select all
| - bear.mac -
|
| Written by: Plazmic
| Edited by: L124RD
| Stolen and edited for my own purposes by me -Imperfect
#include routines.mac
#chat say
Sub Main
/afk I am baking, I do not wish to be disturbed
/filter skills none
/stand
/mqlog
/varcalc v50 $char(plat)*10+$char(gold)
/varset t0 3000
/varset t1 $p0
:StartLoop
/call FindCombiner Baking
/if $return==99 /return
/varset v80 $return
/target Nicoela
/if "$target()"=="FALSE" /goto :nonicoela
/cleanup
:cleanuploop0
/if "$target()"=="TRUE" /goto :cleanuploop0
/click left auto
/click right inv $v80
/varset v39 0
/if "$cursor()"=="TRUE" /click left auto
:cleanpack
/if $pack($v80,empty)==FALSE /call CleanPack
/if n $v39==30 /goto :toofull
/varadd v39 1
/if $pack($v80,empty)==FALSE /goto :cleanpack
/if "$cursor()"=="TRUE" /click left auto
/face loc 145,1167
/sendkey down ctrl
/call Makefillet2
/sendkey up ctrl
/if "$cursor()"=="TRUE" /click left auto
/call SellBuy
/if $t0==0 /call LogStats
/goto :StartLoop
:TooFull
/echo You are too full on stuff, aborting macro.
/mqlog You are too full on stuff, aborting macro
/call Logoff
/return
Sub CleanPack
/varcalc v2 $pack($v80,slots)-1
/sendkey down shift
/for v1 0 to $v2
/if "$item($v80,$v1)"=="NULL" /goto :skipclean
/click left pack $v80 $v1
:cleanwait0
/if "$cursor()"!="TRUE" /goto :cleanwait0
/click left auto
:cleanwait1
/if "$cursor()"=="TRUE" /goto :cleanwait1
:skipclean
/next v1
/sendkey up shift
/return
Sub Makefillet
:Makefillet
/finditem "Bear Meat"
/click left pack $v80 0
/delay 1
/finditem "Filleting Knife"
/click left pack $v80 1
/delay 1
/if n $pack($v80,space)>0 /return
/click left pack $v80 combine
/for v1 1 to 75
/if "$cursor()"=="TRUE" /goto :AutoDropfillet
/delay 1
/next v1
/goto :Makefillet
:AutoDropFillet
/if "$cursor(name)"=="Filleting Knife" /goto :AutoDropknife
/click left auto
/delay 1
/if "$cursor()"=="TRUE" /goto :AutoDropfillet
:AutoDropKnife
/click left auto
/if "$cursor()"=="TRUE" /goto :AutoDropknife
/goto :Makefillet
/return
Sub Makefillet2
:Makefillet
/finditem "Bear Meat"
/delay 1
/if $find()==FALSE /return
:bearwait0
/if "$cursor()"!="TRUE" /goto :bearwait0
/click left pack $v80 0
:bearwait1
/if "$cursor()"=="TRUE" /goto :bearwait1
/finditem "Filleting Knife"
/delay 1
/if $find()==FALSE /return
:knifewait0
/if "$cursor()"!="TRUE" /goto knifewait0
/click left pack $v80 1
:knifewait1
/if "$cursor()"=="TRUE" /goto :knifewait1
/if n $pack($v80,space)>0 /return
/click left pack $v80 combine
:filletwait
/if "$cursor()"=="TRUE" /goto :AutoDropfillet
/goto :filletwait
/goto :Makefillet
:AutoDropfillet
/if "$cursor(name)"=="Filleting Knife" /goto :AutoDropknife
/click left auto
/goto :AutoDropfillet
:AutoDropknife
/click left auto
/if "$cursor()"=="TRUE" /goto :AutoDropknife
/goto :Makefillet
/return
Sub SellBuy
| Open merchant
/click left auto
/target Nicoela
/face
/press u
/varset v55 0
/doevents flush
:sellwait
/doevents
/if n $v55!=1 /goto :sellwait
/sendkey down shift
| Sell our fillet
:Sellfillet
/finditem "Filleted Bear"
/if $find()==FALSE /goto :DoneSelling
/call buyitem
/goto :Sellfillet
:DoneSelling
/varset v51 0
/finditem "Bear Meat"
/if $find()==TRUE /varset v51 1
| Buy Bear Meat
/click left merchant 11
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/sendkey up shift
/cleanup
:cleanuploop1
/if "$target()"=="TRUE" /goto :cleanuploop1
/return
Sub LogStats
| Calc profit in gold
/varcalc v51 $char(plat)*10+$char(gold)-$v50
| calc plat/hr
/varcalc v52 $v51*360/$running
| Plat
/varcalc v53 $v51/10
| left over gold
/varcalc v54 $v51%10
/echo Profit: $v53.$v54pp, avg: $v52pp/hr
/mqlog Run time: $running sec, Profit: $v53.$v54pp, Average = $v52pp/hr
/varset t0 3000
/return
sub LogOff
/sit
/camp
/afk
/endmacro
/return
Sub BuyItem
/varcalc v98 $char(gold)*100+$char(silver)*10+$char(copper)
/click left merchant buy
:WaitBuy
/varcalc v97 $char(gold)*100+$char(silver)*10+$char(copper)
/if n $v98==$v97 /goto :WaitBuy
/return
Sub Event_Chat
/if "$p0"=="say" /if "$p1"~~"Nicoela" /varset v55 1
/return
-
Imperfect
- Macro Author

- Posts: 319
- Joined: Fri Jun 14, 2002 1:52 am
Post
by Imperfect » Sun Jun 30, 2002 9:27 am
I am curious to see what Plazmic has to say about this since he must have some code for it because I found him at this merchant.
-
Everguide
- a lesser mummy

- Posts: 63
- Joined: Mon Jun 24, 2002 11:00 pm
Post
by Everguide » Sun Jun 30, 2002 4:26 pm
Ok what zone do you use the Macro in? Does anyone have an average plat an hour? This seems a LOT safer then the cheese quest. Also what is the recipe for a filtering knife. Once I saw people getting banned using cheese I was looking for a safer way to make plat :)
-
L124RD
- Site Admin

- Posts: 1343
- Joined: Fri Jun 14, 2002 12:15 am
- Location: Cyberspace
-
Contact:
Post
by L124RD » Sun Jun 30, 2002 4:30 pm
Saluations,
This is the version i have been using... seems to work fine... should have no /delays in it so should work fine for laggy and unlaggy. unlaggy it seems to work the same as with delays, except if you hit a lag spike, it won't freak out on you.
Code: Select all
| - bearfillet.mac -
|
| Written by: L124RD
#include routines.mac
#chat say
#chat tell
Sub Main
/varset v91 0
/varset v92 0
/filter skills none
/afk I am baking, I do not wish to be disturbed. Also I might be asleep... I haven't gotten much of that as of late.
/stand
/sit
/mqlog
/varcalc v50 $char(plat)*10+$char(gold) + $char(plat,bank)*10
:StartLoop
/call FindCombiner baking
/if $return==99 /return
/varset v80 $return
/target Mordin
/if "$target()"=="FALSE" /goto :nogranger
/cleanup
:cleanuploop0
/if "$target()"=="TRUE" /goto :cleanuploop0
/click left auto
/click right inv $v80
/varset v39 0
/if "$cursor()"=="TRUE" /click left auto
:cleanpack
/if $pack($v80,empty)==FALSE /call CleanPack
/if n $v39==30 /goto :toofull
/varadd v39 1
/if $pack($v80,empty)==FALSE /goto :cleanpack
/if "$cursor()"=="TRUE" /click left auto
/face loc -100,1167
/sendkey down ctrl
/call MakeCheese
/sendkey up ctrl
/if "$cursor()"=="TRUE" /click left auto
/call SellBuy
/call LogStats
/goto :StartLoop
:TooFull
/echo You are too full on stuff, aborting macro.
/mqlog You are too full on stuff, aborting macro
/call Logoff
/return
Sub CleanPack
/varcalc v2 $pack($v80,slots)-1
/sendkey down shift
/for v1 0 to $v2
/if "$item($v80,$v1)"=="NULL" /goto :skipclean
/click left pack $v80 $v1
:cleanwait0
/if "$cursor()"!="TRUE" /goto :cleanwait0
/click left auto
:cleanwait1
/if "$cursor()"=="TRUE" /goto :cleanwait1
:skipclean
/next v1
/sendkey up shift
/return
Sub MakeCheese
:MakeCheese
/finditem "Bear Meat"
/if $find()==FALSE /return
:bearwait0
/if "$cursor()"!="TRUE" /goto :bearwait0
/click left pack $v80 0
:Bearwait1
/if "$cursor()"=="TRUE" /goto :Bearwait1
/finditem "Filleting Knife"
/if $find()==FALSE /return
:knifewait0
/if "$cursor()"!="TRUE" /goto :knifewait0
/click left pack $v80 2
:knifewait1
/if "$cursor()"=="TRUE" /goto :knifewait1
/click left pack $v80 combine
:cheesewait
/if "$cursor()"=="TRUE" /goto :AutoDropCheese
/goto :cheesewait
/goto :MakeCheese
:AutoDropCheese
/if "$cursor(name)"=="Filleting Knife" /goto :AutoDropSpoon
/click left auto
/goto :AutoDropCheese
:AutoDropSpoon
/click left auto
/if "$cursor()"=="TRUE" /goto :AutoDropSpoon
/doevents
/goto :MakeCheese
/return
Sub SellBuy
| Open merchant
/click left auto
/target Mordin
/face
/press u
/varset v55 0
/doevents flush
:sellwait
/doevents
/if n $v55!=1 /goto :sellwait
/sendkey down shift
| Sell our cheese
:SellCheese
/finditem "Filleted Bear"
/if $find()==FALSE /goto :DoneSelling
/call buyitem
/goto :SellCheese
:DoneSelling
| Buy bear meat
/click left merchant 11
/call buyitem
/call buyitem
/call buyitem
/call buyitem
/sendkey up shift
/cleanup
:cleanuploop1
/if "$target()"=="TRUE" /goto :cleanuploop1
/return
Sub LogStats
| Calc profit in gold
/varcalc v53 $char(plat)*10+$char(gold) + $char(plat,bank)*10
/varcalc v51 $v53 - $v50
| calc plat/hr
/varcalc v52 $v51*360/$running
| Plat
/varcalc v53 $v51/10
| left over gold
/varcalc v54 $v51%10
/echo Profit: $v53.$v54pp, avg: $v52pp/hr. $v92 fails, $v91 successes.
/mqlog Run time: $running sec, Profit: $v53.$v54pp, Average = $v52pp/hr. Combine has failed $v92 and succeded $v91 times.
/varset t0 3000
/return
sub LogOff
/sit
/camp
/afk
/endmacro
/return
Sub BuyItem
/varcalc v98 $char(gold)*100+$char(silver)*10+$char(copper)
/click left merchant buy
:WaitBuy
/varcalc v97 $char(gold)*100+$char(silver)*10+$char(copper)
/if n $v98==$v97 /goto :WaitBuy
/return
Sub Event_Chat
/if "$p0"=="say" /if "$p1"~~"Mordin" /if "$p2"~~"$char(name)" /varset v55 1
/if "$p0"=="tell" /if "$p1"!="Mordin Frostcleaver" /mqlog $p1 told you, "$p2"
/return
Sub Event_CombineSuceed
/varadd v91 1
/return
Sub Event_CombineFail
/varadd v92 1
/return
-
Imperfect
- Macro Author

- Posts: 319
- Joined: Fri Jun 14, 2002 1:52 am
Post
by Imperfect » Sun Jun 30, 2002 5:14 pm
Every recipe can be found at
www.eqtraders.com. I am using this particular one in Shadowhaven.
Imperfect
-
L124RD
- Site Admin

- Posts: 1343
- Joined: Fri Jun 14, 2002 12:15 am
- Location: Cyberspace
-
Contact:
Post
by L124RD » Sun Jun 30, 2002 5:20 pm
Salutations,
I don't do it in shadow haven... you might have to rename the merchant...
-
draganan
- decaying skeleton

- Posts: 2
- Joined: Sat Jun 22, 2002 4:15 pm
Post
by draganan » Sun Jun 30, 2002 8:12 pm
where merchant do you use, and whats ur pp per hr?
-
Nuad
- a ghoul

- Posts: 93
- Joined: Thu Jun 27, 2002 11:43 am
- Location: Berlin, Germany
Post
by Nuad » Sun Jun 30, 2002 10:22 pm
draganan wrote:where merchant do you use, and whats ur pp per hr?
You can use them at any Mercant which sells the needed Meat, you only have to change the Mercants name in the Code.
-
Imperfect
- Macro Author

- Posts: 319
- Joined: Fri Jun 14, 2002 1:52 am
Post
by Imperfect » Sun Jun 30, 2002 11:58 pm
I almost refuse to answer "what's ur pp per hour?" because I hate that. I get 148pp per hour but, then again my average with cheese is only 70pp or so
-
L124RD
- Site Admin

- Posts: 1343
- Joined: Fri Jun 14, 2002 12:15 am
- Location: Cyberspace
-
Contact:
Post
by L124RD » Mon Jul 01, 2002 4:13 am
Salutations,
Depending on my lag, between 150 and 175pp... it costs the same and sells the same to me as what a friend gets in sh...
-
Talamasca
- orc pawn

- Posts: 12
- Joined: Tue Jul 09, 2002 1:28 pm
Post
by Talamasca » Tue Jul 09, 2002 1:44 pm
Have a slight problem with this. Once I get a failure and loose the knife, the macro stops working and eventually times out the everquest client. In fact I have to restart my computer before I can start everquest again. Suggestions would be appreciated.
Code: Select all
|- bearFillet.mac
| * Original by Plazmic *
#turbo
Sub Main
/afk
/filter skills increase
/filter food off
/filter money off
/filter target off
/stand
/mqlog
/varcalc v50 $char(plat)*10+$char(gold)
/varset t0 3000
/call FindCombiner Baking
/if $return==99 /endmacro
/varset v80 $return
/echo Will now start to make money, you started with $v50gp
| make sure loop is running right
:Loopsub
/varset v37 1
/call Loopsub
/echo Panic
/goto :Loopsub
/return
sub Loopsub
:LOOPSTART
/delay 0
/sendkey
/press esc
/press esc
/press esc
/sendkey up shift
/cleanup
/sendkey down shift
/click left auto
/click right inv $v80
/finditem "Filleting Knife"
/click left auto
/sendkey up shift
/if $pack($v80,empty)==FALSE /call CleanPack
/sendkey down ctrl
/call MakeFillet
/sendkey up ctrl
/press esc
/press esc
/press esc
/varset v37 0
/call SellBuy
/if $t0==0 /call LogStats
/goto :LOOPSTART
/endmacro
/return
Sub CleanPack
/delay 0
/if $pack($v80,open)==FALSE /click right inv $v80
/varcalc v2 $pack($v80,slots)-1
/sendkey down shift
/for v1 0 to $v2
/click left pack $v80 $v1
/click left auto
/next v1
/sendkey up shift
/return
Sub MakeFillet
:MakeFillet
/finditem "Bear Meat"
/click left pack $v80 0
/finditem "Filleting Knife"
/click left pack $v80 1
/if $cursor(value)!=NULL /goto :AutoDropFillet
/if "$item($v80,0,name)"=="Bear Meat" /if "$item($v80,1,name)"=="Filleting Knife" /goto :DoCombine
/return
:DoCombine
/click left pack $v80 combine
/delay 0
:AutoDropFillet
/doevents
/if $cursor(value)!=342 /click left auto
/if $cursor(value)!=342 /goto :AutoDropFillet
/if $cursor(value)==342 /click left auto
/if $find()==FALSE /sendkey up ctrl /goto :SellBuy
/goto :MakeFillet
/return
Sub SellBuy
/if n $v37!=0 /call Loopsub
:SellBuy
| Open merchant
/click left auto
| PANIC if holding item!
/if $cursor(value)!=NULL /goto :ITEMINHAND
/target Nicoela
/face
/mouseto merchant buy
/press u
/press u
/press u
/delay 20
/sendkey down shift
| Sell our fillets
:SellFillet
/varset v98 $char(gold)
/varset v55 $char(silver)
/varset v56 $char(copper)
/finditem "Filleted Bear"
/if $find()==FALSE /goto :SellBear Meat
/click left merchant buy
/delay 1
:WaitSale
/doevents
/if n $v98!=$char(gold) /goto :SellFillet
/if n $v55!=$char(silver) /goto :SellFillet
/if n $v56!=$char(copper) /goto :SellFillet
/goto :WaitSale
| Sell our Bear Meat
:SellBear Meat
/varset v98 $char(gold)
/varset v55 $char(silver)
/varset v56 $char(copper)
/finditem "Bear Meat"
/if $find()==FALSE /goto :DoneSelling
/click left merchant buy
/delay 1
:WaitSale3
/doevents
/if n $v98!=$char(gold) /goto :SellBear Meat
/if n $v55!=$char(silver) /goto :SellBear Meat
/if n $v56!=$char(copper) /goto :SellBear Meat
/goto :WaitSale3
:DoneSelling
| Buy Bear Meats
/delay 0
/click left merchant 11
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/call BuyItem
/sendkey up shift
/mouseto auto
/varset v37 1
/return
Sub LogStats
/delay 0
| Calc profit in gold
/varcalc v51 $char(plat)*10+$char(gold)-$v50
| calc plat/hr
/varcalc v52 $v51*360/$running
| Plat
/varcalc v53 $v51/10
| left over gold
/varcalc v54 $v51%10
/echo Profit: $v53.$v54pp, avg: $v52pp/hr
/mqlog Run time: $running sec, Profit: $v53.$v54pp, Average = $v52pp/hr
/varset t0 3000
/return
Sub FindCombiner
/varset p2 99
/for v99 0 to 7
/if "$pack($v99,combine)"=="$p0" /varset p2 $v99
/next v99
/if $p2==99 /echo You do not seem to have a valid $p0 container.
/return $p2
Sub BuyItem
/varset v98 $char(gold)
/varset v55 $char(silver)
/varset v56 $char(copper)
/click left merchant buy
/delay 1
:WaitBuy
/doevents
/if n $v98!=$char(gold) /goto :Waitend
/if n $v55!=$char(silver) /goto :Waitend
/if n $v56!=$char(copper) /goto :Waitend
/goto :WaitBuy
:Waitend
/return
-
L124RD
- Site Admin

- Posts: 1343
- Joined: Fri Jun 14, 2002 12:15 am
- Location: Cyberspace
-
Contact:
Post
by L124RD » Tue Jul 09, 2002 1:47 pm
Salutations,
If it locks up, it usually means you have a loop without a /doevents or /delay 0 in it... i didn't see any just looking at it though...
-
Talamasca
- orc pawn

- Posts: 12
- Joined: Tue Jul 09, 2002 1:28 pm
Post
by Talamasca » Tue Jul 09, 2002 1:50 pm
Hrm. Well it does behave just fine until a failure occures. Thanks for the info on the delay.
-
L124RD
- Site Admin

- Posts: 1343
- Joined: Fri Jun 14, 2002 12:15 am
- Location: Cyberspace
-
Contact:
Post
by L124RD » Tue Jul 09, 2002 1:56 pm
Salutations,
pick up a bear fillet, $cursor(value) pick up a fillet knife $cursor(value) post em...
-
Talamasca
- orc pawn

- Posts: 12
- Joined: Tue Jul 09, 2002 1:28 pm
Post
by Talamasca » Tue Jul 09, 2002 2:09 pm
knife - 342
fillet - 20