Whenever you activate the skill, the game starts 2 counters. One for damage (damage ticks) and one for mana cost and stacks.
-> 1 stack does 270% damage, no matter what your aps is (the tooltip is misleading like crazy)
-> the initial damage tick occurs on frame 45 (3/4 of a second) after clicking the skill, no matter what aps
-> each subsequent damage tick takes 30 frames, no matter what aps
-> at 1.00 aps, 270% damage is dealt over 10 damage ticks
-> the number of ticks scales with aps; the higher the aps, the less total ticks you get (270% damage is applied faster - with less damage ticks, but always 270% total damage per stack)
-> as you can see from the tests I made, 4 ticks seems to be the lowest and 11 the highest number of ticks for one stack
-> overview of its duration (1 stack)
11 ticks = 1*45 + 10*30 = 345 frames = 5.75 sec
10 ticks = 315 frames = 5.25 sec
9 ticks = 285 frames = 4.75 sec
8 ticks = 255 frames = 4.25 sec
7 ticks = 225 frames = 3.75 sec
6 ticks = 195 frames = 3.25 sec
5 ticks = 165 frames = 2.75 sec
4 ticks = 135 frames = 2.25 sec
MANA & STACKS
-> the game uses resource cost ticks - you get a periodical mana globe response
-> for example Whirlwind gives you a damage tick and a mana tick at the same time, Plague Bats has them separated
-> Plague Bats cost 49 mana per mana tick (1/2 of 98)
-> important note: reduced resource cost seems to only work at 50% (I bought a -12 helm and the tick cost changed to 46 mana per tick and not 43 mana per tick as it should) - this is a possible bug (?)
-> the initial mana tick occurs at frame 10 after skill activation (activation is frame 0)
-> each subsequent mana tick occurs at a (30/aps; rounded down) frequency
-> so for example at 1.00 aps, you get mana ticks at f10->f40->f70->f100 etc. as long as you channel the skill (hold down the button); at 1.50 aps a mana tick takes 20 frames, at 2.00 aps it takes 15 frames etc.
-> whenever the game checks for a mana tick - on the same frame - it also checks for damage stacks (another 270% damage on top of the previous); this means that you channel the skill and the game periodically checks for channeling and applies another damage stack
Note that it is possible to determine skill activation for most skills (the skill icon is blacked out) but it´s not possible to determine when exactly Plague Bats stops, which makes the "stack" research very difficult.
frame 0 is the skill activation, 740/740 max mana,
10-691 mana tick
15-695 mana regen (45 base regen rate is 4.5 mana each 6 frames on average)
24-651 mana tick
45-669 damage tick (458)
75-691 damage tick (597)
I stopped channeling after 2 mana ticks and got 458-597-597-597-587-129 damage ticks = 2965 total damage at 2.01 aps, which equals to 2 stacks (43 base weapon damage; 1179 int; 270% damage is 1484.919). At this aps, had I instantly stopped channeling (before the 2nd mana tick), I would´ve gotten 5 damage ticks for a total of 270% damage (1 stack), but with 2 mana ticks I got 2 stacks and 6 ticks.
Important note: At higher aps values, the mana ticks are so frequent that it´s impossible to stop channeling after the initial stack, so you´ll always get at least 2 stacks even if you click the skill once (this occured for me at 2.34 aps, 2 stacks was the lowest...at 2.01 it´s still possible to get only 1 stack with a short click).
9-691 mana tick (1 frame earlier than usual)
25-655 mana tick (16 frames instead of 14)
37-615 mana tick (12 frames instead of 14, but the average between the first two is 14)
44-620 damage tick
76-642 damage tick
Here I stopped channeling after 3 mana ticks. The total sequence was 478-1074-1074-1074-716-30 which equals to 3 stacks damage. The duration was prolonged by 1 damage tick just like in the first case.
Now my most recent test, 1.00 aps, 29 base weapon damage, 1062 int.
270% damage is 909.846
45-682 91 dmg
75-664 182 dmg
106-647 273 dmg
137-681 437 dmg
damage sequence = 91+182+273+437+291+582+364+364+364+309+218+127+36 = 3638 (4 stacks)
Here I channeled until after 4 mana ticks and got 4 stacks.
Now you might ask, is it possible to stack Plague Bats as much as you want? The answer is no, because each stack has its duration. I´m trying to figure out how the duration stacks but it gets more difficult the more stacks you have a not knowing when I actually stop channeling makes it even harder.
So far it seems as if the duration is prolonged depending on how fast you activate stacks (the higher the aps the lower the time between stack activations) in relationship with the constant damage tick frequency (30 frames).
Anyway, if you want to personally test how many stacks you´re able to achieve at your aps, run the following test.
-> get the lowest dps white weapon that has the same base aps as your usual weapon
-> unequip all minimum and maximum damage on your jewelry and off hand and also "adds x% to elemental damage" affix (boots, SoJ, tal rasha´s amulet etc.)
-> get a ring or amulet with +minimum damage (only +minimum)
-> add (calculate) the +minimum damage from jewelry to the minimum damage value of the white weapon - the resulting minimum damage has to be higher than the displayed maximum damage of that same weapon - if one jewelry piece isn´t enough, get more with min damage
-> unequip all crit chance and crit damage sources (crit values make it harder to identify stacks)
-> equip IAS pieces - exactly as many as usual (get some cheap blue gear)
Ready? Write down your new minimum weapon damage (this single value is your new base weapon damage) and your WD´s intelligence stat. Example:
I bought a white 1.00 aps 2h axe with 9-11 base weapon damage. Equipped an amulet with a +20 minimum damage affix, so my new base weapon damage is 9 + 20 = 29-11 = 29-29 (the game will use the new min as the new max if it´s higher). My WD´s intelligence in this case is 1062, which gives me a 1 + (1062/100) = 11.62 damage modifier.
29 * 11.62 = 336.98 damage (this is 100% weapon damage, autoswing)
1 stack of Plague Bats does 270% weapon damage so 336.98 * 2.7 = 909.846 total damage per Bat stack.
You go to act 1, MP0, use first waypoint to the old ruins and channel Plague Bats on one of the Zombies for a while. Record the damage using fraps or bandicam or whatever you like, view the video and get the sum of damage ticks. The sum of your ticks should be close to a multiplication of 270% damage you calculated earlier, depending on how many Plague Bats you managed to stack. This is how damage and skill mechanics are researched.
EDIT: here´s a quick reference list for those who don´t want to calc stuff themselves - how many frames it takes to stack some Plague Bats at chosen aps values
aps/stack - 2 - 3 - 4 - 5
0.900 - 43 - 76 - 109 - 142
1.000 - 40 - 70 - 100 - 130
1.090 - 37 - 64 - 91 - 118
1.180 - 35 - 60 - 85 - 110
1.200 - 35 - 60 - 85 - 110
1.308 - 32 - 54 - 76 - 98
1.400 - 31 - 52 - 73 - 94
1.526 - 29 - 48 - 67 - 86
1.652 - 28 - 46 - 64 - 82
1.778 - 26 - 42 - 58 - 74
2.000 - 25 - 40 - 55 - 70
frames / 60 = time in seconds, for example 82 frames / 60 = 1.37 sec. So if you use a ceremonial knife with one movement speed item and a WH, you´d check the 1.652 aps row and see that you need to channel Plague Bats for 1.37 seconds to achieve 5 stacks. If you check the first list in this post, you´d see that this aps gives you 6 ticks, which means # of stack times 270% damage should be dealt within the next 3 seconds after you stop channeling.
Data from the research:
0.90 aps = 11 ticks
0.936 aps = 11 ticks
0.981 aps = 10 ticks
1.00 aps = 10 ticks
1.07 aps = 9-10 ticks (4:6 ratio)
1.11 aps = 9 ticks
1.18 aps = 9 ticks
1.19 aps = 8 ticks
1.34 aps = 8 ticks
1.35 aps = 7 ticks
1.56 aps = 7 ticks
1.605 aps = 6-7 ticks
1.635 aps = 6 ticks
1.8408 aps = 6 ticks
1.8762 aps = 6 ticks
1.8939 aps = 5-6 ticks (5:5 ratio)
1.9293 aps = 5 ticks
2.004 aps = 5 ticks
2.016 aps = 5 ticks
2.235 aps = 5 ticks
2.265 aps = 5 ticks
2.280 aps = 5 ticks
2.310 aps = 5 ticks
2.340 aps = 5 ticks
2.370 aps = 5 ticks
2.430 aps = 5 ticks
2.505 aps = 5 ticks
2.520 aps = 4-5 ticks (1:10 ratio)
2.535 aps = 4-5 ticks (2:8 ratio)
2.550 aps = 4-5 ticks (3:7 ratio)
2.565 aps = 4-5 ticks
2.7612 aps = 4 ticks
2.9382 aps = 4 ticks
2.9736 aps = 4 ticks
3.0975 aps = 4 ticks
3.1683 aps = 4 ticks
3.2220 aps = 4 ticks
-> if the initial tick or another tick deals more than base damage due to game frame rate dropping, the last tick in the sequence is adjusted accordingly (the remainder of the sequence)
-> if you´re close to a breakpoint and one or more ticks deal more than base damage, the last tick in the sequence might be omitted because there´s no remainder that would validate another tick