Fire power 2.95 bug

Jump to navigation Jump to search

Fire power 2.95 bug

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Users.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page.

 

Return to Thread:User talk:Beaming/Fire power 2.95 bug.

It is actually an x.x5 power bug. If you look at the history of BasicSurfer/Code, you will see that the old method of comparing bullet powers to filter onHitByBullet to match to the correct wave multiplied both by 10, rounded, then checked for equality. This meant that due to rounding errors, some values of bullets with the pattern x.x5 would not be matched and the bot would not learn from the bullet hit. Since many bots used BasicSurfer as a base, this actually caused a noticable increase in rumble score.

Skilgannon (talk)09:07, 3 December 2015

Yeah... IIRC I was doing some extensive default bullet power testing and found that 1.95 drastically outperformed both 1.94 and 1.96 in a large test bed and this turned out to be why. I felt kind of dirty since I was both the person that introduced the bug and the one who figured out how to exploit it. :-/

Voidious (talk)23:41, 3 December 2015

Thanks guys. This clears it.

In retrospect, it is even strange to see the old based on rounding code. Is it a remainder of some attempts of code shrinking?

Looks like nobody wants to use buil-in robocode.util.utils.isNear :)

Beaming (talk)03:17, 4 December 2015