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

Difference between revisions of "Aggressive"

From ModEnc
Jump to: navigation, search
m (Reverted edits by Crimsonum (talk) to last revision by E1 Elite)
(According to E1 Elite, this bit doesn't apply in YR.)
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{Flag
 
{{Flag
 
|name={{PAGENAME}}
 
|name={{PAGENAME}}
|files={{Categ|ini=ai}}
+
|files={{Categ|ini=ai}}, {{Categ|maps}}
 
|values={{Values|boolean}}
 
|values={{Values|boolean}}
 
|types={{Categ|TeamTypes}}
 
|types={{Categ|TeamTypes}}
Line 16: Line 16:
  
 
{| cellpadding="5" class="wikitable"
 
{| cellpadding="5" class="wikitable"
!rowspan="2"|ScriptAction
+
!rowspan="2"|Script action
 
!rowspan="2"|Aggressive?
 
!rowspan="2"|Aggressive?
 
!rowspan="2"|Suicide?
 
!rowspan="2"|Suicide?
!colspan="2"|Response when...
+
!colspan="2"|Team's response when...
 
|-
 
|-
 
!...enemy in range
 
!...enemy in range
 
!...under attack
 
!...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
+
|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
 
|yes
 
|yes
|rowspan="4"|Does not initiate attack; continues its script action.
+
|rowspan="4"|Ignores the enemy; continues its script action.
 
|Does not respond to attack; continues the script action.
 
|Does not respond to attack; continues the script action.
 
|-
 
|-
 
|yes
 
|yes
 
|no
 
|no
|Responds to attack and continues the script action.
+
|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
 
|no
Line 40: Line 40:
 
|no
 
|no
 
|no
 
|no
|Responds to attack and continues the script action.
+
|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
+
|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
 
|yes
 
|yes
|Does not initiate attack; continues its script action.
+
|Ignores the enemy; continues its script action.
 
|Does not respond to attack; continues the script action.
 
|Does not respond to attack; continues the script action.
 
|-
 
|-
 
|yes
 
|yes
 
|no
 
|no
|Abandons the current script action and attacks the enemy. Once attack is over, executes the next script action.
+
|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.
|Responds to attack. If the engagement is only response or if the enemy moves out of range, continues the current script action. If the engagement turns into an attack, it abandons the current script action. Once the attack is over, 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
 
|no
 
|yes
 
|yes
|rowspan="2"|Does not initiate attack when enemy comes in range; continues its script action.
+
|Ignores the enemy; continues its script action.
|rowspan="2"|Does not respond to attack; continues the script action.
+
|Does not respond to attack; continues the script action.
 
|-
 
|-
 
|no
 
|no
 
|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
 
|rowspan="4"|<code>16</code> Patrol to waypoint
 
|yes
 
|yes
 
|yes
 
|yes
|Attacks the enemy, then resumes the script action.
+
|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.
 
|Does not respond to attack; continues the script action.
 
|-
 
|-
 
|yes
 
|yes
 
|no
 
|no
|Abandons the current script action and attacks the enemy. Once attack is over, executes the next script action.
+
|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. If the engagement is only response or if the enemy moves out of range, continues the current script action. If the engagement turns into an attack, it abandons the current script action. Once the attack is over, executes the next script action.
+
|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
 
|no
 
|yes
 
|yes
|Attacks the enemy, then resumes the script action.
+
|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.
 
|Does not respond to attack; continues the script action.
 
|-
 
|-
 
|no
 
|no
 
|no
 
|no
|Attacks the enemy while moving to given waypoint.
+
|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.
|Moves back to retaliate. Attacks if in range, otherwise ignores the enemy. Continues the 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.}}
 +
 +
{{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 14: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.

Cc alert.png 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.