Repository navigation
1.0.0
[1.0.0] - 2026-05-03 - Version 1: Stable release with dark and light themes
This is a major milestone: version 1.0.0 marks Robocode Tank Royale as a stable, production-ready
game. The 1.0 release introduces full dark and light theme support in the GUI, powered by the
FlatLaf look-and-feel library, making the interface polished and visually consistent across
platforms. From this release onward, the project follows semantic versioning with a commitment to
API stability.
🐞 Bug Fixes
-
GUI:
- Fixed the Tank Color Mode setting ("Bot Colors (default)") reverting to "Bot Colors
(Debug Only)" after restarting the GUI. The Options dialog was re-saving the color mode
from the radio button state on OK, which could override the immediately saved selection
if the dialog state had been refreshed in between. - Fixed
Bot Colors (Once)not reliably locking the first bot-defined color for each tank
part, causing late color updates to fall back to default colors instead. - Fixed the graphical debugging toggle and breakpoint mode toggle resetting to off when a
battle is restarted. Both toggles now retain their state and re-apply the policy to the
new game automatically. Toggle preferences are stored in persistent in-memory maps keyed
by the bot's stable WebSocket session ID, so they survive frame recreation, console
close/reopen, and bot ID reassignment across restarts.
- Fixed the Tank Color Mode setting ("Bot Colors (default)") reverting to "Bot Colors
-
Server:
- Fixed
"unsupported gameType: custom"error when starting a game with the Custom game type
preset. The server now accepts all four built-in game types (classic,1v1,melee,
custom) by default instead of onlyclassic. Use the--gamesflag to restrict the
server to specific game types when needed (e.g., for competition servers).
- Fixed
-
Runner:
- Fixed
BattleRunnerignoringBattleSetup.defaultTurnsPerSecondand always starting
battles at max speed instead.
- Fixed
-
Bot API (.NET):
- Fixed C# bots sometimes losing turn-1 movement, colors, and debug painting when a battle
was restarted from the GUI, which could show up on every second restart.
- Fixed C# bots sometimes losing turn-1 movement, colors, and debug painting when a battle
-
Bot API (Java, Python, TypeScript):
- Fixed stale debug graphics being resent after debugging was disabled, which could make old
debug painting reappear on later turns or restarts. - Fixed turn-1 event handlers running before
run()had initialized bot state, which could
corrupt movement or colors set at the start of a round.
- Fixed stale debug graphics being resent after debugging was disabled, which could make old
-
Sample Bots (Java, .NET, Python, TypeScript):
- Fixed
PaintingBotdrawing ghost circles at the previous round's last-known target position
at the start of each new round. The scanned-bot state was not reset between rounds, causing
onTickto draw a stale circle until a new scan occurred. Fixed by resettingscannedTime
to 0 at the start ofrun().
- Fixed
Robocode Tank Royale 1.0.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-1.0.0.msi |
| 🍎 macOS | robocode-tank-royale-gui-1.0.0.pkg |
| 🐧 Linux | robocode-tank-royale-gui-1.0.0.rpm (RPM) / robocode-tank-royale-gui-1.0.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-1.0.0.jar
Running: java -jar robocode-tankroyale-gui-1.0.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-1.0.0.zip | Python 3.10 or newer |
| 🔷 C# | sample-bots-csharp-1.0.0.zip | Microsoft .NET SDK 8 or newer |
| ☕ Java | sample-bots-java-1.0.0.zip | Any Java SDK 11 or newer |
| 🟦 TypeScript | sample-bots-typescript-1.0.0.zip | Node.js 22 or newer |
📦 Bot API
Ready to develop your own bots? Install the API for your preferred language:
🐍 Python
pip install robocode-tank-royale==1.0.0☕ Java
Maven:
<dependency>
<groupId>dev.robocode.tankroyale</groupId>
<artifactId>robocode-tankroyale-bot-api</artifactId>
<version>1.0.0</version>
</dependency>Gradle:
implementation 'dev.robocode.tankroyale:robocode-tankroyale-bot-api:1.0.0'Direct JAR: robocode-tankroyale-bot-api-1.0.0.jar
🔷 .NET (C#, F#, VB.NET)
dotnet add package Robocode.TankRoyale.BotApi --version 1.0.0🟦 TypeScript / JavaScript
npm install @robocode.dev/tank-royale-bot-apiMore info: robocode.dev/api | PyPI | Maven Central | NuGet | npm
🔊 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