Code mods
The highlighted comment was created in this revision.
OK, I've looked over the code. Even on a regular compiler you should be able to get this under 250, just use the gun with the hard-coded distances, then make chancesOfReversing final
, since you aren't changing the contents anywhere.
However, with my tuned compiler/shrinker setup, I have this bot down to 237 bytes.
I'm using Jikes as a compiler, and then I post-process the .jar with ProGuard to shrink another 1 to 4 bytes off.
I modded the first gun to also take distance into account on everything except the match position and added setAdjustGunForRobotTurn(true);
, after compile and shrink it is a healthy 249.
Here it is: [1]
Huge thanks.
Using a hard-coded distance in the pattern reconstruction was the main accuracy issue. Now that that's fixed, I think the 5 bytes required for the setAdjust
would be better spent on Miked0801's char based energy monitoring.
I've decided to make this bot separate from Epeeist; and release it under the package sheldor.jk.nano. Any ideas for the new name?
char based energy monitoring? What advantages does it offer?
For names, how about Cutlass or Yatagan?
Ah, I see, using the unsigned property to wrap negative numbers so you don't need an extra comparison! Smart! Ok, that is in, total codesize 247 =) I just need your input on a name, and we're ready to go! Although, I think the whether-to-reverse decision could be improved by using a bigger divisor and different values in chanceOfReversing.
How's "Sting" for a name? It's small, blue, and extremely painful. :) If that's already taken, the Kukri is another great small sword/large knife. But, if you don't like either of them, go ahead with "Yatagan;" I like the sound of it.
How's this for a description?
<botname> v1.0.0 by Sheldor and Skilgannon. 03/20/2013
<Short description of namesake>
Codesize: 247 Bytes without any colors.
You're probably right that using different reverse probabilities would help against certain bots, but that sounds like a lot of hand-tuning, so let's save that for the next version.
Once you've packaged it, go ahead and add it to the literumble, and then post the source code on the wiki, under <botname>/Source.
Uh oh, I'm getting a StringIndexOutOfBounds exception. Did you do something to the PM string?