The Combat Controller, FSM?
Ive been reading AI Wisdom recently and in particular the article on the FPS architecture. It talks about how the behaviours of an agent are modelled using a Finite State Machine archictecture but it doesnt say how the Combat Control Layer is modelled. Does anyone know? Is it an FSM also or some other rule based system?
Brien Crean
Brien Crean
Perhaps a more descriptive explanation of what a Combat Control Layer does for those who don''t have the book might help.
-ddn
-ddn
Ok here it is paraphrased from the book :
The combat layer controls how the agent operates in combat situations, for example aiming or selecting opponents, firing, selecting tactics, when to pick up new weapons etc. Most of the actions performed by an agent are taken over by the combat layer when the agent enters a combat situation. Intelligently assessing the current situation and selecting the right tactic for that situation are the hardest things to get right when designing the agent.
After the problem of understanding how to use the environment to its advantage an agent must select a suitable tactic in order to defend from or launch an attack. There are a number of tactics to choose from for an agent and are evident in most FPS games.
In all cases below the enemy could be another agent or a human player.
Hide and Wait: This is where the agent hides from view and waits for an enemy to appear. When an enemy appears the agent selects another tactic or possibly after a specified time period has elapsed the agent might be told by its behaviour layer to search for an enemy.
Rush Attack: The agent runs toward its enemy firing until it runs past the enemy and then proceeds to attack from behind.
Strafing: The agent strafes (i.e. moves, dodges from side to side in front of the enemy) or circles around the enemy keeping a certain distance away.
Duck and Shoot: The agent ducks behind an obstacle and has an awareness of where its enemy is. The agent then pops out and shoots at its enemy and ducks in behind the obstacle once more. The obstacle is not restricted be a low down object like a crate it can be a wall or a door etc. There can be a problem with this tactic. Sometimes an agent might try and hide behind a corner of a wall of a corridor for example leaving two thirds of its body exposed. This not only looks ridiculous but it leaves an agent highly exposed and the player either laughing at the stupidity of the agent or assuming the AI of the particular game being played is no different than the rest.
Run and Ambush: The agent runs from the enemy, who sees and pursues the fleeing agent, allowing the agent to ambush the enemy.
Selecting the right tactic for the right situation is difficult. Which tactic is chosen is determined by the position of its enemies (i.e. whether there are any detectable enemies or not), and the agent’s position, health, and ammo.
Some examples:
If there are no enemies and the tactical database indicates that there is an obstacle to hide behind, the agent may likely choose the ‘hide and wait tactic’ and change tactics when it detects an enemy(Rabin, Tozour et al, 2002).
Brien Crean
The combat layer controls how the agent operates in combat situations, for example aiming or selecting opponents, firing, selecting tactics, when to pick up new weapons etc. Most of the actions performed by an agent are taken over by the combat layer when the agent enters a combat situation. Intelligently assessing the current situation and selecting the right tactic for that situation are the hardest things to get right when designing the agent.
After the problem of understanding how to use the environment to its advantage an agent must select a suitable tactic in order to defend from or launch an attack. There are a number of tactics to choose from for an agent and are evident in most FPS games.
In all cases below the enemy could be another agent or a human player.
Hide and Wait: This is where the agent hides from view and waits for an enemy to appear. When an enemy appears the agent selects another tactic or possibly after a specified time period has elapsed the agent might be told by its behaviour layer to search for an enemy.
Rush Attack: The agent runs toward its enemy firing until it runs past the enemy and then proceeds to attack from behind.
Strafing: The agent strafes (i.e. moves, dodges from side to side in front of the enemy) or circles around the enemy keeping a certain distance away.
Duck and Shoot: The agent ducks behind an obstacle and has an awareness of where its enemy is. The agent then pops out and shoots at its enemy and ducks in behind the obstacle once more. The obstacle is not restricted be a low down object like a crate it can be a wall or a door etc. There can be a problem with this tactic. Sometimes an agent might try and hide behind a corner of a wall of a corridor for example leaving two thirds of its body exposed. This not only looks ridiculous but it leaves an agent highly exposed and the player either laughing at the stupidity of the agent or assuming the AI of the particular game being played is no different than the rest.
Run and Ambush: The agent runs from the enemy, who sees and pursues the fleeing agent, allowing the agent to ambush the enemy.
Selecting the right tactic for the right situation is difficult. Which tactic is chosen is determined by the position of its enemies (i.e. whether there are any detectable enemies or not), and the agent’s position, health, and ammo.
Some examples:
If there are no enemies and the tactical database indicates that there is an obstacle to hide behind, the agent may likely choose the ‘hide and wait tactic’ and change tactics when it detects an enemy(Rabin, Tozour et al, 2002).
Brien Crean
Brien Crean
From what I know their AIs and tactics, its very likly they are scripted into the world. I''m sure thats a major component of the level design. As once you engage an AI in a FPS game, it''s either kill or be killed. There isn''t a need to give them general higher level control logic, when their life span is in the order of 10 secs. The overriding behavior they have is close and attack, once they see you. Some creatues might have specialzied weapons, which vary that behavior.
Multiplayer bots however are another beast all together. Where single player FPS AI try to simiulate the illusion of competent tactics, multiplayer bots actually have to be fun to play against and perferably in a tactical manner. I dont have any articles offhand about their AI, but again its usually a FSM and custom logic which triggers the behaviors upon some simple thresholds like health or ammo etc., and they known the level, unlike single player AIs who don''t have that need.
The level of high level control AI your talking about is usually found in more complex games like RTS or wargames. I know the Close Combat series uses such a high level contoller scheme controlling autnomous agents.
-ddn
Multiplayer bots however are another beast all together. Where single player FPS AI try to simiulate the illusion of competent tactics, multiplayer bots actually have to be fun to play against and perferably in a tactical manner. I dont have any articles offhand about their AI, but again its usually a FSM and custom logic which triggers the behaviors upon some simple thresholds like health or ammo etc., and they known the level, unlike single player AIs who don''t have that need.
The level of high level control AI your talking about is usually found in more complex games like RTS or wargames. I know the Close Combat series uses such a high level contoller scheme controlling autnomous agents.
-ddn
Thanks ddn3. I have actually being trying to find info on how the combat AI in an RTS game works too I have a lot of info on the general construction of RTS AI but not much on Combat. I am quite new to game ai so this might sound stupid but does the Combat AI in an RTS work in a similar way to that of a FPS and if so what are the differences? Thanks again
Brien Crean
Brien Crean
Brien Crean
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement