JavaScript EditorFree JavaScript Editor     Ajax Editor 

Main Page
  Previous Section Next Section


Various extensions to finite-state machines prove useful in game development:

  • Fuzzy finite-state machines bring the benefits of fuzziness to finite-state models. These provide smooth control and reasoning with degrees of truth, which can increase realism in some cases. FFSM are best simulated using a fuzzy expert system, although they have the advantage of being easy to create with a graph-based representation.

  • Nondeterministic finite-state machines are less strict as a mathematical model, which implies the design of finite-state machines in game AI is much simpler. Instead of leaving uncertain transitions, tools should be used to convert NFSM to their deterministic counterparts.

  • Probabilistic models can be used to evaluate the likelihood of sequences occurring, or even to generate random sequences according to a random pattern. This is the simplest and most common extension to finite-state machines in computer games.

The next chapter covers an extremely powerful concept: hierarchies of finite-state machines. Although the theoretical complexity of finite-state machines is not increased by hierarchies, behaviors and capabilities are much easier to model this way. Chapter 42 uses extensions of this chapter and the next to create a better emotional system that makes the animats seem more lifelike.

Practical Demo

There's an animat that uses the concepts in this chapter to create behaviors and capabilities. It's known as Masheen and can be found on the web site at Masheen has some advantages over the plain finite-state machines, notably smoother behaviors and a simpler design.

      Previous Section Next Section

    JavaScript EditorAjax Editor     JavaScript Editor