Useful Links
Computer Science
Game Development
Artificial Intelligence for Games
1. Introduction to Artificial Intelligence in Games
2. Core Concepts and Movement
3. Decision-Making Architectures
4. Sensing and Knowledge Representation
5. Tactical and Strategic AI
6. Learning and Adaptation in Games
7. Advanced and Specialized Topics
8. Implementation and Production
Decision-Making Architectures
Reactive Architectures
Simple Trigger Systems
Event-Driven Responses
Trigger Conditions
Use Cases and Limitations
Rule-Based Systems
Rule Definition and Evaluation
Conflict Resolution
Rule Priorities
Forward and Backward Chaining
Finite State Machines (FSMs)
States
Defining States
State Data
State Responsibilities
Transitions
Transition Conditions
Transition Actions
Guard Conditions
Actions
Entry Actions
Exit Actions
Update Actions
Implementation Techniques
Switch-Based FSMs
Object-Oriented FSMs
Table-Driven FSMs
Limitations of FSMs
State Explosion
Lack of Flexibility
Maintenance Challenges
Hierarchical Finite State Machines (HFSMs)
Sub-states and Super-states
State Hierarchies
Managing Complexity
Reusability of States
History States
Concurrent States
Behavior Trees (BTs)
Core Concepts
The Tick
Node Status
Running
Success
Failure
Tree Traversal
Composite Nodes
Selectors (Fallbacks)
Sequences
Parallels
Random Selectors
Weighted Random
Decorator Nodes
Inverters
Repeaters
Conditionals
Cooldowns
Timers
Leaf Nodes
Actions
Conditions
Custom Leaf Types
The Blackboard (Data Sharing)
Data Storage and Access
Communication Between Nodes
Scoped Data
Data Types
Advanced BT Concepts
Subtrees and Modularity
Dynamic Tree Modification
Tree Serialization
Debugging and Visualizing Behavior Trees
Runtime Visualization
Execution Traces
Performance Profiling
Utility-Based AI
Utility Theory Fundamentals
Decision Theory Basics
Rational Choice
Scoring and Ranking Behaviors
Utility Functions
Weighting Factors
Normalization Techniques
Response Curves
Linear Curves
Exponential Curves
Sigmoid Curves
Custom Curve Types
Considerations and Inputs
Input Parameters
Consideration Composition
Use Cases
Dynamic Decision-Making
Balancing Multiple Goals
Action Selection
Implementation Strategies
Performance Optimization
Caching and Updates
Goal-Oriented Action Planning (GOAP)
Actions with Preconditions and Effects
Action Definition
Precondition Checking
Effect Application
World State Representation
State Variables
Boolean States
Numeric States
Plan Generation
Planning Algorithms
A* for Planning
Plan Execution
Plan Validation
Regoaling and Replanning
Handling Failed Plans
Dynamic Goal Selection
Plan Repair
Advanced GOAP Concepts
Hierarchical Planning
Partial Order Planning
Multi-Agent Planning
Previous
2. Core Concepts and Movement
Go to top
Next
4. Sensing and Knowledge Representation