CTFSquadAI
CTFSquadAI contains all of the AI code for Capture the Flag. CheckSquadObjectives is where most of the action is.
Properties
- LastSeeFlagCarrier
- The last time the enemy flag carrier was seen by a squad member
- FriendlyFlag
- The team's CTFFlag.
- EnemyFlag
- The enemy team's flag.
- ReturnPath
- The next AssaultPath on the way back to base for the flag carrier.
- ReturnPathTag
- The tag of the path that the flag carrier is following.
Methods
- AssignCombo
- Doesn't do combos while the squad is attacking.
- AllowDetourTo
- Allows the flag carrier to detour only in certain circumstances, such as if the home flag needs to be recovered.
- FindPathToObjective
- This is where ReturnPath is used.
- AllowTranslocationBy
- Doesn't let bots with flags translocate.
- GoPickupFlag
- Tells a bot to go touch and return the team's flag.
- FormationCenter
- Either the SquadObjective (the enemy flag base), the enemy flag carrier, or the squad leader, in that order.
- OrdersForFlagCarrier
- Separates out the flag carrier logic from CheckSquadObjectives.
- MustKeepEnemy
- Don't give up on the enemy flag carrier.
- NearEnemyBase
- In the same zone as the enemy flag (if the flags are in different zones), or use BotNearObjective (from GameObjective).
- NearHomeBase
- Essentially the opposite of NearEnemyBase.
- FlagNearBase
- Is the flag reasonably close to its base?
- CheckSquadObjectives
- The main AI decision-making function.
- EnemyFlagTakenBy
- A squad member has picked up the enemy flag. Called by CTFFlag.SetHolder.
- AllowTaunt
- Don't taunt if you're carrying a flag or if your team's flag is out.
- ShouldDeferTo
- Always defer to the flag carrier.
- PriorityObjective
- Depends on whethere the bot is carrying a flag, whether it's close to scoring, and if the team's flag is out.
- ModifyThreat
- Threat level is higher near the enemy flag base.
Related Topics
- CTFGame
- CTFTeamAI?
- CTFFlag
- Gametype
- Artificial Intelligence