This mod monitors and reports players who are AFK (away from the keyboard), expanding upon Blizzards built-in functionality.
TuringTest Leech Monitor -- Automatic AFK/Leecher Reporting Add-On for Battlegrounds
v1.1 Phobia@Dark Iron [US]
This is a mod written for anyone who's tired of having numerous permanent cave dwellers in every round of Alterac Valley. If you think that AFKing in BGs is acceptable or are proud of your own spacebar-tapping cave defense strategies, then this mod isn't for you.
This mod takes the time and annoyance out of using the new 'Report Player as AFK' functionality that Blizzard added in 2.2. It runs quietly in the background, monitors all players in the battleground, and uses a variety of metrics to determine which ones are playing, and which are just sitting idle in a corner or otherwise being useless. Whenever it identifies one of the latter type, it submits a report using the Blizzard API and notifies you that it has done so, along with a brief summary of that player's contribution statistics to explain why it identified that player as a leech. The heuristics are customizable through a config panel, and there is support for all four battlegrounds, although it is primarily intended for Alterac Valley.
--What are the rules?--
The mod is quite generous in its definition of an AFKer/Leecher, and many of the settings can be tweaked by the user.
The primary means of identifying an afker is through damage and healing done. The mod calculates the average damage and healing of the entire battleground (excluding those with a zero in this column) and compares each player's damage and healing to a percentage (modifiable, default 10%) of these values.
Because people often join a BG late, the mod also tracks the time that a player joined, and the total time that the BG has been running, to calculate the percentage of the game that a player has been present for. It also notes the percentage of the total honor gained. It then applies the greater of these two percentages to the required value, so at the default of 10% effort, if a player has only been present for 5 out of 10 minutes, and has recieved 45% of the total honor, they are only required to have 5% of the average damage and healing.
Because players often spend time defending nodes that may not get attacked, the mod tracks the location of every player and zones defined around most defense points. Any player seen within one of these zones will be credited with time spent defending them. The percentage of time they have spent defending is thus multiplied by a fraction (modifiable, default 50%) of the average damage and healing in the BG and credited to them as bonus damage/healing, even if their actual scores are zero. Thus, a person who spends 2/10 minutes defending SP GY will recieve .2 * .5 * averageDam = 10% credit, enough to not be reported.
Players are also credited with bonus effort (default 20%) for each secondary objective point they have accrued (flag caps/returns, graveyard/tower assault/defenses, etc). Thus by default even returning one flag is enough to consider a player to be contributing.
In Warsong Gulch, the flag carrier is always immune while he is carrying the flag, and accrues 'defense credit' as above while he is carrying it.
--When are reports issued?--
Since there is a finite but secret limit (per Blizzard) to the number of reports that can be issued in a given time frame, reports are only issued against players who do not already have the 'Inactive' debuff and are only reissued on 3 minute intervals.
There is by default a 3 minute (configurable) delay before the first reports are issued. This time is figured from when the gates opened or when the player in question joined the BG, whichever is later. However, there is a shorter delay of one minute (configurable) before reporting any player standing in the starting area of a BG (does not apply to WSG). This means all players have at least one full minute just to get out of the gate after joining. In Alterac Valley there is a further delay of two minutes for anyone in the center valley, and another two minutes for anyone in the opposite valley, to give everyone travelling time. In all, AV players have seven minutes from the gates opening (or from the time they joined) to either damage, heal, or defend something if they ride straight toward the enemy.
There is also a button to view the players currently considered 'AFK' by the addon, and another to announce this list in BG Chat. The configuration panel can be accessed by typing '/ttlm', and the complete stats for everyone currently in the BG can be viewed through '/ttlm-showall'.
--How does this 'AFK Reporting' work?--
In 2.2 Blizzard added a feature to Battlegrounds whereby players who are not contributing (ie, sitting in the cave, hiding in the woods, etc) can be reported as leechers/AFKers. Once a certain number (unknown, probably around 5) of different people have reported the same player, that player will recieve a 60 second debuff. At the end of 60 seconds, they receive a permanent debuff which prevents them from recieving any further honor or tokens. It does not remove any honor they already have gotten, nor does it remove them from the battleground (yet). If the target player takes any action that would result in a pvp flag (on pve server) (healing an ally, attacking an opposing player, etc) these debuffs are immediately removed.
Because the AFK reporting system requires more than one person to report a leecher before they are debuffed, I encourage as many people as possible to run this addon. Please leave feedback regarding the accuracy of the algorithms. If you have encountered scenarios where you feel it has incorrectly identified someone as leeching, please provide details and it will be considered for modification.
Thanks, and have a leech-free AV experience!