A compilation of tools and resources for building an SC2 AI in Python that wins, all in one place.
Members can make changes and additions.
Getting Started
Step 1: Learn Python
- Codecademy Python 3 Course – Best for beginners.
- Codecademy Python for Programmers – For experienced developers who need Python-specific knowledge.
Step 2: Install StarCraft II
Step 3: Learn Game Mechanics
Essential APIs
- python-sc2 - Most popular API.
- pysc2 - Machine-learning focused API.
Tutorials
- Simple SC2 Python Bot Template
- How to get started with your own SC2 Bot
- How to Create a Python Zerg Rush Bot from Scratch
- StarCraft 2 Python AI Using The DeepMind(ML)
- Train your first SC2 learning agent (ML)
- Train a ML AI with DI-Star (ML)
Frameworks for Structured Development
- ares-sc2 - Extends python-sc2.
- sharpy-sc2 - Bot framework.
- Reaver - Deep RL framework.
Libraries & Utilities
- SC2MapAnalysis - Influence maps, pathfinding.
- queens-sc2 - Queen management.
- bossman - In-game decision tracking.
- SC2_bot_chat - Chat handling.
- sc2-helper - SC2 bot tools.
- SC2-Map-Segmentation - Automates SC2 map segmentation.
Open-Source Example Bots
Advanced Machine Learning Approaches
- Starcraft PySC2 mini-games and agents
- StarCraft II Unplugged: Offline RL
- Rethinking AlphaStar
- SarsaSC2 - Applying Sarsa lambda
- DI-Star - RL framework.
- The Harvester - ML bot.
Development & Debugging Tools
- local-play-bootstrap - Local game testing setup.
- VSCode Starcraft - SC2 bot dev extension for VSCode.