• Stars
    star
    3,754
  • Rank 11,438 (Top 0.3 %)
  • Language
    Python
  • License
    MIT License
  • Created almost 7 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

StarCraft II Client - protocol definitions used to communicate with StarCraft II.

Overview

The StarCraft II API is an interface that provides full external control of StarCraft II.

This API exposes functionality for developing software for:

  • Scripted bots.
  • Machine-learning based bots.
  • Replay analysis.
  • Tool assisted human play.

The API is available in the retail Windows and Mac clients. There are also Linux clients available at the download links below.

Contents

Official

  • Protocol
  • Reference C++ implementation
    • Library designed for building a scripted bots using the API.
    • Repository
  • StarCraft II Linux Packages
  • Maps
    • Maps from the 1v1 ladder and other custom maps.
    • Download
  • Replays
    • Replay packs of 1v1 ladder games.
    • Download

Community

  • PySC2
    • DeepMind's python environment wrapper.
    • Repository
  • CommandCenter
    • A robust architecture for quickly developing Starcraft AI bots.
    • Repository
  • Bot Ladders
    • SC2AI - Unofficial community organized ladder.
    • AI Arena - Unofficial community organized ladder.
  • Community Wiki
    • Unofficial wiki of documentation and tutorials.
    • Website
  • Discord Server
    • Unofficial server for discussing AI questions and projects.
    • Invite Link
  • Facebook Group
    • Unofficial community page.
    • Website

Downloads

To access the linux packages, map packs and replay packs, you must agree to the AI and Machine Learning License

The files are password protected with the password 'iagreetotheeula'.

By typing in the password ‘iagreetotheeula’ you agree to be bound by the terms of the AI and Machine Learning License

Linux Packages

Map Packs

This is the previous version of the Ladder 2017 Season 3 Map Pack

Replay Packs

Installing Map and Replay Packs

All additional game data should be extracted within the installation directory.

The default installation directories are:

  • Windows: C:\Program Files (x86)\StarCraft II\
  • Mac: /Applications/StarCraft II/

On Linux, the installation directory is the folder you extracted the linux package into.

The folder structure is the same accross all platforms. However you may need to create some folders if they are missing.

Standard folder layout:

  • StarCraft II/
    • Battle.net/
    • Maps/
    • Replays/
    • SC2Data/
    • Versions/

Map Packs

  • Extract the zip file directly into the "Maps" folder.
  • In the API, a map can be specified as either an absolute path or its relative path inside this "Maps" folder.

Replay Packs

  • Replace the "Battle.net" and "Replays" folders with the ones in the zip file.
  • In the API, a replay must be specified as an absolute path.

Stable IDs

These define the action mappings from ability ids in the protobuf api to the internals of the game. They also define some general ids that combine multiple abilities that have a similar semantic meaning (eg various forms of burrow, cancel, lift/land, etc). The stableid.json is updated occasionally with the game, but can also be updated manually by downloading the stableid.json from here and placing it in the root of your StarCraft II directory.

More Repositories

1

node-rdkafka

Node.js bindings for librdkafka
JavaScript
2,065
star
2

s2client-api

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

s2protocol

Python library to decode StarCraft II replay protocols
Python
608
star
4

api-wow-docs

Documentation for the World of Warcraft web APIs.
519
star
5

heroprotocol

Python library to decode Heroes of the Storm replays
Python
398
star
6

d3-api-docs

API Documentation for the D3 Web API.
HTML
341
star
7

passport-bnet

Passport Strategy for Battle.net Login
JavaScript
196
star
8

FailoverQueue

A thread-safe queue wrapper that can spill over to on-disk files for later processing.
C++
71
star
9

api-sc2-docs

API Documentation for the Sc2 Web API.
64
star
10

omniauth-bnet

Omniauth Strategy for Battle.net Login
Ruby
60
star
11

s2client-docker

Supporting files for building the API and running the Linux build of StarCraft II
Shell
52
star
12

node-signature-generator

A sample OAuth2 Client Credentials flow application using Blizzard Battle.net APIs in Node.js.
JavaScript
28
star
13

premake-blizzard

The blizzard module for premake
Lua
24
star
14

qt

Blizzard's additions/modifications to Qt5
22
star
15

qtbase

Qt5 qtbase submodule with Blizzard's changes
C++
15
star
16

premake-consoles

Lua
14
star
17

java-signature-generator

A sample OAuth2 Client Credentials flow application using Blizzard Battle.net APIs in Java.
12
star
18

katana-assets

Documentation and information on creating Asset API plugins for Foundry's Katana
9
star
19

clang

Fork of official clang git repository located at http://llvm.org/git/clang
C++
8
star
20

premake-autoconf

AutoConf tools for Premake
Lua
6
star
21

ruby-signature-generator

A sample OAuth2 Client Credentials flow application using Blizzard Battle.net APIs in Ruby.
Ruby
5
star
22

oauth-client-sample

Java
5
star
23

qtdeclarative

Qt5 qtdeclarative submodule with Blizzard's changes
C++
4
star
24

premake-packagemanager

Lua
3
star
25

qtmultimedia

Qt5 qtmultimedia submodule with Blizzard's changes
C++
2
star