Anima Robot Warfare 1

COMPUTER SHOPPER

Rambler's Top100

December 1999
AI Wars

Sam James and Harry Fairhead

Viewers of the BBC TV series Robot Wars enjoyed the spectacle of radio controlled robots bashing each other into their component parts. Even though the TV program was a pale imitation of the original robot wars contest in the US, it captured the imagination of enough amateur robot builders to make it easy to find websites dedicated to pet robots everywhere. However, not all of us can manage to get together a team of experts, the time, energy and money to actually build a robot. Perhaps also the technological challenge of Robot Wars isn't actually that great. After all what we are really talking about are battling radio controlled models not robots!

Interestingly, the idea of using computers in games of conflict is a very old one and it is the sort of game that almost anyone can join in. Not only is the software version of robot wars easier to get involved in it is also more deserving of the name. Instead of concentrating on the mechanics of a radio-controlled vehicle, you can concentrate on truly autonomous agents.

Robot Warfare

Core Wars is an exercise in programming logic and as such doesn't appeal to everyone. You can't easily grasp what it is all about unless you already program. Since Core Wars there have been a large number of alternatives proposed and Robot Warfare is perhaps the most immediately attractive to the average user. This said, it is still a DOS program and the graphics and sound aren't wonderful but you can immediately see what is going on and what the objective of the game actually is.

Two robots meet in a playing field and have to track each other down and destroy each other by firing weapons. When you run the game you actually see two shaped robots roaming around the screen looking for trouble. When they find each other the usual zaps and bangs quickly convince you to have a go!

[PICTURE]
The moment when one robot blows up another!

A robot is created quite easily using a very simple programming language that resembles old- fashioned Basic rather than assembler. The block shaped robot has four equipment pods that you can fill either with guns or eyes. A robot starts off with an energy level of 5 and this changes throughout the game. A single missile hit decreases the energy by one. The energy can be increased by charging from one of the nuclear reactors scattered around the playing field. This means that a robot isn't killed on a first hit and you can build in strategies of attack and retreat. The barriers that make the playing field can also be fired at and they disintegrate if hit more than five times. A robot can fire any gun and if it hits a missile box or a reactor there is a bigger explosion, which reduces the energy of any robot that is close enough.

So much for attack, but you need to work out what to attack and this is where the eye comes in. The eye tells the robot the type of thing that is straight ahead and its distance. If the thing straight ahead is a robot it also reveals the energy level of the robot and if it is a missile, its direction. Finally every robot has a radar which costs one energy level to use and tells the robot the relative co-ordinates of any specified object.

That's all there is to Robot Warfare and all you have to do is to use the programming language to create a robot that will first beat the built-in robot and then beat other designer robots. For example, the simple robot that is included as a demo is defined as -

   % ================= WSIMPLE.RW1 ==================
   % Example of simple robot
   % with an eye
   % and a gun.
   % Run:    RW1_DUEL.EXE  WSIMPLE.RW1
   ROBOT "WinSimple Robot"
     COLOR FFD010
     FRONT EYE
     LEFT  GUN

   START:
     ACT FRONT        % Look in front
     if N!=6 : L1     % If there is a robot there then
        RIGHT
        ACT LEFT      % shoot
        LEFT
        GOTO START
     L1:
     if N!=3 : L3     % If there is a box with missiles then
        STEP          % go ahead
        GOTO START
     L3:              % If there is neither box nor robot then
                      % it means that there is a barrier in the direction
     if D==1 : L4     % If the distance from it is greater then 1 then
        STEP          % make a step
        GOTO START
     L4:
     RIGHT            % If the barrier is in the next cell
     GOTO START       % turn to right
   END
If you read through this very simple robot program you will probably discover most of what you need to know about the language and the sort of things you can do. You will also now be in a better position to watch and understand the interaction between this robot and the built in robot – and understand why the simple robot tends to get zapped. The urge to try and do better is overwhelming to most observers and very like the experience of watching Robot Wars on TV – you are sure you really could do better. Of course what you quickly discover is that doing better isn't quite as easy and you end up shouting at your robot because it isn't as clever as you thought it was. This is a great education and it looks like a game it should be part of every school computer course – throw away the boring turtles and logo and try Robot Warfare!

[PICTURE]
Don't miss this web site!

As well as the Robot Warfare simulation program, you can also download an editor and a compiler for the RW1 language. All of these take the form of freeware except for the simulation itself which is unregistered shareware and if you register ($7) you get an improved version of the program which lets you play any robot against any robot. The web site, where you can download all of the programs mentioned, is at http://attend.to/robots Another site http://www.geocities.com/SiliconValley/Lab/1315/robots/ also runs competitions every month and you can submit your robot code and have it battle it out with others. The winner gets into a hall of fame – along with his robot of course! Robot Warfare is a Russian invention, along with vodka and Tetris, and some of the English on the web site is slightly strange – but how far would you get in Russian! A Windows 95/98 version is under construction so keep returning to the website to see if it is ready.

[PICTURE]
The soon to be released Windows version of Robot Warfare.

Conclusion

If you want something to get you started then Robot Warfare has a lot to recommend it. It is easy to use, easy to understand and very rewarding. As a school or educational tool it is ideal. If you want to move on to something more challenging then AI Wars is the next obvious choice being great fun and suitable as an end of term project in a number of different subjects. Perhaps the ultimate game is RoboCup because it qualifies as real research into robotics. But of course for the purists there is nothing quite like Core Wars…


This text was receved from Sam James on January 9th 2000
RW1 Main Page
RW1 E-mail