Releases: robocode-dev/tank-royale
0.36.1
π¦ 0.36.1 - WonRoundEvent and Python Console Output - 24-Feb-2026
π Bug Fixes
-
Bot API (.NET):
- #188: Fixed thread-safety issue in
RecordingTextWriterwhere concurrentConsole.WriteLinecalls from event
handlers (e.g.,OnScannedBot) could cause race conditions, leading to performance degradation, radar lock loss,
and eventual event queue overflow ("Maximum event queue size has been reached: 256"). The fix adds proper locking
around all write and read operations, matching the thread-safety pattern used in the Java implementation. - Added thread-safety test to verify
RecordingTextWriterhandles concurrent writes correctly.
- #188: Fixed thread-safety issue in
-
Bot APIs (Java, C#, Python):
- #190: Fixed
WonRoundEventnot being triggered when a bot wins a round. TheonWonRound()handler is now invoked
even if the server doesn't send a separateWonRoundEvent, by checking the rank inRoundEndedEventand
publishingWonRoundEventwhen rank equals 1.
- #190: Fixed
-
Bot API (Python):
- Implemented missing stdout/stderr redirection to bot console. Python bots can now use
print()statements and see
output in the Bot Console, matching Java and C# functionality. This feature was missing since v0.19.0.
- Implemented missing stdout/stderr redirection to bot console. Python bots can now use
-
Bot API (All platforms):
- Fixed the one-by-one error in the event queue size check. The queue now correctly enforces a maximum of 256 events
instead of allowing 257 events before showing the error message. Changed the boundary check from
<= MAX_QUEUE_SIZEto< MAX_QUEUE_SIZEin Java, .NET, and Python implementations.
- Fixed the one-by-one error in the event queue size check. The queue now correctly enforces a maximum of 256 events
Robocode Tank Royale 0.36.1
π 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.36.1.msi |
| π macOS | robocode-tank-royale-gui-0.36.1.pkg |
| π§ Linux | robocode-tank-royale-gui-0.36.1.rpm (RPM) / robocode-tank-royale-gui-0.36.1.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.36.1.jar
Running: java -jar robocode-tankroyale-gui-0.36.1.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.36.1.zip | Python 3.10 or newer |
| π· C# | sample-bots-csharp-0.36.1.zip | Microsoft .NET SDK 8 or newer |
| β Java | sample-bots-java-0.36.1.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.36.1β Java
Maven:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.36.1</version>
</dependency>Gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.36.1'Direct JAR: robocode-tankroyale-bot-api-0.36.1.jar
π· .NET (C#, F#, VB.NET)
dotnet add package Robocode.TankRoyale.BotApi --version 0.36.1More 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
0.36.0
π¦ 0.36.0 - Team Indicator in Results β 16-Feb-2026
β¨ Features
-
GUI:
- Results window now displays an additional "team" column with a checkmark (β) indicator showing whether each
participant is a team or an individual bot.
- Results window now displays an additional "team" column with a checkmark (β) indicator showing whether each
-
Schema:
- Added
isTeamflag toresults-for-observer.schemato support team classification in results data.
- Added
π Bug Fixes
- GUI:
- Fixed the ANSI color parsing bug where text following ANSI RESET escape code was rendered in black instead
of the default white color in the server console window. The RESET handler now correctly sets the foreground color
to the default color (brightWhite) and preserves font family/size settings. - Fixed replaying recorded battles where bot buttons, bot names, and bot versions were not visualized correctly.
- Fixed the ANSI color parsing bug where text following ANSI RESET escape code was rendered in black instead
Robocode Tank Royale 0.36.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.36.0.msi |
| π macOS | robocode-tank-royale-gui-0.36.0.pkg |
| π§ Linux | robocode-tank-royale-gui-0.36.0.rpm (RPM) / robocode-tank-royale-gui-0.36.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.36.0.jar
Running: java -jar robocode-tankroyale-gui-0.36.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.36.0.zip | Python 3.10 or newer |
| π· C# | sample-bots-csharp-0.36.0.zip | Microsoft .NET SDK 8 or newer |
| β Java | sample-bots-java-0.36.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.36.0β Java
Maven:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.36.0</version>
</dependency>Gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.36.0'Direct JAR: robocode-tankroyale-bot-api-0.36.0.jar
π· .NET (C#, F#, VB.NET)
dotnet add package Robocode.TankRoyale.BotApi --version 0.36.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
0.35.5
π¦ 0.35.5 - Critical Timing Fixes β 13-Feb-2026
π Bug Fixes
- Server:
- #180: Fixed critical reentrancy bug in 0.35.4 where
ResettableTimerexecuted synchronously on the calling thread
when delay was 0 (TPS=-1), causing recursive calls toonNextTurn(). This led to inconsistent bot behavior, event
queue overflow ("max event queue size reached: 256"), timing issues, and potential memory problems during
high-speed battles. The timer now usesexecutor.submit()instead of direct execution when delay is 0,
maintaining proper thread separation and allowing task cancellation. This preserves both the memory leak fix from
0.35.3 and timing precision at unlimited TPS. - Fixed the issue where the bots turn timeout was not respected when TPS=-1. Turn now completes immediately when all
bots respond (or at theturn timeoutdeadline), and TPS controls only the visual delay for observers. - Thanks to Jan Durovec for reporting these issues! β€οΈ
- #180: Fixed critical reentrancy bug in 0.35.4 where
π Quick Start
New to Robocode Tank Royale? Follow these steps to get started:
- Install Java 11 or newer β Required to run Robocode
- Download and install the GUI β Choose between native installer or JAR file (see below)
- Download sample bots β Get pre-built bots to try out immediately
- Run your first battle β Launch the GUI and start battling!
For detailed guidance, see the [Getting Started] guide and [My First Bot tutorial].
π Documentation
The complete Robocode Tank Royale documentation is available at:
https://robocode-dev.github.io/tank-royale/
π The Book of Robocode: book.robocode.dev β Comprehensive guide with
advanced strategies for Tank Royale like wave surfing, guess-factor targeting, and movement techniques.
Recommended reading order:
- [Getting Started] β Learn the basics
- [Installation guide] β Detailed setup instructions
- [My First Bot tutorial] β Build your first bot
- [GUI documentation] β Master the user interface
π Installing Robocode
Requirements
- Java 11 or newer is required to run Robocode Tank Royale
- We recommend using the latest Java version for the best performance
- Download Java from the official Oracle website or use [OpenJDK]
π See the [installation guide] for detailed instructions on installing Java and setting up Robocode.
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)
Native installers provide the easiest installation experience. The GUI will be registered with your operating system,
allowing you to launch it from your application menu or desktop shortcut.
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | [robocode-tank-royale-gui-0.35.5.msi] |
| π macOS | [robocode-tank-royale-gui-0.35.5.pkg] |
| π§ Linux | [robocode-tank-royale-gui-0.35.5.rpm] (RPM) / [robocode-tank-royale-gui-0.35.5.deb] (DEB) |
System Requirements:
- Java 11 or newer must be installed
- The
JAVA_HOMEenvironment variable must be set to your Java installation directory- Need help? Read this article from Baeldung:
How to Set JAVA_HOME on Windows, macOS, and Linux
- Need help? Read this article from Baeldung:
β οΈ Important: Unsigned InstallersThe native installers are not code-signed with platform certificates. This is normal for open-source projects.
Your operating system may display security warnings when installing β see the instructions below for your platform.You can verify installer authenticity using the [SHA256SUMS] and [SHA256SUMS.asc] files provided with this release.
Installation Steps:
πͺ Windows (MSI)
- Download the
.msifile - Double-click to run the installer
- If Windows SmartScreen appears ("Windows protected your PC"):
- Click "More info"
- Click "Run anyway"
- If prompted by User Account Control (UAC), click "Yes"
- Follow the installation wizard
π macOS (PKG)
- Download the
.pkgfile - Double-click to run the installer
- If macOS Gatekeeper blocks it ("cannot be opened because it is from an unidentified developer"):
- Open System Settings β Privacy & Security
- Scroll down and click "Open Anyway" next to the blocked installer
- Or: Right-click the
.pkgfile and select "Open", then click "Open" in the dialog - Or: Run in Terminal:
xattr -d com.apple.quarantine robocode-tank-royale-gui-0.35.5.pkg
- Enter your administrator password when prompted
- Follow the installation wizard
π§ Linux (RPM/DEB)
RPM (Fedora/CentOS/RHEL):
sudo dnf install ./robocode-tank-royale-gui-0.35.5.x86_64.rpm
# or
sudo rpm -ivh robocode-tank-royale-gui-0.35.5.x86_64.rpmDEB (Debian/Ubuntu):
sudo apt install ./robocode-tank-royale-gui_0.35.5_amd64.deb
# or
sudo dpkg -i robocode-tank-royale-gui_0.35.5_amd64.debNote: Linux packages may show warnings about being unsigned. This is normal for community-distributed software.
After installation, find Robocode Tank Royale GUI in your application menu/launcher and start battling!
Option 2: Portable JAR File
For users who prefer a portable installation or want more control, you can download the GUI as a standalone JAR file.
Download:
| Platform | Download |
|---|---|
| All | [robocode-tankroyale-gui-0.35.5.jar] |
System Requirements:
- Java 11 or newer must be installed and available on your system
PATH
Running the GUI:
Open a terminal (or command prompt on Windows) and run:
java -jar robocode-tankroyale-gui-0.35.5.jarπ‘ Pro Tips for Better Organization:
Create a dedicated directory for Robocode (e.g., C:\Robocode or ~/Robocode) and place the JAR file there. Then
create a launcher script for easy access:
Windows (run-robocode.bat):
@echo off
java -jar robocode-tankroyale-gui-0.35.5.jarLinux/macOS (run-robocode.sh):
#!/bin/sh
java -jar robocode-tankroyale-gui-0.35.5.jarMake the script executable on Linux/macOS:
chmod +x run-robocode.shWhy use a dedicated directory?
- Robocode automatically creates configuration files in the same directory as the JAR
- Makes it easy to manage settings, logs, and optional resources (like the
sounds/folder) - Keeps your system organized with all Robocode files in one place
For more details on using the GUI, see the [GUI documentation].
π€ Sample Bots
To start battling immediately, download pre-built sample bots. These bots demonstrate different strategies and
programming styles.
How to install sample bots:
- Download the sample bots archive for your preferred language(s)
- Extract the archive to a directory on your system (e.g.,
C:\Robocode\bots\pythonor~/robocode/bots/python) - In the GUI, go to Config β Bot Root Directories and add the extracted directory
- The bots will now appear in your bot list!
Available sample bots:
| Language | Download | Requirements |
|---|---|---|
| π Python | [sample-bots-python-0.35.5.zip] | [Python] 3.10 or newer |
| π· C# | [sample-bots-csharp-0.35.5.zip] | Microsoft [.NET SDK] 8 or newer |
| β Java | [sample-bots-java-0.35.5.zip] | Any [Java SDK] 11 or newer |
π Each archive contains a README.md file with platform-specific instructions.
π¦ Bot API
Ready to develop your own bots? Choose your preferred programming language and install the corresponding Bot API.
π Python
Install via pip:
pip install robocode-tank-royale==0.35.5Or download from Python Package Index (PyPI)
β Java
Option 1: Maven (recommended)
Add to your pom.xml:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.35.5</version>
</dependency>Option 2: Gradle
Add to your build.gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.35.5'Option 3: Direct JAR download
- Download: [robocode-tankroyale-bot-api-0.35.5.jar]
- Or
browse: Maven Central Repository
π· .NET (C#, F#, VB.NET)
Install via NuGet Package Manager:
dotnet add package Robocode.TankRoyale.BotApi --version 0.35.5Or browse: NuGet repository
π Sound Effects
Enhance your Robocode experience with sound effects! Sound files...
0.35.2
π¦ 0.35.2 - Windows Path Fix β 28-Jan-2026
π Bug Fixes
- GUI:
- Fixed
InvalidPathExceptionon Windows when bot directories contained backslashes. Windows paths like
C:\robocode\bots\pythonwere being corrupted because backslash sequences (e.g.,\r,\b) were interpreted
as escape characters when saved to the properties file. Bot directory paths are now normalized to use forward
slashes, which work correctly on all platforms.
- Fixed
π Quick Start
New to Robocode Tank Royale? Follow these steps to get started:
- Install Java 11 or newer β Required to run Robocode
- Download and install the GUI β Choose between native installer or JAR file (see below)
- Download sample bots β Get pre-built bots to try out immediately
- Run your first battle β Launch the GUI and start battling!
For detailed guidance, see the [Getting Started] guide and [My First Bot tutorial].
π Documentation
The complete Robocode Tank Royale documentation is available at:
https://robocode-dev.github.io/tank-royale/
Recommended reading order:
- [Getting Started] β Learn the basics
- [Installation guide] β Detailed setup instructions
- [My First Bot tutorial] β Build your first bot
- [GUI documentation] β Master the user interface
π Installing Robocode
Requirements
- Java 11 or newer is required to run Robocode Tank Royale
- We recommend using the latest Java version for best performance
- Download Java from the official Oracle website or use [OpenJDK]
π See the [installation guide] for detailed instructions on installing Java and setting up Robocode.
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)
Native installers provide the easiest installation experience. The GUI will be registered with your operating system,
allowing you to launch it from your application menu or desktop shortcut.
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | [robocode-tank-royale-gui-0.35.2.msi] |
| π macOS | [robocode-tank-royale-gui-0.35.2.pkg] |
| π§ Linux | [robocode-tank-royale-gui-0.35.2.rpm] (RPM) / [robocode-tank-royale-gui-0.35.2.deb] (DEB) |
System Requirements:
- Java 11 or newer must be installed
- The
JAVA_HOMEenvironment variable must be set to your Java installation directory- Need help? Read this article from Baeldung:
How to Set JAVA_HOME on Windows, macOS, and Linux
- Need help? Read this article from Baeldung:
β οΈ Important: Unsigned InstallersThe native installers are not code-signed with platform certificates. This is normal for open-source projects.
Your operating system may display security warnings when installing β see the instructions below for your platform.You can verify installer authenticity using the [SHA256SUMS] and [SHA256SUMS.asc] files provided with this release.
Installation Steps:
πͺ Windows (MSI)
- Download the
.msifile - Double-click to run the installer
- If Windows SmartScreen appears ("Windows protected your PC"):
- Click "More info"
- Click "Run anyway"
- If prompted by User Account Control (UAC), click "Yes"
- Follow the installation wizard
π macOS (PKG)
- Download the
.pkgfile - Double-click to run the installer
- If macOS Gatekeeper blocks it ("cannot be opened because it is from an unidentified developer"):
- Open System Settings β Privacy & Security
- Scroll down and click "Open Anyway" next to the blocked installer
- Or: Right-click the
.pkgfile and select "Open", then click "Open" in the dialog - Or: Run in Terminal:
xattr -d com.apple.quarantine robocode-tank-royale-gui-0.35.2.pkg
- Enter your administrator password when prompted
- Follow the installation wizard
π§ Linux (RPM/DEB)
RPM (Fedora/CentOS/RHEL):
sudo dnf install ./robocode-tank-royale-gui-0.35.2.x86_64.rpm
# or
sudo rpm -ivh robocode-tank-royale-gui-0.35.2.x86_64.rpmDEB (Debian/Ubuntu):
sudo apt install ./robocode-tank-royale-gui_0.35.2_amd64.deb
# or
sudo dpkg -i robocode-tank-royale-gui_0.35.2_amd64.debNote: Linux packages may show warnings about being unsigned. This is normal for community-distributed software.
After installation, find Robocode Tank Royale GUI in your application menu/launcher and start battling!
Option 2: Portable JAR File
For users who prefer a portable installation or want more control, you can download the GUI as a standalone JAR file.
Download:
| Platform | Download |
|---|---|
| All | [robocode-tankroyale-gui-0.35.2.jar] |
System Requirements:
- Java 11 or newer must be installed and available on your system
PATH
Running the GUI:
Open a terminal (or command prompt on Windows) and run:
java -jar robocode-tankroyale-gui-0.35.2.jarπ‘ Pro Tips for Better Organization:
Create a dedicated directory for Robocode (e.g., C:\Robocode or ~/Robocode) and place the JAR file there. Then
create a launcher script for easy access:
Windows (run-robocode.bat):
@echo off
java -jar robocode-tankroyale-gui-0.35.2.jarLinux/macOS (run-robocode.sh):
#!/bin/sh
java -jar robocode-tankroyale-gui-0.35.2.jarMake the script executable on Linux/macOS:
chmod +x run-robocode.shWhy use a dedicated directory?
- Robocode automatically creates configuration files in the same directory as the JAR
- Makes it easy to manage settings, logs, and optional resources (like the
sounds/folder) - Keeps your system organized with all Robocode files in one place
For more details on using the GUI, see the [GUI documentation].
π€ Sample Bots
To start battling immediately, download pre-built sample bots. These bots demonstrate different strategies and
programming styles.
How to install sample bots:
- Download the sample bots archive for your preferred language(s)
- Extract the archive to a directory on your system (e.g.,
C:\Robocode\bots\pythonor~/robocode/bots/python) - In the GUI, go to Config β Bot Root Directories and add the extracted directory
- The bots will now appear in your bot list!
Available sample bots:
| Language | Download | Requirements |
|---|---|---|
| π Python | [sample-bots-python-0.35.2.zip] | [Python] 3.10 or newer |
| π· C# | [sample-bots-csharp-0.35.2.zip] | Microsoft [.NET SDK] 8 or newer |
| β Java | [sample-bots-java-0.35.2.zip] | Any [Java SDK] 11 or newer |
π Each archive contains a README.md file with platform-specific instructions.
π¦ Bot API
Ready to develop your own bots? Choose your preferred programming language and install the corresponding Bot API.
π Python
Install via pip:
pip install robocode-tank-royale==0.35.2Or download from Python Package Index (PyPI)
β Java
Option 1: Maven (recommended)
Add to your pom.xml:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.35.2</version>
</dependency>Option 2: Gradle
Add to your build.gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.35.2'Option 3: Direct JAR download
- Download: [robocode-tankroyale-bot-api-0.35.2.jar]
- Or
browse: Maven Central Repository
π· .NET (C#, F#, VB.NET)
Install via NuGet Package Manager:
dotnet add package Robocode.TankRoyale.BotApi --version 0.35.2Or browse: NuGet repository
π Sound Effects
Enhance your Robocode experience with sound effects! Sound files are available separately from the main distribution.
Download: Sounds Repository
Installation:
- Visit the sounds repository linked above
- Follow the installation instructions to place the
sounds/directory in the correct location relative to your GUI
installation - Restart the GUI to enable sound effects
Sounds include gunshots, explosions, collisions, and more!
π Additional Resources
- GitHub Repository: robocode-dev/tank-royale
- Issue Tracker: Report bugs or request features
- Documentation: [Complete documentation site](https://robocode-dev...
0.35.1
π¦ 0.35.1 - Automatic User Data Migration β 27-Jan-2026
π Improvements
- GUI:
- Added automatic migration of user data files (
gui.properties,server.properties,game-setups.properties,
andrecordings/directory) from the old location (current working directory or JAR location) to the new
platform-specific user data directory. This removes the need for manual file migration when upgrading from
pre-0.35.0 versions.
- Added automatic migration of user data files (
π Quick Start
New to Robocode Tank Royale? Follow these steps to get started:
- Install Java 11 or newer β Required to run Robocode
- Download and install the GUI β Choose between native installer or JAR file (see below)
- Download sample bots β Get pre-built bots to try out immediately
- Run your first battle β Launch the GUI and start battling!
For detailed guidance, see the [Getting Started] guide and [My First Bot tutorial].
π Documentation
The complete Robocode Tank Royale documentation is available at:
https://robocode-dev.github.io/tank-royale/
Recommended reading order:
- [Getting Started] β Learn the basics
- [Installation guide] β Detailed setup instructions
- [My First Bot tutorial] β Build your first bot
- [GUI documentation] β Master the user interface
π Installing Robocode
Requirements
- Java 11 or newer is required to run Robocode Tank Royale
- We recommend using the latest Java version for best performance
- Download Java from the official Oracle website or use [OpenJDK]
π See the [installation guide] for detailed instructions on installing Java and setting up Robocode.
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)
Native installers provide the easiest installation experience. The GUI will be registered with your operating system,
allowing you to launch it from your application menu or desktop shortcut.
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | [robocode-tank-royale-gui-0.35.1.msi] |
| π macOS | [robocode-tank-royale-gui-0.35.1.pkg] |
| π§ Linux | [robocode-tank-royale-gui-0.35.1.rpm] (RPM) / [robocode-tank-royale-gui-0.35.1.deb] (DEB) |
System Requirements:
- Java 11 or newer must be installed
- The
JAVA_HOMEenvironment variable must be set to your Java installation directory- Need help? Read this article from Baeldung:
How to Set JAVA_HOME on Windows, macOS, and Linux
- Need help? Read this article from Baeldung:
β οΈ Important: Unsigned InstallersThe native installers are not code-signed with platform certificates. This is normal for open-source projects.
Your operating system may display security warnings when installing β see the instructions below for your platform.You can verify installer authenticity using the [SHA256SUMS] and [SHA256SUMS.asc] files provided with this release.
Installation Steps:
πͺ Windows (MSI)
- Download the
.msifile - Double-click to run the installer
- If Windows SmartScreen appears ("Windows protected your PC"):
- Click "More info"
- Click "Run anyway"
- If prompted by User Account Control (UAC), click "Yes"
- Follow the installation wizard
π macOS (PKG)
- Download the
.pkgfile - Double-click to run the installer
- If macOS Gatekeeper blocks it ("cannot be opened because it is from an unidentified developer"):
- Open System Settings β Privacy & Security
- Scroll down and click "Open Anyway" next to the blocked installer
- Or: Right-click the
.pkgfile and select "Open", then click "Open" in the dialog - Or: Run in Terminal:
xattr -d com.apple.quarantine robocode-tank-royale-gui-0.35.1.pkg
- Enter your administrator password when prompted
- Follow the installation wizard
π§ Linux (RPM/DEB)
RPM (Fedora/CentOS/RHEL):
sudo dnf install ./robocode-tank-royale-gui-0.35.1.x86_64.rpm
# or
sudo rpm -ivh robocode-tank-royale-gui-0.35.1.x86_64.rpmDEB (Debian/Ubuntu):
sudo apt install ./robocode-tank-royale-gui_0.35.1_amd64.deb
# or
sudo dpkg -i robocode-tank-royale-gui_0.35.1_amd64.debNote: Linux packages may show warnings about being unsigned. This is normal for community-distributed software.
After installation, find Robocode Tank Royale GUI in your application menu/launcher and start battling!
Option 2: Portable JAR File
For users who prefer a portable installation or want more control, you can download the GUI as a standalone JAR file.
Download:
| Platform | Download |
|---|---|
| All | [robocode-tankroyale-gui-0.35.1.jar] |
System Requirements:
- Java 11 or newer must be installed and available on your system
PATH
Running the GUI:
Open a terminal (or command prompt on Windows) and run:
java -jar robocode-tankroyale-gui-0.35.1.jarπ‘ Pro Tips for Better Organization:
Create a dedicated directory for Robocode (e.g., C:\Robocode or ~/Robocode) and place the JAR file there. Then
create a launcher script for easy access:
Windows (run-robocode.bat):
@echo off
java -jar robocode-tankroyale-gui-0.35.1.jarLinux/macOS (run-robocode.sh):
#!/bin/sh
java -jar robocode-tankroyale-gui-0.35.1.jarMake the script executable on Linux/macOS:
chmod +x run-robocode.shWhy use a dedicated directory?
- Robocode automatically creates configuration files in the same directory as the JAR
- Makes it easy to manage settings, logs, and optional resources (like the
sounds/folder) - Keeps your system organized with all Robocode files in one place
For more details on using the GUI, see the [GUI documentation].
π€ Sample Bots
To start battling immediately, download pre-built sample bots. These bots demonstrate different strategies and
programming styles.
How to install sample bots:
- Download the sample bots archive for your preferred language(s)
- Extract the archive to a directory on your system (e.g.,
C:\Robocode\bots\pythonor~/robocode/bots/python) - In the GUI, go to Config β Bot Root Directories and add the extracted directory
- The bots will now appear in your bot list!
Available sample bots:
| Language | Download | Requirements |
|---|---|---|
| π Python | [sample-bots-python-0.35.1.zip] | [Python] 3.10 or newer |
| π· C# | [sample-bots-csharp-0.35.1.zip] | Microsoft [.NET SDK] 8 or newer |
| β Java | [sample-bots-java-0.35.1.zip] | Any [Java SDK] 11 or newer |
π Each archive contains a README.md file with platform-specific instructions.
π¦ Bot API
Ready to develop your own bots? Choose your preferred programming language and install the corresponding Bot API.
π Python
Install via pip:
pip install robocode-tank-royale==0.35.1Or download from Python Package Index (PyPI)
β Java
Option 1: Maven (recommended)
Add to your pom.xml:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.35.1</version>
</dependency>Option 2: Gradle
Add to your build.gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:0.35.1'Option 3: Direct JAR download
- Download: [robocode-tankroyale-bot-api-0.35.1.jar]
- Or
browse: Maven Central Repository
π· .NET (C#, F#, VB.NET)
Install via NuGet Package Manager:
dotnet add package Robocode.TankRoyale.BotApi --version 0.35.1Or browse: NuGet repository
π Sound Effects
Enhance your Robocode experience with sound effects! Sound files are available separately from the main distribution.
Download: Sounds Repository
Installation:
- Visit the sounds repository linked above
- Follow the installation instructions to place the
sounds/directory in the correct location relative to your GUI
installation - Restart the GUI to enable sound effects
Sounds include gunshots, explosions, collisions, and more!
π Additional Resources
- GitHub Repository: robocode-dev/tank-royale
- Issue Tracker: Report bugs or request features
- Documentation: [Complete documentation site](https://robocode-dev.github.io/...
0.35.0
π¦ 0.35.0 - BREAKING: Python Bot API Converted to Synchronous API & Refactored to Use Properties - 26-Jan-2026
π₯ Breaking Changes (Python Bot API)
The Python Bot API has been refactored to match Java and .NET:
- Async β Sync: Converted from
async/awaitto synchronous blocking API - Properties: Replaced getter/setter methods with Pythonic property accessors
- Typed Team Messages: Use
@team_message_typedecorator for automatic serialization
Quick Migration
| Before (0.34.x) | After (0.35.0) |
|---|---|
async def run(self): |
def run(self): |
await self.forward(100) |
self.forward(100) |
asyncio.run(bot.start()) |
bot.start() |
self.get_energy() |
self.energy |
self.is_running() |
self.running |
self.set_adjust_gun_for_body_turn(True) |
self.adjust_gun_for_body_turn = True |
Full migration guide: See the
MyFirstBotsample bots
and Team Messages article.
π Improvements
- Python Bot API: Synchronous API with property accessors, typed team messages with
Colorserialization - Bot Events Panel: Optimized logging, improved formatting with ANSI colors, grouped
bulletStates - Recordings: Now saved to
recordingssubdirectory in user data directory - Build: Replaced Proguard with R8 for code shrinking
π Bug Fixes
-
Bot API (Java, C#/.NET, Python):
- Fixed a bug where the user's
OnDeathcallback would not be called when the bot dies. The internal death handler
was stopping the bot thread before the event queue could dispatch theDeathEventto user callbacks.
Now theOnDeathhandler is subscribed to public event handlers with priority 0 (lower than user's default of 1),
ensuring user'sOnDeathcallback runs before the thread is stopped.
- Fixed a bug where the user's
-
GUI:
- Improved performance of the bot console and server log windows under heavy logging.
- Added batched updates to reduce UI freezes when bots or the server produce a high volume of output.
- Introduced bounded retention to prevent the console from consuming too much memory and becoming slow over
time. - Added a new configuration setting
console-max-characters(default: 10,000) to control the maximum amount of
text retained in each console window.- How to configure:
- Open the
Config->GUI Optionsmenu in the GUI. - Adjust the
Console max charactersvalue and clickOKto save.
- Open the
- How to configure:
π Quick Start
New to Robocode Tank Royale? Follow these steps to get started:
- Install Java 11 or newer β Required to run Robocode
- Download and install the GUI β Choose between native installer or JAR file (see below)
- Download sample bots β Get pre-built bots to try out immediately
- Run your first battle β Launch the GUI and start battling!
For detailed guidance, see the [Getting Started] guide and [My First Bot tutorial].
π Documentation
The complete Robocode Tank Royale documentation is available at:
https://robocode-dev.github.io/tank-royale/
Recommended reading order:
- [Getting Started] β Learn the basics
- [Installation guide] β Detailed setup instructions
- [My First Bot tutorial] β Build your first bot
- [GUI documentation] β Master the user interface
π Installing Robocode
Requirements
- Java 11 or newer is required to run Robocode Tank Royale
- We recommend using the latest Java version for best performance
- Download Java from the official Oracle website or use [OpenJDK]
π See the [installation guide] for detailed instructions on installing Java and setting up Robocode.
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)
Native installers provide the easiest installation experience. The GUI will be registered with your operating system,
allowing you to launch it from your application menu or desktop shortcut.
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | [robocode-tank-royale-gui-0.35.0.msi] |
| π macOS | [robocode-tank-royale-gui-0.35.0.pkg] |
| π§ Linux | [robocode-tank-royale-gui-0.35.0.rpm] (RPM) / [robocode-tank-royale-gui-0.35.0.deb] (DEB) |
System Requirements:
- Java 11 or newer must be installed
- The
JAVA_HOMEenvironment variable must be set to your Java installation directory- Need help? Read this article from Baeldung:
How to Set JAVA_HOME on Windows, macOS, and Linux
- Need help? Read this article from Baeldung:
β οΈ Important: Unsigned InstallersThe native installers are not code-signed with platform certificates. This is normal for open-source projects.
Your operating system may display security warnings when installing β see the instructions below for your platform.You can verify installer authenticity using the [SHA256SUMS] and [SHA256SUMS.asc] files provided with this release.
Installation Steps:
πͺ Windows (MSI)
- Download the
.msifile - Double-click to run the installer
- If Windows SmartScreen appears ("Windows protected your PC"):
- Click "More info"
- Click "Run anyway"
- If prompted by User Account Control (UAC), click "Yes"
- Follow the installation wizard
π macOS (PKG)
- Download the
.pkgfile - Double-click to run the installer
- If macOS Gatekeeper blocks it ("cannot be opened because it is from an unidentified developer"):
- Open System Settings β Privacy & Security
- Scroll down and click "Open Anyway" next to the blocked installer
- Or: Right-click the
.pkgfile and select "Open", then click "Open" in the dialog - Or: Run in Terminal:
xattr -d com.apple.quarantine robocode-tank-royale-gui-0.35.0.pkg
- Enter your administrator password when prompted
- Follow the installation wizard
π§ Linux (RPM/DEB)
RPM (Fedora/CentOS/RHEL):
sudo dnf install ./robocode-tank-royale-gui-0.35.0.x86_64.rpm
# or
sudo rpm -ivh robocode-tank-royale-gui-0.35.0.x86_64.rpmDEB (Debian/Ubuntu):
sudo apt install ./robocode-tank-royale-gui_0.35.0_amd64.deb
# or
sudo dpkg -i robocode-tank-royale-gui_0.35.0_amd64.debNote: Linux packages may show warnings about being unsigned. This is normal for community-distributed software.
After installation, find Robocode Tank Royale GUI in your application menu/launcher and start battling!
Option 2: Portable JAR File
For users who prefer a portable installation or want more control, you can download the GUI as a standalone JAR file.
Download:
| Platform | Download |
|---|---|
| All | [robocode-tankroyale-gui-0.35.0.jar] |
System Requirements:
- Java 11 or newer must be installed and available on your system
PATH
Running the GUI:
Open a terminal (or command prompt on Windows) and run:
java -jar robocode-tankroyale-gui-0.35.0.jarπ‘ Pro Tips for Better Organization:
Create a dedicated directory for Robocode (e.g., C:\Robocode or ~/Robocode) and place the JAR file there. Then
create a launcher script for easy access:
Windows (run-robocode.bat):
@echo off
java -jar robocode-tankroyale-gui-0.35.0.jarLinux/macOS (run-robocode.sh):
#!/bin/sh
java -jar robocode-tankroyale-gui-0.35.0.jarMake the script executable on Linux/macOS:
chmod +x run-robocode.shWhy use a dedicated directory?
- Robocode automatically creates configuration files in the same directory as the JAR
- Makes it easy to manage settings, logs, and optional resources (like the
sounds/folder) - Keeps your system organized with all Robocode files in one place
For more details on using the GUI, see the [GUI documentation].
π€ Sample Bots
To start battling immediately, download pre-built sample bots. These bots demonstrate different strategies and
programming styles.
How to install sample bots:
- Download the sample bots archive for your preferred language(s)
- Extract the archive to a directory on your system (e.g.,
C:\Robocode\bots\pythonor~/robocode/bots/python) - In the GUI, go to Config β Bot Root Directories and add the extracted directory
- The bots will now appear in your bot list!
Available sample bots:
| Language | Download | Requirements |
|---------------|------------------------------------|-----------------------------...
0.34.2
π¦ 0.34.2 - Added native installer packages for GUI β 25-Dec-2025
Native installer packages for the GUI have been added for Windows, Linux, and macOS. These packages might still be early
days. If you find any issues, please report them on the
issue tracker.
These packages still require Java 11 or higher to be installed on your system, but they make it easier to install,
uninstall, and run Robocode Tank Royale.
You can still download the JAR version as usual, which works on all platforms with Java 11 or higher installed.
π§ Changes
- Replaced Picocli for Clikt for the server, booter, and recorder.
π Bug Fixes
- #178: Fix .sh scripts to use
javainstead ofjavaw - Fixed a major bug with the Server, Booter, and Recorder where the application ran when
--infoor--helpwas passed
as a command line argument.
π Improvements
-
Bot API for C#/.NET:
- Updated to the newest dependencies.
-
GUI:
- Added native installer packages for the GUI (Windows MSI, macOS PKG, Linux RPM, and DEB).
- Note: Java 11+ is required and the runtime must be discoverable via the
JAVA_HOMEenvironment variable. See
the installation documentation for platform-specific instructions.
- Note: Java 11+ is required and the runtime must be discoverable via the
- Settings are now stored in platform-specific user directories to avoid permission issues:
- Windows:
%LOCALAPPDATA%\Robocode Tank Royaleor%APPDATA%\Robocode Tank Royale - macOS:
~/Library/Application Support/Robocode Tank Royale - Linux:
$XDG_CONFIG_HOME/robocode-tank-royaleor~/.config/robocode-tank-royale
- Windows:
- You need to move your
gui.properties,server.properties,game-setups.propertiesand therecordings
directory into the new user data directory for the GUI. - Added jlink runtime image creation for Windows installers to avoid "Failed to launch VM" issues on some machines.
- Added native installer packages for the GUI (Windows MSI, macOS PKG, Linux RPM, and DEB).
π Quick Start
New to Robocode Tank Royale? Follow these steps to get started:
- Install Java 11 or newer β Required to run Robocode
- Download and install the GUI β Choose between native installer or JAR file (see below)
- Download sample bots β Get pre-built bots to try out immediately
- Run your first battle β Launch the GUI and start battling!
For detailed guidance, see the [Getting Started] guide and [My First Bot tutorial].
π Documentation
The complete Robocode Tank Royale documentation is available at:
https://robocode-dev.github.io/tank-royale/
Recommended reading order:
- [Getting Started] β Learn the basics
- [Installation guide] β Detailed setup instructions
- [My First Bot tutorial] β Build your first bot
- [GUI documentation] β Master the user interface
π Installing Robocode
Requirements
- Java 11 or newer is required to run Robocode Tank Royale
- We recommend using the latest Java version for best performance
- Download Java from the official Oracle website or use [OpenJDK]
π See the [installation guide] for detailed instructions on installing Java and setting up Robocode.
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)
Native installers provide the easiest installation experience. The GUI will be registered with your operating system,
allowing you to launch it from your application menu or desktop shortcut.
Download for your platform:
| Platform | Installer |
|---|---|
| πͺ Windows | [robocode-tank-royale-gui-0.34.2.msi] |
| π macOS | [robocode-tank-royale-gui-0.34.2.pkg] |
| π§ Linux | [robocode-tank-royale-gui-0.34.2.rpm] (RPM) / [robocode-tank-royale-gui-0.34.2.deb] (DEB) |
System Requirements:
- Java 11 or newer must be installed
- The
JAVA_HOMEenvironment variable must be set to your Java installation directory- Need help? Read this article from Baeldung:
How to Set JAVA_HOME on Windows, macOS, and Linux
- Need help? Read this article from Baeldung:
β οΈ Important: Unsigned InstallersThe native installers are not code-signed with platform certificates. This is normal for open-source projects.
Your operating system may display security warnings when installing β see the instructions below for your platform.You can verify installer authenticity using the [SHA256SUMS] and [SHA256SUMS.asc] files provided with this release.
Installation Steps:
πͺ Windows (MSI)
- Download the
.msifile - Double-click to run the installer
- If Windows SmartScreen appears ("Windows protected your PC"):
- Click "More info"
- Click "Run anyway"
- If prompted by User Account Control (UAC), click "Yes"
- Follow the installation wizard
π macOS (PKG)
- Download the
.pkgfile - Double-click to run the installer
- If macOS Gatekeeper blocks it ("cannot be opened because it is from an unidentified developer"):
- Open System Settings β Privacy & Security
- Scroll down and click "Open Anyway" next to the blocked installer
- Or: Right-click the
.pkgfile and select "Open", then click "Open" in the dialog - Or: Run in Terminal:
xattr -d com.apple.quarantine robocode-tank-royale-gui-0.34.2.pkg
- Enter your administrator password when prompted
- Follow the installation wizard
π§ Linux (RPM/DEB)
RPM (Fedora/CentOS/RHEL):
sudo dnf install ./robocode-tank-royale-gui-0.34.2.x86_64.rpm
# or
sudo rpm -ivh robocode-tank-royale-gui-0.34.2.x86_64.rpmDEB (Debian/Ubuntu):
sudo apt install ./robocode-tank-royale-gui_0.34.2_amd64.deb
# or
sudo dpkg -i robocode-tank-royale-gui_0.34.2_amd64.debNote: Linux packages may show warnings about being unsigned. This is normal for community-distributed software.
After installation, find Robocode Tank Royale GUI in your application menu/launcher and start battling!
Option 2: Portable JAR File
For users who prefer a portable installation or want more control, you can download the GUI as a standalone JAR file.
Download:
| Platform | Download |
|---|---|
| All | [robocode-tankroyale-gui-0.34.2.jar] |
System Requirements:
- Java 11 or newer must be installed and available on your system
PATH
Running the GUI:
Open a terminal (or command prompt on Windows) and run:
java -jar robocode-tankroyale-gui-0.34.2.jarπ‘ Pro Tips for Better Organization:
Create a dedicated directory for Robocode (e.g., C:\Robocode or ~/Robocode) and place the JAR file there. Then
create a launcher script for easy access:
Windows (run-robocode.bat):
@echo off
java -jar robocode-tankroyale-gui-0.34.2.jarLinux/macOS (run-robocode.sh):
#!/bin/sh
java -jar robocode-tankroyale-gui-0.34.2.jarMake the script executable on Linux/macOS:
chmod +x run-robocode.shWhy use a dedicated directory?
- Robocode automatically creates configuration files in the same directory as the JAR
- Makes it easy to manage settings, logs, and optional resources (like the
sounds/folder) - Keeps your system organized with all Robocode files in one place
For more details on using the GUI, see the [GUI documentation].
π€ Sample Bots
To start battling immediately, download pre-built sample bots. These bots demonstrate different strategies and
programming styles.
How to install sample bots:
- Download the sample bots archive for your preferred language(s)
- Extract the archive to a directory on your system (e.g.,
C:\Robocode\bots\pythonor~/robocode/bots/python) - In the GUI, go to Config β Bot Root Directories and add the extracted directory
- The bots will now appear in your bot list!
Available sample bots:
| Language | Download | Requirements |
|---|---|---|
| π Python | [sample-bots-python-0.34.2.zip] | [Python] 3.10 or newer |
| π· C# | [sample-bots-csharp-0.34.2.zip] | Microsoft [.NET SDK] 8 or newer |
| β Java | [sample-bots-java-0.34.2.zip] | Any [Java SDK] 11 or newer |
π Each archive contains a README.md file with platform-specific instructions.
π¦ Bot API
Ready to develop your own bots? Choose your preferred programming language and install the corresponding Bot API.
π Python
Install via pip:
pip install robocode-tank-royale==0.34.2Or download from Python Package Index (PyPI)
β Java
Option 1: Maven (recommended)
Add to your pom.xml:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>0.34.2</version>
</dependency>...
0.34.1
π¦ 0.34.1 - Fixes on_death in Python Bot API and GUI improvements β 14-Nov-2025
π Improvements
-
GUI
- #174: Prevent overwriting UI scale property (
sun.java2d.uiScale) for high DPI displays if already set (via
command line). Thanks goes to David Martinez PeΓ±a π- Fixed for the
sun.java2d.d3dandsun.java2d.openglas well.
- Fixed for the
- #174: Prevent overwriting UI scale property (
-
Updated the devcontainer so it uses the current and full tech stack necessary to build all of Robocode Tank Royale.
π Bug Fixes
- Bot API for Python:
- The on_death() event handler is now called when the bot dies.
π Documentation
You find the Robocode Tank Royale documentation here. You
should start out by reading Getting Started first.
π¨ Try it out
Please head over to My First Bot tutorial to learn how to set up your first bot for Robocode Tank Royale.
π Installing Robocode
You need Java 11 as a minimum or newer, e.g. the newest version of Java available.
You can read the installation guide to get more details about installing both Java and Robocode.
βΆ Running Robocode
The main application is the GUI which is a Java application. You can read about how to use the
GUI here.
The Robocode GUI is run from the command line (shell or command prompt) in order to start and view
battles:
java -jar robocode-tankroyale-gui-0.34.1.jarπ€ Sample bots
If you are new to Robocode, you need to download some bots and extract those to directories on your system.
These bot directories can be added from the menu of the GUI: Config β Bot Root Directories
These sample bots are currently available:
| Platform | Archive | Requirements |
|---|---|---|
| Python | sample-bots-python-0.34.1.zip | Python 3.10 or newer |
| C# | sample-bots-csharp-0.34.1.zip | Microsoft .NET SDK 8 or newer |
| Java | sample-bots-java-0.34.1.zip | Any Java SDK 11 or newer |
All bots are put in zip archives, which should be installed in independent directories.
Each zip archive contains a ReadMe.md file with more information for the specific platform.
π¦ Bot API
In order to start developing bots for Robocode, the following APIs are available.
π¦ Python:
Available as:
- Python package at the Python Package Index (PyPI)
π¦ Java:
Available as:
- Jar file: robocode-tankroyale-bot-api-0.34.1.jar
- Maven package at
the Maven Central Repository
π¦ .NET:
Available as:
- NuGet package at the NuGet repository
0.34.0
π¦ 0.34.0 β Python Support + GUI Improvements β 19-Oct-2025
The Python Bot API, sample bots, and documentation are now complete. π
We also added Spanish, Catalan/Valencian, and Danish translations. New translations are always welcome!
Additionally, we introduced UI improvements such as UI scaling and a volume slider in the options.
π Improvements
-
Bot API
-
GUI
- #168: Added GUI Options dialog with a UI scale setting (100%, 125%, 150%, 175%, 200%, 250%, 300%).
- #168: Applied full-UI HiDPI scaling using the JVM property
sun.java2d.uiScale, based on the saved setting.- Thanks to David Martinez PeΓ±a for proposing the solution that made this possible. πͺ
- Added volume slider in the Sound Options dialog.
- #169: Added Spanish and Catalan/Valencian translations.
- Thank you, David Martinez PeΓ±a, for contributing the first translations everβand for helping test the Python API! β€οΈ
- Added Danish translations as well.
- Added an option to switch between Spanish, English, and Danish in the GUI Options dialog.
π Documentation
You find the Robocode Tank Royale documentation here. You
should start out by reading Getting Started first.
π¨ Try it out
Please head over to My First Bot tutorial to learn how to set up your first bot for Robocode Tank Royale.
π Installing Robocode
You need Java 11 as a minimum or newer, e.g. the newest version of Java available.
You can read the installation guide to get more details about installing both Java and Robocode.
βΆ Running Robocode
The main application is the GUI which is a Java application. You can read about how to use the
GUI here.
The Robocode GUI is run from the command line (shell or command prompt) in order to start and view
battles:
java -jar robocode-tankroyale-gui-0.34.0.jarπ€ Sample bots
If you are new to Robocode, you need to download some bots and extract those to directories on your system.
These bot directories can be added from the menu of the GUI: Config β Bot Root Directories
These sample bots are currently available:
| Platform | Archive | Requirements |
|---|---|---|
| Python | sample-bots-python-0.34.0.zip | Python 3.10 or newer |
| C# | sample-bots-csharp-0.34.0.zip | Microsoft .Net SDK 8 or newer |
| Java | sample-bots-java-0.34.0.zip | Any Java SDK 11 or newer |
All bots are put in zip archives, which should be installed in independent directories.
Each zip archive contains a ReadMe.md file with more information for the specific platform.
π¦ Bot API
In order to start developing bots for Robocode, the following APIs are available.
π¦ Python:
Available as:
- Python package at the Python Package Index (PyPI)
π¦ Java:
Available as:
- Jar file: robocode-tankroyale-bot-api-0.34.0.jar
- Maven package at the Maven Central Repository
π¦ .Net:
Available as:
- NuGet package at the NuGet repository
0.33.1
π¦ 0.33.1 - Fixes for Recording and Replays - 08-Sep-2025
π Bug Fixes
- Maven Central:
- Fixed the names of the artifacts in the Maven Central repository, which were lacking the
robocode-tankroyale
prefix.
- Fixed the names of the artifacts in the Maven Central repository, which were lacking the
- GUI:
- #162: Corrected the order of death indicators (skulls) to accurately reflect in-game events.
- Auto-Record Bug Fix: Resolved an issue where battles were still being recorded after disabling the auto-record
feature.
π Improvements
- GUI:
- #165: Enhanced "π΄REC" Indicator: Improved the visual design of the recording indicator for better clarity and user
experience.
- #165: Enhanced "π΄REC" Indicator: Improved the visual design of the recording indicator for better clarity and user
π Documentation
You find the Robocode Tank Royale documentation here. You should start out by reading Getting Started first.
π¨ Try it out
Please head over to My First Bot tutorial to learn how to set up your first bot for Robocode Tank Royale.
π Installing Robocode
You need Java 11 as a minimum or newer, e.g. the newest version of Java available.
You can read the installation guide to get more details about installing both Java and Robocode.
βΆ Running Robocode
The main application is the GUI which is a Java application. You can read about how to use the GUI here.
The Robocode GUI is run from the command line (shell or command prompt) in order to start and view
battles:
java -jar robocode-tankroyale-gui-0.33.1.jarπ€ Sample bots
If you are new to Robocode, you need to download some bots and extract those to directories on your system.
These bot directories can be added from the menu of the GUI: Config β Bot Root Directories
These sample bots are currently available:
| Platform | Archive | Requirements |
|---|---|---|
| C# | sample-bots-csharp-0.33.1.zip | Microsoft .Net SDK 6.0 or newer |
| Java | sample-bots-java-0.33.1.zip | Any Java SDK 11 or newer |
All bots are put in zip archives, which should be installed in independent directories.
Each zip archive contains a ReadMe.md file with more information for the specific platform.
π¦ Bot API
In order to start developing bots for Robocode, the following APIs are available.
π¦ Java:
Available as:
- Jar file: robocode-tankroyale-bot-api-0.33.1.jar
- Artifact at Maven Central Repository
π¦ .Net:
Available as:
- Artifact at Nuget repository