{{ message }}
Repository navigation
Release_Binary
Directory actions
More options
Directory actions
More options
Release_Binary
Folders and files
-------------------- | BWAPI 4.0.1 Beta | -------------------- The BWAPI web site https://github.com/bwapi/bwapi Documentation https://bwapi.github.io/ Documentation (old) http://code.google.com/p/bwapi/wiki/BWAPIManual Blog http://bwapi.blogspot.com/ Google Group http://groups.google.com/group/bwapi Forums http://www.broodwarai.com/forums/ Bug Reports https://github.com/bwapi/bwapi/issues IRC Channel Freenode #BWAPI 1. Introduction to BWAPI ------------------------ The Brood War Application Programming Interface (BWAPI) is a free and open source C++ framework that is used to interact with the popular Real Time Strategy (RTS) game Starcraft: Broodwar. Using BWAPI, students, researchers, and hobbyists can create Artificial Intelligence (AI) agents that play the game. The installer contains all the necessary include files, libs, and dlls required to compile and run an AI module and also comes with four projects to help get you started in AI development with BWAPI: - Example AI Module - This project shows how to build an AI module DLL which is the standard way of making autonomous agents with BWAPI. The Example AI Module shows how to print "Hello world!" along with a bit of example code that shows how to read information about the units in the game. - Example AI Client - This project demonstrates how to build an AI client program (no longer an experimental way of making AIs for BWAPI, but rather well tested and widely used way at this point). Like the Example AI Module project, this project shows how to print "Hello world!" along with a bit of example code that shows how to read information about the units in the game. The AI Client allows for more flexibility in the implementation - one could potentially use non-microsoft compilers, even embed other programming languages via FFI (see http://sscaitournament.com/index.php?action=tutorial for an example using Java). This is currently the recommended way of developing a new AI. - AI Module Loader - This project is a very simple AI client program which can load and run Example AI Module DLLs, essentially a way of making your AI Module run in a separate process without actually converting it to a client program. - Example Tournament Module - This project shows how to build a tournament module which can manage tournaments by limiting what the AI module can do and control the flow of the game without altering the AI module itself. The tournament module is only available in RELEASE mode. Build Instructions: 1. Run the installer and go to the installation directory. 2. Open ExampleProjects.sln in Visual C++ 2013 (Express or Professional) and build the solution. All projects should now be built and can be found in the solution directory's Release or Debug subdirectories. Make sure to run the corresponding version of BWAPI and set the proper settings for Release and Debug binaries. To run the Example AI Module: 1. Open <starcraft folder>/bwapi-data/bwapi.ini and set ai to the path to your newly built ExampleAIModule.dll. 2. Run Chaoslauncher with BWAPI Injector checked. 3. Start Starcraft: Broodwar and create a match. Note: With BWAPI you can switch to windowed mode using the shortcut ALT+ENTER. To run the Example AI Client: 1. Open <starcraft folder>/bwapi-data/bwapi.ini and comment out the ai field with a semicolon. 2. Run Release/ExampleAIClient.exe 3. Run Chaoslauncher with BWAPI Injector checked. 4. Start Starcraft: Broodwar and create a match. 2. Bug Reports -------------- BWAPI is not perfect. As you write custom AI modules using BWAPI you may run into bugs or other problems. We cannot find all the bugs on our own so your feedback is invaluable and can be very helpful for improving BWAPI. When you find a bug, please contact us on the IRC or file an issue at http://code.google.com/p/bwapi/issues/list Additionally, if the program experienced an exception, then a log will be created in <starcraft folder>/Errors/ which may be useful.
