ABSTRACT

Drastic simplifications of character artificial intelligence (AI) allowed AI programmers to reach their goal of 1000 nonplayer characters at 60 FPS, while keeping development costs down. This chapter looks at the AI used to implement characters in the game Project Highrise by SomaSim, a skyscraper construction management sim where players build, lease out, and manage a series of highrise buildings. It looks at the game itself to illustrate the motivations and constraints behind the AI problem. The chapter describes how AI programmers approached the AI implementation that achieves this goal. Propositional rules allow some interesting optimizations, however. Since all propositions are known at compile time, pre- and postcondition can be represented as simple bit vectors—then during planning, the process of checking preconditions and applying postconditions reduces down to very fast bitwise operations. The chapter explains two simplifications that enabled efficient implementation: open-loop action performance, and domain-specific representation for pathfinding.