A better manarobe / staff of the four combo

A forum for you to dump all the macros you create, allowing users to use, modify, and comment on your work.

Moderator: MacroQuest Developers

Youdontknowme
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Feb 16, 2004 5:13 pm

A better manarobe / staff of the four combo

Post by Youdontknowme » Mon Feb 16, 2004 6:58 pm

Code: Select all

#turbo
Sub Main
/declare robecasts local
/varset robecasts 0
/press i
/if n $char(buff,"Barrier of Force")==0
{
:epic
/cast item "Staff of the Four"
/varset robecasts 0
}
:loop
/if n $char(mana,max)-$char(mana,cur)>=$char(mana,regen)
{
/cast item "Mana Robe"
/varadd robecasts 1
/if varadd=13 /goto :epic
/goto :loop
}
/if robecasts!=0 /goto :epic
/press i
/return
Does the inventory need to be open to cast an item in the inventory?

With this setup, the Wizard will never drop the epic buff, instead, recast the epic at 14hp's left on the buff. Now, when the wizard casts his epic, he still has FT3 on him during the 15-second epic casttime.

However, will I need to put /pause's into this?

notadruid
a ghoul
a ghoul
Posts: 143
Joined: Mon Dec 08, 2003 6:02 pm

Post by notadruid » Mon Feb 16, 2004 9:56 pm

/if varadd=13 /goto :epic
WTF if this line supposed to mean? Shouldn't you use this?

Code: Select all

/if n @robecasts==13 /goto :epic

daerck
a ghoul
a ghoul
Posts: 134
Joined: Mon Jan 12, 2004 8:44 pm

Re: A better manarobe / staff of the four combo

Post by daerck » Tue Feb 17, 2004 12:20 am

Youdontknowme wrote: Does the inventory need to be open to cast an item in the inventory?
Nope
Youdontknowme wrote: With this setup, the Wizard will never drop the epic buff, instead, recast the epic at 14hp's left on the buff. Now, when the wizard casts his epic, he still has FT3 on him during the 15-second epic casttime.
What if the wizard was hit during a kite and the Rune isn't at full power?
Maybe a combination of fixed count and dynamic checks of the rune still being up would be a good idea.
Youdontknowme wrote: However, will I need to put /pause's into this?
Yes. The command is /delay though.

Youdontknowme
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Feb 16, 2004 5:13 pm

How's this?

Post by Youdontknowme » Tue Feb 17, 2004 6:36 am

Code: Select all

#turbo
Sub Main
/declare robecasts local
/varset robecasts 0
/if n $char(buff,"Barrier of Force")==0
{
:epic
/cast item "Staff of the Four"
/delay 16s |** Did a quick /ti and cast and got it pretty exact. You may want to do some more tweaking until it's correct to the milisecond. I didn't. **|
/varset robecasts 0 
}
:loop
/if n $char(mana,max)-$char(mana,cur)>=$char(mana,regen)
{
/cast item "Mana Robe"
/delay 2s |** This time may need to be altered for efficiency. I sold my Mana Robe and couldn't find another to check the times. **|
/if n $char(buff,"Barrier of Force")==0 /goto :epic
/varadd robecasts 1
/if robecasts=13 /goto :epic
/goto :loop
}
/if robecasts!=0 /goto :epic
/return 

MrSmallie
a hill giant
a hill giant
Posts: 167
Joined: Fri Oct 11, 2002 11:18 am

Post by MrSmallie » Tue Feb 17, 2004 10:47 am

A few things... kudos for working on this, it shouldn't be in the Depot, it should be in Macro Help, Cast time on the robe is 3 seconds, last I checked, the Staff had an instant cast time, what's the 16s delay for?
There's no safety for interrupts in the macro...
Again, kudos for working on it, but keep works in progress in the Help forum.
Me
[img]http://home.comcast.net/~mrsmallie/ches.JPG[/img]

daerck
a ghoul
a ghoul
Posts: 134
Joined: Mon Jan 12, 2004 8:44 pm

Post by daerck » Tue Feb 17, 2004 11:41 am

Interrupt safety isn't really needed as you won't do this when being attacked or otherwise having the chance of getting interrupted - in this case I would opt for keeping it simple and assuming one is stationary and not influenced by surroundings while doing this.

http://lucy.allakhazam.com/item.html?id=14341
Staff of the Four is 15 sec cast time

http://lucy.allakhazam.com/item.html?id=1606
Mana Robe is 3 sec as mentioned.

Alternate way to handle casting would be to use the SpellCast.inc or

Code: Select all

/cast item "Barrier of Force"
:RuneCastCheck
if $char(casting)=="TRUE" /goto RuneCastCheck
Not tested but should work.

two small mistakes

Code: Select all

/if [color=red]n[/color] robecasts[color=red]==[/color]13 /goto :epic
/goto :loop
}
/if [color=red]n[/color] robecasts!=0 /goto :epic 

Yalp
a ghoul
a ghoul
Posts: 90
Joined: Thu Dec 05, 2002 6:28 pm

Heres mine

Post by Yalp » Tue Feb 17, 2004 5:12 pm

Heres my mana robe mac, i have the wand that casts force shield from time, for you wizards with out it just change the Wand of Impenetrable Force to "Staff of the Four" and the Force Shield to Barrier of Force and it will work for you too.

Code: Select all

Sub Main 
  :loop 

  /if n $char(mana,pct)==100 /goto :end 
  /if $char(buff,"Force Shield")==0 /cast item "Wand of Impenetrable Force" 
  :runewait 
  /if $char(casting)==TRUE /goto :runewait  
  /cast item "Mana Robe" 
  :robewait 
  /if $char(casting)==TRUE /goto :robewait 
  /goto :loop 
  :end 
/return
edit: i suck at spelling.
Because i wouldn't have it any other way

notadruid
a ghoul
a ghoul
Posts: 143
Joined: Mon Dec 08, 2003 6:02 pm

Post by notadruid » Wed Feb 18, 2004 7:28 pm

That's a good one, and it can easily be modified to work with Shield of Auras.

Youdontknowme
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Feb 16, 2004 5:13 pm

Post by Youdontknowme » Thu Feb 19, 2004 6:58 am

Thanks. It was my first, and I just looked at some already made and then looked straight from the manual for variable names. I hope to become quite proficient at writing these, but I also want to play the game some too. =)