/* $Header: /belch_a/users/rearl/tinymuck/include/RCS/params.h,v 1.6 90/09/18 08:06:32 rearl Exp $
 * $Log:	params.h,v $
 * Revision 1.6  90/09/18  08:06:32  rearl
 * Moved some stuff in from config.h.
 * 
 * Revision 1.5  90/09/13  06:34:46  rearl
 * PROP_PRIVATE added for unreadable properties.
 * 
 * Revision 1.4  90/08/27  14:09:25  rearl
 * Provision for read-only properties: '_' signals these.
 * 
 * Revision 1.3  90/08/09  21:01:21  rearl
 * Took out some useless stuff, fixed tabs.
 * 
 * Revision 1.2  90/07/19  23:14:44  casie
 * Removed log comments from top.
 * 
 * 
 */

#include "copyright.h"


/* penny related stuff */
#define MAX_PENNIES 100000	/* amount at which temple gets cheap 	*/
#define PENNY_RATE 10		/* 1/chance of getting a penny per room */
#define NEW_PLAYER_PENNIES 100  /* pennies for newly created players    */

/* amount of object endowment, based on cost */

#define MAX_OBJECT_ENDOWMENT 10000
#define MAX_OBJECT_DEPOSIT 10000
#define OBJECT_ENDOWMENT(cost) (cost)
#define OBJECT_DEPOSIT(endow) (endow)

/* minimum costs for various things */

#define OBJECT_COST 10		/* Amount it costs to make an object	*/
#define EXIT_COST 5		/* Amount it costs to make an exit	*/
#define LINK_COST 1		/* Amount it costs to make a link	*/
#define ROOM_COST 100		/* Amount it costs to dig a room 	*/
#define LOOKUP_COST 1	        /* Cost to do a scan 			*/
#define TRIGGER_COST 1          /* Cost for a triggered command         */

/* costs of kill command */

#define KILL_BASE_COST 100	/* prob = expenditure/KILL_BASE_COST	*/
#define KILL_MIN_COST 1 	/* minimum amount needed to kill	*/
#define KILL_BONUS 0		/* amount of "insurance" paid to victim */


/* set to the appropriate time zone */
#define TIMEZONE_STD "EST"      /* standard time */
#define TIMEZONE_DS  "EDT"      /* daylight savings */

/* timing stuff */
#define TIME_MINUTE(x)	(60 * (x))		/* 60 seconds */
#define TIME_HOUR(x)	(60 * (TIME_MINUTE(x)))	/* 60 minutes */
#define TIME_DAY(x)	(24 * (TIME_HOUR(x)))	/* 24 hours   */

#define DUMP_INTERVAL 3600	/* seconds between dumps	*/

#define COMMAND_TIME_MSEC 1000	/* time slice length in milliseconds	*/
#define COMMAND_BURST_SIZE 25	/* commands allowed per user in a burst */
#define COMMANDS_PER_TIME 2	/* commands per time slice after burst	*/


/* maximum amount of queued output */

#define MAX_OUTPUT 16384
#define DB_INITIAL_SIZE	100

#define QUIT_COMMAND "QUIT"
#define WHO_COMMAND "WHO"
#define PREFIX_COMMAND "OUTPUTPREFIX"
#define SUFFIX_COMMAND "OUTPUTSUFFIX"

/* Turn this back on when you want MUD to set from root to some user_id */
/* #define MUD_ID "MUCK" */

/* Change to 'home' if you don't want it to be too confusing to novices. */

#define BREAK_COMMAND "@Q"

/* @edit'or stuff */

#define INSERT_COMMAND 'i'
#define DELETE_COMMAND 'd'
#define QUIT_EDIT_COMMAND   'q'
#define COMPILE_COMMAND 'c'
#define LIST_COMMAND   'l'
#define EDITOR_HELP_COMMAND 'h'
#define KILL_COMMAND 'k'
#define SHOW_COMMAND 's'
#define SHORTSHOW_COMMAND 'a'
#define VIEW_COMMAND 'v'
#define UNASSEMBLE_COMMAND 'u'
#define NUMBER_COMMAND 'n'

/* maximum number of arguments */
#define MAX_ARG  2

/* Usage comments:
   Line numbers start from 1, so when an argument variable is equal to 0, it
   means that it is non existent.

   I've chosen to put the parameters before the command, because this should
   more or less make the players get used to the idea of forth coding..     */

#define EXIT_INSERT "."		/* character to exit from the editor	*/
#define EXIT_DELIMITER ';'	/* delimiter for lists of exit aliases	*/

#define MAX_LINKS 50	/* maximum number of destinations for an exit */

#define PLAYER_START ((dbref) 0) 
#define GLOBAL_ENVIRONMENT ((dbref) 0)  /* parent of all rooms */

/* magic cookies (not chocolate chip) :) */

#define NOT_TOKEN '!'
#define AND_TOKEN '&'
#define OR_TOKEN '|'
#define LOOKUP_TOKEN '*'
#define NUMBER_TOKEN '#'
#define ARG_DELIMITER '='
#define PROP_DELIMITER ':'
#define PROP_WRITABLE '&'
#define PROP_PRIVATE '.'
#define PROP_WIZARD '@'       /* attributes */

/* magic command cookies (oh me, oh my!) */

#define SAY_TOKEN '"'
#define POSE_TOKEN ':'