Skip to content

tinco/bwapi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

BWAPI Overview

The Brood War Application Programming Interface (BWAPI) is a free and open source C++ framework for creating AI modules for Starcraft: Broodwar. Using BWAPI, programmers can retrieve information on players and individual units in Starcraft as well as issue a wide variety of commands to units, opening the doors for custom AIs with new micro and macro algorithms.

By default, BWAPI only reveals the visible parts of the game state to AI modules. Information on units that have gone back into the fog of war is denied to the AI. This enables programmers to write competitive non-cheating AIs that must plan and operate under partial information conditions. Furthermore, by default BWAPI disables the Starcraft GUI, relegating the user to the role of a spectator while the AI module plays the game. This is done to ensure that the winner of AI vs AI matches is determined solely based on the programming and algorithms in the AI module itself, rather than by human assistance and intervention.

However at the start of a match AI modules have the ability to enable one or more cheat flags, which increase the functionality of BWAPI. When an AI module enables a cheat flag, its activation is announced to all other players in the Starcraft match, which makes hosting non-cheating AI competitions and matches painless - simply disqualify AI modules that enable these flags. Currently there are two cheat flags. The first one, once enabled, provides the AI module with complete map information on all units in the game, not just visible ones. The second flag, once enabled, provides the AI with input from the user and re-enables the Starcraft GUI, allowing the user to play Starcraft along with the AI module. This allows programmers to write AI modules that use all the information on the map as well as make hybrid set-ups where human players use custom AIs and user interfaces to augment their performance.

About

A git svn clone of the BWAPI svn repository

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published