Stratagus: an Open-Source Game Engine for Research in Real-Time Strategy Games

Stratagus: an Open-Source Game Engine for Research in Real-Time Strategy Games

Stratagus: An Open-Source Game Engine for Research in Real-Time Strategy Games Marc J.V. Ponsen1, Stephen Lee-Urban1, Héctor Muñoz-Avila1, David W. Aha2, Matthew Molineaux3 1Dept. of Computer Science & Engineering; Lehigh University; Bethlehem, PA; USA; {mjp304, sml3, hem4}@lehigh.edu 2Navy Center for Applied Research in AI; Naval Research Laboratory (Code 5515); Washington, DC; USA; [email protected] 3ITT Industries; AES Division; Alexandria, VA 22303; USA; [email protected] Abstract Stratagus is an open-source game engine that can be used 2. Research Challenges in RTS Games for artificial intelligence (AI) research in the complex domain of real-time strategy games. It has already been RTS is a genre of strategy games that usually focuses on successfully applied for AI studies by several researchers. military combat. RTS games such as Warcraft™ and The focus of this paper is to highlight Stratatgus’ useful Empire Earth™ require the player to control a civilization features for AI research rather than compare it with other and use military force to defeat all opposing civilizations available gaming engines. In particular, we describe that are situated in a virtual battlefield (often called a map) Stratagus’ integration with TIELT, a testbed for integrating in real time. In most RTS games, winning requires and evaluating decision systems with game engines. Together they can be used to study approaches for efficiently collecting and managing resources, and reasoning, representation, and learning in computer games. appropriately distributing these resources over the various game action elements. Typical RTS game actions include 1. Introduction constructing buildings, researching new technologies, and waging combat with armies (i.e., consisting of different In recent years, AI researchers (e.g., Laird & van Lent, types of units). 2001; Guestrin et al., 2003; Buro, 2003; Spronck et al,. The game AI in RTS manages the decision-making 2004; Ponsen et al., 2005) have begun focusing on process of computer-controlled opponents. We distinguish artificial intelligence (AI) challenges presented by complex between two levels of decision-making in RTS games. The computer games. Among these, real-time strategy (RTS) strategic level involves abstract decision making games offer a unique set of AI challenges such as planning considerations. In contrast, the tactical level concerns more under uncertainty, learning adversarial strategies, and concrete decisions. The global AI in RTS games is analyzing partially observable terrain. However, many responsible for making strategic decisions (e.g., choosing commercial RTS games are closed-source, complicating warfare objectives or deciding the size of the force their integration with AI decision systems. Therefore, necessary to assault and control an enemy city). The local academic practitioners often develop their own gaming AI works on the game action level (e.g., give individual engines (e.g., Buro’s (2002) ORTS) or turn to open-source commands to train soldiers, and give them orders to move alternatives (e.g., FreeCiv, Stratagus). to specific coordinates near the enemy base) and is Stratagus is an appropriate RTS engine for AI research responsible for achieving the objectives defined at the for several reasons: it is open-source, the engine is highly tactical level. configurable, and it is integrated with TIELT (2005). The Unlike the high performance in some classic board Stratagus engine has already been extensively used by games where AI players are among the best in the world researchers (e.g., Guestrin et al., 2003; Ponsen & Spronck, (Schaeffer, 2001), their performance in RTS games is 2004; Ponsen et al., 2005; Marthi, Russell, & Latham, comparatively poor (Buro, 2003) because designing strong 2005; Aha et al. 2005) and students (e.g., for class projects AI in these complex environments is a challenging task. on game AI). RTS games include only partially observable environments In this paper, we first describe RTS games and the that contain adversaries who modify the game state research challenges posed by these environments. In asynchronously, and whose decision models are unknown, Section 3 we then detail the Stratagus engine, and describe thereby making it infeasible to obtain complete its integration with TIELT in Section 4. In Section 5 we information on the current game situation. In addition, RTS describe an example application of their integration. games include an enormous number of possible game Finally, we conclude and highlight future work in Section actions that can be executed at any given time, and some of 6. their effects on the game state are uncertain. Also, to successfully play an RTS game, players must make their decisions in real-time (i.e., under severe time constraints) Figure 1: Screenshots of two Stratagus games. The left shows Wargus, a clone of Blizzard’s Warcraft II™ game, and the right shows Magnant. The Wargus game is situated in a fantasy world where players either control armies of humans or ‘orcs’. Magnant combines an RTS game with a trading card game. In Magnant, players can collect, exchange, and trade cards that give them unique abilities. and execute multiple orders in a short time span. These actions) that were acquired offline with an evolutionary properties of RTS games make them a challenging domain algorithm. for AI research. Another limitation of commercial game AI is its Because of their decision making complexity, previous inability to learn and adapt quickly to changing players and research with RTS games often resorted to simpler tasks situations. In recent years, the topic of learning in (Guestrin et al., 2003), decision systems were applied computer games has grown in interest and several such offline (e.g., the evolutionary algorithm developed by studies have focused on RTS. For instance, Guestrin et al. Ponsen and Spronck (2004)), or they employed an (2003) applied relational Markov decision process models abstraction of the state and decision space (e.g., Madeira et for some limited combat scenarios (e.g., 3x3 combat). In al., 2004; Ponsen et al., 2005; Aha et al., 2005). contrast, by using abstract state and decision spaces Ponsen When employing online decision-making in RTS games, and Spronck (2004) and Ponsen et al. (2005) applied it is computationally impractical for an AI decision system dynamic scripting (Spronck et al., 2004) to learn to win to plan on the game action level when addressing more complete games against a static opponent. Aha et al. comprehensive tasks (e.g., making all strategic and tactical (2005) relaxed the assumption of a fixed adversary by decisions for a civilization). Decision systems can extending the state representation and recording game potentially plan more quickly and efficiently when performance measures from selecting specific tactics in employing appropriate abstractions for state and decision these extended states. This permitted them to evaluate a space. However, current AI systems lag behind human case-based tactic selector (CaT) designed to win against abilities to abstract, generalize, and plan in complex random opponents. domains. Although some consider abstraction to be the essence of intelligence (Brooks, 1991), comparatively little 3. Stratagus: An Open-Source RTS Engine research has focused on abstraction in the context of complex computer games. However, Ponsen and Spronck Stratagus is a cross-platform, open-source gaming engine (2004) developed a lattice for representing and relating for building RTS games. It supports both single player abstract states in RTS games. They identified states with (i.e., playing against a computer opponent) and multi the set of buildings a player possesses. Buildings are player games (i.e., playing over the internet or LAN). essential elements in many RTS games because these Stratagus is implemented primarily in C. A precompiled typically allow a player to train armies and acquire new version can be downloaded freely at the Stratagus website technologies (which are relevant game actions in RTS (2005). The latest source code of this actively maintained engine can be downloaded from a CVS (Concurrent games such as Warcraft™). Thus, they determine what Versioning System) repository. tactics can be executed during that game state. Similarly, Games that use the Stratagus engine are implemented in Ponsen et al. (2005) and Aha et al. (2005) used an scripts using the LUA scripting language (www.lua.org). abstraction of the decision space by searching in the space These games can also be found on the Stratagus website. of compound tactics (i.e., fine-tuned combination of game Popular games for Stratagus include Wargus (a clone of 4. TIELT Integration the popular RTS game Warcraft II™, illustrated in Figure 1), Battle of Survival (a futuristic real-time strategy game), Integrating AI systems with most closed-source and Magnant (a trading card game situated in an RTS commercial gaming simulators can be a difficult or even environment, also illustrated in Figure 1). These games all impossible task. Also, the resulting interface may not be share the same API provided by the game engine. Stratagus reusable for similar integrations that a researcher may want includes some useful features for AI research: to develop. In this section we describe an integration of Stratagus with TIELT (Testbed for Integrating and • Configurable: This highly configurable engine can be Evaluating Learning Techniques) (TIELT, 2005; Aha & used to create RTS games with varying features.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us