Thread Tools Display Modes
06-16-15, 02:36 PM   #1
Dimmulux
A Deviate Faerie Dragon
Join Date: Feb 2014
Posts: 17
Target and CC Coordination Addon

Introduction

I am planning the creation of an addon for simplifying target calling and CC coordination in RBGs. This post contains my current thoughts on the features that the addon should have. I welcome any comments on the feasibility and implementation difficulty of any feature. If any of the proposed features would contravene any of Blizzard's addon policies, please let me know.

Please note that I have not written an addon before. I have made minor modifications to an addon so that it suits my purposes better. I am familiar with Java (so I understand many programming concepts), but have very little experience with Lua.

In the rest of this post I use square brackets to refer to an addon that does something similar already.

Features

The proposed features are as follows:

Target Sharing: some designated members of the instance group are able to mark a unit as a group target using a key bound for this purpose. This target is passed on to all members of the instance group in a manner of their choice [l2target]:
  1. By text – it will appear in the raid chat. If the user does not have the addon, this will be the only way that are notified of the target.
  2. By marker above the target's head [Healers Have to Die].
  3. By a custom frame containing the target name.
  4. By sound indicators when a unit other than the assigned target takes direct damage from the character [GladiatorlosSA].
The target switch may be performed instantaneously or after a user-defined delay (by default five seconds). As is common in PvP, giving warning before a target switch allows time for players to CC just before the switch takes place. In the case of a delay, a timer will count down to the switch time [DBM Timers].

I understand that each member of the group will still need to switch target to the given unit themselves manually – the purpose here is to facilitate the transfer of designated target name from the target caller to other members of the group. I also understand that assist macros (including assist focus) and similar are commonly used for this purpose. Advantages of Target Sharing include: target callers may switch target to perform CC without affecting other group members and multiple target callers are possible (useful if the primary target caller is absent or dead). This feature will be very similar to the l2target addon [l2target], the differences being that the target calling would be integrated with the rest of the addon and there will be the capacity for multiple target callers.


CC Marking: some designated members of the instance group would be able to mark a unit as a group CC target using a key bound for this purpose. Once a unit has been marked as a CC target, the addon itself would determine the order and caster of CCs. It will do this by choosing among the non-CCed members of the player's group that have the add-on and are in range. It will prefer CCs that have the longest duration (accounting for DR). Users would have a timer counting down the time until they are expected to CC.


Automatic Mode. Target Sharing and/or CC Marking could be set to happen automatically. If so, the addon will choose when target switches and CCs should happen. It will do this by considering a number of factors including cooldowns used [GladiatorlosSA], range from group members [RangeDisplay] and health of enemy units. It will then inform players of what they should do in the same way as in the manual modes.

Architecture

My current plan is for the addon to work in the following way:
  • The raid leader will be able to enable/disable the addon as desired. They will also be able to choose which player acts as the “server”.
  • The “server” will manage the coordination of CCs and updates informations on which players have which privileges. Note that the server is no more than an ordinary copy of the same addon code running in a different mode. In Automatic Mode, the server will choose the target and/or the CC mark. Ideally, the player acting as the server should have low game latency.
  • “Clients” (all players other than the server) will respond to server requests and send requests to the server as appropriate. They will accept target shares and CC marks directly from other players (to minimise latency problems), provided that the issuing player has the corresponding privilege.
Related Addons

The following is a list of addons which have a feature similar to one of those which I intend to use in this addon (as indicated above). I plan to read through the addons and use similar code as appropriate.
Apologies for the length of this post. Thoughts and comments are much appreciated.
  Reply With Quote
06-16-15, 07:21 PM   #2
Tonyleila
A Molten Giant
 
Tonyleila's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2010
Posts: 758
That sounds great! I'm always excited about new PvP AddOns
__________________
Author of: LeilaUI and Aurora: Missing Textures
__________________
  Reply With Quote
06-16-15, 07:51 PM   #3
Banknorris
A Chromatic Dragonspawn
 
Banknorris's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 153
I personally just use a /assist <target_caller_name> macro but there is also
http://www.wowinterface.com/download...pleAssist.html

Pressing one button to target the same thing the target calling is targetting is very efficient. Adding a mark on the target and making changing the target caller name is a bonus. I am still confusing about the cc part but I will read more carefully later. I love rbgs.
__________________
"In this world nothing can be said to be certain, except that fractional reserve banking is a Ponzi scheme and that you won't believe it." - Mandrill
  Reply With Quote
06-17-15, 07:31 AM   #4
Tonyleila
A Molten Giant
 
Tonyleila's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2010
Posts: 758
Originally Posted by Banknorris View Post
I am still confusing about the cc part but I will read more carefully later. I love rbgs.
If i read it right: the idea of the addon is to optimize the CC rotation to have a maximum amount of stunn time active - something a targetcaller can't do.

Users would have a timer counting down the time until they are expected to CC.
This woud need more infos like an icon/name of the spell the person shoud use and if he dosen't use it in time it shoud skip him and go on to the next person. Also check if the person dies during countdown or gets focused/CC'd.
__________________
Author of: LeilaUI and Aurora: Missing Textures
__________________
  Reply With Quote
06-17-15, 09:25 AM   #5
Dimmulux
A Deviate Faerie Dragon
Join Date: Feb 2014
Posts: 17
Originally Posted by Tonyleila View Post
If i read it right: the idea of the addon is to optimize the CC rotation to have a maximum amount of stunn time active - something a targetcaller can't do.


This woud need more infos like an icon/name of the spell the person shoud use and if he dosen't use it in time it shoud skip him and go on to the next person. Also check if the person dies during countdown or gets focused/CC'd.
That is the idea, yes. The countdown would certainly need to indicate the ability to be used at its end. You are right that contigency CCs would also need to be considered.
  Reply With Quote
06-17-15, 09:40 AM   #6
Banknorris
A Chromatic Dragonspawn
 
Banknorris's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 153
If you mean for example:
1) enemy warrior is dying so the enemy healers must be cc'ed
2) your addon tells the shaman to hex enemy druid healer (and only to the shaman)
3) you addon tells the priest (and only to him) to silence the paladin healer
4) your addon notices that the enemy mage dispeled hex from the druid healer and now tells to your paladin (and only the paladin) to stun the druid healer
sounds good
__________________
"In this world nothing can be said to be certain, except that fractional reserve banking is a Ponzi scheme and that you won't believe it." - Mandrill

Last edited by Banknorris : 06-17-15 at 09:42 AM.
  Reply With Quote
06-17-15, 11:37 AM   #7
Dimmulux
A Deviate Faerie Dragon
Join Date: Feb 2014
Posts: 17
Originally Posted by Banknorris View Post
If you mean for example:
1) enemy warrior is dying so the enemy healers must be cc'ed
2) your addon tells the shaman to hex enemy druid healer (and only to the shaman)
3) you addon tells the priest (and only to him) to silence the paladin healer
4) your addon notices that the enemy mage dispeled hex from the druid healer and now tells to your paladin (and only the paladin) to stun the druid healer
sounds good
That would be the kind of thing, yes.
  Reply With Quote
07-03-15, 08:56 AM   #8
Dimmulux
A Deviate Faerie Dragon
Join Date: Feb 2014
Posts: 17
Post

I have working on the target calling asistance so far and have not started on CC or automatic mode. I link to the GitHub repository of my project in case anyone is interested: https://github.com/Dimmulux/TCCA. Note that this will contain many bugs as I have only done initial testing on it so far.

Acknowledgements go to LibStub, LibNamePlate and CallbackHandler which are currently used for setting the marker above the kill target's head.
  Reply With Quote

WoWInterface » Developer Discussions » General Authoring Discussion » Target and CC Coordination Addon

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off