Aggression

From Arknights Terra Wiki
Jump to navigation Jump to search
When in range, enemies will prioritze attacking the most recently deployed Operators.
—Loading screen tip

This article explains about the aggression mechanic, also known as aggro or taunt, in Arknights.

Overview

As explained in TR-10, enemies will, by default, attack the last deployed friendly unit within their range first. However, the mechanics behind the aggression system are more complicated.

Basics

A friendly unit will search for valid targets within their attack range every 3 frames, or 10 times per second, which is termed as a "search cycle." Once the search cycle is concluded, the unit checks if it is allowed to use its attack, defined by the attack timer. Each unit has their own, separate search cycles and attack timers; it is thus possible for at least two friendlies to not attack an enemy at the same time when one enters their range.

Most Operators use a "lock-on" targeting system wherein they will lock onto the target the moment their attack timer allows them to, and will complete the attack animation and hit their target, even if the target leaves the effective range of the operator within the timespan of the animation. It is easily observed under Platinum's Pegasian Sight, as her attack animation is lengthened. There are exceptions to this rule, notably Ambusher Specialists that do not hit targets that were not in range upon starting the skill and are no longer in range when the animation concludes, and Ifrit's Pyroclasm, which only hits targets in range when the animation concludes.

In general, how units would prioritize targeting certain units over the others is determined in the following order:

Friendly Blocked unit[note 1] > Special Priority > Highest positive aggression > Closest to destination[note 2] > Highest negative aggression
Enemy Blocking unit > Special Priority > Highest positive aggression > Last deployed > Highest negative aggression
  • The only exception to friendly targeting is ranged units who never prioritize enemies they are blocking, which can be observed in operations that allow deployment of ranged operators on ground tiles (e.g. CE-5). They otherwise follow all the other priorities in the same order.
  • If the enemy's pathing is convoluted, friendly units' targeting will be based on the length of the enemy's path remaining. For example, an enemy may be near a Protection Objective, but if they make several laps or take longer to get there, they will not be prioritized. This is best observed with the Defense Crushers in Lungmen Downtown.
  • Special Priorities are often very inconsistent, and are difficult to document effectively. Most of the time positive aggression levels will override them, but certain Special Priorities override positive aggression levels (like those given by talents or traits).
  • Targeting an enemy doesn't mean that the enemy is in range. This is best observed with Cutter's Redshift skill, which is unable to target enemies she is blocking from behind, as they are not actually in her range, despite the fact that she can attack them normally.

Special Priority

OperatorSourceDescription
Arene
Structural Decomposition

Arene prioritizes Drones.

Absinthe
Enforcement Mode

Absinthe prioritizes enemies with the lowest HP percentage.

Adnachiel
Shortcoming Breakthrough

Adnachiel prioritizes enemies with a ranged attack.

Blacknight

The Slumberfoot prioritizes Sleeping enemies (which it could attack).

Blemishine
Mercy

Blemishine prioritize Sleeping enemies (which she could attack). This can override all other aggression logic, ignoring even the enemies she is blocking to attack Sleeping enemies first.

Blitz
Shielded Shooting

Blitz prioritizes Stunned enemies.

Ceobe
Skill-Ceobe1.png
"Really Cold Axe"

The attack that triggers Really Cold Axe prioritizes unblocked enemies.

Skill-Ceobe2.png
"Really Hot Knives"

Ceobe prioritizes enemies with the highest DEF while active.

Skill-Ceobe3.png
"Really Heavy Spear"

Ceobe prioritizes enemies with the lowest DEF while active.

Ela
Skill-Ela3.png
"The Bosak Tempest"

Ela prioritizes enemies affected by Grzmot Mines while active.

Erato
Skill-Erato2.png
Heroes' Paean

Erato prioritizes Sleeping enemies (which she could attack) while active.

Gladiia
Skill-Gladiia2.png
Waterless Grasp of the Raging Seas

Gladiia prioritizes blocked enemies while active.

Glaucus
Countermeasure Device

Glaucus prioritizes Drones.

Gnosis
Skill-Gnosis3.png
Hypothermia

Gnosis prioritizes enemies that are not Frozen while active.

Insider
Skill-Insider2.png
"Problem Solver"

Insider prioritizes enemies with a ranged attack while active.

Ray
Patrol Partner

Ray prioritizes enemies within her Sandbeast's range.

Sand Reckoner
Skill-SandReckoner2.png
Weighing the Scales

Sand Reckoner and his Clockwork Fowlbeasts prioritize enemies with the highest weight while active.

Toddifons
Skill-Toddifons1.png
Signal Arrow

Signal Arrow prioritizes Sarkaz enemies with the highest weight.

Viviana
Skill-Viviana3.png
"Flicker"

Viviana prioritizes elite and boss enemies while active.

EnemyDescription
Marksman
Elite Marksman
Fanatic
Desperate Fanatic

Prioritizes Command Terminals.

Mudrock Matterllurgist
Mudrock Matterllurgist Leader

Prioritizes friendly units in the Protocol Entries of an L-44 "Gramophone".

Sniper Prisoner
Elite Sniper Prisoner
Caster Prisoner
Deadly Caster Prisoner

Prioritizes Imprisonment Devices.

Ursus Assault Crossbowman
Elite Ursus Assault Crossbowman
Ursus Armored Caster
Elite Ursus Armored Caster
Imperial Artillery Targeteer
Imperial Artillery Core Targeteer
Imperial Striker
Elite Imperial Striker

Prioritizes allied units.

"Stabby"
Flanking "Stabby"

Prioritizes friendly units with an opposing Hui and Ming attribute.

Primal Sea Piercer
Nourished Piercer

Prioritizes friendly units with the lowest HP percentage.

Sal Viento Bishop Quintus

Prioritizes friendly units with the highest DEF.

Icefield Hunter
Icefield Hunter Leader

Prioritizes friendly units with the lowest DEF.

Pathfinder Veles
Pathfinder Veles Prefect

Prioritizes friendly "Gelato Stops".

Andoain, the "Martyr"

His ranged attacks while having ammo prioritizes ricocheting toward "Gelato Stops".

"Anything Can Be Broken"
"Everything Should Be Smashed"

Prioritizes Constructs.

Vesperwing
Startled Vesperwing
Wasteland Robber
Elite Wasteland Robber

Prioritizes Holy Statues.

Dolly, "Sovereign of Sheep"

Prioritizes friendly units on low ground tiles in the Airy Dolly form.

Harold Craigavon
Delegation Centurion
Delegation Centurion Champion

Prioritizes friendly units to the right of an Emergency Heater.

Toxocellular Drifter
Allotropic Drifter

Prioritizes friendly units on high ground tiles.

Aggression level

Normally units have an "aggression level" of 0, but certain units can influence this in two ways.

Positive

Units with an aggression level of 1 or 2 are "more likely to be targeted by attacks". Abilities that "increase the likelihood of being targeted by attacks" also has the same effect.

OperatorSourceDescription
Ascalon
Skill-Ascalon3.png
Descent

Increases aggression level by 2 (from -1, for a final aggression level of 1) while active.

Bison
Skill-Bison1.png
Intensified Defense

Increases aggression level by 1 while active.

Bubble
Skill-Bubble1.png
"Beaten Up"

Increases aggression level by 1 while active.

Czerny
Skill-Czerny2.png
Meisterwerk

Increases aggression level by 1 while active.

Jessica the Liberated

The Mobile Riot Shield has an aggression level of 1.

Kirin R Yato
Skill-KirinRYato2.png
Blade Dance

Increases aggression level by 1 while active.

Lee
Skill-Lee3.png
Honored Guest

Increases aggression level by 1 while active.

Młynar
Unmoved

Increases aggression level by 1.

Nightingale

The Mirage has an aggression level of 1.

Penance
Skill-Penance3.png
Trial of Thorns

Increases aggression level by 1 while active.

Vendela
Skill-Vendela2.png
Umbrage of Thorns

Increases the target Operator's aggression level by 1 while active.

EnemyDescription
Introspection
Scantwords
Competition Transport Vessel
Aged Mead
Dublinn Companion Guard
Dublinn Elite Companion Guard
Scum
Accursed Scum
Hymnoi Warrior
Remnant Orchestra Cellist
Witch King's Orchestra Cellist
Siracusan Civilian
Vein Guardian
Maddened Vein Guardian
Exocellular Depositor
Guerrilla Shieldguard
Guerrilla Shieldguard Leader
"Lazy"
Unmoving "Lazy"

Increases aggression level by 1.

"Bejeweled Slab Defender"
"Bejeweled Slab Guardian"
Patriot
Sarkaz Boneguard
Sarkaz Boneguard Captain

Increases aggression level by 2.

Dame Gertrude

Dame Gertrude's Virtual Images have an aggression level of 1.

"The Leader"

Exhausted Flames spawned through Sovereign have an aggression level of 1.

Sarkaz Absurdist Splitcaster Apprentice
Sarkaz Absurdist Splitcaster

Their respective Virtual Images have an aggression level of 1.

Herkunftshorn, "Witch King"

Marks of Insipidity spawned through Punishment of Insipidity have an aggression level of 1.

"Count Grimscore"

Increases aggression level by 1 while Mourning Fugue is active.

Negative

Units with an aggression level of -1 or -2 are "less likely to be targeted," which effectively displaces enemy aggression towards the next other valid target in range, unless there are none.

OperatorSourceDescription
Carnelian
Poised for Action
(PLX-Y Stage 2+)

Reduces aggression level by 1 if the skill is Overcharged.

"Justice Knight"
Justice Drive

Reduces the aggression level of ranged friendly units within attack range by 1 for 10/12/14/16/18/20 seconds after deployment.

Lin
Skill-Lin2.png
Shelter

Reduces aggression level by 1 while active.

Mint
Geologist

At Elite 2, reduces aggression level by 1 while the skill is active.

Stainless

Prototypes of Feist's Metal Crab have an aggression level of -2.

U-Official
Short-Circuiting Genius

Reduces aggression level by 1.

W
Ambush

Reduces aggression level by 1 once activated 10 seconds (ART-Y Stage 3: 8 seconds) after deployment.

EnemyDescription
Tiacauh Brave
Tiacauh Champion

Reduces aggression level by 1 while blocked.

"Redmark" Infiltrator
"Redmark" Elite Infiltrator

Reduces aggression level by 1 while their respective Holographic Mirage (MK2) is present.

"Boy Wonder" Sandel
Scrap
Scrap Model-U
Anvil
Anvil Model-B
"The Ruinbringer"

Reduces aggression level by 1.

Blood Amber

Reduces aggression level by 2.

Sky Pole - Yi
Out of Control Sky Pole - Yi

Reduces aggression level by 1 while attacking.

Advanced

On a more specific note, the game uses the two mechanics to decide how friendly units prioritize targeting enemies: postFilter and secondaryFilter which is used on the following formulae to calculate the aggression:

  • Friendly: a = 1000 × (t + s)
  • Enemy: a = 1000 × (t − d)

Where:

  • a is the final aggression value.
  • t is the target's taunt level.
  • s is how long the target had been deployed (in seconds).
  • d is how far the target is to the end of their path.

The time of deployment cannot be higher than 10000. It also has the accuracy of 0.1 sec. Since Arknights run on 30 frames, it means that the Operators deployed within 3 frames of a single term is considered as deployed simutanously. However, since the sorting algorithm used will not change the order of object with the same value, their order will remain as their reversed order of entity creation. For most of the time it is the order of deployment.

The initial aggro is then put into postFilters to generate the final aggro. If there is any secondaryFilters, it will sort the enemies into a list of groups. Within the groups each enemy is sorted decreasingly according their aggro. The enemy on top of the list will be selected as the target.

postFilter

postFilter are a set of formulas used to determine the "value" of enemies.

Value Name and description/algorithm Example(s)
0 ALL
The default value of all targets.
Splash Casters
1 DIST_TO_EXIT_ASC
Pick the target(s) with the shortest distance to their destination (the distance towards the end of the route).
2 HP_RATIO_ASC
Pick the target(s) with the lowest HP percentage (HP percentage overrides aggro).
Absinthe's Skill-Absinthe1.png Enforcement Mode
3 HP_RATIO_NOT_FULL_ASC
Pick the target(s) with the lowest HP percentage, but never those with full HP (HP percentage overrides aggro).
Medics
4 HATRED_DES
Pick the target(s) with the highest value (the reversed number of aggro).
Normal
5 HP_RATIO_NOT_FULL
Only pick target(s) whose HP are not full.
6 HATRED_DES_FLY_FIRST
Pick aerial target(s) with the highest value (non-aerial targets' aggro +1000000).
Adnachiel with the improved Shortcoming Breakthrough
7 HATRED_DES_RANGED_FIRST
Pick target(s) with a ranged attack and the highest value (non-ranged targets' aggro +1000000).
Adnachiel with the improved Shortcoming Breakthrough
8 DEF_DESC
Pick target(s) with the highest DEF (increases aggro by DEF * 1000)
Steward with Armor Break, Ceobe's Skill-Ceobe2.png "Really Hot Knives"
9 DEF_ASC
Pick target(s) with the lowest DEF (decreases aggro by DEF * 1000)
Deadeye Snipers
10 DIST_TO_SOURCE_DES
Pick the furthest target(s) from the source (changes aggro to the square of the target' distance).
Hookmaster Specialists' skills
11 DIST_TO_SOURCE_ASC
Pick the closest target(s) to the source (changes aggro to the square of the target' distance).
Push Stroker Specialists' skills
12 NOT_STUNNED_HATRED_DES
Pick the target(s) that are not Stunned with the highest value.
Sarkaz Casters
13 DIRECTIONAL_DIST_TO_SOURCE_ASC
Pick the target(s) whose facing is closer to the source.
FEater's Skill-FEater2.png Destructive Fist
14 RANDOM
Pick random target(s).
Cutter's Skill-Cutter1.png Redshift, Irene's Skill-Irene3.png Judgment (Irene)
15 HP_DES
Pick the target(s) with the highest HP.
W's Skill-W3.png D12, Passenger's Skill-Passenger3.png Glorious Shards
16 HP_ASC
Pick the target(s) with the lowest HP.
17 ATK_DES
Pick the target(s) with the highest ATK.
18 ATK_ASC
Pick the target(s) with the lowest ATK.
19 MAX_HP_DES
Pick the target(s) with the highest maximum HP.
Rat King's 'Singing Sands'
20 MAX_HP_ASC
Pick the target(s) with the lowest maximum HP.
Rat King's 'Sand Tomb'
21 FORWARD_FIRST_MANHATTAN_ASC
Pick the target(s) that are right in front of the source. If there is no targets in front of the source, choose the nearest instead.
Aak's Skill-Aak2.png Type-γ Stimpack and Skill-Aak3.png Durian-Flavored Stimpack
22 HATRED_DES_UNBLOCKED_FIRST
Pick the target(s) that are not blocked with the highest value.
Ceobe's Skill-Ceobe1.png "Really Cold Axe"
23 HP_NOT_FULL_RANDOM
Pick random target(s), but never those with full HP.
Purestream's Skill-Purestream1.png Healing Waves
24 HATRED_DES_INVISIBLE_FIRST
Pick the target(s) that are invisible/camouflaged with the highest value.
Elysium's Skill-Elysium1.png Monitor
25 HATRED_DES_DIST_FARTHER_FIRST
Pick the furthest target(s) from the source with the highest value.
Patriot's spear throw in Ruination stance
26 HATRED_DES_DIST_NEARER_FIRST
Pick the closest target(s) to the source with the highest value.
27 MASS_DES
Pick the target(s) with the highest weight.
Besieger Snipers
28 MASS_ASC
Pick the target(s) with the lowest weight.
29 HATRED_DES_SLEEPING_FIRST
Pick Sleeping target(s) first.
Blemishine with her talent, Blacknight's Slumberfoot
30 HP_RATIO_ASC_CONTAINS_STATUS_RESISTABLE_BUFF_FIRST
Pick the target(s) with the lowest HP percentage and without Status Resistance.

secondaryFilter

secondaryFilter are three rules used to sort the values given by postFilter:

FLY_FIRST = 0 Prioritizes flying/aerial targets (e.g. Monsters and Bombtails).
RANGED_APPLYWAY_FIRST = 1 Prioritizes enemies with a ranged attack.
SPECIFIED_FILTER_TAG = 2 Prioritizes enemies of a certain type (e.g. Drones and Infected Creatures)
SPECIFIED_BUFF = 3 Prioritizes enemies with a certain buff.

Examples

  1. If a Yeti Operative and a Guerrilla Shieldguard is within Platinum's range and the former is closer to the Protection Objective, she will attack the Shieldguard instead of the Operative due to the Shieldguard's aggression level of 2 which overrides her priority to attack the closest enemy to the Objective. Conversely, if an Oneiros is present instead of the Yeti Operative, Platinum will attack the Oneiros instead of the Shieldguard since her Marksman Sniper's trait which makes Platinum prioritize attacking aerial units override the Shieldguard's aggression level.
  2. If the Rat King is within the reach of Bison with Skill-Bison1.png Intensified Defense who were deployed before Mostima, the Rat King will attack Mostima since she is the most recently deployed friendly unit. However, if Bison uses Intensified Defense, the Rat King will attack him instead of Mostima since the skill increases Bison's aggression level which overrides the deployment order priority.
    • The same also works by deploying Waai Fu right on the Rat King; Waai Fu will block the Rat King, who attacks her instead of Mostima since the blocking unit overrides positive aggression levels and deployment order.
  3. If Nightingale deploys a Mirage (through her second talent Fleeting Phantom) before a Marksman who is attacking a Command Terminal, the Marksman will attack the Mirage instead of the Command Terminal since it has an aggression level of 1, overriding their usual targeting priorities.
  4. If Manticore is deployed after Cuora and a Spec Ops Caster is within their reach, the Caster will attack Cuora instead of Manticore due to the latter's aggression level of -1 which overrides the Caster's targeting priority. If Cuora is outside the Caster's reach but Manticore is inside however, they will attack her as usual.
  5. In 7-13, the main challenge of the stage is to effectively deal with Guerrilla Heralds, who are escorted by Guerrilla Shieldguards. While the Shieldguards will move towards a deployable ground tile, the Herald does not, and thus cannot be blocked. Usually, the easiest way to deal with the situation would be to either dispose of either enemy in advance, or to use splash damage to hit both, as the Shieldguard will taunt away single-target damage and protect the Herald. However, it is possible to utilize the special priority of Deadeye Snipers who prioritize low DEF enemies to ignore the taunt, since Heralds have lower DEF than Shieldguards.
  6. It is possible to use DEF debuffs in conjunction with operators who have targeting priority affected by DEF, as lowering the DEF of an enemy below another's will change their priority, and this priority rule is dynamically adjusted based on the current DEF of enemies. In this video, for instance, Meteor is used to force Ambriel to switch targets.

Special cases

  1. Ch'en's Skill-Ch'en3.png Chi Xiao - Shadowless and Guard Amiya's Skill-GuardAmiya2.png Ying Xiao - Shadowless prioritizes the enemy closest to the user over the others.
  2. Pull Specialists prioritize the furthest enemy from them with their skills.
  3. Aak's Stimpack skills prioritize the following units in the specified order:
    • The friendly unit within the frontal column inside his range, prioritizing the closest unit to him.
      • This can be overridden by positive/negative aggression level if multiple friendly units are within the frontal column.
    • If no units are present in the frontal column, then Aak will target the closest unit in the side columns. This rule cannot be overridden by positive/negative aggression level.
      • If there are only two units within the same distance on the rightmost and leftmost column, Aak will prioritize units using the standard rule, that is to say, the latest deployed first. This rule can be overridden by positive/negative aggression level.
    • For the math behind how his targeting actually functions, see this reddit post.
  4. Pepe's Skill-Pepe2.png Whirling Hammer Defense causes her to attack random enemies within her attack range which can override aggression logic. The same also goes for Fiammetta's Skill-Fiammetta3.png "Reponite" which forces her to attack a specific position.
  5. Patriot's halberd throw attack in his Ruination stance prioritizes the ranged friendly unit who are the furthest from him over the others. This attack will always follow this rule.
  6. If multiple targets with positive aggression levels are within the range of a unit, the attacker will follow the distance/deployment priority when targeting them, but the targets' positive aggression level will override the attacker's normal priority regardless.
  7. Ranged friendly units will never prioritize the enemies they are blocking (such as in Cargo Escort operations), even if the enemy is blocked when they are right behind the friendly.
  8. Invisible Operators can only be attacked by the unit they are blocking/that blocks them, while Camouflaged Operators can be targeted by any enemies as long as they're blocking enemies.
  9. Friendly units who are unable to block enemies (whether due to skill effects or from having a block count of 0) will never be attacked by melee enemies; the enemy will simply move past the friendly. They can still be attacked by ranged enemies, however.

Notes

  1. If multiple enemies are blocked by the same friendly unit, the one that got blocked first is prioritized.
  2. The end of the enemy's path, which also includes Protection Objectives and Incursion Points for despawning enemies.

External links