Very nice thing.
Robocode is something similar. Robocode is a playfield for a virtual war using tank robots. The robots detect bumps, have a cannon as usual and a 360 degree radar to detect and identify enemies. The game comes with a lot of pre-programmed robots and you can add your own robots.
The goal of that game is to learn Programming robots in Java in a funny and cheap way.
Now we have two must-have-seen programs