From Robowiki
< Zyx
Jump to navigation Jump to search

What is RoboRumbler

RoboRumbler is a Java Application created to run RoboRumble battles in a somewhat controlled environment. It helps if you want to run RoboRumble while doing some light work on your computer. It is meant to have break times between iterations so you can run your heavy stuff during those breaks.


I don't have any hosting service, but I can email it to you for now. My email address is zyx3deal@gmail.com, you can send an email asking for the jar file or just ask in the wiki.

Versions Log

v0.1: First beta release.


  • Runs iterations of some amount of roborumble, meleerumble and teamrumble battles.
  • Loops forever in every operating system.
  • Has a sleep time between iterations.
  • Can be set to stop after the current battles.
  • Easy to set Java heap size for the rumble.
  • Keeps separate views for the standard error and standard output of the battles, they can be disabled independently.
  • All values can be set on the GUI and the next time you run the application, it will remember them.


  • There are problems when you want to kill the process instead of waiting for the iteration to be over. I disabled the "Stop Now" button, which was intended for that until the bug is fixed.
  • Needs more testing to find more, but they sure exist.

How to use it

Place the jar file in your robocode installation directory, and execute it.

java -jar RoboRumbler.jar

In that screen shot you can see that the whole thing is pretty easy. You a text box for each of the variables you can configure and a tabbed pane for the views. After you have set the number of times you want to run each of the different types of rumbles, hit run, and let it rumble. An important thing is to note that it uses the configuration files under the roborumble directory. That means that setting if you set it to have 2 runs of OneOnOne, 1 run of Melee and no runs for Team. It will run "NUMBATTLES" as defined in roborumble/roborumble.txt of OneOnOne battles, upload those results, then do that again, then run "NUMBATTLES" as defined in roborumble/meleerumble.txt of Melee battles, upload those results, and then go to sleep for the amount of time specified. If at any time you hit the "Stop Later" button, it will finish executing the current call. Let's say you have 1 run for both OneOnOne and Melee and before the OneOnOne is over you click the "Stop Later" button, it will finish all the OneOnOne battles it was set to do, but it will stop before starting the Melee battles. A message will be logged to let you know that it has stopped.