C++Robots combat takes place in walled a 100m x 100m arena.
Ranges and locations are expressed in 1/100ths of meters.
Speeds are expressed in 1/100ths of meters/second.
All angles are expressed in degrees. 0 is due east, 90 due north, 180 due west and 270 due south. Angles outside [0..359] are adjusted to be within the correct range.
The builtin scanner has a maximum arc of +/- 10 degrees. If you attempt to scan a wider arc than that, only +/- 10 degrees of arc are scanned.
Maximum forward robot velocity is +1 meter/second.
Maximum robot acceleration is +/- .2 meters/second/second.
Maximum turn speed is .5 meters/second. If you attempt to turn and your current speed is greater than .5 meters/second, you will slow down to .5 meters/second, make the turn and then accelerate to your desired speed.
Maximum direction change is 15 degrees/second.
Cannon shots travel at ~10 meters/second with a blast
radius of 4 meters.
If a robot attempts to leave the arena (hits a wall), it will take speed/25 points of damage (rounded up).
If two robots collide, they will each take (total relative speed/25) points of damage (rounded up).
If a robot has a collision (wall or robot), its motor will disengage, and its speed will become 0.