I'd like to make a macro that casts a healing spell on my target (if friendly), then my focus (if friendly), and then finally myself if I do not have a friendly target or focus. Is this possible? I've been playing with the noharm tags but I can't get reliable behavior.
I'd like to make a macro that casts a healing spell on my target (if friendly), then my focus (if friendly), and then finally myself if I do not have a friendly target or focus.
#showtooltip Hysteria
/run u="target" S="Hysteria" s,l,e=GetSpellCooldown(S) if s+l == 0 and UnitExists(u) and HasFullControl() then SendChatMessage(S.." given, go crazy!","WHISPER",nil,UnitName(u)) end
/cast Hysteria
I absolutely love this macro and adapted it for my use as a disc priest with Power Infusion (kinda annoying if you whisper someone "you have PI" and he pops cds but you didn't give it to him >.<) but I dont get it to work for my divine hymn like I want it to...
#showtooltip Divine Hymn
/cast Inner Focus
/cast Divine Hymn
/run S="Divine Hymn" s,l,e=GetSpellCooldown(S) if s+l == 0 and HasFullControl() then SendChatMessage(S.." läuft!!!","CHANNEL",nil,5) end
Divine Hymn has no target so I just deleted this part, but he won't announce it in our guilds healer channel (which is channel 5)... I didn't understand wowwikis description of the SendChatMessage API 100% so I need a little help here^^
Also what are the variables l and e for? Could one save a few characters there?
As I understand the syntax, you need to accept all three values returned even if you don't care about all of them.
Originally Posted by Hamsda
divine hymn has no target so i just deleted this part, but he won't announce it in our guilds healer channel (which is channel 5)... i didn't understand wowwikis description of the sendchatmessage api 100% so i need a little help here^^
If you just do the SendChatMessage() without the "if.." does it work?
I notice that in your Hysteria macro it is doing the whisper before casting the spell whilst in your Divine Hymn you're casting first - maybe the problem is that by the time it gets to the GetSpellCooldown() check, the spell is on cooldown because you just cast it?
As I understand the syntax, you need to accept all three values returned even if you don't care about all of them.
No, you only need to accept from the first one to the last one that you care about, i.e. if you don't care about enabled you could simply use s,l = GetSpellCooldown(ID). If you wanted s and e, though, you're forced to ask for l as well.
I notice that in your Hysteria macro it is doing the whisper before casting the spell whilst in your Divine Hymn you're casting first - maybe the problem is that by the time it gets to the GetSpellCooldown() check, the spell is on cooldown because you just cast it?
Can't test it right now but I am very sure this will solve my problem.... stupid me^^
I'll edit the post in a view hours to report if it works like it should so others can use the macro too.
And thanks for explaining the GetSpellCooldown()
Edit: The macro works like a charm
Thank you very much!
I'd like to make a macro that:
1) Casts chain heal on my mouseover target if i have one
2) Cast chain heal on my target if i don't have a mouseover target
3) Cast chain heal on myself if i am holding ALT.
1) Casts chain heal on my mouseover target if i have one
2) Cast chain heal on my target if i don't have a mouseover target
3) Cast chain heal on myself if i am holding ALT.
EDIT: The modifier is in the first condition, as I assume you want to cast on yourself whenever you are holding ALT, disregarding whether you have a (mouseover-) target.
I'm trying to write a monster macro for charge/intercept/intervene/heroic fury, and I'm having a couple of issues.
Here's exactly what I'm trying to do in order - if my target is friendly intervene or switch to defensive stance, else if I'm out of combat charge or switch to battle stance, else intercept or switch to zerker and if intercept is on cd burn heroic fury; and do all that to my focus if I'm holding alt. Intercept is 30 second cooldown in my case, heroic fury is 45. All this is too much for one macro and here's what I have so far:
I'm looking at it and it seems like I'm following my plan exactly, but for some reason once you spend long enough in combat using the macro the heroic fury/intercept part seems to get out of sync and it'll wait for and blow heroic fury cooldown even if intercept is up. I keep looking at it and I just don't see what I'm doing wrong.
Second thing is I get really button mashing with this macro and a lot of times I blow charge, intercept, heroic fury and intercept again all during the first charge since none of these things share any kind of cooldown, is there a way to put a quarter second delay between any action taken in this macro? Basically, if this macro did something less than a quarter second ago, do nothing. Bonus points if this delay doesn't apply to stance switching. Huge thanks in advance for any help with this.
/castsequence will not continue to the next "step" if the ability is on cooldown, it will wait until it is off cooldown (I think). reset=30 may not do what you think it does.
There is no way to add delays in macros; this is by design.
You can fix the Intervene / Heroic Fury problem by using /castrandom instead of /castsequence.
Originally Posted by Wraithlin
Do your hospitals have unusually narrow doorways?
If not how do "lifestyle choices" explain the waiting time statistics?
Need small help with macro that would announce to the rest of the raid (in /say) whenever i interrupt spell, fail to interrupt spell (Wind Shock missed) or boss/mob is immune to interrupts.
Message should be something like this: "<name of the spell> interrupted" in case its successful; " Failed to interrupt <name of the spell>" in case Wind Shock missed ; "<name of the spell> can't be interrupted" in case boss/mob is immune.
Message should be something like this: "<name of the spell> interrupted" in case its successful; " Failed to interrupt <name of the spell>" in case Wind Shock missed ; "<name of the spell> can't be interrupted" in case boss/mob is immune.
That's not possible via macros, I'm sorry.
There are only 10 types of people... those who understand binary and those who don't.
Need small help with macro that would announce to the rest of the raid (in /say) whenever i interrupt spell, fail to interrupt spell (Wind Shock missed) or boss/mob is immune to interrupts.
Message should be something like this: "<name of the spell> interrupted" in case its successful; " Failed to interrupt <name of the spell>" in case Wind Shock missed ; "<name of the spell> can't be interrupted" in case boss/mob is immune.
Big thanks in advance.
As the poster above said, not possible via macros, but there is very likely an addon that can do this for you (it's a rather simple spell event).
So i've started the (relatively) LONG grind of honor gear for PvP as a healing disc priest and am looking to create a BG healing macro, but have been unable to find anything to help me.
So far what i have been doing is tab targeting enemy players and pressing "F" to target their target, who i then heal. Is there any way to create a macro that will "tab-target" and enemy and then target their target all in one button? It would make BG healing so much more easier and effective..
Also, not macro related, is there any way to display friendly players' health above them in the same effect as an enemy (by pressing "V" in a regular interface)?
Thanks
Is there any way to create a macro that will "tab-target" and enemy and then target their target all in one button? It would make BG healing so much more easier and effective..
I always just use Grid for battleground healing, I find the range-detection far more useful than anything else could ever be, when you're in a situation where your raid-mates could be anywhere on the map.
..casts on your target if it's friendly, otherwise your target's target if that's friendly, otherwise yourself.
Originally Posted by Blazingwater
Also, not macro related, is there any way to display friendly players' health above them in the same effect as an enemy (by pressing "V" in a regular interface)?
Ctrl-V if I recall correctly. Some modifier + V, anyway.
It would be possible to create a mod to say when you interrupt with Wind Shock, or when it misses, but i doubt anything would actually be immune to it, due to also being a threat reducing tool.
Within an On_Event function, you could use code such as:
if (arg2=="SPELL_INTERRUPT") and (arg4==UnitName("player")) then
SendChatMessage("I interrupted "..arg7.."'s "..arg13..". ("..arg10..")", "SAY");
elseif (arg2=="SPELL_MISSED") and (arg4==UnitName("player")) and (arg10=="Wind Shock") then
SendChatMessage("Wind Shock missed", "SAY");
end
The first line of text would say something like "I interrupted Kel'Thuzad's Frost Bolt. (Wind Shock)"
Although it would be possible to make a work-around to say if a boss was immune to an interrupt (check when it starts casting, check for an interrupt cast, check if its spell still goes off), it wouldn't be 100% accurate, especially when taking lag into account.
So i've started the (relatively) LONG grind of honor gear for PvP as a healing disc priest and am looking to create a BG healing macro, but have been unable to find anything to help me.
So far what i have been doing is tab targeting enemy players and pressing "F" to target their target, who i then heal. Is there any way to create a macro that will "tab-target" and enemy and then target their target all in one button? It would make BG healing so much more easier and effective..
Also, not macro related, is there any way to display friendly players' health above them in the same effect as an enemy (by pressing "V" in a regular interface)?
Thanks
/targetenemy does the same as pressing the tab button, so you could make a simple macro like this:
/targetenemy
/assist
That would do the same as you're doing manually now.
You could even go as far and add a healing spell in there as well:
/targetenemy
/assist
/cast [help] Chain Heal
A potential problem I see with this is that hitting tab, targets the nearest enemy and then cycles through them based on range. if you target the target of your first enemy, cast a heal and tab again, it will likely target the same enemy. Of course this is not much of a problem in WG or AV, but in any sort of premade/tactical environment it might be a bit annoying
A potential problem I see with this is that hitting tab, targets the nearest enemy and then cycles through them based on range. if you target the target of your first enemy, cast a heal and tab again, it will likely target the same enemy. Of course this is not much of a problem in WG or AV, but in any sort of premade/tactical environment it might be a bit annoying
/targetenemy
/target assist
/focus
/targetlasttarget
/cast [target=focus] Chain Heal
Wouldn't that solve the potential problem of always selecting the same enemy?
You would be currently targeting the closest enemy when "macro-tabbing", therefore selecting a different one.
I am very unsure, however, of the "/targetlasttarget"part.
A potential problem I see with this is that hitting tab, targets the nearest enemy and then cycles through them based on range. if you target the target of your first enemy, cast a heal and tab again, it will likely target the same enemy. Of course this is not much of a problem in WG or AV, but in any sort of premade/tactical environment it might be a bit annoying
If the healing spell were to be combined in the macro I think a more elegant solution (that should also fix that target cycling problem) would be:
I've found that spamming /cast Firebolt(Rank 9) allows my imp to queue spell casts just like a player. Over a given time frame I get approximately 10% more casts than just allowing my imp to autocast. To implement this into my keybinds I've simply made a macro that casts Firebolt and Incinerate, so I don't need to spam an extra button just for my pet. The issue I have is that there are times when I need to use my passive+follow macro to move my pet from harms way. Often I can continue casting while moving my pet. The problem I have is that forcing a Firebolt cast also cancels the follow command, stopping my Imp in his tracks and getting him killed.
Is there any way to tell my pet to cast only while in defensive? Or can anyone think of another solution that does not involve an exclusive keybind for Firebolt?
I've found that spamming /cast Firebolt(Rank 9) allows my imp to queue spell casts just like a player. Over a given time frame I get approximately 10% more casts than just allowing my imp to autocast. To implement this into my keybinds I've simply made a macro that casts Firebolt and Incinerate, so I don't need to spam an extra button just for my pet. The issue I have is that there are times when I need to use my passive+follow macro to move my pet from harms way. Often I can continue casting while moving my pet. The problem I have is that forcing a Firebolt cast also cancels the follow command, stopping my Imp in his tracks and getting him killed.
Is there any way to tell my pet to cast only while in defensive? Or can anyone think of another solution that does not involve an exclusive keybind for Firebolt?
I am unsure if you can swap shirts or tabards while in combat (at work currently), but if so you can approximate this by using the equipped:TabardSlot or something similar (you would need to equip a tabard when you want your Imp to use the Firebolt spell. You could see if the pet uses the stance conditional as well, I suppose. Please report your results back to this thread!
In any case, you should use pet:Imp in the macro to make it just a bit more generic.
Originally Posted by Wraithlin
Do your hospitals have unusually narrow doorways?
If not how do "lifestyle choices" explain the waiting time statistics?
I've just recently started getting into making macros in WoW that are more complex than cast nature's swiftness and then healing wave would be, for example. I'm new to playing my rogue and wanted to use a conditional based macro/Add-On using the same simple reasoning and logic we do ourselves when choosing the next attack/ability to cast (except without the chance of me making the wrong decision).
I would like to do something that would use conditional statements based off of current energy, combo points on the target, whether or not I'm effected by Slice n Dice (and it's remaining duration), the enemy is effected by rupture (and it's remaining duration), and basically using the expected energy regeneration rate along with the attack priority of 1) Keeping SnD up 2) Keeping Rupture up with the most combo points possible without letting SnD drop 3) Using Eviscerate (when there's an energy/CP surplus) to make and return with the proper attack decision SS, SnD, Rupture or Eviscerate.
I have a decent amount of programming background and will be able to work out the logic and math pretty easily. The syntax of LUA would be new to me, so before I spend the time re-creating something for the community that already exists, I figured I'd check first.
Seeing all the different interface and game play Add-Ons out there, I'm assuming that all of this is possible. I've seen where people said "making a simple button mash macro is not maximizing your dps" but I’m intending to put a lot of thought and calculation into this to hopefully ensure that it will.
I've spent the last 2-3 days looking on wow.curse.com, worldofwarcraft.com macro/add-on forums, etc. looking for something like this, and have been unsuccessful.
You cannot branch on which abilities to cast on presence or absence of a buff or debuff, your available power (be it energy mana or rage), or combo points. You could with a macro put things in chat or write an addon that will follow some logic based on those things (buffs, energy, CPs) to pop an icon or something on your screen to indicate which button you need to press but it cannot be used to actually press that button. The 'pressing of the button' - in this case casting the ability - is privileged API not open for us.
Seeing all the different interface and game play Add-Ons out there, I'm assuming that all of this is possible. I've seen where people said "making a simple button mash macro is not maximizing your dps" but I’m intending to put a lot of thought and calculation into this to hopefully ensure that it will.
I've spent the last 2-3 days looking on wow.curse.com, worldofwarcraft.com macro/add-on forums, etc. looking for something like this, and have been unsuccessful.
It's not possible. That was the whole point of the API changes Blizzard made when 2.0 came out, to remove the capability of add-ons making decisions for you.