RC++: a rule-based language for game AI

Wright Ian, Marshall James

Research output: Chapter in Book/Report/Conference proceedingConference Contribution (Conference Proceeding)


"Game AI" is the high-level control code for computer entertainment applications. Games are diverse, and the nature of game AI reflects this diversity. However, game AI, in contrast to rendering code and other game code, is distinguished by employing a high density of predicates on rapidly changing game state, and a high density of operations that change game state. Traditional programming languages, such as C and C++, are not designed to facilitate the creation of such code, unlike high-level AI rule-based languages. RC++, a full-featured, rule-based extension to C++, designed for Sony Computer Entertainment�s PlayStation2 hardware, is described. RC++ is based on OPS5 (Forgy, 81) and Poprulebase1, a rule-based extension to the Pop-11 programming language. It combines optimised execution associated with OPS5 with the syntactical style and some of the useful features of Poprulebase. It is designed to facilitate the rapid creation of game AI by automating many of the common programming tasks associated with creating game rules, while maintaining the flexibility of C and C++ when required. The aim of the paper is to demonstrate the applicability of rule-based programming to game AI in general, and the usefulness of RC++ for game AI in particular.
Translated title of the contributionRC++: a rule-based language for game AI
Original languageEnglish
Title of host publicationProceedings of the First International Conference on Intelligent Games and Simulation (GAME-ON 2000)
PublisherSCS Europe BVBA
Publication statusPublished - 2000

Bibliographical note

Other page information: -
Conference Proceedings/Title of Journal: Proceedings of the First International Conference on Intelligent Games and Simulation (GAME-ON 2000)
Other identifier: 2000441


Dive into the research topics of 'RC++: a rule-based language for game AI'. Together they form a unique fingerprint.

Cite this