Menu

#104 Reproducable scoring bug

1.4.5
closed
7
2012-10-12
2007-09-10
No

From the Robowiki (BenHorner/OpenQuestions):

Has anyone noticed a "half turn advantage" in 1v1 matches? I was just going to try to do a modified RamFire to get something in the Rumble, because what I want to end up with seems so far away... So I have a "new" bot which is a copy of RamFire, going up against RamFire, I expected them to split pretty much 50-50, strangely though it seems like whoever I enter in the list first ends up winning about 2-1 (very consistently). Is that screen where you pick the bots also defining some kind of initiative (who gets to do their stuff first each turn)? If so, does the Rumble account for that? (I know I could look this up in the source code myself, and if no one knows off the top of their head, I probably will eventually) --BenHorner

<snip>

battle order bot wins
1 1 RamFireCopy 666
1 2 RamFire 334
2 1 RamFire 643
2 2 RamFireCopy 357

--BenHorner

Well, it appears you found a bug - in the ramming code! Check out these results from 500 rounds:

Robot Name Total Score 1sts
sample.RamFire (1) 93705 315
sample.RamFire (2) 82440 185

Robot Name Total Score 1sts
sample.SpinBot (1) 41077 257
sample.SpinBot (2) 40444 254

So the first RamFire outperforms the second by a huge margin, but the non-ramming SpinBots have an almost even score. I guess I'll file a bug report with Fnl.

-- AaronR

Discussion

  • Flemming N. Larsen

    Logged In: YES
    user_id=1249353
    Originator: NO

    You are right. This bug has been in Robocode since it forever. It is occuring due to the way Robocode is designed, and you are all right the the robots listed first get a better change in the end, if the two robots are acually killing each other at the "same time". Currently, Robocode see the one robots killing the other, as it is not doing all the calculating in one atomic step, as it should do.

    I will try to redesign Robocode so all robots are "even" based on all the information gathered per turn. If two robots kill each other in the same turn, the internal battle manager must see that this is happening and fire the proper events afterwards.

    This might take me some time to redesign, but I think we should get rid of this kind of unfair play! :-\

     
  • Flemming N. Larsen

    Logged In: YES
    user_id=1249353
    Originator: NO

    This bug has now been fixed for Robocode 1.4.5

     
  • SourceForge Robot

    Logged In: YES
    user_id=1312539
    Originator: NO

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 30 days (the time period specified by
    the administrator of this Tracker).

     

Log in to post a comment.