Have you played… Robocode?
Robocode is a coding game about telling your little robot exactly how to move, dodge, aim, shoot, and assess its situation so that it can destroy all opposing robots in the arena. It's also a game I've never played before in my life.
You know what I did play though? Robot Battle. Robot Battle is the 1992 coding game by Brad Schick that inspired the creation of Robocode by Mathew A. Nelson about a decade later. I consider it an absolute travesty that Robot Battle no longer seems to exist anywhere on the interwebs. But it seems to me that Robocode is almost identical, so what the hey. At least with Robocode I can actually put up a header image.
These games were many things, but approachable was certainly not one of them. While Robot Battle did its best, providing heaps of tutorials and manuals and example robots to delve into, it was far from straightforward to program your own into any resemblance of a winning competitor. Each robot was made up of three parts -- body, turret, and radar -- and all could be programmed to turn and behave independently. You had to spend a great many hours learning the game's own Robot Scripting Language (RSL) simply to figure out how to get the pile of junk in front of you to wiggle back and forth in some vague attempt to avoid the bullets being fired towards it. Let alone getting it to fire back with any success.
What I loved was how each robot would end up working in completely different ways, using different tactics and movement methods. Even the small selection of robots included in the base game exhibited this beautifully. There was Fire, who would lock onto a target and shoot once, before turning and moving at a right-angle to the target, before locking on and shooting again. There was Walls, which, as you might have guessed, would stick to the walls the whole time, travelling along the perimeter of the arena and shooting inwards whenever it spotted an opponent. There was Rammer, who would lock onto a single target and charge, shooting bullets as it went, the idea being to weaken the opponent before crashing headlong into it for the kill.
It took a good long while for me to put together a robot that could reliably beat any of these test robots, but I'll tell you what: it was a damn good day when it finally happened. And the day I found out I could download other players' robots and test them against my own was an even better one, because it showed me just how much more of the game there was left to master.