wiki:AlternativeGames

Alternative Games

This page will keep track of possible alternative games we should consider.

RTS

0AD

  • Open source RTS game similar to Age of Empires. It is still in development.
  • C++/JavaScript

Tried compiling on Linux but had a problem with libxml2.

Tried compiling again on cycle 1 where libxml is installed, got cmake: command not found.

Installed cmake. Follow instructions in README. make install step failed - permission denied. Changed cmake_install.cmake line 5 to "/home/vax3/u10/xwang" from "usr/local". Not sure if this is the right thing to do but cmake seems to work.
./update-workspaces.sh -j3 step now works. make CONFIG=Release -j3 gives some errors. Missing Boost.

Downloaded all the tools for 0ad on Ubuntu VM as root. Game compiled and ran successfully
Build Instructions -- Instructions for getting tools, compiling, running are given here. Pretty straightforward.


ORTS -- Open Real-Time Strategy

  • Open source RTS game engine.
  • Users load scripts to server to create a game.
  • Client software connects to server to control objects in the game.
  • C++

Downloaded using svn but could not compile. Tried make init and make but got some errors.

Research paper using ORTS


Glest

  • Open source 3-D RTS game.
  • Download seems to be only Windows.
  • Downloaded the game on my laptop but it was just an installer. No source code.

Stopped development but MegaGlest and Glest Advanced Engine has continued work on the engine.

MegaGlest

Glest Advanced Engine

Downloaded latest version of MegaGlest. Compiling instructions in README but I couldn't figure it out.

Thesis on reinforcement learning in RTS using Glest


Bos Wars

  • Open source futuristic RTS.
  • C++/Lua

Downloaded a working version for Linux but it does not contain source code.
Downloaded the source code separately but had compiling issues again. :(

Some cool AI done with boswars
The agent is controlled by 2apl
The guy who worked on the project
Master thesis -- Best I could find, pdf version wasn't loading


Spring

  • Open source RTS game engine.
  • Many different games have been created on the Spring game engine.
  • Supports AI plugins in many programming languages.
  • C++

Tried compiling after getting cmake. Missing Boost.

Integrating AI in Spring


StarCraft

StarCraft AI Competition

Winning team

Basic strategy

Production:

  • first strategy was to hard code plan as finite state machines. e.g. Build tanks unless the enemy builds air units, then build anti-air units. If the enemy builds cloaked units, build detectors, and so on. this strategy did not work because if the opponent prevents the agent from gathering the necessary resources with gas steal, the agent will be stuck.
  • second strategy: instead of providing a fixed sequence of units and structures to produce, provide a combination of units and structures. The planner will choose the best unit or structure to build at any moment given its resources. If opponent tries gas steal, the agent will expand base or build units that don't require gas until the problem is resolved.
  • scouting: scout enemy base to see what units are being produced and plan accordingly.

Controlling units:

  • hard to build control nodes for units, therefore there is a high cost for building more than one type of unit. focused on mutalisks. large numbers are hard for humans to control without clumping. easy prey for area attacks. not a problem for computer. potential fields balancing attractive forces on targets and repulsive forces on threats move the mutalisk around use map editor to build stage for agent to run through different combat scenarios and learn optimal potential field strengths
  • predict results of actions based on damage calculations. assign values to targets and mutalisks based on resource costs. uses this information to choose which targets to attack.

Path-finding:

  • keeps updated map of of last known location of enemy units. combines this map with know movement and attack speed of units to create threat map. threat map is combined with path-finding algorithm. areas of high threat for a unit will have a high cost to traverse.

RPG

Neverwinter Nights

  • RPG base on Dungeons & Dragons
  • Requires purchase of game
  • Can be modified for many purposes

http://edugamesresearch.com/blog/category/neverwinter-nights/page/2/

Standalone server
Not sure how useful this is. Downloaded and ran. Got this

Neverwinter Nights Server Build:8109 Copyright BioWare? Corp 1998-2004

Server: Loading...
Server: Running...

Server: Unable to use port 5122

Work on NPC AI
AI-controlled life in Role-playing games
An Adaptive Automatic Pilot for Role Playing Games 5.4


FPS

Unreal

  • Windows only
  • See Walter

Cube 2 - Sauerbraten


Life Simulation

The Sims

  • Requires purchase.
  • NPC already have pretty sophisticated AI

Not sure how this game would work.


Dynamic Scripting

Dynamic scripting is a form of reinforcement learning used in adaptive game AI.

Dynamic Scripting FPS
Dynamic Scripting RTS
Dynamic Scripting RPG

There are four main components in the dynamic scripting algorithm:

  1. Set of rules - Rules that the algorithm can choose from. Each rule has a weight.
  2. Script selection - A subset of rules used in a learning episode.
  3. Rule policy - Determines how rules in a script are applied within an episode.
  4. Rule value updating - Reward function that provides feedback on the script. Success increases weights of rules, failure decreases weights of rules.
Last modified 13 years ago Last modified on Jun 15, 2011 12:27:21 PM