Talk:Performance Enhancing Bug
setAdjustGunForRobotTurn(true)
Wait, why does it say "Robocoders will "Leave it in" since NanoBots can't fit more complex code that would emulate this effect."? Is such emulation of the effect more desirable than setAdjustGunForRobotTurn(true) for some reason? --Rednaxela 15:19, 26 May 2009 (UTC)
I'm not really sure, but I believe he was saying that nanobots can't fit in the code that would fix whatever problem it is that makes it better to not have SetAdjustGunForRobotTurn(true)--CrazyBassoonist 15:34, 26 May 2009 (UTC)
(Edit conflict) I actually don't know much about this, I just tried to make what Nat wrote a little more clear. But it's actually having that code absent which is the desired effect. I presumed it was because it randomized the aiming. (Eg, Head-On Targeting without the setAdjustGunForRobotTurn(true)
would be cheap Random Targeting.) Maybe Nat can explain better. --Voidious 15:37, 26 May 2009 (UTC)
On simpler aim bots, or bots that already have a lot of inaccuracy in their aim, leaving setAdjustGunForRobotTurn(true) out of the code can actually help aim - espcially if the built in inaccuracy has a bias in a direction away from the target. As an example, many nano PM bots bias behind the enemy due to the cost of trying to fix this. On top of this, no nano PM bots take into account radial (to and fro) velocity from the enemy - this already adds error to the aim. Removing the setAdjust just further randomizes the aim and can help remove the effect of the bias. In Moebius, I mostly fixed this bias and tend to aim more accurately. As such, removing the setAdjust... code for me cost 1-2% of performance.
One last thing, removing setAdjustGunForRobotTurn(true) on a bot that is always moving will nearly guarentee that they cannot hit a stationary or disabled robot at any range - a serious defect outside of anything besides a dodge bot. --Miked0801 15:59, 26 May 2009 (UTC)
Mostly Miked0801 has already explain, but Pugio has prove that this is true, for some robot. And if I remember correct, David Alves has once created a robot that can beat SandboxDT because he forgot to add setAdjustGunForRobotTurn(true). The nanobots usually not have enough codesize to fit in something more accurate (except Moebius) and the cheap random will let it hit enemy mostly, especially with stop and go. » Nat | Talk » 09:12, 27 May 2009 (UTC)
I'd rather say BlackWidow 1.3 as a good example. It has more than 10-15 bytes empty place and I can't improve it! SetAdjustGun is left out, of course, but I have enough place to put it in.... but it would lose APS, because it gains more than loses by inaccuracy. However I agree with Miked that this 'trick' is movement-dependent. For Pugio and BlackWidow it fits well, but for example I wouldn't apply it to MosquitoPM.--HUNRobar 15:06, 27 May 2009 (UTC)