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