RobotWar - Assembly Language for Fightin' Robots by Castle Wolfenstein's Author.

Channel:
Subscribers:
6,270
Published on ● Video Link: https://www.youtube.com/watch?v=uSdCtxN96_o



Game:
Duration: 18:12
1,071 views
52


Everyone’s heard of Castle Wolfenstein. Fewer people know that the creator of Wolfenstein developed what is probably the first programming game.

This channel has always existed at the intersection of programming languages and old games. So it's only appropriate that I talk about what is, to the best of my knowledge, the first programming-based game: Silas Warner's RobotWar.

RobotWar is a game where you program robots to battle in an arena using a language that bears similarities to both Forth and Assembly language. As near as I can tell it’s an original invention on the part of the author.

But before we get into the game, let's talk a little bit about Silas Warner himself. The man is a legend. Did you ever play a Wolfenstein game? They all draw their inspiration from Castle Wolfenstein. The original Wolfenstein was a fantastic action game for the time, letting you kill Nazis while escaping with their war plans. The game had randomized layouts for both rooms and treasure, destructible walls, digitized speech in freaking 1981, enemy behaviors that could feel shockingly authentic, and it did all this on machines with only 48k of ram.

Silas Warner himself was an amazing character, a gentle giant who created entire genres of software with a wave of his hand. At Indiana University in the mid-1970s he discovered the PLATO educational system, a mainframe computer connected to thousands of graphical terminals. He wrote multiple games for PLATO, including Empire, Conquest, and an early version of RobotWar called Robot Wars.

RobotWar is amazing on the surface because the idea of a programming language game on the Apple II is amazing. But it goes beyond that. There's a lot going on here for an 8-bit computer in 1981. You've got a programming language, and the VM that the robots are running. You have what amounts to a small compiler or interpreter to run those programs. You have a simulator where multiple robots are executing at the same time. And you even have a full-screen editor in which to write the programs. There were actual development systems for assembly language in 1981 that didn't have full-screen editors in them.

The manual goes into some detail about the robots you’re programming. Each one is on tracks, able to move both horizontally and vertically. Each robot has a radar dish that can be aimed in any direction that will tell you the distance to any robots it is pointed at. And each robot has one gun that can be swiveled in any direction that fired shells on a timed fuse. The gun has infinite ammunition, but has a cool down period between each shot. And most importantly, each robot has a computer.

The computer design in RobotWar is fascinating; arguably it’s more sophisticated than the CPU that the Apple II was running on. There are 24 general purpose registers, named A through W, and also Z. You can use these to store whatever values you want while programming. There are then 9 Input/Output registers that control specific functions.

-X and Y tell you the horizontal or vertical position on the battlefield
-AIM controls the angle the gun is pointed at
-the RADAR register controls the robot’s radar - you store a value in it to send a radar pulse, and read a value to find an enemy
-the SHOT register lets you fire a robot’s gun - you store the distance you want to shoot in the SHOT register.
-The DAMAGE register tells you how badly you’ve been hit
-SPEEDX and SPEEDY control your horizontal and vertical speed.
-finally, there’s a register that provides you with a random number.

RobotWar would go on to inspire many other programming games - on nearly every platform, including RoboWar and ChipWits on the Macintosh, CoreWar on Windows and Unix systems. It’s also the clear forerunning of modern programming games such as Shenzhen I/O, TIS-100, and Human Resource Machine.







Tags:
RobotWar
Castle Wolfenstein
Silas Warner
Firebug
Programming Games
TIS-100
Shenzhen I/O



Other Statistics

Castle Wolfenstein Statistics For Tea Leaves

There are 1,071 views in 1 video for Castle Wolfenstein. His channel published less than an hour of Castle Wolfenstein content, making up less than 0.44% of the total overall content on Tea Leaves's YouTube channel.