Download
(153Kb)
Download
Updated: 03-16-21 05:13 PM
Pictures
File Info
Compatibility:
Shadowlands patch (9.0.5)
Shadowlands patch (9.0.2)
Shadowlands pre-patch (9.0.1)
Updated:03-16-21 05:13 PM
Created:08-04-10 07:07 PM
Downloads:28,727
Favorites:50
MD5:
Categories:Discontinued and Outdated Mods, Combat Mods, Unit Mods

ImpliedTarget  Popular! (More than 5000 hits)

Version: 1.3.16
by: Vrul [More]

This addon only works with action buttons provided by the default UI. Support for other action bar addons may be found in the Other Files tab.

Macros allow you to change the ability that you use based on whether your target is friend or foe. This addon allows you to do the opposite, change the target of an ability based on whether that ability is harmful or helpful. Support for custom paging of the main action bar is also provided (may be disabled by another addon).


Anyone with several macros similar to:

/cast [harm, nodead] [@targettarget, harm, nodead] [@mouseover, harm, nodead] [@pettarget, nodead] HarmfulSpell

or

/cast [@mouseover, help, nodead] [help, nodead] [@targettarget, help, nodead] [@player] HelpfulSpell

can instead set up a targeting priority and apply it to all of your action buttons without wasting a single macro.


To further enhance your mouseover targeting, two additional options are provided. @unitframe can be used in place of @mouseover to target a unit only if it is a unit frame. Similarly, @unitmodel can be used to target only units that are in the 3D world.


Note: Target behavior is only changed for spells and items placed directly into an action button.

Translators: To submit a translation please just edit an existing file (ImpliedTarget\Locales.lua or ImpliedTarget_Config\Locales\deDE.lua) and send it to me.

Developers: If you would like to make ImpliedTarget work with your addon then see the API below and look at how it was done for other addons in the Other Files tab.


API (these functions may be called in combat, but their effects won't happen until combat has ended)

ImpliedTarget.DisableKeyBinding()

Forces ImpliedTarget to disable it's key binding code and allow it to be garbage collected. Only call this if your addon will be providing this functionality.


ImpliedTarget.DisablePaging()

Forces ImpliedTarget to disable it's paging code for the primary action bar and allow it to be garbage collected. Only call this if your addon will be providing this functionality.


ImpliedTarget.AddButton(button [, bind])

Allow ImpliedTarget to alter the behavior of an action button.

Arguments:

button - (table or string) An action button or name of an action button.

bind - (string) The name of the key bind for the action button.
Returns:
button - (table or nil) If successful the action button is returned, otherwise nil.

ImpliedTarget.RemoveButton(button)

Prevent ImpliedTarget from altering the behavior of an action button.

Arguments:
button - (table or string) An action button or name of an action button.
Returns:
button - (table or nil) The action button if it was removed, nil if the action button had not been previously added.

Version 1.3.15 (12/13/2020)
- Corrected hunter ability Binding Shot not being flagged as GTAoE
- Added option to improve @mouseover responsiveness

Version 1.3.15 (12/13/2020)
- Fixed paladin Night Fae covenant ability Blessing of Seasons
- Added legendary effects
- Disabling an individual ability should now work as expected

Version 1.3.14 (12/08/2020)
- Updated various actions
- Initial implementation of option to modify individual abilities [WIP]

Version 1.3.13 (09/27/2020)
- Updated various actions

Version 1.3.12 (10/03/2018)
- Changed Discipline Priest's Mindbender from 'help' to 'harm'
- Defaulting to UseAction for non-GTAoE abilities and CastSpellByID for GTAoE abilities

Version 1.3.11 (10/02/2018)
- Added Void Bolt to the Shadow Priest list of spells

Version 1.3.10 (09/30/2018)
- Fix to make actions more closely follow default behavior with regards to starting auto-attack

Version 1.3.9 (09/29/2018)
- Change for weird inconsistent behavior between CastSpellByID and CastSpellByName

Version 1.3.8 (09/29/2018)
- Included missing library file and toc info for LibDataBroker-1.1
- Added Locales.lua to help with anyone wanting to translate

Version 1.3.7 (09/28/2018)
- The modules for Bartender4 and Dominos are now their own addons and available separately
- Removed the Monk ability Chi Wave from the list of targeted actions
- Fixed the option for manual targeting preventing the use of auto-targeting and non-targeted actions
- Merged the Help options Auto and Manual into the drop-down Default
- Corrected an issue with item/spell names not being available until after a UI reload
- Added a LDB plugin
- Library update

Version 1.3.6 (08/27/2018)
- Fixed an error with converting GTAoE settings

Version 1.3.5 (08/26/2018)
- Changed the scope of some variables in ImpliedTarget_Config that were being leaked globally
- Corrected an issue with applying queued commands after combat
- Fixed an issue with detecting specialization changes for applying Harm Priority
- Added a "Manual" option to Harm, Help, Rez, and GTAoE to allow explicit cursor targeting
- Reworded some stuff in the options

Version 1.3.4 (07/24/2018)
- Updated for 8.0
- Reworked how some things are processed behind the scenes
- Added support for ground targeted area of effect (gtaoe) abilities (manually added only)

Version 1.3.3 (02/08/2018)
- Fixed error when assigning custom parameters

Version 1.3.2 (01/21/2018)
- Corrected the classification of the Warlock ability "Phantom Singularity" from 'help' to 'harm'
- Fixed errors with harm priority and roles

Version 1.3.1 (09/02/2017)
- Updated for 7.3

Version 1.3 (07/18/2016)
- Updated for 7.0
- Significant reworking of how things are done behind-the-scenes
- Added a feature to prioritize harm/help for dual-role abilities based on role

Version 1.2.2 (10/19/2014)
- Fix for key binds not working after a reload

Version 1.2.1 (10/14/2014)
- Updated for 6.0

Version 1.2 (10/31/2013)
- Resurrection abilities are now completely separate from helpful abilities in the options
- Improved the way secure unwrapping was done to avoid conflicts with other addons
- Changing the active key bind set now updates key binds so they will still work
- Fix to allow key binds to work with the pet battle UI
- Fix for key binds containing "[" or "]"
- The Grid integration option was replaced with a more universal solution: @unitframe, @unitmodel
- Moved Bartender4 and Dominos support into separate addons as examples for any addon author looking to incorporate ImpliedTarget support
- Added some auto-correction for minor errors in parameters that are manually entered

Version 1.1.7 (09/18/2013)
- Fixed key bind issues with ExtraActionButton and PetBattleUI
- Corrected an issue with changing Paging settings

Version 1.1.6 (06/23/2013)
- Added an option to disable resurrection abilities from working with implied targeting
- Corrected the spellID for the warlock spell Soul Stone
- Improved behavior with Grid integration
- Option based code optimization

Version 1.1.5 (06/14/2013)
- Fixed an error and a bug with Grid integration

Version 1.1.4 (06/13/2013)
- Resurrection abilities will now also work with implied targeting
- Added an option for Grid users

Version 1.1.3 (09/02/2012)
- Added options for excluding entire action bars from implied targeting

Version 1.1.2 (07/28/2012)
- Updated for MoP

Version 1.1.1 (12/10/2011)
- Added compatibility for Dominos

Version 1.1 (11/26/2011)
- Added compatibility for Bartender4
- Changed options to be easier for novice users (borrowed Bartender4's style)

Version 1.0.5 (01/11/2011)
- Correct an issue with some empty vehicle buttons

Version 1.0.4 (01/04/2011)
- Fix for key binds that contain characters that have special meaning for Lua's format function

Version 1.0.3 (12/24/2010)
- Ignore spells that can't be identified as harmful or helpful (fixes errors with vehicle abilities)

Version 1.0.2 (10/13/2010)
- Updated for 4.0

Version 1.0.1 (08/06/2010)
- Fixed a bug when changing key binds for the main action bar

Version 1.0 (08/04/2010)
- Initial release
Optional Files (3)
File Name
Version
Size
Author
Date
Type
1.0.1
918B
12-08-20 11:43 PM
Addon
1.0
1kB
09-27-18 04:42 PM
Addon
2.0
2kB
08-06-18 12:36 PM
Addon


Post A Reply Comment Options
Unread 08-22-18, 09:13 AM  
nKweo
A Deviate Faerie Dragon
 
nKweo's Avatar

Forum posts: 16
File comments: 16
Uploads: 0
I'm also working on a way to modify spells individually but its still not quite ready.
Sounds great! While you're at it, you may want to consider adding some spells to the 'rez' category. For instance, Misdirection (hunter) and Leap of Faith (priest) are 'help' spells that cannot be cast on self and thus are functionally equivalent to resurrection spells. (Strictly speaking, the category should no longer be called 'rez' in this case, but that's not really an issue imo).

Also a minor point: I like to end 'help' macro's with [@target] as this prevents the spell from 'readying' when you have no target available (the cursor lights up and clicking on a unit casts the spell) and warns me that I have no target selected. This doesn't work with ImpliedTarget, however; spells again ready when I have no target. Is this intended? Could it be changed easily?
Report comment to moderator  
Reply With Quote
Unread 08-22-18, 10:56 AM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Originally Posted by nKweo
Sounds great! While you're at it, you may want to consider adding some spells to the 'rez' category. For instance, Misdirection (hunter) and Leap of Faith (priest) are 'help' spells that cannot be cast on self and thus are functionally equivalent to resurrection spells.
The category 'rez' is for spells that cast on [dead] targets so not going to change them that way. Spells like that are one of the reasons I'm adding the ability to customize individual abilities.

Originally Posted by nKweo
Also a minor point: I like to end 'help' macro's with [@target] as this prevents the spell from 'readying' when you have no target available (the cursor lights up and clicking on a unit casts the spell) and warns me that I have no target selected. This doesn't work with ImpliedTarget, however; spells again ready when I have no target. Is this intended? Could it be changed easily?
Currently if no targets match then it passes on to Blizzard's code (for future compatibility). I may change it so that it doesn't pass on to Blizzard's code and then add an option for allowing the glowing cursor if no target matches.
Report comment to moderator  
Reply With Quote
Unread 08-25-18, 09:42 AM  
Gazzoose
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Unhappy Config issues

I've just started trying to use this addon (initially with ElvUI) and have run into several issues, the most important one to me right now is that I can't figure out how to access the config page as shown in the screenshots here. I can't see any button for it, and /impliedtarget returns the usual "Type /help for a listing of a few commands." message.

Am I missing something obvious?
Report comment to moderator  
Reply With Quote
Unread 08-25-18, 01:16 PM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Re: Config issues

Originally Posted by Gazzoose
I've just started trying to use this addon (initially with ElvUI) and have run into several issues, the most important one to me right now is that I can't figure out how to access the config page as shown in the screenshots here. I can't see any button for it, and /impliedtarget returns the usual "Type /help for a listing of a few commands." message.

Am I missing something obvious?
First make sure ImpliedTarget is enabled (Main Menu -> AddOns -> ImpliedTarget). Next, go in game with ImpliedTarget enabled and run these commands in game (separately):
Code:
/run print(LibStub)
/run print(LibStub("LibOptionsAssist-1.1", true))
/run print(ImpliedTarget)
You should see something similar to the following if all is good:
Code:
table: 000001C6FCD0C7A0
table: 000001C6FCE1BE90 3
table: 000001C6FD9E1440
If the third one shows as "nil" then ImpliedTarget didn't even try to load and is likely disabled. If you don't see those "table" returns for all three then you may need to delete the ImpliedTarget folder and reinstall it as something is missing.

If everything looked good above then get an addon for errors (AmberAlert, BugSack, or Bugger (last two require !BugGrabber) and report any errors here.
Report comment to moderator  
Reply With Quote
Unread 08-26-18, 12:52 PM  
Gazzoose
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Re: Re: Config issues

Originally Posted by Vrul
Originally Posted by Gazzoose
I've just started trying to use this addon (initially with ElvUI) and have run into several issues, the most important one to me right now is that I can't figure out how to access the config page as shown in the screenshots here. I can't see any button for it, and /impliedtarget returns the usual "Type /help for a listing of a few commands." message.

Am I missing something obvious?
First make sure ImpliedTarget is enabled (Main Menu -> AddOns -> ImpliedTarget). Next, go in game with ImpliedTarget enabled and run these commands in game (separately):
Code:
/run print(LibStub)
/run print(LibStub("LibOptionsAssist-1.1", true))
/run print(ImpliedTarget)
You should see something similar to the following if all is good:
Code:
table: 000001C6FCD0C7A0
table: 000001C6FCE1BE90 3
table: 000001C6FD9E1440
If the third one shows as "nil" then ImpliedTarget didn't even try to load and is likely disabled. If you don't see those "table" returns for all three then you may need to delete the ImpliedTarget folder and reinstall it as something is missing.

If everything looked good above then get an addon for errors (AmberAlert, BugSack, or Bugger (last two require !BugGrabber) and report any errors here.
All three commands ran fine and returned values similar to what you stated,

[19:47] table: 000001D4A70A4620
[19:47] table: 000001D4BEFE7A60 3
[19:47] table: 000001D4BF4D01D0
I can see ImpliedTarget is loaded 'cause it has memory usage (About 176KB, according to my client) I can't imagine it would be relevant, but Swatter catches an error about the ElvUI compatability plugin regarding paging.lua, line 70, but even if I disable all addons but ImpliedTarget the behaviour still persists (albeit without the paging.lua error)

The only addon I couldn't disable was Addon Control Panel, as it doesn't have the option to actually disable itself, is there any other information I could provide?
Report comment to moderator  
Reply With Quote
Unread 08-26-18, 05:12 PM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Re: Re: Re: Config issues

Originally Posted by Gazzoose
I can see ImpliedTarget is loaded 'cause it has memory usage (About 176KB, according to my client) I can't imagine it would be relevant, but Swatter catches an error about the ElvUI compatability plugin regarding paging.lua, line 70, but even if I disable all addons but ImpliedTarget the behaviour still persists (albeit without the paging.lua error)

The only addon I couldn't disable was Addon Control Panel, as it doesn't have the option to actually disable itself, is there any other information I could provide?
I found what was causing the Paging.lua error on line 70 and that is also why you can't see options. That error occurs if the options panel and slash command were not created due to either not finding LibStub, LibOptionsAssist-1.1, or the addon ImpliedTarget_Config.

I know that LibStub and LibOptionsAssist-1.1 are running based on the test you already ran. Is your ImpliedTarget_Config folder missing? Try running this command in game:
Code:
/run print(GetAddOnInfo("ImpliedTarget_Config"))
If the addon is missing it will look like this:
Code:
ImpliedTarget_Config nil nil false MISSING INSECURE false
Report comment to moderator  
Reply With Quote
Unread 08-26-18, 06:49 PM  
Gazzoose
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Re: Re: Re: Re: Config issues

Originally Posted by Vrul
Originally Posted by Gazzoose
I can see ImpliedTarget is loaded 'cause it has memory usage (About 176KB, according to my client) I can't imagine it would be relevant, but Swatter catches an error about the ElvUI compatability plugin regarding paging.lua, line 70, but even if I disable all addons but ImpliedTarget the behaviour still persists (albeit without the paging.lua error)

The only addon I couldn't disable was Addon Control Panel, as it doesn't have the option to actually disable itself, is there any other information I could provide?
I found what was causing the Paging.lua error on line 70 and that is also why you can't see options. That error occurs if the options panel and slash command were not created due to either not finding LibStub, LibOptionsAssist-1.1, or the addon ImpliedTarget_Config.

I know that LibStub and LibOptionsAssist-1.1 are running based on the test you already ran. Is your ImpliedTarget_Config folder missing? Try running this command in game:
Code:
/run print(GetAddOnInfo("ImpliedTarget_Config"))
If the addon is missing it will look like this:
Code:
ImpliedTarget_Config nil nil false MISSING INSECURE false
That does indeed appear to be the case, I must have extracted the addon wrong originally somehow, thanks for helping me diagnose the issue
Report comment to moderator  
Reply With Quote
Unread 08-27-18, 02:56 AM  
nKweo
A Deviate Faerie Dragon
 
nKweo's Avatar

Forum posts: 16
File comments: 16
Uploads: 0
Getting these errors after the latest update when trying to acces the options:
Code:
Message: Interface\AddOns\ImpliedTarget\Convert.lua:117: attempt to index local 'settings' (a nil value)
Time: Mon Aug 27 10:50:19 2018
Count: 1
Stack: Interface\AddOns\ImpliedTarget\Convert.lua:117: attempt to index local 'settings' (a nil value)
Interface\AddOns\ImpliedTarget\Convert.lua:117: in function `func'
Interface\AddOns\ImpliedTarget\Convert.lua:5: in function <Interface\AddOns\ImpliedTarget\Convert.lua:3>
Interface\AddOns\ImpliedTarget\Convert.lua:115: in function `Convert'
Interface\AddOns\ImpliedTarget\Settings.lua:126: in function `?'
Interface\AddOns\ImpliedTarget\Core.lua:43: in function <Interface\AddOns\ImpliedTarget\Core.lua:42>

Locals: profile = <table> {
 rez = <table> {
 }
 help = <table> {
 }
 autoCorrect = 1
 paging = <table> {
 }
 harm = <table> {
 }
}
name = "Default"
settings = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'settings' (a nil value)"
Code:
Message: ...dProfiles\Libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:346: table index is nil
Time: Mon Aug 27 10:51:59 2018
Count: 1
Stack: ...dProfiles\Libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:346: table index is nil
[C]: ?
...dProfiles\Libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:346: in function <...dProfiles\Libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:335>
...dProfiles\Libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:449: in function `GetOptionsTable'
Interface\AddOns\ImpliedTarget_Config\Core.lua:572: in main chunk
[C]: in function `LoadAddOn'
...e\AddOns\ImpliedTarget\Libs\LibOptionsAssist-1.1.lua:624: in function <...e\AddOns\ImpliedTarget\Libs\LibOptionsAssist-1.1.lua:620>
...e\AddOns\ImpliedTarget\Libs\LibOptionsAssist-1.1.lua:302: in function `func'
...e\AddOns\ImpliedTarget\Libs\LibOptionsAssist-1.1.lua:536: in function `Show'
Interface\FrameXML\InterfaceOptionsFrame.lua:28: in function `InterfaceOptionsList_DisplayPanel'
Interface\FrameXML\InterfaceOptionsFrame.lua:46: in function `InterfaceOptionsListButton_OnClick'
[string "*:OnClick"]:2: in function <[string "*:OnClick"]:1>

Locals:
Report comment to moderator  
Reply With Quote
Unread 08-27-18, 06:22 AM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Originally Posted by nKweo
Getting these errors after the latest update
I just uploaded a new version (1.3.6) that should fix that error.
Report comment to moderator  
Reply With Quote
Unread 09-02-18, 07:01 PM  
sumoren
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Exclamation Binding to mouse bouton 3, 4 and 5 not working

Hi,

I'm using a razor naga mouse and side button1 1 and 2 are bind to mouse button 4 and 5. (Back and forward when you browse internet). But those keybind don't work with the mouse over cast. Same for click-wheel that is Mouse button 3.

With the same button on the action bar if I use a alternate key bind it work, but the mouse button 4 and 5.
Report comment to moderator  
Reply With Quote
Unread 09-02-18, 07:07 PM  
sumoren
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Re: Binding to mouse bouton 3, 4 and 5 not working

Not sure the problem is related to the addon. I have the exact same problem with custom macro, doesn't work with key bind to mouse 4 and 5.

Originally Posted by sumoren
Hi,

I'm using a razor naga mouse and side button1 1 and 2 are bind to mouse button 4 and 5. (Back and forward when you browse internet). But those keybind don't work with the mouse over cast. Same for click-wheel that is Mouse button 3.

With the same button on the action bar if I use a alternate key bind it work, but the mouse button 4 and 5.
Report comment to moderator  
Reply With Quote
Unread 09-02-18, 08:43 PM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Re: Binding to mouse bouton 3, 4 and 5 not working

Originally Posted by sumoren
But those keybind don't work with the mouse over cast. Same for click-wheel that is Mouse button 3.
Unfortunately keyboard and mouse input are very different things when it comes to unit frames. In order to make mouse input work for unit frames I would have to basically reproduce Clique within ImpliedTarget (which I am not going to do). Small consolation, those binds will still work for units in the 3D world.
Report comment to moderator  
Reply With Quote
Unread 09-18-18, 12:53 PM  
Jaedra
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Hi,

First I just wanted to say thank you so much for this addon. I have been using it for a couple of months, and I absolutely love it.

Everything was working fantastic for a while, but today when I went to open the options to change a setting, I noticed that the options panel under Interface > AddOns is blank. For reference, I am using ElvUI and I have the following addons folders:

ImpliedTarget
ImpliedTarget_Config
ImpliedTarget_ElvUI

The first thing I did was update ElvUI, as there was one out there that I was missing. Then I redownloaded your addon and the ElvUI addon and overwrote what was in my /AddOns folder. Still no luck. When I open the interface options from the menu, or type /impliedtarget in game, the right hand panel is blank.

I was reading through the comments here and per your recommendation to another poster, I used the following command in game:

Code:
/run print(GetAddOnInfo("ImpliedTarget_Config"))
Which did indeed return:

Code:
ImpliedTarget_Config nil nil false MISSING INSECURE false
I'm not sure where to go from here, as the folders do exist. Any suggestions would be appreciated, or please let me know if there are further diagnostic steps I could take.

Thank you so much!
Report comment to moderator  
Reply With Quote
Unread 09-18-18, 07:09 PM  
Vrul
A Scalebane Royal Guard
 
Vrul's Avatar
AddOn Author - Click to view AddOns

Forum posts: 404
File comments: 322
Uploads: 33
Originally Posted by Jaedra
I'm not sure where to go from here, as the folders do exist. Any suggestions would be appreciated, or please let me know if there are further diagnostic steps I could take.
Are you sure the folders are nested properly? They should be at the same level:

WoW\Interface\AddOns\ImpliedTarget

WoW\Interface\AddOns\ImpliedTarget_Config
Report comment to moderator  
Reply With Quote
Unread 09-19-18, 08:13 AM  
doppler
A Kobold Labourer

Forum posts: 0
File comments: 21
Uploads: 0
Hey, I reinstalled wow and my addons, and now I'm having a problem I didn't before.

You know how your habilites auto-aquire a target if you have none? (like if you are close to a target as a warrior and cast Mortal strike, it will target the nearest enemy and try to cast mortal strike).

Well, implied target now is disabling this option for me. It will not auto-aquire a target anymore.

Dunno what may be causing this. I even set the Harm to Never consider mouse over.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: