Talk:CirclingBot
SuperSamples
You say you defeat all the super samples. But I tested your posted code against SuperCrazy, and SuperCrazy wins 67% of the time over 10,000 rounds.
Rank RobotName Total Score Surv SvBonus BltDmg BltBns RamDmg RamBns 1st 2nd 1st supersample.SuperCrazy* 955585 (67%) 377500 75500 430007 68998 3083 497 7797 2203 2nd hapiel.CirclingBot* 465321 (33%) 110150 22030 310983 20952 1028 178 2450 7550
— Chase-san 19:05, 18 January 2011 (UTC)
Hi, Sorry for being unclear! I only tested melee against all bots properly. here is the result of 100 rounds (1000x1000)
1st hapiel.CirclingBot* 41207 (15%) 28400 2480 9173 751 394 9 31 23 8 2nd supersample.SuperCorners* 35303 (13%) 19700 800 10397 1101 2978 327 10 12 10 3rd supersample.SuperTracker* 34181 (12%) 20000 1120 10623 814 1476 148 14 12 11 4th supersample.SuperCrazy* 33817 (12%) 22150 2000 7121 501 1961 85 25 8 10 5th supersample.SuperSpinBot* 32927 (12%) 19950 1120 9162 692 1948 56 14 11 12 6th supersample.SuperRamFire* 29290 (11%) 17850 80 8652 588 1742 377 1 11 9 7th supersample.SuperTrackFire* 26719 (10%) 19300 0 6509 238 659 13 0 12 16 8th supersample.SuperWalls* 26679 (10%) 17450 320 8194 475 220 21 4 6 13 9th supersample.SuperSittingDuck* 17224 (6%) 14900 80 0 0 2180 64 1 5 12
How do you check all the bots so quickly? I now run these battles in robocode itself, and it took a few minutes to get these results.. I suppose you do it differently assuming that you played 10000*8 rounds! --Hapiel 21:14, 18 January 2011 (UTC)
Ah, I see, well most the super sample bots are not melee robots, and work about as well as expected in melee. So any robot actually programmed to recognize melee, will probably defeat them overall in a giant battle royal. As for 10,000 rounds, I just did that to make sure the numbers had little error in them. 100 to 500 rounds is usually enough to get a general idea where things sit. — Chase-san 21:34, 18 January 2011 (UTC)
How did you get your values?
How did you get the values for your fire condition? ie:
fire(Math.min(4.5 - Math.abs(bearingFromGun) / 2 - e.getDistance() / 250, getEnergy() - .1));
Where did the 4.5, 2, and 250 come from?