home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware 1 2 the Maxx
/
sw_1.zip
/
sw_1
/
GAMES
/
T_ROBS20.ZIP
/
T-ROBOTS.DOC
< prev
next >
Wrap
Text File
|
1992-02-09
|
42KB
|
1,141 lines
____________________
/ \
/ T-Robots v2.00 \
/ -------------- \
----------===========< By: Ed T. Toton III >===========----------
\ (c) copyright 1991, 1992 /
\ All rights reserved. /
\______________________/
Special thanks to Jeremy Kusnetz
& Kenneth B. Foreman
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 0
--- Table of Contents ---
Things you should have............................1
Legal Stuff.......................................2
Introduction to T-robots..........................2
Technical information.............................2
Running T-Robots..................................2
Basics of T-Robots................................4
The programming language..........................5
Command lists and descriptions....................6
IF statement lists and descrip...................11
Programming the robots...........................13
Staging a competition............................15
Trouble-shooting and Speed-control...............15
More legal stuff.................................16
Final Notes......................................18
-----------------------------------------------------------------------------
THINGS YOU SHOULD HAVE
You need a text editor! Writing programs will be very difficult without
one. DOS 5 has a nice editor (that's what I'm using to write this), or you
can use a programming environment (like Turbo Pascal or C or Quick-Basic),
or you can even use some word processors. If you use basic or or something
like Word Perfect, you will need to remember to save it as "dos text" or
"ascii format".
Here are the files you should have:
T-ROBOTS.EXE - The program.
T-ROBOTS.DOC - This file.
PRINTDOC.BAT - Batch file to print out this documentation.
COMMENTS.TXT - Comments written by other T-robots users.
README.1ST - Important notices. You should have read it by now.
DEMO.BAT - The demonstration run. Run this for a demo.
DEMO.DAT - The demonstration config file.
CHASER.TR \
SNIPER.TR >- These are some sample robots.
TARGET.TR /
????????.TR - Other robots written for use with this program.
ALL T-robots robots MUST have the .TR extension.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 1
-----------------------------------------------------------------------------
TRADEMARKS:
T-Robots (c) 1991, 1992 Ed T. Toton III
P-Robots (c) 1988 David Malmberg
C-Robots (c) 1985 Tom Poindexter
Turbo Pascal is a registered trademark of Borland International.
-----------------------------------------------------------------------------
T-ROBOTS: "Tee-Robots"
T-Robots is designed to allow people to design and program robots to
fight one another. Competitions between people is what it's all about!!
The robots are programmed in a simple language which will be explained
shortly.
T-Robots was inspired by P-Robots (written by David Malmberg), which was
in tern inspired by C-robots (written by Tom Poindexter). T-Robots is
designed with the idea of programming robots, without going to the lengths
of learning to program in high-level languages, but to still allow fairly
simple program design. The language has some similarities to basic, and only
has a small amount of available commands, thus making it easy to learn, while
offering experienced programmers an interesting challenge. Though it is not
a real programming language of sorts, it can still teach the basic concepts
of programming and logical thinking.
Later versions of the program may allow you to make hardware changes for
your robot. Such as add and remove specific types of weapons and armor. This
is under consideration, but no garauntees will be made at this time.
The system may also still have bugs or discrepencies. Please contact me
if you spot one!! Also, please let me know if I have left anything out of
the documentation that you think I should include. And in addition to that,
please inform me if you have any ideas of new commands to add to the
programming language.
-----------------------------------------------------------------------------
TECHNICAL INFO:
T-Robots is designed to be compatable with most graphic adapters. I
believe it will work properly on most. It has been tested on several VGA's,
a CGA, and a Hercules.
T-Robots is written in Turbo Pascal 6.0. It does not multi-task, it
simulates it.
T-Robots should be used on 286's and better. It may run too slowly on
slower computers.
-----------------------------------------------------------------------------
RUNNING T-ROBOTS
To run T-robots, you must have at least one robot program ready, and you
must make a configuration file to use it. To run T-Robots, you type
"t-robots", then a space, then the name of the config file.
ex: T-ROBOTS MYFILE.DAT
The config file tells T-Robots what settings to use, and which robots to run.
Inside the file you put ONE item per line. Settings start with a dash (-),
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 2
and sometimes have a parameter number. For the robots you put the name of the
robot file, but without the TR extension. The settings will be explained
shortly. Here is an example:
-d0
-gn
-s100
myrobot
robot1
robot1
This file would tell T-robots to have no delay (thus run at the maximum
speed), with NO graphics (so as to get a quick result), and to update the
output every 100 cycles (again to increase speed. This setting usually
defaults to 10). It then loads MYROBOT.TR into robot #1, ROBOT1.TR into
robot #2, and ROBOT1.TR into robot #3. There can be up to 6 robots,
and in this case only 3 are used.
The settings are as follows:
-D## Sets the delay in hundredths of a second.
Should never be over 20 (unless in combination with -N#).
-A If graphics are on, this will allow the status bars to be displayed.
-GN Turns the graphics OFF.
-S## Number of cycles between output updates. (increase for greater speed)
only works with the graphics turned off.
-M# Force a specific graphic mode (usually automatic). Modes are listed
later.
-N## Cycles between each delay. Usually 1, but can be increased when using
it with -D1 to speed things up (to make it faster than -D1 by itself).
-P## Increases the number of program commands each robot executes each
cycle. Can be useful when using complicated programs. Don't set too
high though, it can mess things up.
-R## Tells T-robots to Run a number of battles as you specify.
-TN Turns off the title screen. Once you've seen it a few times, you'll
get tired of it and this is here for that purpose.
-F# Sets the number of missiles each robot can have in the air at once.
Can be set anywhere from 0 to 10.
-Q Sets T-Robots to run in Quiet mode.
Here are the default settings:
-D 1
-A off, you must use -A if you want status bars on.
-GN on, you must use -GN if you want the graphics off.
-TN on, you must use -TN if you want the the title screen off.
-S 10
-M 0
-N 1
-P 2
-R 1
-F 4
-Q on, you must use -Q if you want the sound off.
[ Note- It is HIGHLY suggested that you make a print-out of this file! ]
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 3
Graphic modes:
0 : Autodetect (default)
1 : CGA
2 : MCGA
3 : EGA
4 : EGA64
5 : EGA mono
6 : IBM 8514 SVGA
7 : Hercules
8 : AT&T400
9 : VGA
10 : PC3270
There are two keyboard commands you must know before you start. One is
the quit key, which is 'Q'. The other command, which only works if you are
running multiple matches, is the 'N' key, which aborts the present match
and starts the next.
If you want to run the included demo, drop to dos and run the batch file
called DEMO. That's right, in dos type DEMO and hit enter. It will run
the demo for you.
When running multiple matches you should still baby-sit the program because
somtimes robots will end up in opposite corners, or whatever, and will be
unable to hit each other, in which case you need to press 'N' to skip to the
next round.
-----------------------------------------------------------------------------
BASICS:
The arena is 1 kilometer wide and 1 kilometer long. The coordinate system is
set up such that (0,0) is at the upper-left corner and (1000,1000) is at the
lower-right.
The screen is set up as follows:
0,0 ________________________________________ 1000,0 | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| |
| Arena | (status bars)
| |
| |
| |
| |
| |
| |
| |
| |
0,1000 |________________________________________| 1000,1000
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 4
Navigation is done in a 360 degree circle. Here are the directions for
each course:
0 (360)
|
315 | 45
\ | /
270 ----- + ----- 90
/ | \
225 | 135
|
180
The Robots are all equipped with a scanner, armor, a laser, and a missile
launcher (with unlimited ammunition).
Robots don't stop, start, or turn on a dime. When you tell the robot to
move at a certain speed, it will accelerate until it reaches that speed or
it collides with something. Once it has reached that speed it will remain
there until you change it or it collides with something.
When you instruct the robot to turn, it will rotate until it faces the
new direction, or you tell it to do otherwise. The robot will always rotate
in the direction that is shortest to face the target heading. if you tell
it to turn 270 degrees to the right, it will turn 90 to the left (it's
shorter, and is still the same heading).
Missiles are always set with a maximum range. They will detonate when
they reach that range, or if they get close to another robot. The range
is set using the RANGE command. Even if you change your RANGE, the range
at which the missiles in the air are set for will remain the same. Once
launched, they cannot be affected.
The missile rack also needs to reload after firing, so even if you call
the fire command a couple times in a row, only one or two missiles may come
out. You have to plan accordingly. The laser doesn't have this problem, but
it generates more heat, and doesn't cause a blast when it hits the wall.
Each robot has two status bars (if you used the -A option). The left one,
which is in the same color as the robot if you have a 16 color display, is
the robot's armor. The one next to it (in blue for those of you who have
16 color) is the robot's heat scale.
-----------------------------------------------------------------------------
THE PROGRAMMING LANGUAGE:
The language is used as follows:
The programming language consists of four basic types of statements.
1) Remarks. - These are not compiled into your program, they are simply
notes that you can read when viewing programs.
2) Labels. - These are the target locations for GOTO and GOSUB commands.
They are not executed and do not use your robots time.
3) Commands.- These are the functions of your robot. They command the robot
to perform specified activities.
4) If's. - These allow you to put conditions on certain commands which
must be met before the command will be executed, otherwise it
is ignored.
5) Variables- Variables are a major programming thingie. They may have values
from -9999 to 9999. There are other restrictions listed below.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 5
Remarks:
Syntax:
; <statement>
The semi-colon MUST be the FIRST character on the line, and whatever you
put on the line with it will be ignored by the compiler.
Labels:
Syntax:
:####
The colon MUST be the FIRST character on the line. RIGHT after it,
without any spaces in-between, you put a number anywhere from 0 to 9999.
That number is the label. Do not use the same number twice within the
same program.
Commands:
Syntax:
Command [parameters]
The command may or may not have parameters, but if there are, you
seperate them from the command with ONE space. If you use more than
one you will get an error. The command must start all the way at
the left of the line. No spaces.
If's:
Syntax:
IF <if statement> <command>
The IF statements ALWAYS start with the word "IF" as the first thing
on the line. On the same line, seperated by ONE space, is the
"if statement", which contains the condition under which the command
will be executed. The command then follows, also seperated by ONE space.
The command may be another IF. No more than 3 IF's may be linked in one
line.
Variables:
Each robot has 26 variables at it's disposal, named "A" to "Z". Note
that not all of them are readily available. "X", "Y", "H", "D", and "S"
cannot be assigned values. You can access them to see certain aspects of
the robot. "X" and "Y" are your coordinates. "H" is your heat, "D" is
the direction the robot is facing, and "S" is the speed. You may use all
other variables as you wish. A sample robot using variables is called
"VAR-ROB.TR". Look for that if you have questions.
------------------------------------------------------------------------------
COMMANDS:
(any numbers in parentheses next to the command name indicates
a number of additional cycles used to execute the function.
In other words, it's slower)
(The "*"'s mean that such commands may have a variable in place
of the number. Those without this will not allow it)
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 6
MOVE *
Syntax: MOVE <speed>
valid speed range: 0 - 100
MOVE instructs the robot to move at the designated speed. 0 is dead still,
while 100 is full speed. Maximum speed will decrease as the robot starts
to overheat.
TURN *
Syntax: TURN <angle>
valid angle range: -359 - 359
TURN instructs the robot to rotate the number of degrees specified to the
right. If the number is between -179 and -1 or it is between 181 and 359,
then the robot will turn left.
General rule: positive numbers turn right: 1 to 180
negative numbers turn left : -1 to -180
HEAD *
Syntax: HEAD <heading>
valid heading range: 0 - 360
HEAD instructs the robot to rotate to face a new heading as specified
in the parameter. It won't face the new direction immediately, for it
always takes time to rotate.
RANDSPIN
Syntax: RANDSPIN
RANDSPIN instructs the robot to rotate to face a new heading as specified
by the random number generator. The new heading will be anywhere from 0 to
359. It won't face the new direction immediately, for it always takes time
to rotate.
DESTRUCT
Syntax: DESTRUCT
DESTRUCT detonates the robot. Nearby robots may be damaged by the
explosion.
FIRE (1)
Syntax: FIRE
FIRE instructs the robot to fire a missile. The missile rack will then need
to re-load and firing again will not be possible for another few cycles.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 7
SFIRE (3)
Syntax: SFIRE
FIRE instructs the robot to fire a missile. The missile rack will then need
to re-load and firing again will not be possible for another few cycles.
The missile will automatically scan with the present scan settings before
launch, and automatically set it's maximum range to the distance to the
nearest target within the scan area.
LFIRE (1)
Syntax: LFIRE
LFIRE instructs the robot to fire it's laser. The laser generates
more heat than the missiles, but reaches the target location instantly.
SHOOT (1) *
Syntax: SHOOT <range>
valid range: 30 - 1000
SHOOT instructs the robot to fire a missile that will detonate at the
specified range (thus over-riding the present settings). The missile rack
will then need to re-load and firing again will not be possible for
another few cycles.
RESET
Syntax: RESET
The RESET command resets your robot. It will return the default values
to SHIFT, ANGLE, RANGE, OVERBURN, and KEEPSHIFT, and will start the
program over.
SETSHIFT *
Syntax: SETSHIFT <angle>
valid shift range: 0 - 360
SETSHIFT sets a specific angle in relation to the robot in which the
robot's turret will point. 0 is forward, 90 to the right, 180 back,
and 270 left.
SHIFT *
Syntax: SHIFT <angle>
valid angle range: -359 - 359
SHIFT is acummulative version of SETSHIFT. Everytime it is called,
it rotates the turret the specified number of degrees to the right
(or left if you use a negative number).
KEEPSHIFT-ON
Syntax: KEEPSHIFT-ON
The KEEPSHIFT-ON command will turn the shift-keeper on. The Shift-keeper
keeps the gun pointing in the same direction in relation to the arena
when the robot turns. If your gun was pointing north, and you turn east,
the gun still points north.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 8
KEEPSHIFT-OFF
Syntax: KEEPSHIFT-OFF
This turns off the shift-keeper.
RANGE *
Syntax: RANGE <range>
valid range: 0 - 1000
RANGE sets the maximum range for your missiles, your laser, and your
scanner.
ANGLE *
Syntax: ANGLE <angle>
valid angle range: 0.01 - 359.99
ANGLE sets the radius of your scan angle. The scanner always points in
the same direction as your weapons. If you specify an ANGLE of 10, then
the area your scanner will scan will be an arc 20 degrees wide, centered
down the line of fire of your weapons.
BURN-ON
Syntax: BURN-ON
BURN-ON turns the overburn ON.
BURN-OFF
Syntax: BURN-OFF
BURN-OFF turns the overburn OFF.
DELAY *
Syntax: DELAY <delay>
valid delay range: 0 - 9999
This sets a number of cycles of program-inactivity for your robot.
GOTO *
Syntax: GOTO <label>
Sends the program cursor to the specified label.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 9
GOSUB *
Syntax: GOSUB <label>
Sends the program cursor to the specified label, like GOTO, BUT it will
return to the location of the GOSUB statement when you call RETURN.
Everytime you call GOSUB, the location of that command is placed on the
stack. If the stack was full, the GOSUB statement is ignored. Up to 20
GOSUBS may be called without calling a RETURN before the stack will fill.
When you call RETURN, the program cursor will go back to where the last
GOSUB was called before. For a better understanding, examine the BASIC
programming language, or Quick-Basic. The commands GOSUB and RETURN
work the same there. Several of the sample robots use these.
RETURN
Syntax: RETURN
Pops the last GOSUB location from the top of the stack, and
sends the program cursor there.
STOPTURN
Syntax: STOPTURN
This command stops your robot from rotating. If your robot is still turning
due to a previous command, this will stop it.
STOPACC
Syntax: STOPACC
This command will stop your robot from accelerating or decelerating. If your
robot is still changing speed due to a previous command, this will stop it.
ADD *
Syntax: ADD <variable> <value 1> <value 2>
This command adds values 1 and 2 and puts the result into the variable.
The values may be either variables or numbers in the range of -9999 to 9999.
Examples: ADD e e 1 { adds 1 to e }
ADD k 2 3 { sets k equal to 5 }
ADD t u i { sets t equal to u+i }
ADD t k 0 { sets t equal to k }
SUBTRACT *
Syntax: SUBTRACT <variable> <value 1> <value 2>
This command is identical to ADD except that value 2 is subtracted from
value 1 instead of being added.
<var>= *
Syntax: <variable>=<value>
Sets the variable equal to the value. The value may be any integer from
-9999 to 9999, or another variable.
Example: A=1200 { sets A equal to 1200 }
B=H { sets B equal to your robot's heat level. }
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 10
------------------------------------------------------------------------------
IF statements:
(The "*"'s mean that such commands may have a variable in place
of the number. Those without this will not allow it)
ARMOR *
Syntax: IF ARMOR<### <command>
or
IF ARMOR>### <command>
This will execute the command if the armor of your robot is greater than
or less than (as specified) the number you list. The number may be between
0 and 100.
X *
Syntax: IF X<### <command>
or
IF X>### <command>
This will execute the command if the X coordinate of your robot is greater
than or less than (as specified) the number you list. The number may be
between 0 and 1000.
Y *
Syntax: IF Y<### <command>
or
IF Y>### <command>
This will execute the command if the Y coordinate of your robot is greater
than or less than (as specified) the number you list. The number may be
between 0 and 1000.
SPEED *
Syntax: IF SPEED<### <command>
or
IF SPEED>### <command>
This will execute the command if the speed of your robot is greater than
or less than (as specified) the number you list. The number may be between
0 and 100.
HEAT *
Syntax: IF HEAT<### <command>
or
IF HEAT>### <command>
This will execute the command if the heat of your robot is greater than
or less than (as specified) the number you list. The number may be between
0 and 500.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 11
RANDOM
Syntax: IF RANDOM <command>
This will execute the command on a 50% probabilitty.
OVERBURN-ON
Syntax: IF OVERBURN-ON <command>
This will execute the command if the overburn for your robot is ON.
OVERBURN-OFF
Syntax: IF OVERBURN-OFF <command>
This will execute the command if the overburn for your robot is OFF.
ENEMY (1)
Syntax: IF ENEMY <command>
This will execute the command if there is an enemy within the range
set by RANGE, and within the arc set by ANGLE and in the direction
set by SHIFT and SETSHIFT in relation to your robot.
RANGE (1) *
Syntax: IF RANGE<#### <command>
or
IF RANGE>#### <command>
This will execute the command if the nearest enemy is at a distance
greater than or less than (as specified) the distance you list.
distances can be from 0 to 1000.
SCAN (1) *
Syntax: IF SCAN<#### <command>
or
IF SCAN>#### <command>
This will execute the command if the nearest enemy that is within your
arc set by ANGLE and is within the distance set by RANGE and is in the
direction set by SHIFT and SETSHIFT in relation to your robot is at a
distance greater than or less than (as specified) the distance you list.
distances can be from 0 to 1000.
NUMROBOTS *
Syntax: IF NUMROBOTS<#### <command>
IF NUMROBOTS>#### <command>
IF NUMROBOTS=#### <command>
This will execute the command if the number of robots still in existance
(including yours) is greater than or less than or equal to (as specified)
the number you list. Valid ranges are from 1 to 6.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 12
HIT
Syntax: IF HIT <command>
This will execute the command if your robot was damaged since the last
time you called THIS statement.
ATSPEED
Syntax: IF ATSPEED <command>
This will execute the command if your robot is moving at the target speed.
if you collide, your speed and target speed are set to 0.
ATHEAD
Syntax: IF ATHEAD <command>
This will execute the command if your robot is facing the target heading.
<var>=, <var>>, <var>< *
Syntax IF <variable>=<value> <command>
IF <variable><<value> <command>
IF <variable>><value> <command>
This will execute the command if the variable has a value appropriate to
the conditions in relation to the other value. The Value may be any integer
from -9999 to 9999 or another variable.
Examples: IF d<10 fire
IF i>200 turn 10
IF g=a destruct
-----------------------------------------------------------------------------
PROGRAMMING THE ROBOTS:
General rules:
1. Always start everything on the left side of the line.
2. You MAY leave blank lines. The compiler ignores them.
3. One command is executed each cycle unless otherwise noted.
4. Examining the sample robots is the best teacher.
5. Commands may be upper-case, lower-case, or any combination.
6. Never make multiple labels of the same ID number within the
same program.
7. All robots MUST have the extension TR.
ex- MYROBOT.TR, or THISGUY.TR
Each command is executed in one cycle.
(unless it is a particularly slow command)
The following commands take one cycle to execute:
MOVE 100
Range 860
if x<50 turn 90
if x<49 if y>988 if armor>50 setshift 45
if speed<10 goto 5
if heat>400 gosub 37
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 13
If statements may be piled up as shown to emulate the "AND" operator
without any speed-loss. You can only put up to 4 IF's and 1 command.
Examples: IF ARMOR<50 IF X>600 FIRE
IF ENEMY AND Y>400 AND Y<800 AND RANGE<20 GOSUB 5000
The following commands are slower:
if enemy move 20
shoot 35
if scan<50 sfire
if armor>50 if x<50 if enemy shoot 1000
sfire
Boolean Evaluation is not complete! You can make your robot run a little
faster if you order your commands properly. Here is an example:
Here is a line to make the robot shoot under
certain conditions:
IF enemy IF x<500 FIRE
No matter whether he sees an enemy or not, or if the robot has an x
value of less than 500, this line will take 2 program cycles to
execute, because "IF ENEMY" is a slow command. However, if it were
worded like:
IF x<500 IF enemy FIRE
then there would be a significant speed increase. It will take
just as long if the "IF X" statement is true, but it will be faster
if the "IF X" is false, simply because it never executes the
"IF ENEMY" command.
WATCH YOUR HEAT!! Over-heated robots can easily become DEAD robots!
Here is the heat scale:
100+ Max speed reduced to 95.
150+ Max speed reduced to 85.
200+ Max speed reduced to 70.
250+ Max speed reduced to 50.
300+ Heat starts burning armor off.
400+ Robot stops executing commands until cools below 400 (shutdown).
500+ Robot explodes.
OVER-BURN SHOULD BE USED WITH CAUTION!!!
Overburn effects the following:
1) better acceleration, but more heat from it.
2) better turn speed, but more heat from it.
3) better laser effect, but more heat from it.
4) bigger explosion from death or self-destruct.
5) worse heat dissipation.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 14
There are several "setting" commands, such as SETSHIFT, and ANGLE. The
default settings are as follows: (in other words, it's as if these commands
were at the front of your program, but they don't take time to execute):
Item: Value:
------------------
SETSHIFT 0
ANGLE 10
RANGE 1000
OVERBURN off
KEEPSHIFT off
All variables are set to 0 at the beginning of the battle.
You will want to note that SHIFTing turns everything on your turret. This
includes your laser, missiles, and scanner. For SETSHIFT, everything works
in relation to your robot. So if you specify 90, that means the turret will
point 90 degrees to the right of your robot, and it will stay there until
you change it.
If you really want to you can leave spaces before the commands, but the
first non-space character must still be a semicolon for remarks, a colon
for labels, and so forth..
Another thing you will want to remember is that the stack for your robot is
only 20 in size. That means you can call 20 GOSUB's before calling a RETURN.
Be careful: if the stack fills up, and you call a GOSUB, it will be ignored.
There is no problem with having excess RETURNS, if you call one when the
stack is empty, it too will be ignored. Having misused these two commands is
the greatest cause of robot malfunction.
-----------------------------------------------------------------------------
STAGING A COMPETITION
When starting a competition, you should set up several "rules" in advance
so that everyone involved can take them into account when writing their
programs. Among the most important rules are:
1. Program speed. (the -P# setting)
2. Whether either of the weapons
will be dissallowed.
3. The number of missiles you can have
in flight. (the -F# setting)
-----------------------------------------------------------------------------
TROUBLE-SHOOTING & SPEED-CONTROL
The T-Robots program is basically fully automatic and self-contained. It
will probably either work or it won't. If there is a problem, most likely
(but not definitely) you are out of luck. Here are some possible causes of
your difficulty:
1. Not enough memory.
2. Incompatable graphics adapter.
3. Damaged copy of T-robots.
4. Computer is not sufficiently IBM compatable.
5. You haven't followed any of the instructions.
6. Computer is damaged or not performing properly.
7. You're using too early a version of DOS.
(suggest DOS 3.3 or higher)
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 15
If you HAVE gotten the program to run, but it's too slow, there are some
things you can do to speed it up. First, you can limit the number of missiles
that can be in flight at once, using the -F setting. You can also try putting
only 2 or 3 robots in the arena at once. You will find that the program slows
down alot when you put 5 or 6. Another thing you can do is put the -D0
setting in. That will turn off the delay that is placed in the program to
keep it running at the proper speed on faster computers.
If the problem is that the program runs TOO fast, then put the -D1 setting
in. You can also put the -N command. Keep play with different settings on
the -N until you get it where you want it. If the speed is too fast, you
may want to put more missiles and more robots, since there's nothing to stop
you from doing it.
Also keep in mind that the -A command slows the entire simulation
dramatically. It is suggested that you use it when you have the speed to
spare, and not when it's too slow.
The correlation between -D and -N needs to be explained. The delay will be
implemented every N cycles. Now here's how the delay works: If the number of
hundredths of a second (as determined by -D) haven't gone by yet, then the
program will sit and wait for the time to go by. If the amount of time HAS
gone by, then it doesn't bother to wait for it. So if you set -N10 and -D10,
you will probably not see any effect at all (unless your computer is pretty
fast), simply because it will probably take more than ten hundredths
(or rather one tenth) of a second to perform 10 cycles.
-----------------------------------------------------------------------------
CHANGES:
v2.0 - Variables are now included!!! The magnitude of this cannot
possibly be fully understood, for the entire program had to
be completely overhauled (so that almost every command will
allow you to use variables instead of numbers).
- The ATHEAD and ATSPEED commands for IF statements weren't
working. That has been fixed.
-----------------------------------------------------------------------------
NOTICE:
This program is being distributed on the "shareware" concept. It is by
no means completely free. If you think the program is of use to you, please
send a registration fee of $14. If you think that is rediculous, then send
less (or more for that matter). If you hate the program or found too many
bugs, write me and tell me, and include a graphic explanation (but don't
be too harsh!! Heheheh). In any event, write to:
Ed T. Toton III
7101 Talisman Lane
Columbia Md 21045
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 16
And WHY should you register it?
1. Because you're supposed to. If you use T-robots somehwat often,
or several people use a copy off the same computer, or you
keep it on your hard drive for lengthy periods, then it
should be registered!
2. To support my continuing efforts to bring you some level of
functional programs. If I get no cash, you get no improvements
in these programs, and I won't be encouraged to make new and
better software!
3. To get that warm glow for knowing that you supported the author
of at least one of the many shareware programs you probably use.
4. To find out if there is a newer version. All you need to do is
ask! But letters with money take priority!
5. You could be sick and demented and thus register everything you
get your hands on.
6. To get a registered copy of StratSys 2.0!! If you register this
program you will recieve a registered copy of StratSys 2.0 in
the mail (please tell me what disk type you want). StratSys is
VGA & Mouse required, and is explained in detail below...
7. To find out about my other programs you need only ask!
But again, letters with money take precedence.
Source code is not yet available. It may be in later versions.
-----------------------------------------------------------------------------
DISCLAIMER:
This program is provided "AS IS" and I make no gauruntees about it's
performance. I will not be and can not be held responsible for any damages
incurred during it's use, or as a result of it's use. It's on a "use at your
own risk" basis. Nothing at all should happen, the program is harmless,
but I have to say it anyway
-----------------------------------------------------------------------------
COPYRIGHT:
This program may be freely distributed (which is actually encouraged)
AS IS. No one may modify this program in ANY way. ESPECIALLY where names
and credit is given, and INCLUDING all the documentation, data files, and
executable program files. It may NOT be used for comercial or profit-turning
ventures of any kind, including sale by disk vendors, without the written
consent by ME, with ONE exception: Disk vendors MAY sell it without my
written consent ONLY if they charge no more than $5 higher then the cost of
the disk (excluding any shipping and handling charges). NOTHING may be added
to it either (except in the case of writing to the file COMMENTS.TXT, and
in the case of adding more robot program files). NO BBS ads are allowed EXCEPT
as zip comments, or as a single SEPERATE text file.
Any robots you write for use with T-Robots are yours and you may do what
you wish with them. It is encouraged that you distribute robots around as
well as this program.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 17
-----------------------------------------------------------------------------
FINAL NOTE:
If you have any questions, concerns, suggestions, criticisms, donations,
remarks, praise or opinions, please write! I WANT TO HEAR FROM YOU!!
(the address is listed above).
Ed T. Toton III
"Necromancer"
-1992
Oh, and one more thing. Your comments are welcome! If there are any
statements or comments or suggestions you would like to make to those who
later try to use T-Robots, please feel free to add them to the file called
COMMENTS.TXT. And if you think the comments are good (either yours, or the
ones already in your COMMENTS.TXT file), please send them to me! I might
make them a part of the next release of the program (if there is one).
OTHER SOFTWARE:
I have made several programs (not including the 7 or so games I made
in quick-basic a while back) that may be of interest to you. Here is
a list of some of them: (as of 2/3/92)
Blaze v2.6 : =VGA screen-saver. Supports password security,
and a customization system (config file). Has
been known to travel quickly through BBS's.
CompWar v2.6 : =Latest release of CompWar, the on-line game for
use with WWIV BBS systems.
Date-Matcher v1.2 : =On-line match-maker program for BBS's that support
DOS interrupt driven door programs.
StratSys v2.0 : =A 2-player VGA combat strategy game. VERY flexible.
Comes with 4 game scenarios (Cival War, Naval Battle,
Robot Conquest, and a medieval scenario). Expansion
packs are available (at the moment one with 12
scenarios). Comes with an editor for the images and
maps, so you can make your own scenarios!
My-Gags set 1.0 : =A set of 10 small gag programs that I have made.
They are designed to be placed in the autoexec.bat
file. Half of them are TSR's, including one that
creates "line-noise" through the keyboard buffer,
one that beeps occasionally, and one that keeps
changing you caps-lock/numlock/scroll-lock.
T-Robots = (c) 1991, 1992 = Ed T. Toton III pg 18