awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
google-deepmind avatar

google-deepmind/pysc2

0
View on GitHub↗

Pysc2

PySC2 is a Python library that exposes StarCraft II as a reinforcement learning environment. Agents receive observations and send actions through repeated observe-and-act cycles, with one or two players in the same game session. It is built as a research platform for developing and benchmarking machine learning agents on a real-time strategy game with partial information and long-horizon planning.

The way the game is presented to an agent is a central part of the project. Observations come as stacked feature layers for the screen and minimap, as rendered RGB images, or as raw unit data addressed by unit tags, alongside non-visual game information delivered as tensors. Actions are typed function calls with arguments, and each observation lists only the functions valid at that moment, which avoids one huge flat action space. Converters turn raw game protocol messages into dictionaries of numeric arrays with matching specs, so neural networks can consume observations and emit actions directly. They can be configured per episode or wrapped inside an environment.

The environment is configurable: you choose the map, the players and their difficulty, the observation resolution, the action space, and how many frames to skip per step. Custom maps and mini-game scenarios are defined by subclassing a map base class that sets episode length, player count, and scoring. Training content ranges from single-skill mini-games with score-based rewards to machine-learning melee maps and the multiplayer maps used on the online ladder. Baseline agents, including a random player and scripted mini-game players, serve as starting points.

The library also covers replays and debugging. Episodes can be saved as replays, played back with video export, and processed in parallel into the same array format used live, which allows offline training datasets to be built from recorded games. A visual interface lets a person play by hand or watch an agent while viewing the rendered feature layers.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Reinforcement Learning Environments - Wraps StarCraft II as a Python reinforcement learning environment where agents receive observations, send actions, and train on mini-games and full matches.
  • Agent Action Spaces - Defines how a game is presented to a learning agent, with typed function-call actions and per-frame lists of currently valid actions.
  • Agent-Environment Interaction Loops - Drives one or two players through repeated observe-and-act cycles in the same game session, stepping a configurable number of frames each time.
  • Feature Layer Observations - Exposes about twenty-five structured feature layers for the screen and minimap, giving agents meaningful grids instead of raw pixels.
  • Game Environment Configuration - Lets users choose the map, players and difficulty, observation resolution, action space, and frames skipped per step when setting up a game environment.
  • Game Observation and Action Converters - Convert raw game protocol messages into neural-network-friendly dictionaries of numeric arrays with matching specs, so learning agents can read observations and send actions.
  • Observation and Action Converters - Converts raw game protocol messages into dictionaries of numeric arrays with matching specs so neural networks can consume observations and emit actions.
  • Spatial Feature Layers - Breaks the screen and minimap into stacked grids of unit attributes so agents read meaningful values instead of raw pixels.
  • Real-Time Strategy Game Agents - Supports training and evaluating agents that learn to play StarCraft II through observe-and-act loops against built-in opponents or other agents.
  • Game Simulation Environments - Sets up configurable simulated game worlds with chosen maps, opponents, difficulty, and scoring so researchers can run controlled machine learning experiments.
  • Agent Map Launchers - Launches a random, scripted, or custom agent on a selected map with a visual interface, or pits two agents against each other.
  • Mini-Game Training Scenarios - Offers single-player, fixed-length mini-game scenarios that each exercise one skill and expose a score or reward separating poor from strong play.
  • Multi-Modal Game Observations - Offers structured feature layers, rendered RGB images, and a raw unit-data interface so agents can choose how to see the game.
  • Replay Processing Pipelines - Plays back recorded games in parallel and converts them into observation and action arrays for building offline training datasets.
  • Pixel-Based Game Agent Training - Trains agents on small focused scenarios that each exercise one skill, using score-based rewards to build toward full-length matches.
  • RGB Pixel Observations - Provides the main screen and minimap as color images at a chosen resolution, matching a human player's view without menus.
  • Spatial Observation Planes - Represents most observations as spatial planes of unit attributes for screen and minimap, and accepts point-and-click actions like a human player.
  • Visual Observation Interfaces - Presents game state to agents as stacked feature layers and RGB images of the screen and minimap, plus non-visual tensors.
  • Game Replay Parsers - Runs recorded replays through a converter to produce the same array-based data format as live environments, enabling offline training on past games.
  • Custom Map Definitions - Defines custom maps by subclassing a base class that sets file location, episode length, player count, and scoring, then registers them on import.
8,336 stars·1,162 forks·Python·Apache-2.0·2 views

Star history

Star history chart for google-deepmind/pysc2Star history chart for google-deepmind/pysc2

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Pysc2

These projects share indexed features with Pysc2. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • deepmind/pysc2deepmind avatar

    deepmind/pysc2

    8,298View on GitHub↗

    pysc2 is a Python interface and simulation framework that connects the StarCraft II game engine to machine learning agents. It acts as an API wrapper that exposes game internals as a set of observations and actions, providing a reinforcement learning environment for research and training. The framework includes tools for game replay analysis to extract data and sequences of actions from recorded matches for predictive modeling. It also provides an agent simulation environment to run and evaluate the performance of single or competing artificial intelligence agents. The system handles game ma

    Python
    View on GitHub↗8,298
  • ntasfi/pygame-learning-environmentntasfi avatar

    ntasfi/PyGame-Learning-Environment

    1,062View on GitHub↗

    PyGame Learning Environment is a Python framework that provides a standardized interface for training artificial intelligence agents within diverse game environments. It functions as a communication layer that bridges reinforcement learning agents with game state observations, action inputs, and reward signals, allowing for consistent interaction across different game titles. The platform distinguishes itself by offering a headless execution mode that disables graphical rendering pipelines. By bypassing display overhead, this feature accelerates training cycles for automated agents during bac

    Pythonagentaiartificial-intelligence
    View on GitHub↗1,062
  • openai/universeopenai avatar

    openai/universe

    7,506View on GitHub↗

    Universe is a training and evaluation platform that transforms websites, games, and software into standardized environments for general intelligence agents. It functions as a reinforcement learning wrapper and remote environment orchestrator, providing a consistent interface to wrap diverse software for AI agent interaction. The platform distinguishes itself through a visual observation interface that streams real-time pixel data and transmits keyboard and mouse events to simulate human interaction. It utilizes a bi-directional communication protocol to deliver reward signals and performance

    Python
    View on GitHub↗7,506
  • google-deepmind/labgoogle-deepmind avatar

    google-deepmind/lab

    7,393View on GitHub↗

    DeepMind Lab is a customisable three-dimensional simulation platform for training and evaluating learning agents. It is built on a modified fork of the Quake III Arena engine, adapted to render first-person worlds for agents rather than human players. The engine is written in C++ and built with Bazel, and it is exposed to Python so environments can be created, stepped, reset and observed from scripts, including through a standard reinforcement learning interface. The platform ships with a suite of navigation and puzzle-solving tasks, along with ready-made levels that test specific mental abil

    Cartificial-intelligencedeep-learningmachine-learning
    View on GitHub↗7,393
Compare all 30 related projects→

Frequently asked questions

What does google-deepmind/pysc2 do?

PySC2 is a Python library that exposes StarCraft II as a reinforcement learning environment. Agents receive observations and send actions through repeated observe-and-act cycles, with one or two players in the same game session. It is built as a research platform for developing and benchmarking machine learning agents on a real-time strategy game with partial information and long-horizon planning.

What are the main features of google-deepmind/pysc2?

The main features of google-deepmind/pysc2 are: Reinforcement Learning Environments, Agent Action Spaces, Agent-Environment Interaction Loops, Feature Layer Observations, Game Environment Configuration, Game Observation and Action Converters, Observation and Action Converters, Spatial Feature Layers.

Which projects share features with google-deepmind/pysc2?

Projects with overlapping indexed features include: deepmind/pysc2 — pysc2 is a Python interface and simulation framework that connects the StarCraft II game engine to machine learning… ntasfi/pygame-learning-environment — PyGame Learning Environment is a Python framework that provides a standardized interface for training artificial… openai/universe — Universe is a training and evaluation platform that transforms websites, games, and software into standardized… google-deepmind/lab — DeepMind Lab is a customisable three-dimensional simulation platform for training and evaluating learning agents. It… microsoft/malmo — Malmo is a voxel-based simulation platform designed for artificial intelligence research and the study of autonomous… farama-foundation/arcade-learning-environment — The Arcade Learning Environment is a research-focused platform that provides a high-performance emulation engine for…