Strategies for real-time video games
Summary
Abstract
Game developers spend a large portion of their time developing and
tweaking the artificial intelligence in video games. Problems related to
productivity in the development of AI have been solved using various
modeling techniques in the field of AI, language design and easier to use
editors. Using a domain specific language to assist in describing AI can
increase productivity in this area. In addition to this, game developers
can be relieved from irrelevant tasks such as worrying about performance,
correctness of the implementation, memory management and optimization
data structures and focus on the high level description of the game
play. In this thesis, we focus on real-time video games and we investigate
the development of a domain-specific language containing the necessary
elements to describe and execute strategies to achieve goals in a real-time
video game. We develop a domain-specific language to express strategies
for computer controlled actors using techniques commonly found in embedded
domain-specific languages, and in particular embedded domain-
specific languages in Haskell. To demonstrate this language we have
developed a prototype of a real-time strategy game that uses strategies
implemented using the domain-specific language developed in this thesis.