Preface |
|
xi | |
Acknowledgments |
|
xv | |
About the Cover Images |
|
xvii | |
Author Bios |
|
xix | |
|
|
1 | (82) |
|
Common Game AI Techniques |
|
|
3 | (12) |
|
|
Promising Game AI Techniques |
|
|
15 | (14) |
|
|
New Paradigms in Artificial Intelligence |
|
|
29 | (12) |
|
|
Artificial Stupidity: The Art of Intentional Mistakes |
|
|
41 | (8) |
|
|
Arcade AI Doesn't Have to Be Dumb! |
|
|
49 | (10) |
|
|
The Statistics of Random Numbers |
|
|
59 | (12) |
|
|
Filtered Randomness for AI Decisions and Game Logic |
|
|
71 | (12) |
|
|
SECTION 2 PATHFINDING AND MOVEMENT |
|
|
83 | (104) |
|
Search Space Representations |
|
|
85 | (18) |
|
|
Inexpensive Precomputed Pathfinding Using a Navigation Set Hierarchy |
|
|
103 | (12) |
|
|
Path Look-Up Tables---Small Is Beautiful |
|
|
115 | (16) |
|
|
An Overview of Navigation Systems |
|
|
131 | (10) |
|
|
Jumping, Climbing, and Tactical Reasoning: How to Get More Out of a Navigation System |
|
|
141 | (10) |
|
|
|
Hunting Down the Player in a Convincing Manner |
|
|
151 | (10) |
|
|
Avoiding Dynamic Obstacles and Hazards |
|
|
161 | (10) |
|
|
Intelligent Steering Using PID Controllers |
|
|
171 | (8) |
|
|
An AI Approach to Creating an Intelligent Camera System |
|
|
179 | (8) |
|
|
SECTION 3 GROUP MOVEMENT, TACTICS, AND PLANNING |
|
|
187 | (60) |
|
Constraining Autonomous Character Behavior with Human Concepts |
|
|
189 | (10) |
|
|
Simple Techniques for Coordinated Behavior |
|
|
199 | (8) |
|
|
|
207 | (10) |
|
|
Applying Goal-Oriented Action Planning to Games |
|
|
217 | (12) |
|
|
Hierarchical Planning in Dynamic Worlds |
|
|
229 | (8) |
|
|
Goal-Directed Behavior Using Composite Tasks |
|
|
237 | (10) |
|
|
SECTION 4 AI ANIMATION CONTROL |
|
|
247 | (34) |
|
Simplified Animation Selection |
|
|
249 | (14) |
|
|
|
263 | (6) |
|
|
Intelligent Movement Animation for NPCs |
|
|
269 | (12) |
|
|
|
|
281 | (46) |
|
The Ultimate Guide to FSMs in Games |
|
|
283 | (20) |
|
|
|
Stack-Based Finite-State Machines |
|
|
303 | (4) |
|
|
Implementing a Data-Driven Finite-State Machine |
|
|
307 | (12) |
|
|
Finite-State Machine Scripting Language for Designers |
|
|
319 | (8) |
|
|
|
327 | (52) |
|
A Subsumption Architecture for Character-Based Games |
|
|
329 | (10) |
|
|
An Architecture for A-Life |
|
|
339 | (12) |
|
|
A Flexible Tagging System for AI Resource Selection |
|
|
351 | (10) |
|
|
Motivational Graphs: A New Architecture for Complex Behavior Simulation |
|
|
361 | (12) |
|
|
|
|
|
Minimizing Agent Processing in Conflict: Desert Storm |
|
|
373 | (6) |
|
|
SECTION 7 FPS, RTS, AND STRATEGY AI |
|
|
379 | (88) |
|
Using a Spatial Database for Runtime Spatial Analysis |
|
|
381 | (10) |
|
|
Performing Qualitative Terrain Analysis in Master of Orion 3 |
|
|
391 | (8) |
|
|
|
The Unique Challenges of Turn-Based AI |
|
|
399 | (6) |
|
|
Random Map Generation for Strategy Games |
|
|
405 | (8) |
|
|
Transport Unit AI for Strategy Games |
|
|
413 | (12) |
|
|
Wall Building for RTS Games |
|
|
425 | (14) |
|
|
Startegic Decision-Making with Neural Networks and Influence Maps |
|
|
439 | (8) |
|
|
Multi-Tiered AI Layers and Terrain Analysis for RTS Games |
|
|
447 | (10) |
|
|
Designing a Multi-Tiered AI Framework |
|
|
457 | (10) |
|
|
SECTION 8 RACING AND SPORTS AI |
|
|
467 | (48) |
|
Racing Vehicle Control Using Insect Intelligence |
|
|
469 | (16) |
|
|
Fast and Efficient Approximation of Racing Lines |
|
|
485 | (4) |
|
|
The Art of Surviving a Simulation Title |
|
|
489 | (10) |
|
|
Dead Reckoning in Sports and Strategy Games |
|
|
499 | (6) |
|
|
Building a Sports AI Architecture |
|
|
505 | (10) |
|
|
|
515 | (40) |
|
Optimized Script Execution |
|
|
517 | (8) |
|
|
Advanced Script Debugging |
|
|
525 | (8) |
|
|
Adding Error Reporting to Scripting Languages |
|
|
533 | (8) |
|
|
Empowering Designers: Defining Fuzzy Logic Behavior through Excel-Based Spreadsheets |
|
|
541 | (8) |
|
|
A Modular Camera Architecture for Intelligent Control |
|
|
549 | (6) |
|
|
|
555 | (58) |
|
Player Modeling for Adaptive Games |
|
|
557 | (10) |
|
|
Constructing a Decision Tree Based on Past Experience |
|
|
567 | (12) |
|
|
|
Understanding Pattern Recognition Methods |
|
|
579 | (12) |
|
|
|
|
Using Reinforcement Learning to Solve AI Control Problems |
|
|
591 | (12) |
|
|
Getting Around the Limits of Machine Learning |
|
|
603 | (10) |
|
|
SECTION 11 GENETIC ALGORITHMS AND NEURAL NETWORKS |
|
|
613 | (66) |
|
How to Build Neural Networks for Games |
|
|
615 | (12) |
|
|
How to Build Evolutionary Algorithms for Games |
|
|
627 | (12) |
|
|
Adaptive AI: A Practical Example |
|
|
639 | (10) |
|
|
Building Better Genetic Algorithms |
|
|
649 | (12) |
|
|
Advanced Genetic Programming: New Lessons from Biology |
|
|
661 | (8) |
|
|
The Importance of Growth in Genetic Algorithms |
|
|
669 | (10) |
|
|
SECTION 12 SPEECH RECOGNITION AND DIALOGUE |
|
|
679 | (28) |
|
SAPI: An Introduction to Speech Recognition |
|
|
681 | (10) |
|
|
SAPI: Extending the Basics |
|
|
691 | (10) |
|
|
Conversational Agents: Creating Natural Dialogue between Players and Non-Player Characters |
|
|
701 | (6) |
|
About the CD-ROM |
|
707 | (2) |
Index |
|
709 | |