Contents of the RBOT.DOC file
Ed T. Toton III
Part 1: [Introduction and apology/clarification]
Welcome to Rbot, Bot 2. This is a program in which you design robots to
compete against other robots. You will find it best to get at least one or
two friends together to play as well, and have everyone see who can make the
best robot, or perhaps the one that does the best in team games or
free-for-all's. At anyrate, I hope you enjoy it.
I want to apologize now for a little problem with the whole thing. Below
is a listing of all of the program codes. I don't think I explained it too
well, so as clarification, read this:
All the program commands have several
different codes with which to use them.
Which code you use determines the direction
that the robot's program cursor will move
after the command is completed. U,D,L,R mean
up,down,left,right respectively. The 'IF'
commands always pass the cursor down or to
the right. Which one of those 2 is determined
by whether the condition it's checking for
is true or not, and which code you used. The
program cursor always starts at 1,1.
Part 2: [program codes]
Under each command listed below are the number codes that are put into
the programs. The program operates as a flow-chart. The different codes
under the same heading tell it which way to move the program cursor after
executing that instruction. The letters U,D,L,R mean up, down, left, right
NOTE- Long programs may work well but they will run much more slowly.
Also, if the program is instructed to go to a program element
that has the number 0, it will return to the upper-left corner (1,1).
It will go to the upper-left if the program cursor is sent off
the side of the program also.
See the sample program at the end of this file.
ATTACK: (Attacks the enemy. Note that the enemy must be in the space
U: 1 directly in front of the robot)
R: 2 NOTE-Multiple attacks in large loops has a disadvantage. Every
D: 3 successive element that is an attack will decrease your attack
L: 4 strength by 1 (normal damage=1 to 5). However, a non-attack
program element will reset you to full strength.
MOVE: (Moves the robot one space forward)
TURN LEFT: (Turns robot left 90 degrees)
TURN RIGHT: (Turns robot right 90 degrees)
RANDOM TURN: (Turns robot 90 degrees left or right)
CONNECTOR: (Simply acts as a bridge for the program cursor. Note that
U: 21 This is one of the only program elements that doesn't slow the
R: 22 robot down)
RANDOM SPIN: (Turns robot to a random facing. Note-There is a 1/4 chance
U: 25 that the robot will remain facing the same direction)
OVERBURN ON: (Turns robot to overburn status)
OVERBURN OFF: (Turns robot off from overburn status)
OVERBURN TOGGLE: (Turns robot overburn to on if it's off and
U: 37 vice versa)
SIDESLIP 'L': (Moves robot diagonally forward and left)
SIDESLIP 'R': (Moves robot diagonally forward and right)
NOTES ON OVERBURN: Overburn, when on, will allow the robot to do double
damage when attacking and triple damage when self-destructing. When
doing this, however, the robot overheats. It's memory curcuits don't
function normally at these temperatures, thus everytime the robot attacks
with overburn on, 1 randomly chosen program element will be given a
99 (Self destructs robot. Does up to 3 times the damage of a normal
attack to all within 1 space)
100 (This only has one code. It will randomly select to go down or right
in the program)
GOTO: (Sends program cursor to a specified location in x,y format)
111-269 NOTE-This (like connectors) will not slow the robot.
Also, Not all these numbers are used. The equation
for what code is as follows: 100 + (10 * x) + y
NOTES ON CONNECTORS/GOTOS: Connectors and gotos normally don't slow the robot
because they don't count as a function. However, ten of them in a row will!
(These only pass the cursor down and right.
In each case, 2 codes are given.
In the first, yes goes right and no goes down.
In the second, no goes right and yes goes down.)
OVERBURN ON: (Detects if overburn has been activated)
ARMOR <= 5%: (Detects if armor is less than or equal to 5 percent)
ARMOR <= 10%: (Detects if armor is less than or equal to 10 percent)
ARMOR <= 25%: (Detects if armor is less than or equal to 25 percent)
ARMOR <= 50%: (Detects if armor is less than or equal to 50 percent)
ENEMY HERE: (Detects if an enemy is in the space in front of the robot)
ENEMY THERE (F): (Detects if an enemy is in front of the robot)
ENEMY THERE (L): (Detects if an enemy is left of the robot)
ENEMY THERE (R): (Detects if an enemy is right of the robot)
OBSTACLE (F): (Detects if an obstacle is in the space in front of the robot)
OBSTACLE (L): (Detects if an obstacle is in the space left of the robot)
OBSTACLE (R): (Detects if an obstacle is in the space right of the robot)
NOTE-The walls of the arena count as obstacles!
FRIEND HERE: (Detects if a friend is in the space in front of the robot)
FRIEND THERE (F): (Detects if a friend is in front of the robot)
FRIEND THERE (L): (Detects if a friend is left of the robot)
FRIEND THERE (R): (Detects if a friend is right of the robot)
NOTE- The enemy detectors will not see robots that have the same team number,
In other words, robots on the same team are invisible to each other unless
the friend detectors are used by the robot.
The default program:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
1: 61 53 7 0 0 0 0 0 0 0 0 0 0 0 0 0
2: 17 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
7: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
9: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
NOTE- This program is the default for the robots.
All robot programs must have the extension '.RBT'
We apologize if this is confusing, this program and this
text file assume a certain level of knowlege, you can
probably figure out how the thing works if you play around
with it and have a printout of the above program codes
available to you... Also, you may want to dissect the
robots that come with this game.
Part 3: [differences between Rbot and Bot]
Rbot now takes full advantage of the VGA graphics system, unfortunately it
restricts usage to only those who actually have a VGA or EGA (Bot worked on
EGA, MCGA, and VGA). Rbot colors the entire robot for ID purposes (Bot only had
a colored nob on top of the robot). Rbot allows for a wide variety of maps,
Bot had maps that were 24x15, Rbot allows them to be anywhere from 10x10 all
the way up to 50x35. Rbot has alot of those 'annoying tid-bits' cleaned up.
One major change: For robots that used overburn, they had to be reloaded after
each battle in order to re-use them because they would get ruined. Rbot saves
them in temp files and reloads them after the battle for you. However, if
you want to look and see what happened to them, it won't reload them until
you leave the 'after-battle menu', where you can view all of the robots.
Another improvement is that you don't design just the program, but also the
hard-ware that the robot is equipped with. And you can still load your old
BOT programs, they are given standard settings for the hard-ware, and will
perform exactly the same in the arena as they did before. Rbot is also
equipped with a map editor (mapedit.exe). With this you can either change the
existing maps or create your own. Rbot is now written in Pascal 5.5 as
opposed to Quick-Basic 4.5 (like Bot). This allows for smaller program size
and faster execution.
These are most of the major changes. If there are any others I have forgotten
(and I'm sure there are), I apologize.. and they should become apparent very
Part 4: [explanation of technology]
The story etc...
Each robot is about 5 feet long and usually weigh roughly 3200 pounds. Each
coordinate-box on the map is about 6 feet across (which makes some arenas as
large as 300x210 feet).
The robots are equipped with a variety of weapons. Some have thrust-blades,
others are epuipped with claw-arms. The most common weapon however is the
plasma-blaster. It has a range just as short as the other weapons, and is
very effective. Class 1 weapons tend to be blades, class 2's are usually
claws, and class 3's and up are different sized plasma-blasters.
Many types of locamotion are available as well, including treads, wheels,
hover-pods, and legs (the most common). These all have the same basic effect
in the game since the robots are more limited by there program than type
of propulsion. Thus it's not even an option in the robot-editor.
Armor tends to be dura-plast. Dura-plast is a very strong plastic-like
material. It's cheaper to produce and has the same effect as sheet-metal.
But some wealthy competitors prefer metal just for that reason.
There are a couple of different construction designs for the chassis.
The lighter ones tend to have more dead-air space inside and thus tend to
act as insulation. Though they allow you to carry more, they also tend
to trap heat in. This can be very dangerous considering that the brains
of the robots don't operate well when hot (as you will find out).
All robots are equipped with demolition charges. The standard is 2. They
are all made of an electrically-detonated material. Some robots have been
designed with the suicide-tactic in mind where everything on the robot is
stripped off in favor of explosives.
Every robot is equipped with at least one heat-sink. Heat sinks are the
heat-exchangers for the robot. Note that the effect of them is cancelled by
insulating chassis. Heat is one of your two main enemies!
The other main enemy to your robot design is weight. If you go over the
suggested maximum weight, the robot will be hindered in it's walking. The
farther up the weight goes, the less often the robot will be able to move,
until eventually it can't move at all. It's ability to turn is also effected,
but not as much as movement. It too will be completely impossible if the
robot gets too heavy.
Part 5: [warnings, suggestions, etc]
Warning! Know what file names things have and know how to spell them
BEFORE trying to type them in!! If you spell it wrong the program
will crash and dump you into dos!
Suggestion: File names should be only 3 or 4 letters long. This will
decrease your chances of mispelling them, and they'll be
easier to remember. I have made several robots in series
example: EXP1, EXP2, and so on.. (EXP=Experiment)
FAS1, FAS2.... (FAS=Fast)
Caution: Rbot (unlike it's predecessor, Bot) does not support MCGA.
Only VGA and EGA will work. Also, the maximum map size for EGA
users is 50x26 (as opposed to the afore mentioned 50x35, which
is available only to VGA users). If you are using EGA and you
load a map larger on the Y axis than 26, it will be cut short
so that it will fit on your screen.
Part 5: [closure and credits]
I thank you for using this program. I hope you enjoy it. If you have any
suggestions/criticism/remarks/donations/complaints, please send them to:
Ed T. Toton III
10776 Green Mountain Circle
Columbia MD, 21044
Special thanks to:
Kenneth B. Foreman
(for their helpful thought-provoking comments,
their suggestions and support, and for their
de-bugging help. Also for their patience.....)
Ed T. Toton III
Rbot v1.0 "Bot 2"