A Non-Exhaustive List of Resources for Bot Making
ProBots Members can add or edit this list.
Visit ProBots Github for additional repos.
This Page takes some cues from the awesome sc2 ai curated list but is expanded .
Scripted Bots
Tutorials
- Getting Started with an Easy Python Bot: A beginner-friendly guide to creating your first StarCraft 2 bot in Python.
- Making a Bot using the Sharky Framework: Video tutorial on building a bot with the Sharky Framework.
APIs by Language
Python
- python-sc2: A Python library for StarCraft II AI development.
CSharp - ExampleBot: A CSharp example bot to get started with.
CPP - cpp-sc2: A CPP library for StarCraft II AI development.
Java - ocraft-s2client: A Java library for the StarCraft II API.
GO - s2l: A Go library for developing StarCraft II AI bots.
- go-sc2ai: Another Go library for SC2 AI development.
JavaScript - node-sc2: A JavaScript framework for StarCraft II AI.
Rust APIs - rust-sc2: A Rust library for StarCraft II AI.
TypeScript - s2client-api-typescript: A TypeScript API for SC2.
Libraries
- SC2MapAnalysis: For influence maps and pathfinding.
- queens-sc2: Library for queen management in StarCraft 2.
- bossman: Simple utility for tracking and making in-game choices.
- SC2_bot_chat: Utility for sending chat messages in-game.
- sc2-helper: StarCraft 2 AI helper tools.
- sc2-pathlib: Pathfinding and terrain analysis library for Starcraft 2 bots in Rust.
Frameworks
- Sharky Framework (CSharp): A CSharp framework for bot development.
- Sharpy Framework (Python): A Python framework for creating competitive bots.
- Ares Framework (Python) + Documentation: A Python framework for advanced SC2 AI development.
Example Bots
Python
- ProBots python-sc2 bot template: A template for creating bots in Python.
- burny-sc2 example bots: Example bots using the python-sc2 library.
- sharpy-sc2 dummy bots: Dummy bots for testing and development.
- Chance: A competitive bot written in Python.
- Opps: a Bot that focuses on Micro Management
CPP
- cpp-sc2/blank-bot: Empty starter bot with integrated cpp-sc2.
- cpp-sc2/commandcenter: Advanced CPP bot for StarCraft II.
- MicroMachine: A top-performing bot in the ProBots competition.
- suvorov-bot: Another CPP bot with advanced strategies.
CSharp
- Tyr: A competitive CSharp bot with advanced tactics.
Java
- Supalosa/testbot: A Java bot template with integrated ocraft.
Machine Learning Bots
Tutorials
- Python Machine Learning - StarCraft 2 Python AI Using The DeepMind (Learning PySC2): A comprehensive tutorial on using Python and DeepMind for AI development in StarCraft 2.
- SCC: an efficient deep reinforcement learning agent mastering the game of StarCraft II (Paper): Academic paper on advanced SC2 AI techniques.
- Deep Learning with SC2 (Video): A video series on deep learning in StarCraft II.
APIs
- StarCraft 2 API: The official API for StarCraft 2 AI development.
Libraries
- AlphaStar: DeepMind’s advanced StarCraft 2 AI project.
- SARSA to Micro: A library for machine learning in SC2.
Frameworks
- PySC2: DeepMind’s Python-based StarCraft 2 AI environment.
- Adept: A framework for reinforcement learning in games.
- Reaver: A reinforcement learning framework for SC2.
- DI-Star: A flexible AI research platform for StarCraft II.
Example Bots
- Mini AlphaStar: An implementation of DeepMind’s AlphaStar in a compact form.
- TrebbleBiscuit’s sc2-ai-agents: A collection of machine learning-based SC2 bots.
General Resources
Tutorials
- How to convert regular StarCraft 2 maps to AI Edition Maps (AIE): A guide to converting standard StarCraft 2 maps for AI use.
- How to play against the ProBots: Instructions on how to set up and play against the ProBots.
Miscellaneous
- Creating ChatGPT Commentary for SC2: A unique project combining ChatGPT with StarCraft 2 commentary.
Competitions
AI Arena: An online platform for testing and competing with your AI bots.
ProBots: A competitive event for top-performing bots from the AI Arena ladder.
Content Creation
YouTube Channels
- ProBots: Official channel for ProBots AI competitions and content.
- LaughNgamez: A channel focused on StarCraft 2 AI and gameplay.
- AI Arena: Videos and content related to the AI Arena platform.
- SC2AI: A channel dedicated to StarCraft 2 AI development and competitions.
Note to Members: Feel free to contribute to this list and keep it updated with the latest resources!