Page 1 of 2

Leave bearform then eat pot->bear macro

PostPosted: Sun Jul 26, 2015 8:16 pm
by TheNIF
I have the supermacro addon, but I have no idea how to use it to make such a macro.

Basically I tank a lot and I'd like a macro that brings me out of bearform, eats a potion (major healing, greater stoneshield or w/e) and then puts me back into bear as fast as gcd allows.

I tried simply putting
/cast dire bear form
/use major healing potion
/cast dire bear form

into a macro but i just get the error message that I cannot use items while shapeshifted (even though the first cast in the macro is supposed to bring me out of bearform). Any suggestions?

Re: Leave bearform then eat pot->bear macro

PostPosted: Sun Jul 26, 2015 9:08 pm
by Takefive
Try this
Code: Select all
/script if IsCurrentAction(1) then UseAction(1); else if not IsCurrentAction(1) then UseContainerItem(0, 1); UseAction(1); end

Dire Bear Form spell is located at first action bar, first button; Major Healing Potion is placed in first bag, first slot. You spam macro -----------> profit. There are predictable problems, but you should be fine

Re: Leave bearform then eat pot->bear macro

PostPosted: Sun Jul 26, 2015 9:59 pm
by TheNIF
Thank you, will test it out :)

Re: Leave bearform then eat pot->bear macro

PostPosted: Sun Jul 26, 2015 10:04 pm
by TheNIF
I get the following error message:

[string "if IsCurrentAction(1) then UseAction(1); else if not IsCurrentA..."]:1:`end' expected near `<eof>'

Re: Leave bearform then eat pot->bear macro

PostPosted: Mon Jul 27, 2015 9:42 am
by Takefive
TheNIF wrote:I get the following error message:

[string "if IsCurrentAction(1) then UseAction(1); else if not IsCurrentA..."]:1:`end' expected near `<eof>'

Yeah sorry, I forgot to add extra "end" but don't try this shit anymore. Look at the next macro
Code: Select all
/script t1=GetTime() t=t1-t2 if IsCurrentAction(1) and t>60 then UseAction(1); else if not IsCurrentAction(1) then t2=GetTime() UseContainerItem(0, 1); end; if not IsCurrentAction(1) and t<60 then UseAction(1); end; end

You won't even leave bear form if 60sec are not passed. Same rules as before, you just need to spam macro. But you also need to activate timers before you start active using. To do that you should stay in any form except bear (according to macro Bear Form must be located on first button of first action bar) and press this macro at least one time. That means you will use your potions this time without any need - I recommend to remove them from UseContainerItem(0, 1) bag slot before, and return back after activation. Your timers are reset each time you do reloging, and you should activate them again.
So, you just spam macro - each 60 seconds you leave bear form, use potion, enter bear form again. And it looks like you need 60 seconds to wait after activation of timers since macro won't work even if you have no cooldown on your potions

Re: Leave bearform then eat pot->bear macro

PostPosted: Mon Jul 27, 2015 7:20 pm
by Lorilay
TheNIF wrote:I have the supermacro addon, but I have no idea how to use it to make such a macro.

Basically I tank a lot and I'd like a macro that brings me out of bearform, eats a potion (major healing, greater stoneshield or w/e) and then puts me back into bear as fast as gcd allows.

I tried simply putting
/cast dire bear form
/use major healing potion
/cast dire bear form

into a macro but i just get the error message that I cannot use items while shapeshifted (even though the first cast in the macro is supposed to bring me out of bearform). Any suggestions?

Try using that macro (minus the first line) when you have the EzDismount mod installed. It will be more effective if you replace "/cast Dire Bear Form" with the spammable bear form macro (so it won't shift you out when you spam the macro).
Takefive wrote:
TheNIF wrote:I get the following error message:

[string "if IsCurrentAction(1) then UseAction(1); else if not IsCurrentA..."]:1:`end' expected near `<eof>'

Yeah sorry, I forgot to add extra "end" but don't try this shit anymore. Look at the next macro
Code: Select all
/script t1=GetTime() t=t1-t2 if IsCurrentAction(1) and t>60 then UseAction(1); else if not IsCurrentAction(1) then t2=GetTime() UseContainerItem(0, 1); end; if not IsCurrentAction(1) and t<60 then UseAction(1); end; end

You won't even leave bear form if 60sec are not passed. Same rules as before, you just need to spam macro. But you also need to activate timers before you start active using. To do that you should stay in any form except bear (according to macro Bear Form must be located on first button of first action bar) and press this macro at least one time. That means you will use your potions this time without any need - I recommend to remove them from UseContainerItem(0, 1) bag slot before, and return back after activation. Your timers are reset each time you do reloging, and you should activate them again.
So, you just spam macro - each 60 seconds you leave bear form, use potion, enter bear form again. And it looks like you need 60 seconds to wait after activation of timers since macro won't work even if you have no cooldown on your potions

I think the point is to have a macro that lets you use a potion reactively, rather than every 60 seconds that you're tanking.

Re: Leave bearform then eat pot->bear macro

PostPosted: Mon Jul 27, 2015 10:18 pm
by Takefive
Lorilay wrote:I think the point is to have a macro that lets you use a potion reactively, rather than every 60 seconds that you're tanking.

No no, sorry for my englisch, I think I'm misunderstood. As soon as macro is activated and first 60 seconds are passed you can use it reactively or not. It doesn't activate automatically or something - you should spam it at the moment you need potion. There is integrated 60sec cooldown, since we have 60sec cd for Healing Potion too. Once you used this macro to drink the potion, 60sec cd is activated and macro doesn't allow you to leave bear form during this time if you pressed binded key occasionally. So you can begin spamming it safely for example in cases when you have 3-5 sec cd left on your potion to recieve effect. You won't leave bear form without need, you will drink the potion as soon as possible, you will be shapeshifted back as soon as possible. Just try it

Re: Leave bearform then eat pot->bear macro

PostPosted: Tue Jul 28, 2015 5:10 am
by Lorilay
Takefive wrote:
Lorilay wrote:I think the point is to have a macro that lets you use a potion reactively, rather than every 60 seconds that you're tanking.

No no, sorry for my englisch, I think I'm misunderstood. As soon as macro is activated and first 60 seconds are passed you can use it reactively or not. It doesn't activate automatically or something - you should spam it at the moment you need potion. There is integrated 60sec cooldown, since we have 60sec cd for Healing Potion too. Once you used this macro to drink the potion, 60sec cd is activated and macro doesn't allow you to leave bear form during this time if you pressed binded key occasionally. So you can begin spamming it safely for example in cases when you have 3-5 sec cd left on your potion to recieve effect. You won't leave bear form without need, you will drink the potion as soon as possible, you will be shapeshifted back as soon as possible. Just try it

Seems easier to just use EzDismount to me :P

Re: Leave bearform then eat pot->bear macro

PostPosted: Tue Jul 28, 2015 9:46 am
by Takefive
Casual

Re: Leave bearform then eat pot->bear macro

PostPosted: Wed Jul 29, 2015 11:12 pm
by TheNIF
Takefive wrote:
TheNIF wrote:I get the following error message:

[string "if IsCurrentAction(1) then UseAction(1); else if not IsCurrentA..."]:1:`end' expected near `<eof>'

Yeah sorry, I forgot to add extra "end" but don't try this shit anymore. Look at the next macro
Code: Select all
/script t1=GetTime() t=t1-t2 if IsCurrentAction(1) and t>60 then UseAction(1); else if not IsCurrentAction(1) then t2=GetTime() UseContainerItem(0, 1); end; if not IsCurrentAction(1) and t<60 then UseAction(1); end; end

You won't even leave bear form if 60sec are not passed. Same rules as before, you just need to spam macro. But you also need to activate timers before you start active using. To do that you should stay in any form except bear (according to macro Bear Form must be located on first button of first action bar) and press this macro at least one time. That means you will use your potions this time without any need - I recommend to remove them from UseContainerItem(0, 1) bag slot before, and return back after activation. Your timers are reset each time you do reloging, and you should activate them again.
So, you just spam macro - each 60 seconds you leave bear form, use potion, enter bear form again. And it looks like you need 60 seconds to wait after activation of timers since macro won't work even if you have no cooldown on your potions

I now get the following error:

[string "t1=GetTime() t=t1-t2 if IsCurrentAction(1) ..."]:1: attempt to perform arithmetic on global `2' (a nil value)

What addon are you using for macros and what version?