Wednesday, January 26, 2011

Moar Mouseover Macros!

Here's another thing I've done recent that I think really helps the flow of Affliction. In Cynwise's marvelous post several weeks ago on macros, there was a particular item he uses for PvP that really struck my PvE fancy. It was his simple, one line, mouseover macro for Fel Flame.

/cast [@mouseover,harm] Fel Flame; [harm] Fel Flame

What this does is simply cast Fel Flame on your mouseover target (if you can harm it), or, if you're not mousing over anything, on your current target. Great for getting rid of pesky totems. However, as someone who only rarely PvP's on my 'lock, it's probably not all that useful for me. Generally I only want to Fel Flame my target in order to refresh UA on the move, so it's situational at best.

Really, I've never used mouseovers a whole lot before. PvE is more about entering with a strategy, and part of that strategy involves knowing what to target. That's why we spend so much time marking. So it seemed like mouseovers were a more natural fit in the PvP world.

Yet, a few very nice uses came to mind eventually as I was playing, so I worked them out. The first one? Soul Swap. What about all those times when you want to just throw some DoTs on a boss add without really switching, or maybe you can start your DoTs on the "x" a smidge early even while you Drain the Soul of the skull. Soul Swap would seem like a natural fit for a mouseover in PvE, and I got this:

/cast [@mouseover,harm] Soul Swap; [harm] Soul Swap

Simple, eh? Just replaced the spell with what I wanted, then threw it on my bar. I didn't have anything else naturally bound to my SS spell, so it worked out like this for me. And the use! It's awesome. I have this bound to my "7" key. So I tap 7 once, the green ball flies to me, then I use my mouse to find the add, mouseover, and tap "7" again. Heck, usually when I know it's coming up, I can get my mouse ready so that it's 7, slide, 7 - super quick - and then I'm back on the main target.

It's really nice for dailies too. I'm out in the Highlands for the Wildhammer clan right now, and I'm toasting hoardies to get my insignia quota for the day. Dot the first up, mouseover-swap to a second guy. Basically, I kill them in convenient sets of two. Or, if I'm feeling really cocky, I'll just let the dots roll through on those two and repeat the process on another two. Throw in a shadowflame every now and then for good measure, and in a jiff I'm rolling in ale and dwarven hugs (which are a firm, open-handed slap on the arse) for saving the village.

The second semi-obvious use that reached up with a bony finger and tickled my sharded soul was a use with Curse of the Elements. If you're an Affliction Warlock specced into Jinx, then you don't want to be casting CotE on each and every trash mob. No, you want to find the last one that's going to die, cast it on him, and not worry about the rest of them. My CotE is cast using the "alt" key below my Haunt spell, so I modified that to look something like this:

/cast [nomod] Haunt
/cast [@mouseover,harm,mod:alt] Curse of the Elements; [harm,mod:alt] Curse of the Elements

This one's a little more complex, but not too terribly crazy. First, you can see I'm specifying a simple Haunt cast with no modifying buttons. Second, I append "mod:alt" onto what I would refer to as your "Preconditional Statement". That's just a complex way of saying "the crap in the brackets". It's interesting that you can set different preconditions, combining them by use of a simple comma, and then separating your larger conditional by a semicolon, which is what I've done in that second line. The conditional, if read out, would sound something like this:

If no modifier is pressed, cast Haunt.
Otherwise, If I'm mousing over something, I can harm it, and alt is depressed, cast CotE at my mouseover target; If that first conditional isn't passed, I can harm my target, and alt is depressed, cast CotE on my current target. (Since "@target" is the default for cast, though you can specific it if you desired).

Pretty interesting, no? What this allows me to do is when I'm on trash, find that last mark, which a lot of the times nowadays is my CC target (but which could be something else too), mouseover, and cast my curse. If we happen to be on a boss or other single target, I just don't point my mouse at anything and it's business as usual.

It gets even more useful when I have my focus frame displayed, so I don't have to hunt for a name plate, but just hover of my feared focus in the frame and pop him with my curse. CotE will not break fear (or sheep), so it's a great place to use it, as those are usually saved to last. It will break something like an ice trap, fwiw. I have used it on a banish target as well, but I've had mixed success. I do not believe Jinx will trigger from a banished mob. The curse will stick (provided you sneak it in before you banish), it just won't spread.

This has been incredibly useful in my PvE adventures. It does mean that you have to be a bit careful where your mouse is pointed. After all, you won't want to accidentally pull another group, but I haven't had any of those mishaps yet. Heck, I'm more likely to pull with my pet when he decides to take the long way around after we jumped from somewhere (I thought that was supposed to be fixed!).

So mouseovers are one of the new tricks that Cataclysm has seen me put into my bag. I'd never used them prior to this expansion, and never really felt the need. Now, however, I don't think I could live without these two. What new code has Cata seen you pulling out of your macro closet?


  1. /cast [@mouseover,harm,mod:alt] Curse of the Elements; [harm,mod:alt] Curse of the Elements

    this line can be shortened.

    /cast [harm,mod:alt][@mouseover,harm,mod:alt] Curse of the Elements

    putting two different bracketed collections of options means that either of the collected statements being true results in the cast. You're basically saying "and/or" by doing so.

  2. Cool, thanks. I did not know that :-).