Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

StarCraft II Client - C++ library supported on Windows, Linux and Mac designed for building scripted bots and research using the SC2API.

License

NotificationsYou must be signed in to change notification settings

Blizzard/s2client-api

Repository files navigation

Build Status

The StarCraft II API provides access to in-game state observation and unit control. The API is a wrapper around protobuf defined protocol over a websocket connection.

While it's possible to write directly to the protocol, this library provides a C++ and class-based abstraction. You can see a simple example below.

#include<sc2api/sc2_api.h>#include<iostream>usingnamespacesc2;classBot :publicAgent {public:virtualvoidOnGameStart()final {        std::cout <<"Hello, World!" << std::endl;    }virtualvoidOnStep()final {        std::cout <<Observation()->GetGameLoop() << std::endl;    }};intmain(int argc,char* argv[]) {    Coordinator coordinator;    coordinator.LoadSettings(argc, argv);    Bot bot;    coordinator.SetParticipants({CreateParticipant(Race::Terran, &bot),CreateComputer(Race::Zerg)    });    coordinator.LaunchStarcraft();    coordinator.StartGame(sc2::kMapBelShirVestigeLE);while (coordinator.Update()) {    }return0;}

You can find a detailed tutorial on what this code does in docs/tutorial1.md.

Documentation

You can find API in documentation on ourgithub pages site. The documentation is generated from code automatically, usingDoxygen

To editor and generate the documentation yourself.

  1. Download and installdoxygen
  2. Fork the repository and clone it locally
  3. Checkout the master branch 'git checkout origin/master -b my-documentation-update
  4. Make changes to the code documentation or docs/ files
  5. From the root of the project run: doxygen Doxyfile
  6. Review your documenation changes by opening docs/html/index.html in your browser
  7. Push your changes to your fork and send us a pull request

Building

This library usesCMake to generate project files. It builds withVisual Studio on Windows and Makefiles on the other platforms. It relies on the following contrib packages.

  1. Civetweb
  2. Protobuf
  3. (optional) SDL
  4. ipv6-parse

Follow the instructions for submodules and building indocs/building.md.

Coding Standard

Coding Standard

We do our best to conform to the Google C++ Style Guide with the exception that we use four space tabs insteadof two space tabs.

Additional Downloads

Maps and Replays

This repository only comes with a few maps for testing.

Additional maps and replays can be foundhere.

Precompiled Libs

If you are using Visual Studio 2017 and just want precompiled library files you can download the following package:

Precompiled Libs

Other Libraries

Additional community built AI libraries can be foundhere.

If you are new to programming, theCommandCenter framework may be a good starting point.

About

StarCraft II Client - C++ library supported on Windows, Linux and Mac designed for building scripted bots and research using the SC2API.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp