Skip to content

0.13.0

Compare
Choose a tag to compare
@flemming-n-larsen flemming-n-larsen released this 03 May 19:22

0.13.0 - Bot API for .Net 6

Changes

  • Bot API:
    • Upgraded the .Net version of the bot API for .Net 6.0 as .Net 5.0 is soon EOL.
    • The id was removed from BotResults, and GameEndedEvent will only return a single BotResult containing
      the battle results for the bot (instead of a list containing results from all bots).
    • Added setting and getting 'adjusting radar for body turn'.
    • The scan() and setScan() methods were renamed to rescan() and setRescan().
    • Added setInterruptible(boolean interruptible) / Interruptable = [bool] to allow restarting an event handler
      while it is processing an earlier event.
  • GUI:
    • A tooltip text has been added to the 'Start button' that shows the minimum or maximum number of participants
      required for starting the battle.
  • Protocol:
    • Removal of the speed field of the bullet-state as the speed can be calculated as: 20 - 3 x power.
      Hence, there is no need to transfer this information over the network.
    • Moved id from bot-results-for-bot to bot-results-for-observer.
    • The scan field on bot-intent was renamed to rescan.

Bugfixes

  • Bot API:
    • Blocking bot functions do not stop bot after
      finishing (#17).
    • Fixed issue where event queue would overflow with unhandled events when a Bot´s run() method has ended.
  • GUI:
    • The 'Start game' button is now disabled when the minimum or maximum number of participants is not met.

Documentation

You can read more about Robocode Tank Royale here:
https://robocode-dev.github.io/tank-royale/

Running Robocode

You need Java 11 as a minimum or newer to be preinstalled on your system. I recommend newer versions of Java, e.g. version 18.
You can read the installation guide to get more details about installing Java and Robocode.

The Robocode GUI application must be run from the command line in order to start and view battles:

java -jar robocode-tankroyale-gui-0.13.0.jar

robocode-tankroyale-gui-0.13.0.jar

Note that you need to download sample bots and install those into directories on your system, and add these directories from the menu:

Config → Bot Root Directories

Sample bots

These sample bots are currently available:

C#: sample-bots-csharp-0.13.0.zip
Java: sample-bots-java-0.13.0.zip

Note that the C# bots need Microsoft .Net SDK 5.0 or newer and must be preinstalled.

Bot API

In order to develop bots for Robocode, you'll need one of the provided APIs for the Java/JVM or .Net platform.

Java:

Available as a jar file: robocode-tankroyale-bot-api-0.13.0.jar

Available as an artifact on the Maven Central Repository
https://search.maven.org/artifact/dev.robocode.tankroyale/robocode-tankroyale-bot-api/0.13.0/jar

.Net:

Available as artifact on the Nuget repository:
https://www.nuget.org/packages/Robocode.TankRoyale.BotApi/0.13.0

dotnet add package Robocode.TankRoyale.BotApi --version 0.13.0