Abstract: This lecture discusses the design and implementation idioms for structuring complex, hierarchical, character behavior. This includes idioms for authoring tightly coordinated multi-character behavior, such as conversation behavior. Techniques include the use of meta- behaviors to monitor and modify the execution state of other behaviors, and the use of joint behaviors to manage multi-character coordination (avoiding ad hoc communication). Finally, advantages and challenges of moving away from imperative programming (C++) to behavioral programming are discussed.

Topics: Architecture, NLP; Genres: General
Abstract: As game designs increasingly evolve away from linear, scripted gameplay experiences and toward open-ended worlds and gameplay based on emergent behaviors, gameplay has become much less predictable, and it has become increasingly difficult to create content that exactly matches the specific situation the user will experience at any given moment. Although in an ideal world, it would be possible to create content that responds to all of the different possible game states, open-ended game designs present far too many unpredictable situations, and one can never hope to create enough audio or animation content to handle all of them. However, it is possible to fit some of the specifics of the situation some of the time, and create content at varying levels of specificity. We present a flexible tagging system that allows you to create art and audio content across a wide spectrum from the most general to the most specific, along with a simple resource-selection algorithm that allows you to select the most situation-specific piece of content to use in any given situation. We also discuss potential applications of this system for audio and animation assets in detail.

Topics: NLP; Genres: General
Abstract: This article looks at providing newcomers to SAPI an easy-to-follow breakdown of how to get a simple SAPI application working. It looks briefly at setting up SAPI, how to construct the XML grammar files, handling SAPI messages and using the SAPI text-to-speech functionality. All these concepts are tied together using an demonstration application designed to make learning SAPI simple yet entertaining.

Topics: NLP; Genres: General
Abstract: This article extends upon the previous one by discussing concepts like dynamic grammar, additional XML grammar tags, altering voices and more SAPI events. The chapter uses a simple implementation of Go Fish! to demonstrate the concepts presented.

Topics: NLP; Genres: General
Abstract: The quality of interactions between non-player characters (NPCs) and the player is an important area of Artificial Intelligence in games that is still in need of improvement. Game players frequently express that they want to see opponents and NPCs that appear to possess intelligence in games. However, most dialogue between players and NPCs in computer games is currently scripted, which does not add to the appearance of intelligence in the NPC. This article addresses these problems by giving an overview of NPCs in current games and presents a method called conversational agents, for improving dialogue between players and NPCs. Conversational agents are software agents that consist of models of personality and emotion, which allow them to demonstrate believable conversational behavior. The advantages of conversational agents include their ability to portray emotions and personality through dialogue. However, they also have disadvantage, in that they can be time consuming to develop.

This article will begin by discussing the conversational behavior of NPCs in current games. We will not be looking at the artificial intelligence (AI) capabilities of NPCs, only their ability to interact with the player. We will then discuss the components of a conversational agent - how to give it the appearance of personality and emotion. We will also look at the input that the agent needs to get from the environment, and what we want the agent to say to the player. We will conclude with the advantages and disadvantages of using conversational agents in games.

Screaming at the Machine: Using Speech Recognition as a Complement to Traditional Game Input TechniqueDave Bartolomeo (Microsoft)
Game Developers Conference Proceedings, 2003.Topics: NLP; Genres: General
Abstract: Advances in speech recognition technology, gigahertz CPUs, and the offloading of graphics
processing to the GPU have made it practical to use speech recognition in commercial-quality
games. The characteristics of speech recognition make it a unique input device, significantly
different from a mouse, keyboard, or joystick. Speech is more flexible than keyboard commands,
easier to use than multi-level menus, and it enables players to issue commands without moving
their focus away from the primary game interface. This talk demonstrates how to incorporate
speech recognition into your game in a way that complements traditional input devices, rather
than trying to replace them.

Topics: Learning, NLP; Genres: General
Abstract: The perception of intelligence seems to be directly related to the observation of behavior that is surprising yet sensible. Natural language interfaces were common features of computer entertainment software prior to the advent of sophisticated computer graphics, but these were often repetitive in nature: encountering the same scripted conversation over and over again quickly becomes boring. Stochastic language models have the ability to acquire various features of a language from observations they make, and these features can be used generatively to produce novel utterances that have the properties of being both surprising and sensible. In this article we show how such a system, when used to host in-game socially-oriented conversations, can greatly contribute towards the subjective impression of intelligence experienced by the player.