Action / First-Person Shooters
The Making of the Official Counter-Strike Bot
Abstract: This lecture addresses the technical and design issues critical to the success of the official Counter- Strike bot, the most advanced FPS tactical multiplayer AI to date. The official Counter-Strike bot has received an enthusiastic reception from both newbies and veterans of the Counter-Strike community, largely due to the fact that it plays the game in a very believable, human-like fashion. The bots put on a "performance" that results in players feeling they are fighting against (and with) "worthwhile" opponents. Achieving this level of suspension of disbelief requires more than technical AI coding ability. It requires a thorough understanding of the game, insight into human limitations such as reaction times and attention prioritization, and a holistic sense of how to create a fun and believable "performance" from these disparate parts.
True Crime: Streets of L.A.-Bringing Crime to the City of Angels
Abstract: In the recently released game, True Crime: Streets of L.A., we created a 240 square mile city that players could explore from end to end. We then had to fill it with citizens and not a small amount of criminal activity. This session discusses the techniques we used and the problems we encountered in bringing the city to life. We needed to create a character system that would seamlessly blend innocent character behaviors with a complete fighting and shooting techniques. The design also relied heavily on both scripted and emergent behavior as a core part of gameplay both out in the city and in the interior set pieces. Showing the action also depended on the interaction of a variety of camera models. Key topics in the session will be character animation and behavioral AI, interaction between kinematic objects and the physics system, real-time cinematography, and collision detection and testing.
A Subsumption Architecture For Character-Based Games
Topics: Architecture; Genres: Action
Abstract: The Subsumption Architecture was invented in 1986 by Rodney Brooks to give robust real-world behavior to robots. The technique works equally well for the "virtual robots" of the video game world. It cleanly decomposes the implementation of an AI driven character into concurrently executing layers of finite state machines (FSMs). Lower layers take care of immediate goals; upper layers take care of long-term goals. The architecture solves three major problems with character AI: minor setbacks causing a character to lose focus on a long term goal, characters getting stuck on a goal that is no longer relevant, and robust handling of animation and character physics.
Using a Spatial Database for Runtime Spatial Analysis
Topics: Architecture; Genres: FPS
Abstract: AI developers have employed a number of different techniques for performing spatial reasoning about a game world using precomputed "hints" placed by level designers or automated game-world analysis tools. However, as game worlds increasingly feature larger numbers of AI characters and moveable physically-modeled objects, it becomes increasingly important to model the ways that the dynamic aspects of the ever-changing game world influence an AI's spatial reasoning. We discuss a spatial database technique that allows you to perform spatial reasoning about any number of different factors that can potentially affect an AI agent's reasoning about the game environment and techniques for combining multiple factors together to construct desirability heuristics. A spatial database can also allow you to implicitly coordinate the activities of multiple AI agents simply by virtue of sharing the same data structure.
Constraining Autonomous Character Behavior with Human Concepts
Topics: General; Genres: General, FPS
Abstract: A current trend in Game AI is the move from scripted to autonomous character behavior. Autonomous behavior offers several benefits. Autonomous characters can handle unexpected events that a script might not have anticipated, producing emergent gameplay. Level designers can focus on creating worlds packed with opportunities for characters to showcase their behaviors, rather than getting bogged down scripting the actions of individual characters. Various articles have described how to design goal-based autonomous behavior, where characters select the most relevant behavior based on their desires, sensory input, and proximity to objects of interest. In theory it sounds simple enough to drop a character with a palette of goals into a level filled with tagged objects, and let him take care of himself. In practice, there are many additional factors that need to be considered to get believable behavior from an autonomous character. This article presents a number of factors that should be considered as inputs into the relevancy calculation of a character's goals, in order to produce the most believable decisions. These factors are based on findings encountered during the developement of Monolith Production's No One Lives Forever 2: A Spy in H.A.R.M.'s Way.
Simple Techniques for Coordinated Behavior
Topics: Strategy, Tactical, Coordinated Movement, Cooperation; Genres: FPS, Action
Abstract: There are a number of common problems that arise when developing AI systems for combat with multiple enemies. Agents block each other�s line of fire. Agents follow the exact same path to a target, and often clump up at a destination. Some agents are oblivious to a threat while others nearby are getting shot or even killed. Multiple agents decide to do the exact same action or animation simultaneously. It would seem that a group behavior layer of complex higher-level reasoning would be needed to solve these problems. In fact, these problems can be solved with simple techniques that use existing systems and leverage information that individual agents already have. This article describes simple techniques that can be used to solve coordination problems, using examples from Monolith Productions' "No One Lives Forever 2: A Spy in H.A.R.M.'s Way."
Team Member AI in an FPS | |
Topics: Strategy, Tactical, Coordinated Movement, Cooperation; Genres: FPS, Action
Abstract: The use of teammates has become very popular among the first and third person action genres in recent years, in both the simulation and arcade sub-genres. However, implementing convincing teammates who will not run in your path while you are shooting, nor disappear into a far corner of the map, is quite an involved process. By implementing some key rules it is possible to create teammates who can usefully back you up in the thick of the action, follow instructions reliably, and survive with you until the end of the game.
Applying Goal-Oriented Action Planning to Games
Topics: Strategy, Planning; Genres: Strategy, RTS, FPS, Action
Abstract: A number of games have implemented characters with goal directed decision-making capabilities. A goal-directed character displays some measure of intelligence by autonomously deciding to activate the behavior that will satisfy the most relevant goal at any instance. Goal-Oriented Action Planning (GOAP) is a decision-making architecture that takes the next step, and allows characters to decide not only what to do, but how to do it. A character that formulates his own plan to satisfy his goals exhibits less repetitive, predictable behavior, and can adapt his actions to custom fit his current situation. In addition, the structured nature of a GOAP architecture facilitates authoring, maintaining, and re-using behaviors. This article explores how games can benefit from the addition of a real-time planning system, using problems encountered during the development of Monolith Production's No One Lives Forever 2: A Spy in H.A.R.M.'s Way to illustrate these points.
Hierarchical Planning in Dynamic Worlds
Topics: Strategy, Planning; Genres: Strategy, RTS, FPS, Action
Abstract:
Goal Directed Behavior using Composite Tasks
Topics: Strategy, Planning; Genres: Strategy, RTS, FPS, Action
Abstract: This article will introduce the reader to goal directed behavior and offers several examples of games that have used it to increase the believability of the agents in those games. The article then goes on to discuss the implementation of the Composite Task concept that was designed and developed to provide goal directed behavior for the agents in a military tactical combat training simulator. Finally, the simulator itself is briefly discussed and references to additional information on goal directed behavior are provided.
An AI Approach to Creating an Intelligent Camera System
Topics: Movement, Camera; Genres: Action
Abstract: In this article, we will attempt to outline one method of implementing a camera system capable of handling a diverse and dynamic three-dimensional environment. We will detail the approaches taken during development of a to-be-released title, outlining the issues we encountered and how these were overcome.
Strategic and Tactical Reasoning with Waypoints
Topics: Movement, Strategy, Tactical; Genres: FPS, Action
Abstract: Non-player characters (NPCs) commonly use waypoints for navigation through their virtual world. This article will demonstrate how preprocessing the relationships between these waypoints can be used to dynamically generate combat tactics for NPCs in a first-person shooter or action adventure game. By precalculating and storing tactical information about the relationship between waypoints in a bit string class, NPCs can quickly find valuable tactical positions and exploit their environment. Issues discussed include fast map analysis, safe pathfinding, using visibility, intelligent attack positioning, flanking, static waypoint analysis, pinch points, squad tactics, limitations, and advanced issues.
Squad Tactics: Team AI and Emergent Maneuvers
Topics: Strategy, Tactical, Coordinated Movement, Cooperation; Genres: FPS, Action
Abstract: AI squad behavior is made up of coordinated individual actions towards a joint goal. There are two basic coordination styles: centralized control by a leader, and decentralized cooperation between individuals. This chapter discusses the latter style in detail. Decentralized cooperation can already be realized with minor changes to "standard individual AI". This chapter illustrates how some tactical squad maneuvers can emerge from these coordinating individual AIs, using a squad assault as an example. The limitations of the approach are illustrated using a second example: a squad ambush. This chapter precedes and complements the chapter "Squad Tactics: Planned Maneuvers".
Squad Tactics: Planned Maneuvers
Topics: Strategy, Tactical, Coordinated Movement, Cooperation; Genres: FPS, Action
Abstract: AI squad behavior can also be realized by designing an explicit team leader, responsible for planning and managing the squad's maneuver. This AI team leader assesses the squad's state, picks and plans the most appropriate squad maneuver. He executes the squad maneuver by issuing orders, and by interpreting feedback and information from the squad members. This is illustrated using a bounding overwatch squad advance. This centralized style to squad AI is more complex than the emergent behavior in "Squad Tactics: Team AI and Emergent Maneuvers". However, it does provide largely autonomous operating squads, able to execute complex maneuvers, and often combines well with some decentralized cooperation among squad members.
Tactical Team AI Using a Command Hierarchy | |
Topics: Strategy, Tactical, Coordinated Movement, Cooperation; Genres: FPS, Action
Abstract: Team-based AI is becoming an increasingly trendy selling point for first- and third-person action games. Often, this is limited to scripted sequences or simple "I need backup" requests. However, by using a hierarchy of decision-making, it is possible to create some very convincing teams that make decisions in real time.
Formations
Topics: Formations, Coordinated Movement; Genres: RPS, RTS, FPS, Action
Abstract: In games today, formations are expected for any type of cohesive group movement. From squad-based first-person shooters to sports sims to real-time strategy games, anytime that a group is moving or working together it is expected to do so in an orderly, intelligent fashion. This article will cover standard military formations, facing issues, mixed formations, spacing distance, ranks, unit mobility, group pathfindng, and dealing with obstacles.
First-Person Shooter AI Architecture
Topics: Architecture; Genres: FPS, Action
Abstract: This article provides a basic
introduction to building an AI architecture for a first-person shooter game (such as Quake or Unreal) or a first-person sneaker (such as Thief: The Dark Project). We discuss the major components of an FPS AI (including specific subsystems for animation, movement and pathfinding, behavior, combat, sensory modelling, and scripting and trigger systems) and how those components should fit together.
The Basics of Ranged Weapon Combat
Topics: Weapon Selection, Weapon Handling; Genres: RTS, RPG, FPS, Action
Abstract: This article gives a brief
introduction to the problems of firing ranged weapons. We discuss to-hit rolls, aim point selection, ray-testing, avoiding friendly fire incidents, dead reckoning, and calculating weapon trajectories for ballistic weapons.
A Dynamic Reputation System Based on Event Knowledge
Topics: Reputation System; Genres: RPG, Action, Adventure
Abstract: This article describes a non-player character (NPC) reputation system (a mechanism for dynamically managing NPCs' opinions of each other and of the player in order to influence the NPCs' actions). Most existing reputation systems manage NPCs' opinions globally. The reputation system this article describes instead changes a specific NPC's opinions only if the NPC has direct or indirect knowledge of events that trigger a change. The article describes the data structures required for the reputation system, the way they work together to make the complete system, and the way the system fits into the overall design of NPC behavior.
Tactical Path-Finding with A* | |
Topics: A* Pathfinding, Tactical; Genres: General, FPS, RTS
Abstract: Tactical paths consider cover and stealth in addition to travel time. Although costs for cover and stealth are easily added to the A* cost function, this alone does not result in convincing tactical paths. This chapter analyzes the defects in these paths, and discusses tactical improvements: taking into account exposure time and enemy aiming behavior, and anticipating likely enemy movement. The extensions to the A* cost functions introduce additional run-time costs. This chapter discusses the costs, and provides work-arounds and optimizations to make tactical pathfinding more efficient.
Terrain Reasoning for 3D Action Games
Topics: Tactical, Movement; Genres: Action, FPS
Abstract:
Terrain Reasoning for 3D Action Games William van der Sterren (CGF-AI)
Game Developers Conference Proceedings, 2001.
Available Online at Gamasutra, 2001.
Topics: Tactical, Movement; Genres: Action, FPS
Abstract: Terrain reasoning in 3D action games is about understanding concepts such as stronghold,
cover, ambush, and sniper location. This lecture introduces a simple yet powerful approach for
terrain reasoning, enabling the AI itself to compute these concepts. Traditionally, AI relies on hints
and scripts manually added by level designers to grasp the terrain. However, an AI that actually
understands the terrain will respond better to dynamic situations and directions issued by the
player. The terrain reasoning presented uses a waypoint graph with a high spatial density of waypoints.
Due to its density, it is a good abstraction of the terrain. Being a graph, it enables computations. The
lecture shows numerous examples of how to express terrain concepts in terms of this graph. A case
study illustrates how situational awareness, team formations, tactical pathfinding, and adaptive tactics
are implemented using both in-game and pregame terrain reasoning.
Bot Navigation: Design Philosophy Alex J. Champandard
AI-Depot.com, September 2001.
Topics: Bots, Pathfinding; Genres: FPS
Abstract: This article discusses the pitfalls of bot navigation, and describes the human approach
to spatial awareness and terrain recognition. Base on this, a modular system is described allowing
both reactive and deliberative components to cooperate eleguantly.
Bot Navigation: Advanced Obstacle Avoidance Alex J. Champandard
AI-Depot.com, November 2001.
Topics: Bots, Pathfinding; Genres: FPS
Abstract: This is the third installment of our Bot Navigation column. In this issue, we discuss
evolution in real-time noisy environments, practical optimisations for evolutionary solutions and
representations enhancements that increase the model's performance.
First Steps in Game AI: Your Own Bot Alex J. Champandard
AI-Depot.com, October 2001.
Topics: Bots; Genres: FPS
Abstract: In tackling practical issues involved in creating game AI, this article demonstrates
how First Person Shooters are ideal for developing Artificial Intelligence. Not only is this
framework an ideal platform for modern technology, but it's also great fun!
Bot Navigation: Neural Networks for Obstacle Avoidance Alex J. Champandard
AI-Depot.com, October 2001.
Topics: Bots, Learning; Genres: FPS
Abstract: A practical insight into applying machine learning to a common first person game. These
few pages will use your theoretical understanding of neural networks, and allow you to tackle a
concrete problem with it.
|