Attack speed: Difference between revisions

From Blooncyclopedia, the independent Bloons knowledge base
Jump to navigation Jump to search
No edit summary
m Minor fixes; [[Bloons TD 6|''Bloons TD 6'']]: Added Template:Cleanup due to poor grammar and/or spelling
 
Line 15: Line 15:


=== [[Bloons Tower Defense (game)|''Bloons Tower Defense'']] / [[Bloons Tower Defense 2|''Bloons Tower Defense 2'']] ===
=== [[Bloons Tower Defense (game)|''Bloons Tower Defense'']] / [[Bloons Tower Defense 2|''Bloons Tower Defense 2'']] ===
In these games towers are programmed to attack every certain amount of frames which can be converted into seconds considering they run at 40 frames per second. The only upgrade that modifies attack speed is Faster Shooting for [[Tack Shooter|Tack Shooters]], reducing it from 55 to 40 frames. Using the [[Upgrade stacking glitch]] (also called "hypersonic Tack Shooter glitch"), allows to purchase this upgrade multiple times, reducing the cooldown of the tower 15 frames every time. After 4 stacks, the cooldown of the Tack Shooter would be less than 0 frames, so the tower reaches a speed cap and attacks every frame, further upgrades doesn't change this behavior.
In these games, towers are programmed to attack every certain amount of frames which can be converted into seconds considering they run at 40 frames per second. The only upgrade that modifies attack speed is Faster Shooting for [[Tack Shooter|Tack Shooters]], reducing it from 55 to 40 frames. Using the [[Upgrade stacking glitch]] (also called "hypersonic Tack Shooter glitch"), allows to purchase this upgrade multiple times, reducing the cooldown of the tower 15 frames every time. After 4 stacks, the cooldown of the Tack Shooter would be less than 0 frames, so the tower reaches a speed cap and attacks every frame; further upgrades do not change this behavior.


=== [[Bloons Supermonkey 2|''Bloons Supermonkey 2'']] ===
=== [[Bloons Supermonkey 2|''Bloons Supermonkey 2'']] ===
Line 27: Line 27:


=== [[Bloons TD 6|''Bloons TD 6'']] ===
=== [[Bloons TD 6|''Bloons TD 6'']] ===
{{cleanup|Needs cleanup for grammar and/or spelling}}
Attack speed in ''BTD6'' is implemented with a mechanic internally named '''cooldown'''. This cooldown is the amount of time in seconds which a tower will take before executing an attack or performing certain actions such as [[Spike Factory (BTD6)|producing spikes]] or [[Sun Temple (BTD6)|spawning sub-towers]]. This is measured in seconds, and the upgrades modify the value of this stat to a certain number. However, if the player notices the amount of damage that a tower is dealing before and after an attack speed or buff is applied, sometimes the tower seem to be doing better than expected, and this is because on how the actual attack speed / cooldown mechanic is implemented.
Attack speed in ''BTD6'' is implemented with a mechanic internally named '''cooldown'''. This cooldown is the amount of time in seconds which a tower will take before executing an attack or performing certain actions such as [[Spike Factory (BTD6)|producing spikes]] or [[Sun Temple (BTD6)|spawning sub-towers]]. This is measured in seconds, and the upgrades modify the value of this stat to a certain number. However, if the player notices the amount of damage that a tower is dealing before and after an attack speed or buff is applied, sometimes the tower seem to be doing better than expected, and this is because on how the actual attack speed / cooldown mechanic is implemented.


Line 80: Line 81:
===''Bloons Adventure Time TD''===
===''Bloons Adventure Time TD''===
{{incomplete|need to figure out more on how blockingCooldown works}}
{{incomplete|need to figure out more on how blockingCooldown works}}
In ''[[Bloons Adventure Time TD]]'', attack speed is implemented internally as '''cooldown''' and measured in seconds, much like Bloons TD 6. Some attacks have an animationSpeed variable as well which governs the lowest possible cooldown that attack can have. If this variable is not present then the lowest the cooldown can go is 1/60th of a second, or 1 frame ingame, which can be achieved with a combination with items and upgrades. All cooldowns are round up to the next frame.
In ''[[Bloons Adventure Time TD]]'', attack speed is implemented internally as '''cooldown''' and measured in seconds, much like ''Bloons TD 6''. Some attacks have an animationSpeed variable as well which governs the lowest possible cooldown that attack can have. If this variable is not present then the lowest the cooldown can go is 1/60th of a second, or 1 frame ingame, which can be achieved with a combination with items and upgrades. All cooldowns are round up to the next frame.


On the character's stat pages, attack speed displayed is actually the inverse of cooldown from the main weapon. It is similarly mentioned as such in balance patch notes.
On the character's stat pages, attack speed displayed is actually the inverse of cooldown from the main weapon. It is similarly mentioned as such in balance patch notes.


== References ==
== References ==

Latest revision as of 14:05, 23 April 2026

For C4 Charlie's upgrade, see Attack Speed (upgrade).
Buff icon for attack speed in BTD6

Attack speed is a mechanic in the Bloons TD series and Bloons Supermonkey series of games, which determines the amount of time that a Tower needs to perform an specific attack. It is typically measured in frames in the older games and seconds in the newer entries. It is one of the three main mechanics that determine the offensive capability of a tower alongside Damage and Pierce.

There is not a unique way to name this mechanic, not even in the same game or in official patch notes. In the list below there are examples of different notations across the Bloons franchise:

Mechanics

[edit | edit source]

In these games, towers are programmed to attack every certain amount of frames which can be converted into seconds considering they run at 40 frames per second. The only upgrade that modifies attack speed is Faster Shooting for Tack Shooters, reducing it from 55 to 40 frames. Using the Upgrade stacking glitch (also called "hypersonic Tack Shooter glitch"), allows to purchase this upgrade multiple times, reducing the cooldown of the tower 15 frames every time. After 4 stacks, the cooldown of the Tack Shooter would be less than 0 frames, so the tower reaches a speed cap and attacks every frame; further upgrades do not change this behavior.

Attack speed in Bloons Supermonkey 2 is implemented with a mechanic that in the mobile version, is internally named cooldown. This cooldown is the amount of time in seconds which a certain weapon or powerup will take before performing an attack. In the Flash version it is measured in frames, while in the mobile versions it is measured in seconds, and each weapon has a separate cooldown value.

While there is no way of buffing attack speed in the Flash version, in the mobile version Turbo Boost will reduce the attack cooldown of Supermonkeys by a certain multiplier. In the mobile version, it is mechanically similar with how Attack Speed is handled in Bloons TD 6, where if an attack exceeds 1 attack per frame, it will simulate multiple attacks per frame. The entire Energy arm weapon line (excluding Epics) has a fixed cooldown of 0, resulting in it attacking every frame, and cannot be buffed by attack speed.

Half Cash icon This section is incomplete. You can help out by expanding it.
The editor who added this notice elaborates: flash game stuff, such as attack speed caps

In the mobile versions, most attacks have a separate CooldownTime and FireDelayTime stat. The cooldown time determines the amount of time it takes to initiate the next attack, while the fire delay time determines the delay between when an attack is initiated and when the attack fires. The sum of these two values determines the overall attack speed of a tower. For example, the Dart Monkey has a CooldownTime of 0.7 seconds and a FireDelayTime of 0.2 seconds, giving it an overall delay between attacks of 0.9 seconds, or roughly 1.11 attacks per second. Most tower buffs that "increase attack speed" reduce both the cooldown time and fire delay time, but some, such as the Attack Speed modifier of the Monkey Lab, only reduce the cooldown time. This makes them less effective on attacks with long fire delay times, such as the Mortar Monkey's main attack.

Stack of Old Nails icon This article or section needs cleanup to improve the way it presents information and/or comply with the style guide. You can help out by editing this article.
The editor who added this notice elaborates: Needs cleanup for grammar and/or spelling

Attack speed in BTD6 is implemented with a mechanic internally named cooldown. This cooldown is the amount of time in seconds which a tower will take before executing an attack or performing certain actions such as producing spikes or spawning sub-towers. This is measured in seconds, and the upgrades modify the value of this stat to a certain number. However, if the player notices the amount of damage that a tower is dealing before and after an attack speed or buff is applied, sometimes the tower seem to be doing better than expected, and this is because on how the actual attack speed / cooldown mechanic is implemented.

For example a 0-0-0 Dart Monkey has an attack cooldown of 0.95s, this is the amount of time that will pass between shots. Upon being upgraded to 0-1-0 Quick Shots, which claims to increase the attack speed by 15%, this cooldown is reduced to 0.8075s, which is a 15% reduction of the cooldown of the 0-0-0 tower, and the 0-2-0 Very Quick Shots upgrade further reduces it to 0.6365s which is a 33% reduction of the base monkey giving the number stated in the upgrade's description.

However if the Dart Monkey is tested in a mode such as Sandbox, the upgrades will seem to be doing better than expected, with the 0-1-0 upgrade increasing the damage a little bit higher than the 15% expected increase in damage, and the 0-2-0 doing nearly 50% more damage.

To explain this difference, the first thing that should be noticed is that what most people understand as Attack Speed is a similar but not exactly same thing as the Attack Cooldown concept used in the game. Attack Speed could be defined as the number of attacks a tower performs in a certain amount of time, and Attack Cooldown as the inverse, the amount of time that the tower needs to perform an attack. This definition makes Attack Speed directly proportional to the damage (higher attack speed equals more damage) and the attack cooldown inversely proportional to the damage (lower cooldown equals more damage).

With those definitions and going back into the Dart Monkey example, the cooldown of 0.95s means the tower will throw ~63 darts per minute, with the 0-1-0 upgrade this increases to ~74 darts per minute and the 0-2-0 goes to ~94 darts per minute. The proportions of those numbers mean a ~17% and ~49% increase of the amount of darts, corresponding with the amount of damage that the tower produces.

In general if an upgrade of buff description states that the attack speed of a tower is being increased by a certain percentage, what it actually does is reducing the cooldown in that proportion by applying a multiplier, which in most situations is 1Bonus percentage . And different bonuses stack multiplicatively:

Cooldown=Base Cooldown×Multiplier1×Multiplier2×A list of all attack cooldowns available in BTD6 can be found in this page.


For example, the attack cooldown of a 0-0-0 Dart Monkey which is in the range of a 2-4-0 Monkey Village (Jungle Drums, Call to Arms) and 4-0-0 Stronger Stimulant while all temporal bonuses are active and the player has the Come On Everybody! Come On Everybody! and Veteran Monkey Training Veteran Monkey Training Monkey Knowledge is:Cooldown=0.95[s]×0.85×0.6667×0.85×0.95×0.970.4267[s]

The actual attack speed / damage increase can be calculated as follows:

Increase=(1Multipliers1)×100%

Or if the percentage indicated in the game is known:

Increase=(Bonus1Bonus)×100%

For example, for the 0-0-0 Dart Monkey described above, the total attack speed increase is:

Increase=(10.85×0.6667×0.85×0.95×0.971)×100%125.3%

And going back into the the 0-1-0 upgrade for a Dart Monkey the actual attack speed increase is:

Increase=(0.1510.15)×100%17.6%

And for the 0-2-0 upgrade:

Increase=(0.3310.33)×100%49.3%

Attack animations do not have a correlation with the visual frame rate of the game, however the internal calculation of the game engine is performed 60 times per second, because of this, when the cooldown timer expires, the attack will be performed in the next calculation frame, and if the attack cooldown does not align with these frame rate, the next attack can be performed a frame early or late to compensate. For example if a tower has a cooldown of 0.22s, its first attack would happen at frame 14 (0.2333s), then at frame 27 (0.45s), frame 40 (0.6667s), frame 53 (0.8833) and frame 66 (1.1s), doing a cycle of 14-13-13-13-13 calculation frames between attacks.

In cases of very fast cooldowns, the animations can be visually skipped or show inconsistencies, but they don't have impact on the actual attack speed. With high game lag, each visual frame will be the same than a calculation frame, representing 1/60 of a second.

When the attack cooldown is lower than 0.1s, the game engine change will start to perform the attack in the nearest calculation frame and not in the next one, this can cause a Tower to fire two projectiles on the same frame. In this case each projectile will behave like normal in terms of damage, pierce and any buff, if present. Each frame can only fire one extra attack, so a Monkey is limited to 120 attacks per second, starting two every 1/60 of a second (0.0167s). For example, if the attack cooldown of a tower is 0.01s (equivalent to 100 attacks per second), it would still only fire 60 times per second, but 40 out of those 60 attacks would launch two projectiles instead of one.

Even if the cooldown of a tower is lower than 0.00833s (equivalent to 120 attacks per second), the Tower will still be limited to 120 attacks per second, and to compensate, the damage of each projectile is increased to properly deal the correct amount of damage on average. For example if a tower has an attack that deals 2 damage and a cooldown of 0.005s (equivalent to 200 attacks / 400 damage per second), it will still attack every 1/60 of a second, launching two projectiles per attack, and each projectile damage would be increased to 3.3333 damage so it averages to 400 damage per second.

To handle fractional damage, the game rounds down the damage and the remainder is added to the next projectile. In the previous case the 3.3333 damage means that for every three projectiles that the tower launches, two will deal 3 damage and one will deal 4 so they average 3.3333 damage.

The cooldown limit of the game is 0.001s (equivalent to 1000 attacks per second) and cannot be further decreased. A tower with 2 damage per attack and this cooldown, would still only attack every 1/60 of a second with two projectiles at the same time, and each projectile would deal 16.6667 damage to have an average of 2,000 damage per second.

There are specific interactions of towers with such high cooldowns that are not intuitive due to the limit of 120 attacks per second, for example if the tower of the previous example (2 damage, 0.001s cooldown, 1 projectile per attack, 1 pierce) would attack an arbitrary large amount of Red Bloons, it would only be able to pop a maximum of 120 of them per second. If the same Tower attacks Bloons under the effect of an Embrittlement, each projectile would deal 17.6667 damage, increasing the total damage per second against a single target to only 2,120 because the +1 damage bonus is applied per projectile.

Bloons Adventure Time TD

[edit | edit source]
Half Cash icon This section is incomplete. You can help out by expanding it.
The editor who added this notice elaborates: need to figure out more on how blockingCooldown works

In Bloons Adventure Time TD, attack speed is implemented internally as cooldown and measured in seconds, much like Bloons TD 6. Some attacks have an animationSpeed variable as well which governs the lowest possible cooldown that attack can have. If this variable is not present then the lowest the cooldown can go is 1/60th of a second, or 1 frame ingame, which can be achieved with a combination with items and upgrades. All cooldowns are round up to the next frame.

On the character's stat pages, attack speed displayed is actually the inverse of cooldown from the main weapon. It is similarly mentioned as such in balance patch notes.

References

[edit | edit source]
[edit | edit source]