Last Update, January 9, 1994
Congratulations on selecting a quality "Mass-Neotek (TM)" Robot for
your multiuser exploration needs. This short, pleasant brochure is
meant to familiarize you with the basic features and requirements of
your purchase.
1. Making a home for your robot
Before you unpack your robot, you must make a place for him to
live. He needs three things:
1. A tinymud character and password. Create a new tinymud
character with an appropriate name and password. The robot
is shipped named "Colin," but you should pick a different
name if you wish to do more than a quick demonstration of
Maas-Neotek robotics.
2. A home room. This can be the default room, but you will probably
wish to create a new room and link your robot's character to this
new room. Your robot will always start by going "home" and
checking the room name to learn where his home is (that means
you can move your robot's home without clearing his map).
3. A desk. Create a desk for your robot, lock it to the robot's
character, and drop it in the robot's home room. The desk
will have a sign about the robot's current status.
Note, if you do not understand TinyMUD well enough to perform
these steps, you should not be running a robot. Learn more
about the TinyMUD Universe itself, first.
1. Running Amok (I mean, A Muck)
Your robot is designed to work on some Mucks, but beware
Mucks can vary wildly and your results may not be satisfactory.
If you have a Mucker BIT, you can use the enclosed MUF programs
STATUS, POSE, NOTIFY and SCORE to improve the security and
reliability of your robot. Simply add the included MUF programs
to your Muck, and attach actions to the robot and link them to
these programs. Then edit colin.h to set the numbers for
STATUS_CMD, POSE_CMD, PAGE_CMD, and SCORE_CMD to the number of
the action (not the number of the program). If you do not have
a mucker bit, use 0 and the Muck's default LOOK, POSE, SAY, PAGE,
WHISPER and SCORE commands will be used.
2. Configuring your robot
After creating the robot's character, you must set the robot's
name. The default shipping name is "Colin", but you should
definitely pick a new name. Rename the file "colin.c" and
"colin.h" to the appropriate file names, so the name is the
lower case version of the name you created in step 1.
Then edit files name.h and name.c to change all instances
of 'Colin' to 'Name', and 'colin' to 'name'. You should also
set the MALE define variable to 1 for male or 0 for female.
Many parts of the code depend on the name being stored in
lower case EVEN IF your robot's character's name is capitalized.
Be careful.
You must also change the DEFINES in name.h to have appropriate
messages for FAIL, OFAIL, and DESCRIPTIONS for active and
inactive states.
Lastly, you must edit the Makefile and change all occurrences
of <colin> to <name>. Once you have edited the <name.h> file,
type "make <name>" and the Makefile included will build the
executable.
3. Running your robot
To run your robot, you need only type
% colin >& colin.log & (use the name you chose)
But there are a few options that you may wish to specify:
-d debug (lots of output)
-e exploring (you probably want this)
-g generous (gives away money)
-n noisy (disable quiet mode)
-p paging (allows others to page colin)
-t terse (minimal logging output)
-D descriptions (use room descriptions for exits)
-T testing (connect to stdin/stdout)
These options are usually set in <colin.h>, but may be
specified on the command line:
-H'host' Host to connect to game
-P<port> Port number
-M'mapfile' Map file name
-F'playfile' File for player information
A Cshell script run-colin.csh is included. This script loops
repeatedly starting the colin process whenever it dies. This
script also directs the output into log files named by starting
date. To use it, type:
% run-colin.csh >& colin.log &
4. Additional Documentation
File robot.manual contains additional information about
controlling your robot.
5. World specificity
Colin as shipped is somewhat dependent on TinyMUD 1.5.4 and
TinyMUCK as it exists on DruidMuck (128.123.1.14 / 4201)
(especially "The Town Square" and the Library). To port colin
to another game may involve some modification to these "special"
locations. You will also want to change the list of "Landmarks"
in robot.c, functions islandmark() and inlibrary().
6. Bugs
There is a major known problem with Maas-Neotek code:
occasionally the malloced storage in the player or room
database is overwritten by a contents or dialog message.
This will cause a room or player to seem to "disappear"
from the robot's memory. THe robot will recover, but the
resulting "junk" may be left in the map or player file.
If you find this bug, let me know.
7. License
This code is provided freely and without restrictions. I do
ask that you be courteous in your use of it, and specifically
ask that you do not change the code to remove the built-in
delays between executing commands. Also please do not use your
robot to harrass other players. Killing non-sleeping players
is most likely considered harrassment.
8. Availablility
The latest version of Maas-Neotek source code is availble on
HOST: nl.cs.cmu.edu [128.2.222.56]
DIR: /usr/mlm/ftp (type "cd /usr/mlm/ftp")
FILE: robot.tar.Z
MODE: binary
Michael L. Mauldin (Fuzzy) Center for Machine Translation
ARPA: Fuzzy@CMU.EDU Carnegie Mellon University
Phone: (412) 268-5293 Pittsburgh, PA 15213-3890