Upgrade client version
I'll upgrade all my clients later and upload the same bot of mine with different version number to see the impact on score...
The melee part is already discussed, but why the 1v1 rumble needs a wipe as well? And how long it should take to reload the rumble? Or should we run the current rumble as a backup in parallel until the reload completes? (so that new players can still submit their bots)
Hopefully we don't need to wipe 1v1 rumble. I am more just concerned with bad configurations, running with Java10 etc that have accumulated.
Have you managed to make a patch for the melee priority battles?
The rumble clients load version number dynamically, maybe we should tweak this to append Java version after version number as well to prevent running and uploading with Java 10 incidentally.
And since we have rolling average, the accumulated effect of bad configurations should be fixed automatically (after a lot of battles).
A patch for melee priority battle is harder than I thought, as the data structure (currently, very bad, string) needs a redesign for the extra 1 bit of information. And almost every line of code needs a rewrite as it depends on the implementation details of the (not extensible) data structure.
Done! After some refactoring, the rumble client should upload only pairings containing the prioritized bot, or containing the predetermined random bot when running prioritized battles.
The only flaw is that when the rumble server returns prioritized pairings, etc. A and B, if B is not evenly distributed, then B will get biased battles (meet more A). Is literumble using this feature currently? How not evenly distributed is bot B returned in this case?
Bot B is randomly selected from missing pairs, or if pairings are complete then randomly selected, with weighting biased towards lower number of battle pairs. It should be ok (and regardless, much much better than the current situation)
Great! I’ll send the patch to fnl after some test.
Now I need some test bed on literumble, or deploy one myself.
IIRC, everyone is able to create a new rumble game on literumble by writing rumble client config?
You can do it on literumble and I will delete when you are done.
Something strange happens.
ScalarN scores APS 0% and survival 0% (it was all 100%/100% before recent 1-2 days) against some bots with APS lower than 50, after 18.104.22.168 is allowed. However I've been testing my bot with 22.214.171.124 and 126.96.36.199 since the first day and nothing strange happens.
I noticed that Anonymous uploads in http://literumble.appspot.com/RumbleStats, which is the only machine besides my servers. I'm pretty sure this strange score does not come from my servers.
Is that possible to see whether some strange pairings comes from a specific uploader?
After more investigation, I thought that those strange score may come from some one who incidentally clicked roborumble.bat without proper configuration which however I never reproduced.
Using the latest robocode version as accepted one and allowing Anonymous uploads is risky as robocode has a lot of downloads per week and anyone who incidentally clicked roborumble.bat contributes without verifying configuration.
Maybe we should also modify roborumble client to add a field usually called "User Agent" and upload OS/Java Version etc. so that strange scores should be more trackable.
Another option is to disable Anonymous uploads when using the latest version of robocode, but this would only prevent incident roborumble runs and wouldn't verify user agent.
Some time ago I accidentally set up the gigameleerumble, while it should have been named meleeTop30rumble. You can remove the gigameleerumble, all bots have around 10-20 pairings.
Honestly, I like the name gigameleerumble better ;-) Maybe we should switch to that instead?
I like gigameleerumble better as well ;) However is there a way to migrate old battles from meleeTo30 rumble to GigaMeleeRumble?
I personally like meleeTo30 since it describes participating bots. GigaMeleeRumble might be confused with ultra-large-sized bots, since we have nano and micro rumbles.
Well, another special case is the initialization process. When every battle is a prioritized battle, should we have something special to prevent the slow down?