This addon creates bindings to show the targeting reticle for ground-targeting spells on key down, and to cast at the cursor when the key is released.
This addon works in Retail Shadowlands, Classic Era and The Burning Crusade Classic clients.
Note for Dragonflight clients: Blizzard now requires ActionButtonUseKeyDown to be enabled for this to work. This addon needs to disable this setting on key press and enable on key release. Additionally, some other addons are sensitive to changes to this setting. USING THIS ADDON IN DRAGONFLIGHT MAY CAUSE ISSUES WITH OTHER ADDONS. Use at your own risk. Blizzard has made it so I cannot make this work for everyone, sorry!
Ground-targeted spells like Heroic Leap, Blizzard, Rain of Fire, etc. are traditionally cast by pressing and releasing a key, then moving the target reticle on the ground, and finally clicking the ground to cast.
With a /cast [@cursor] macro, you skip the targeting phase and immediately cast to wherever your cursor is; but without a targeting reticle you can't adjust your targeting.
This addon allows you to set up key bindings so that when the key goes down, the targeting reticle appears to adjust your targeting, and releasing the key will cast at the cursor.
Setting up Binds
To create these bindings, click the Grounded button in the top-right corner of your spellbook.
(If you don't see this button, use /grounded. It's possible you have another addon modifying the spellbook.)
It will summon a window like this:
As the bottom-most empty slot says, drag a ground-targeted spell from your spellbook to the waiting slot to set up a new bind. These binds are "override" bindings, meaning they won't remove the keybind from any action that had it before. For instance, my warrior uses Shift-C to Heroic Leap, and I have the actionbar slot containing Heroic Leap also bound to Shift-C.
Frequently Asked Questions
Hopefully this is self explanatory to use, but for some potential questions that may come up:
Q: Can this binding move to the normal keybinding interface/action bars?
A: Not at this time, sorry. To accomplish this for the default bars alone, including paging, would balloon this addon to many times its current size and require more time to develop and support than I have available.
Q: But how can I see cooldowns and such?
A: Drag the spell from your spellbook (you can create a #showtooltip macro too) and drop it in an actionbar slot. The default UI is very good at displaying feedback to spells/macros even if it's not the actual source of the cast. You can even keep the same bind as the actionbar slot if you want.
Q: Does this work with action bar addons like Bartender or Dominos?
A: Yes, as long the override binding isn't overridden by another addon, the binds will work regardless of any addons you use.
Q: How do I cancel a cast? In other games, right-click will cancel this type of casting.
A: Unfortunately, SpellIsTargeting() is not available in the secure environment. So at this time I don't know of a way to cancel a cast beyond manually sending the targeting reticle out of range. (If the spell has a cast/channel time, you can also move to abort the cast, but the resource cost was probably already spent.)
Q: I want to change the binding I defined for a ground-targeted spell to another action, but the ground-targeted spell keeps using the binding.
A: Go into your spellbook and click the Grounded button in the topright, then unbind the key you've defined for the ground-targeted spell. Any Grounded bindings take precedent over regular keybindings.
Q: I don't see a Grounded button in the topright corner of my spellbook.
A: It's possible you're using an addon that modifies the default spellbook. You can use the /grounded slash command instead.
Q: Can this addon be made to unbind automatically when I define the bind elsewhere?
A: Not at this time, sorry. This addon does not watch other bindings or have any awareness of other bindings. (See the first question.)
Q: I want to bind the '5' key to a ground-targeted spell only while I'm on action bar page 2. Is this possible?
A: Not without an overhaul to how this addon works, which I don't have time for, sorry. (See the first question.)
Q: Can I use these bindings in a macro somehow?
A: Not really without changing how this addon and action buttons work. (See first question.) In a macro I recommend using /cast [@cursor] spell. You won't get a reticle to target, but it's fully supported by macros.
Q: It's letting me bind any spell and not just ground-target spells. Is this a bug?
A: It's up to you to know what spells target the ground. I don't have time to hunt down all ground-target spellIDs and I avoid whenever possible "curating" content-specific lists like this.
Q: It's letting me bind a key already bound to another Grounded key bind. Is this a bug?
A: Override key bindings do not destroy other bindings, they just override them. It's up to you which one you want to keep.
Q: What about bombs? Or toys?
A: Likely in a future update. The jury is out on whether this can be made to work for toys.
Q: Does this work in Classic WoW?
A: Yes! But you'll need to enable out-of-date addons on Classic clients.