ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Aggressive: Difference between revisions

From ModEnc
Jump to navigation Jump to search
E1 Elite (talk | contribs)
Created page with "Aggressive entry in TeamTypes pertains to initiating an attack when a threat posing enemy comes in range. Suicide entry in TeamTypes pertains to response to an attack. These c..."
 
Crimsonum (talk | contribs)
According to E1 Elite, this bit doesn't apply in YR.
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Aggressive entry in TeamTypes pertains to initiating an attack when a threat posing enemy comes in range. Suicide entry in TeamTypes pertains to response to an attack. These can be set to yes/no. Depending on the current script action being executed and the combination of these two entries, the behavior differs. For some script actions, these two flags don't have any relevance. Variation are seen in the script actions where movement is involved. Typically, attack script actions are not affected by Aggressive entry and does not initiate attack while on the move to its target when the threat posing enemy comes in range. In move script actions, Aggressive=yes favors attacking when the threat posing enemy comes in range which results in the team loosing its current script action and when the team resumes it executes the next script action in its script. Suicide=yes tries to suppress the retaliation when attacked in favor of completing the current script action.  
{{Flag
|name={{PAGENAME}}
|files={{Categ|ini=ai}}, {{Categ|maps}}
|values={{Values|boolean}}
|types={{Categ|TeamTypes}}
|ts=yes
|fs=yes
|hp=yes
|ra2=yes
|yr=yes
|ares=yes
}}
{{f|Aggressive|link}} entry in [[TeamTypes]] pertains to initiating an attack when a threat posing enemy comes in range. {{f|Suicide|link}} entry in TeamTypes pertains to response to an attack. These can be set to yes/no. Depending on the current [[ScriptTypes/ScriptActions|script action]] being executed and the combination of these two entries, the behavior differs. For some script actions, these two flags don't have any relevance. Variation are seen in the script actions where movement is involved. Typically, attack script actions are not affected by {{f|Aggressive}} entry and the team does not initiate attack while on the move to its target when the threat-posing enemy comes in range. In move script actions, {{f|Aggressive|yes}} favors attacking when the threat-posing enemy comes in range which results in the team losing its current script action, and when the team resumes it executes the next script action in its script. {{f|Suicide|yes}} tries to suppress the retaliation when attacked in favor of completing the current script action.


Movement related script action cases:
=== Movement-related script action cases ===


Attack script actions (0,n), Attack waypoint (1,n), Attack enemy structure (46,StructureNumber) and Attack structure at waypoint (59,n) - On Aggressive=yes/no, won't initiate attack when enemy comes in range and continues its script action. If Suicide=no, it will respond to attack and continue the script action. If Suicide=yes, it will not respond to attack and continue the script action.
{| cellpadding="5" class="wikitable"
!rowspan="2"|Script action
!rowspan="2"|Aggressive?
!rowspan="2"|Suicide?
!colspan="2"|Team's response when...
|-
!...enemy in range
!...under attack
|-
|rowspan="4"|<code>0</code> Attack target type<br/><code>1</code> Attack waypoint<br/><code>46</code> Attack enemy structure<br/><code>59</code> Attack structure at waypoint
|yes
|yes
|rowspan="4"|Ignores the enemy; continues its script action.
|Does not respond to attack; continues the script action.
|-
|yes
|no
|Attacks and pursues the enemy; once the attack is over, either because the enemy was destroyed, cloaked, etc., the team continues the script action.
|-
|no
|yes
|Does not respond to attack; continues the script action.
|-
|no
|no
|Attacks and pursues the enemy; once the attack is over, continues the script action.
|-
|rowspan="4"|<code>3</code> Move to waypoint<br/><code>47</code> Move to enemy structure<br/><code>53</code> Gather at enemy base
|yes
|yes
|Ignores the enemy; continues its script action.
|Does not respond to attack; continues the script action.
|-
|yes
|no
|Fires at the enemy while moving to given waypoint.{{fnl|1}}<p>Once all team members have engaged the enemy, the team will abandon the current script action and focus on the attack. In {{ts}}, the team will also skip any subsequent movement actions, and execute other subsequent, applicable script actions (like flash, talk bubble, etc.) while attacking.</p>Once the attack is over, the team executes the next script action.
|Attacks and pursues the enemy.<p>Once all team members have engaged the enemy, the team will abandon the current script action and focus on the attack. In {{ts}}, the team will also skip any subsequent movement actions, and execute other subsequent, applicable script actions (like flash, talk bubble, etc.) while attacking.</p>Once the attack is over, the team executes the next script action.
|-
|no
|yes
|Ignores the enemy; continues its script action.
|Does not respond to attack; continues the script action.
|-
|no
|no
|Fires at the enemy while moving to given waypoint.{{fnl|1}}
|Fires at the enemy while moving to its location. If the enemy moves away, the team follows and attacks it persisently until it's destroyed. If the team reaches the enemy, the team abandons its current script action and executes the next script action. If the enemy is destroyed before the team reaches it, the team continues its current script action.
|-
|rowspan="4"|<code>16</code> Patrol to waypoint
|yes
|yes
|Attacks the enemy{{fnl|1}}. Once the enemy is destroyed or moves out of range, the team resumes the script action.
|Does not respond to attack; continues the script action.
|-
|yes
|no
|Attacks the enemy{{fnl|1}}. Once the enemy is destroyed or moves out of range, the team resumes the script action.<p>However, in some circumstances the team may abandon the current script action and execute the next script action once the attack is over. What triggers the team to abandon the current script action seems inconsistent and dependent on a number of factors, such as the position of the team members relative to the target waypoint, whether there are multiple enemies detected in sequence, whether the team has any units with turrets, etc.</p>
|Responds to attack and pursues the enemy. Once all members of the team have fired at the enemy, if the enemy disengages and moves out of range, the team continues the current script action. If the enemy persists in attacking, the team abandons the current script action, and executes the next script action once the attack is over.
|-
|no
|yes
|rowspan="2"|Attacks the enemy{{fnl|1}}. Once the enemy is destroyed or moves out of range, the team resumes the script action.
|Does not respond to attack; continues the script action.
|-
|no
|no
|Responds to attack. As long as the enemy attack persists, the team pursues the enemy. If the enemy disengages and moves out of range, the team ignores the enemy and continues the script action.
|}


Move to waypoint (3,n), Move to enemy structure (47,StructureNumber) and Gather at enemy base (53,0) - On Aggressive=yes with Suicide=no, attacks the enemy but looses its current script action. After the attack is over, the units will execute the next script action in its script. On Aggressive=yes with Suicide=yes or Aggressive=no with Suicide=yes/no, does not initiate attack when enemy comes in range, does not respond to attack and continues with its script action.
==== Footnotes ====
{{fn|1|Units with no [[turret]] will only attack enemies that are right in front of them. Otherwise they will simply move past the enemy.}}


Patrol to waypoint (16,n) - On Aggressive=yes with Suicide=no, attacks the enemy but looses its current script action. While retaliating, if enemy goes out of range, it is able to continue its current script action otherwise its retaliation becomes attack and it looses its current script action. After the attack is over, the units will execute the next script action in its script. On Aggressive=yes/no with Suicide=yes, initiates attack on the enemy that comes in range and continue the script action but does not retaliate. On Aggressive=no with Suicide=no, the team will attack the enemy and also continue to move towards the given waypoint. When attacked, it comes back for retaliation but if in range it will attack and continue its script action otherwise it will ignore and continue to move towards its waypoint.
{{Bugs}}
Setting this on a team with armed transports can cause the game to break down. See [[Build Anywhere Bug]] for more information.


[[Category:INI Flags]]
[[Category:INI Flags]]

Latest revision as of 12:48, 24 May 2024

Tiberian Dawn The Covert Operations Red Alert Counterstrike Aftermath Tiberian Sun Firestorm HyperPatch Red Alert 2 Yuri's Revenge Ares Generals Zero Hour Tiberium Wars Kane's Wrath
Flag: Aggressive
File(s): ai(md).ini, maps
Values: Boolean values: yes or no, true or false, 1 or 0
Applicable to: TeamTypes


Aggressive entry in TeamTypes pertains to initiating an attack when a threat posing enemy comes in range. Suicide entry in TeamTypes pertains to response to an attack. These can be set to yes/no. Depending on the current script action being executed and the combination of these two entries, the behavior differs. For some script actions, these two flags don't have any relevance. Variation are seen in the script actions where movement is involved. Typically, attack script actions are not affected by Aggressive entry and the team does not initiate attack while on the move to its target when the threat-posing enemy comes in range. In move script actions, Aggressive=yes favors attacking when the threat-posing enemy comes in range which results in the team losing its current script action, and when the team resumes it executes the next script action in its script. Suicide=yes tries to suppress the retaliation when attacked in favor of completing the current script action.

Movement-related script action cases

Script action Aggressive? Suicide? Team's response when...
...enemy in range ...under attack
0 Attack target type
1 Attack waypoint
46 Attack enemy structure
59 Attack structure at waypoint
yes yes Ignores the enemy; continues its script action. Does not respond to attack; continues the script action.
yes no Attacks and pursues the enemy; once the attack is over, either because the enemy was destroyed, cloaked, etc., the team continues the script action.
no yes Does not respond to attack; continues the script action.
no no Attacks and pursues the enemy; once the attack is over, continues the script action.
3 Move to waypoint
47 Move to enemy structure
53 Gather at enemy base
yes yes Ignores the enemy; continues its script action. Does not respond to attack; continues the script action.
yes no Fires at the enemy while moving to given waypoint.1

Once all team members have engaged the enemy, the team will abandon the current script action and focus on the attack. In Tiberian Sun, the team will also skip any subsequent movement actions, and execute other subsequent, applicable script actions (like flash, talk bubble, etc.) while attacking.

Once the attack is over, the team executes the next script action.
Attacks and pursues the enemy.

Once all team members have engaged the enemy, the team will abandon the current script action and focus on the attack. In Tiberian Sun, the team will also skip any subsequent movement actions, and execute other subsequent, applicable script actions (like flash, talk bubble, etc.) while attacking.

Once the attack is over, the team executes the next script action.
no yes Ignores the enemy; continues its script action. Does not respond to attack; continues the script action.
no no Fires at the enemy while moving to given waypoint.1 Fires at the enemy while moving to its location. If the enemy moves away, the team follows and attacks it persisently until it's destroyed. If the team reaches the enemy, the team abandons its current script action and executes the next script action. If the enemy is destroyed before the team reaches it, the team continues its current script action.
16 Patrol to waypoint yes yes Attacks the enemy1. Once the enemy is destroyed or moves out of range, the team resumes the script action. Does not respond to attack; continues the script action.
yes no Attacks the enemy1. Once the enemy is destroyed or moves out of range, the team resumes the script action.

However, in some circumstances the team may abandon the current script action and execute the next script action once the attack is over. What triggers the team to abandon the current script action seems inconsistent and dependent on a number of factors, such as the position of the team members relative to the target waypoint, whether there are multiple enemies detected in sequence, whether the team has any units with turrets, etc.

Responds to attack and pursues the enemy. Once all members of the team have fired at the enemy, if the enemy disengages and moves out of range, the team continues the current script action. If the enemy persists in attacking, the team abandons the current script action, and executes the next script action once the attack is over.
no yes Attacks the enemy1. Once the enemy is destroyed or moves out of range, the team resumes the script action. Does not respond to attack; continues the script action.
no no Responds to attack. As long as the enemy attack persists, the team pursues the enemy. If the enemy disengages and moves out of range, the team ignores the enemy and continues the script action.

Footnotes

1 Units with no turret will only attack enemies that are right in front of them. Otherwise they will simply move past the enemy.

Bugs/Side-Effects/Unexpected Limitations

Setting this on a team with armed transports can cause the game to break down. See Build Anywhere Bug for more information.