Skip to main content

Roadmap

Current Version: v0.4.0

OpenRA-RL has completed 11 development sprints with 515+ tests passing across 4 repos.

What's New in v0.4.0

  • OpenRA-Bench leaderboard: Live on HuggingFace Spaces — ranked agent comparison with filtering by type and difficulty
  • Auto-upload: Game results automatically submitted to the leaderboard after openra-rl play
  • Custom agent identity: Name your agent, declare its type, and link to your GitHub repo
  • Replay uploads & downloads: Submit replays with results; download them from the leaderboard
  • CLI bench submit: openra-rl bench submit result.json --replay game.orarep
  • Custom agent export: build_bench_export() helper for RL, CNN, and multi-agent systems
  • 5 opponent tiers: Beginner, Easy, Medium, Normal, Hard

What's New in v0.3.1

  • Multi-dimensional reward vector: 8-dimensional reward signal (combat, economy, infrastructure, intelligence, composition, tempo, disruption, outcome) for richer RL training
  • Damage matrix: Unit effectiveness lookup table derived from weapon YAML data — enables cost-aware combat evaluation
  • OpenRA-RL-Util: New shared utility library (openra-rl-util) powering reward computation, scoring rubrics, and damage analysis across the ecosystem
  • OpenRA-Bench scoring fix: Eliminated scoring formula duplication — single source of truth in openra-rl-util
  • OpenRA-Bench test suite: 25 tests covering leaderboard app and evaluation harness

Completed Features

FeatureStatusSprint
Protobuf schema + gRPC bridgeDone1
C# game engine integration (ExternalBotBridge)Done1
Python environment wrapper (OpenEnv)Done1
Unit tests + integration tests (80 tests)Done2
Live end-to-end verificationDone2
Docker images + Compose deploymentDone3
Null Platform (headless, 3% CPU)Done3
Enriched observations (spatial tensor, unit stats)Done4
21 action types (guard, stance, transport, power)Done4
Real-time bridge (non-blocking, ~25 ticks/sec)Done5
Pre-game planning phase + knowledge toolsDone5
Bulk knowledge tools (faction briefing, map analysis)Done5
Agent fixes (auto-placement, production validation)Done6
Unified YAML config + local model supportDone7
CLI entry point (openra-rl play)Done8
MCP stdio server + OpenClaw skillDone8
Pre-built Docker images on GHCRDone8
PyPI package + CI/CD workflowsDone8
Replay viewer (VNC-in-Docker, browser-based)Done9
Local server mode (--local flag)Done9
Engine version management + replay manifestDone9
Multi-dimensional reward vector (8 dimensions)Done10
Damage matrix (unit effectiveness data)Done10
Shared utility library (openra-rl-util)Done10
OpenRA-Bench scoring fix + test suiteDone10
OpenRA-Bench HuggingFace Space deploymentDone11
Auto-upload + CLI bench submitDone11
Custom agent identity (name, type, URL)Done11
Replay uploads and leaderboard downloadsDone11
Custom agent export helper (bench_export)Done11
5 opponent tiers (Beginner → Hard)Done11

Supported Game

PropertyValue
GameRed Alert (OpenRA mod)
MapDefault RA maps
Players1v1 (agent vs built-in AI)
AI DifficultiesEasy, Normal, Hard
FactionsAllied, Soviet (auto-detected)

Upcoming Milestones

v0.5 — Multi-Agent + Training

  • Multi-agent support: Agent vs Agent matches
  • ScriptedBot extraction: Move ScriptedBot from examples to library

v0.6 — RL Training Pipelines

  • PPO/SAC integration: Training scripts with TRL and Stable Baselines3
  • Reward vector training: Use 8-dimensional reward for multi-objective RL
  • Curriculum learning: Progressive difficulty (Easy → Normal → Hard)
  • Observation encoders: CNN for spatial tensor, Transformer for entity lists

v1.0 — Stable Release

  • Stable API: Versioned Protobuf schema with backwards compatibility
  • Full documentation: API docs, tutorials, research guides
  • Community benchmarks: Published baseline results for common agents
  • Multi-mod support: Beyond Red Alert (Tiberian Dawn, Dune 2000)
  • Replay analytics: Post-game analysis and metrics from replay data

Contributing

We welcome contributions! Areas where help is needed:

  • Agent implementations: New bot architectures (MCTS, hierarchical RL, self-play)
  • Observation encoders: Neural network architectures for processing game state
  • Documentation: Tutorials, guides, and examples
  • Testing: Edge cases, stress tests, multi-platform verification

See the GitHub repository for open issues.