0.37.0
π¦ 0.37.0 - Battle Runner API β 04-Mar-2026
β¨ Features
- Battle Runner API (documentation):
- New
runnermodule providing a programmatic API for running battles without the GUI. - Supports both embedded server (auto-managed lifecycle) and external server connection modes.
- Synchronous (
runBattle()) and asynchronous (startBattleAsync()) battle execution. - Game type presets (Classic, Melee, 1v1, Custom) with full parameter overrides via
BattleSetup. - Battle recording to
.battle.gzreplay files compatible with the Recorder module. - Intent diagnostics for capturing raw bot-intent messages per bot per turn (opt-in).
- Battle control: pause, resume, single-step, and stop running battles.
- Real-time events: tick, round start/end, game start/end, abort, pause/resume.
- Structured
BattleResultswith per-bot rankings and detailed scores. - Resource management via
AutoCloseablefor server lifecycle, bot processes, and graceful shutdown. - Published to Maven Central as
dev.robocode.tankroyale:robocode-tankroyale-runner.
- New
π Bug Fixes
- GUI:
- #191: GUI freezes from time to time in 0.36.1
- Bot APIs (C#, Python):
- #192: Fixed
TimeLeft/time_leftreturning incorrect (often negative) values on Windows. The start timestamp
for the turn timeout was being captured on the bot thread at dispatch time, which is after OS scheduling has
already consumed part of the turn budget. The fix aligns C# and Python with Java: the timestamp is now taken on
the WebSocket thread when the tick is first received (_ticksStart/tick_start_nano_time), so all time spent
scheduling and dispatching correctly counts againstTurnTimeout. - C# only: added
timeBeginPeriod(1)(Windows Multimedia API) to set 1 ms timer resolution for the bot process,
matching the behavior of the JVM and CPython runtimes. This ensuresThread.Sleepdurations are accurate to
~1 ms instead of the default ~15.6 ms Windows timer granularity.
- #192: Fixed
Robocode Tank Royale 0.37.0
π Quick Start
New to Robocode Tank Royale?
- Install Java 11+ β Download GUI β Get sample bots β Start battling!
π Complete documentation: robocode.dev | Advanced strategies: book.robocode.dev
π Installing Robocode
Requirements: Java 11+ (whichjdk.com) | Detailed setup: robocode.dev/installation
Choose Your Installation Method
You have two options to install and run the Robocode GUI:
- Native Installers (Recommended) β Installs as a native application with desktop shortcuts
- Portable JAR File β Run directly from the command line without installation
Both options require Java 11 or newer.
Option 1: Native Installers (Recommended)
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | robocode-tank-royale-gui-0.37.0.msi |
| π macOS | robocode-tank-royale-gui-0.37.0.pkg |
| π§ Linux | robocode-tank-royale-gui-0.37.0.rpm (RPM) / robocode-tank-royale-gui-0.37.0.deb (DEB) |
β οΈ Note: Installers are unsigned (normal for open-source projects). Your OS may show security warnings - choose "Run anyway" or similar. Verify using SHA256SUMS if needed.
Option 2: Portable JAR File
Download: robocode-tankroyale-gui-0.37.0.jar
Running: java -jar robocode-tankroyale-gui-0.37.0.jar
π Tip: Create a dedicated folder for better organization. See GUI documentation for details.
π€ Sample Bots
Download pre-built bots to start battling immediately:
- Download the archive for your preferred language
- Extract to a directory (e.g.,
C:\Robocode\bots\python) - In GUI: Config β Bot Root Directories β Add the extracted directory
| Language | Download | Requirements |
|---|---|---|
| π Python | sample-bots-python-0.37.0.zip | Python 3.10 or newer |
| π· C# | sample-bots-csharp-0.37.0.zip | Microsoft .NET SDK 8 or newer |
| β Java | sample-bots-java-0.37.0.zip | Any Java SDK 11 or newer |
π¦ Bot API
Ready to develop your own bots? Install the API for your preferred language:
π Python
pip install robocode-tank-royale==0.37.0β Java
Maven:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.37.0</version>
</dependency>Gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.37.0'Direct JAR: robocode-tankroyale-bot-api-0.37.0.jar
π· .NET (C#, F#, VB.NET)
dotnet add package Robocode.TankRoyale.BotApi --version 0.37.0More info: robocode.dev/bot-api | PyPI | Maven Central | NuGet
π Sound Effects
Enhance your Robocode experience with sound effects!
Download & Installation: Sounds Repository
Follow the repository instructions to install sounds in the correct location.
π Additional Resources
- Documentation: robocode.dev
- GitHub Repository: robocode-dev/tank-royale
- Issue Tracker: Report bugs or request features