All Projects → cpp-sc2 → cpp-sc2

cpp-sc2 / cpp-sc2

Licence: MIT license
StarCraft II Client C++ library, proud fork of Blizzard/s2client-api.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to cpp-sc2

sc2gym
PySC2 OpenAI Gym Environments
Stars: ✭ 50 (+61.29%)
Mutual labels:  starcraft-ii, sc2, starcraft2
sc2-planner
No description or website provided.
Stars: ✭ 36 (+16.13%)
Mutual labels:  starcraft-ii, sc2, starcraft2
StarCraft-Casting-Tool
StarCraft Casting Tool is a free to use open source program that makes casting StarCraft 2 simple while increasing the production value substantially by providing a match grabber and various sets of animated icons and browser sources to be shown to the viewer.
Stars: ✭ 17 (-45.16%)
Mutual labels:  starcraft-ii, sc2, starcraft2
mpyq
Python library for reading MPQ archives.
Stars: ✭ 86 (+177.42%)
Mutual labels:  starcraft, starcraft-ii, starcraft2
sc2gears
The COMPLETE (!) source code of the Sc2gears universe (Sc2gears app + Sc2gears Database + web-based parsing engine - bundled in an Eclipse project).
Stars: ✭ 30 (-3.23%)
Mutual labels:  starcraft, starcraft-ii
m3addon
Blender Addon to import and export m3 files
Stars: ✭ 35 (+12.9%)
Mutual labels:  starcraft-ii, sc2
5minBot
Terran Bot for the Sc2 AI ladder at http://sc2ai.net/
Stars: ✭ 27 (-12.9%)
Mutual labels:  sc2api, starcraft2
HeroesOfTheStorm TryMode2.0
A modified Try Mode Map for Heroes of the Storm to create a better experience with enhanced functionalities.
Stars: ✭ 18 (-41.94%)
Mutual labels:  starcraft-ii, starcraft2
Overseer
Tool for analyzing Starcraft 2 maps by region decomposition
Stars: ✭ 13 (-58.06%)
Mutual labels:  starcraft, starcraft-ii
Coach
Reinforcement Learning Coach by Intel AI Lab enables easy experimentation with state of the art Reinforcement Learning algorithms
Stars: ✭ 2,085 (+6625.81%)
Mutual labels:  starcraft, starcraft2
screp
StarCraft - Brood War replay parser
Stars: ✭ 71 (+129.03%)
Mutual labels:  starcraft
SC2k-docs
Documentation related to the implementation of Maxis' game, SimCity 2000.
Stars: ✭ 239 (+670.97%)
Mutual labels:  sc2
ZZZKBot
ZZZKBot is a bot (AI) for Starcraft: Broodwar. It is designed to compete against other bots. It is not designed to compete against humans. It uses BWAPI as an API for interacting with Starcraft: Broodwar. I am not intending to support/maintain/develop ZZZKBot in future, although I haven't ruled it out either.
Stars: ✭ 57 (+83.87%)
Mutual labels:  starcraft
pysc2-rl-agents
StarCraft II / PySC2 Deep Reinforcement Learning Agents (A2C)
Stars: ✭ 124 (+300%)
Mutual labels:  starcraft-ii
pysc2
StarCraft II Learning Environment
Stars: ✭ 7,529 (+24187.1%)
Mutual labels:  starcraft-ii
Bwapi
Brood War API
Stars: ✭ 1,482 (+4680.65%)
Mutual labels:  starcraft
Meta-Learning-for-StarCraft-II-Minigames
We reproduced DeepMind's results and implement a meta-learning (MLSH) agent which can generalize across minigames.
Stars: ✭ 26 (-16.13%)
Mutual labels:  starcraft2
JBWAPI
Pure Java BWAPI Client implementation for JVM languages
Stars: ✭ 16 (-48.39%)
Mutual labels:  starcraft
DI-star
An artificial intelligence platform for the StarCraft II with large-scale distributed training and grand-master agents.
Stars: ✭ 1,335 (+4206.45%)
Mutual labels:  starcraft2
pymarl2
Fine-tuned MARL algorithms on SMAC (100% win rates on most scenarios)
Stars: ✭ 311 (+903.23%)
Mutual labels:  starcraft

cpp-sc2

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.

Documentation

Precompiled Libraries

You can download precompiled libraries for Windows and OS X here.

Support

Have questions but don't want to create an issue? Join the unofficial Starcraft II AI Discord server (Invite Link). Questions about this repository can be asked in the text channel #cpp.
Also, please consider to support this project on Boosty (preferred) or Patreon. Support of the project allows to make releases more often and implement nice new features for developers.

Building the project

This library uses CMake to generate project files. It builds with Visual 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 in docs/building.md.

Work with documentation

To edit and generate the documentation yourself:

  1. Download and install doxygen
  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

Contributing

This project follows a Code of Conduct in order to ensure an open and welcoming environment.

Please, read also the detailed contributing guide before creating pull-requests to the project. It can save you a lot of time.

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 instead of two space tabs.

Additional Downloads

Maps and Replays

This repository only comes with a few maps for testing. Additional maps and replays can be found here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].