From Robowiki
Jump to navigation Jump to search


The LiteRumble is a lightweight, easily deployable roborumble system which is designed to run on the free tier of the Google App Engine.

The competitions will fill out automagically as they are given battles ‒ no hardcoded rumble names or configurations. Because of this and the ease in deploying it should be perfect for in-class or in-office competitions. One of my goals for this was to be able to have a rumble setup which would never need any maintenance.

It is designed to serve vanilla HTML/CSS (w3c validated) ‒ no JavaScript or anything fancy. All sorting of columns is done server side through linked GET arguments - so click on column headers to sort by that column!

Here's the link for my 'official' hosted version: ‒ feel free to create new rumble categories on it as you want! Also, let me know on the comments page if you do, I'm interested to see what is happening.

I've released the code under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. It is hosted on GitHub. If you want to run your own just change the name to whatever you want yours to be called in app.yaml, create the newly named app on the app engine and deploy! All you need to do then is point your upload client at it, run the client and the rumbles should appear with whatever wild, fancy configurations you want automagically appearing. If you want specific rumbles not to get priority battles (ie. mini, micro and nano) you can set that manually using the Datastore Viewer in the App Engine admin console.

Some of the scoring I've done differently to Darkcanuck ‒ I have Win% instead of PL (so it doesn't fluctuate with number of bots), and in Melee my survival is not as a bot-specific %, but rather as an 'out of total rounds' % (the 1v1 won't be affected).

The scores

  • ANPP (Average Normalised Percentage Pairs)
  • Vote (percentage you are best against)
  • NPP (Normalised Percentage Pairs)
  • KNNPBI (K-Nearest-Neighbours Problem Bot Index)

are all calculated as a batch run twice a day, so you won't see the latest results from them immediately.

Take a look around and tell me what you think. Submit battles if you have spare cycles, it can handle a bunch of clients now that I'm on the paid tier.

And most of all, have fun and happy Robocoding! - Skilgannon

See Also