Build the best - destroy the rest!

Saturday, 6 June 2026

Robocode 1.11.0 released

Version 1.11.0 (06-Jun-2026)

Changes

  • Installer overhaul: Refactored the monolithic AutoExtract installer (844 lines) into 5 focused classes (Installer, InstallerDialog, Extractor, ShortcutManager, OsUtil).
  • Reduced confirmation dialogs from 5 user prompts down to 1 — a single "Install to" dialog with Proceed/Cancel.
  • Removed license agreement dialog, start-menu shortcut prompt, and Windows file associations prompt.
  • Removed Windows .battle/.br file association registration (rarely used, required admin privileges).
  • Removed legacy code: Win 9x/ME command.com path, obsolete .robotcache migration, fragile self-cleanup hacks.
  • Windows shortcuts are now always created without prompting.
  • Improved code quality: try-with-resources, StringBuilder, proper error handling, fixed spinner animation bug.

Bugfix

  • #89: Prevent a single fire command from spawning duplicate bullets with the same ID
    • A single setFire() call could spawn multiple bullets sharing the same bullet ID, which could cause issues with bullet tracking and battle accuracy.
    • Thanks go to Pavel Savara for fixing this ❤️. Sharp-eyed fix!
Download Robocode 1.11.0 from here

Wednesday, 4 March 2026

Battle Runner released for Robocode Tank Royale 0.37.0

I have just made a new release of Robocode Tank Royale 0.37.0, which contains the new Battle Runner 🎉 https://robocode.dev/api/battle-runner

The Battle Runner API lets you run Robocode Tank Royale battles programmatically from any JVM application — no GUI required. Use it for automated testing, benchmarking, tournament systems, or any scenario where you need headless battle execution.

Monday, 16 February 2026

Tank Royale Viewer

🖥️ Visualize Robocode battles in style!

Check out the Tank Royale Viewer by Jan Durovec – an amazing web-based viewer for watching Robocode Tank Royale matches in real-time! 🚀

Perfect for tournaments, analyzing strategies, and displaying battles on big screens! ⚡

👉 https://github.com/jandurovec/tank-royale-viewer

Saturday, 31 January 2026

📚 Introducing: The Book of Robocode 🤖

Introducing: The Book of Robocode

The Robocode community now has a comprehensive guide for mastering bot programming!

The Book of Robocode is a free, open-source resource covering everything from your first bot to advanced competitive strategies.

🎯 What's Inside

  • Step-by-step tutorials for beginners
  • Movement strategies (circular, wave surfing, and more)
  • Targeting techniques (linear, circular, pattern matching)
  • Radar and energy management
  • Real code examples for both Robocode and Robocode Tank Royale

✨ Features

  • 📖 Progressive learning path from novice to expert
  • 🔬 Math and are physics explained clearly
  • 🏆 Competition-ready strategies
  • 🤝 Built on 20+ years of RoboWiki knowledge

Whether you're writing your first bot or aiming for the top of the RoboRumble rankings, this book has something for you!

Contributions welcome — open an issue or PR if you'd like to help expand the content. 🚀

Happy robocoding! 🎮

Tuesday, 9 December 2025

Robocode 1.10.1

Version 1.10.1 (09-Dec-2025)

Bugfix

  • #71: Replaced Thread.stop() call with Thread.interrupt() in the RobotThreadManager
    • The Thread.stop() call has been removed as of Java 21, so the old call to stop() would cause the rest of the battle to be aborted; e.g., if you were running 100 rounds, but after the second a robot's thread needs to be terminated, then that would abort the rest of the rounds. By swapping in interrupt, the thread should still terminate, but gracefully.
    • Thanks go to Jeremiah Blanchard for fixing this ❤️. Nice catch!

Changes

  • Improved documentation and comments with all sample bots.
  • Updated libraries (dependencies) to the latest versions (including Eclipse Compiler for Java and Codesize).
Download Robocode 1.10.1 from here

Wednesday, 4 June 2025

Robocode 1.10.0

Version 1.10.0 (04-Jun-2025)

Robocode's code around RobocodeSecurityManager has been refactored to ensure compatibility with Java 24 and newer versions, even after the retirement of the Security Manager in Java 24. Read more here.
Additionally, Robocode remains fully functional on older Java versions, from Java 8 onward.

Changes

  • Java 24 support: Implemented new security mechanisms that work with Java 24+ while maintaining compatibility with Java 8+.
  • Versioning update: Adopted Semantic Versioning starting with version 1.10.0.
Download Robocode 1.10.0 from here

Saturday, 31 May 2025

Robocode 1.9.5.6

Version 1.9.5.6 (30-May-2025)

Bugfix

Lim Sim Yee found and fixed the following vulnerabilities. Thank you for the PRs ❤️

Vulnerabilities fixes:

  • Bug #67: The CacheCleaner contained a Directory Traversal Vulnerability when deleting files (recursively).
  • Bug #68: Fix for Insecure Temporary File Creation.
  • But #70: Fix Integer Overflow Vulnerability in Buffer Write Method.
Download Robocode 1.9.5.6 from here