Jump to content
Sign in to follow this  
whatisgoingon

Why is this cat+prowl broken on one char? and how to cat+dash in a macro script?

Recommended Posts

Using

/run if nil then CastSpellByName("Cat Form");end
/unshift [stance:1/2/4/5]
/cast [stance:0] Cat Form; [nocombat nostealth] Prowl

which works on one of my druids but for some reason broke on another. using the Exact same macro on a twink, cant get it to work. What happens is it shifts into cat form and immediatelly out, instead of then prowling after another click. why and how to fix?

2nd,

how would a macro script look like that does on 1. press puts into cat form (cancels all forms and goes cat, or from human in cat) and then on the 2. push activates dash?

I am looking forward to your answer!

Share this post


Link to post
Share on other sites
Quote

/unbuff bear form

/unbuff dire bear form

/unbuff travel form

/unbuff aquatic form

/script if not buffed("prowl", 'player') then CastSpellByName("prowl")end;

/script if not buffed("cat Form", 'player') then cast("cat Form(Shapeshift)")end;

/script CastSpellByName("Track Humanoids")

 

Maybe this works? need SuperMacro

Share this post


Link to post
Share on other sites
1 hour ago, meridaw said:

Maybe this works? need SuperMacro

no, no thanks. no supermacro

i have previously made it work with simple scripts and will continue to do so. supermacro gets messy

why is this script working on one characer and not on the other?

Share this post


Link to post
Share on other sites

Hi there, maybe I can help you. My current macros make use of SuperMacro (but any other addon to extend macro size will do, I'm not using any SuperMacro function). If you don't want to use any addon, I'll try to squeeze them in 255 chars...

Share this post


Link to post
Share on other sites

2nd macro is quite simple though:

unshift + cat + dash

/run local f = GetActiveForm() if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 3 then CastSpellByName("Dash") else CastShapeshiftForm(3) end end

 

About the first macro, I'd suggest you to carefully read this post https://forum.elysium-project.org/topic/34310-powershift-macro/

P.S.

`/run if nil then CastSpellByName("Cat Form");end` will never have any effect.

P.P.S.

As far as why it behaves differently, I can't tell since you're using an addon for it.

Share this post


Link to post
Share on other sites
11 hours ago, WobLight said:

2nd macro is quite simple though:

unshift + cat + dash

/run local f = GetActiveForm() if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 3 then CastSpellByName("Dash") else CastShapeshiftForm(3) end end

 

About the first macro, I'd suggest you to carefully read this post https://forum.elysium-project.org/topic/34310-powershift-macro/

P.S.

`/run if nil then CastSpellByName("Cat Form");end` will never have any effect.

P.P.S.

As far as why it behaves differently, I can't tell since you're using an addon for it.

Hi, the cat+dash attempt gives an error:

[string "local f=GetActiveForm() if f ~= 0 and f ~..."]:1: attempt to call global `GetActiveForm' (a nil value)


at the rest for the first macro:

the only "addon" i am using is castmodifiers, but not supermacro or anything

Share this post


Link to post
Share on other sites
11 minutes ago, whatisgoingon said:

[string "local f=GetActiveForm() if f ~= 0 and f ~..."]:1: attempt to call global `GetActiveForm' (a nil value)

my bad, I forgot to expand a function of mine

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 3 then CastSpellByName("Dash") else CastShapeshiftForm(3) end end

 

Share this post


Link to post
Share on other sites
7 minutes ago, WobLight said:

my bad, I forgot to expand a function of mine

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 3 then CastSpellByName("Dash") else CastShapeshiftForm(3) end end

 

perfect, works.

Share this post


Link to post
Share on other sites
11 minutes ago, WobLight said:

 

as for the other macro script into prowl, it should simply work - right?
 

/cancelaura [stance:1] Dire Bear Form; [stance:2] Aquatic Form; [stance:4] Travel Form;
/cast [nostance] Cat Form; [stance:3, nostealth] Prowl



and the part when prowling should be taken place, the form is simply cancelled back into human form. no prowling. why is that?

not to mystify it or anything but this Exact same macro works on my other druid..

Share this post


Link to post
Share on other sites
1 hour ago, WobLight said:

Try to use stance:0 instead of nostance

@whatisgoingon

I couldn't squeeze my macro for that in 255 sorry.

that did it.

much appreciated!

but now it no longer cancels the current form you are in. Why is that?

/cancelaura [stance:1] Dire Bear Form; [stance:2] Aquatic Form; [stance:4] Travel Form;
/cast [stance:0] Cat Form; [stance:3, nostealth] Prowl ----(this doesnt cancel)

/cancelaura [stance:1] Dire Bear Form; [stance:2] Aquatic Form; [stance:4] Travel Form;
/cast [nostance] Cat Form; [stance:3, nostealth] Prowl ----(this cancels)

Share this post


Link to post
Share on other sites
1 hour ago, whatisgoingon said:

that did it.

much appreciated!

but now it no longer cancels the current form you are in. Why is that?

/cancelaura [stance:1] Dire Bear Form; [stance:2] Aquatic Form; [stance:4] Travel Form;
/cast [stance:0] Cat Form; [stance:3, nostealth] Prowl ----(this doesnt cancel)

/cancelaura [stance:1] Dire Bear Form; [stance:2] Aquatic Form; [stance:4] Travel Form;
/cast [nostance] Cat Form; [stance:3, nostealth] Prowl ----(this cancels)

try this:

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else CastShapeshiftForm(3) end
/cast [stance:3, nostealth] Prowl

 

Share this post


Link to post
Share on other sites
4 minutes ago, WobLight said:

try this:

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else CastShapeshiftForm(3) end
/cast [stance:3, nostealth] Prowl

 

doesnt cast prowl again

Share this post


Link to post
Share on other sites
2 minutes ago, whatisgoingon said:

doesnt cast prowl again

my bad, I was just editing it indeed, I'll reply soon

 

Share this post


Link to post
Share on other sites

@whatisgoingon

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 0 then CastShapeshiftForm(3) end end
/cast [stance:3, nostealth] Prowl

If this doesn't work, try replacing `nostealth` with `!stealth` or `~stealth`

Share this post


Link to post
Share on other sites
15 minutes ago, WobLight said:

@whatisgoingon

/run local f=0 for i=1,GetNumShapeshiftForms()do if({GetShapeshiftFormInfo(i)})[3]then f=i end end if f ~= 0 and f ~= 3 then CastShapeshiftForm(f) else if f == 0 then CastShapeshiftForm(3) end end
/cast [stance:3, nostealth] Prowl

If this doesn't work, try replacing `nostealth` with `!stealth` or `~stealth`

brilliant. works. shifts out of any form, into cat and prowls. +max rep (oh well)

and for dismounting a mount and doing all that, can I use the line:

/cancelaura [mounted] mountname

inbetween  /run ... /cast ?

Edit: And it doesnt show prowls cooldown at all. which is fine, could work around. but if that could be added, would it simple be "show prowl" infront of anything? i am not familiar with in this version a /showtooltip is working
Edit2: no doesnt

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×