& help
  This is the MUX online help facility for wizard commands and topics.
  The information provided by this command is generally not useful for
  anyone other than wizards and game maintainers, as the features described
  here are only accessable to characters whose WIZARD bit is set, or to those
  who have access to the directory where the MUX data files reside.
 
  Syntax of help command:
     wizhelp [<command/topic>]
 
  To get a list of MUX wizard topics:
     wizhelp topics
 
  To get a list of MUX wizard commands:
     wizhelp commands
 
  If there are any errors in the help text, please notify a Wizard.
  See also: help.

& commands
  Help is available for the following MUX commands:
 
  DOING          examine        give           SESSION        slay
  WHO            wizhelp
 
  @addcommand    @admin         @apply_marked  @attribute     @boot
  @chown         @chownall      @clone         @cut           @dbck
  @dbclean       @delcommand    @destroy       @disable       @doing
  @dump          @enable        @fixdb         @function      @halt
  @kick          @list          @listcommands  @list_file     @listmotd
  @lock          @mark          @mark_all      @motd          @newpassword
  @pcreate       @poor          @ps            @quota         @readcache
  @restart       @shutdown      @startslave    @timewarp      @toad
  @wall
 
  @allowance     @comment       @timeout

& topics
  Help available on the following Topics:
 
  CAUTIONS           CONFIG PARAMETERS  DEBUG FEATURES     FILES
  FLAGS              INHERITANCE        LOGGING            MASTER ROOM
  PERMISSIONS        SEARCH CRITERIA    SITE LISTS

& flags
  Information is available on the following flags:
 
  INHERIT(i)         MARKED(m)          STARTUP(z)         SUSPECT(u)
  WIZARD(W)

& examine
  Command: examine[/<switches>] [<object>]
 
  Wizards may use the /debug switch to see additional information about the
  object.  The Owner, Exits, Next, and Contents fields of the object are
  shown in numeric form only, and an attribute list is included.

& give
  Command: give[/<switches>] <who> = <what>
 
  Wizards may use the /quiet switch to suppress the 'You give X to P' and
  'P gave you X' messages.  Other messages related to giving objects
  (such as the xDROP and XSUCC attributes on the object being given, or
  error messages) are not suppressed.

& SESSION
  Command: SESSION <prefix>
  The SESSION command displays character input and output information for
  all connected players, or just those who match <prefix>.
 
  This command can be used to help identify network problems as follows:
    - A nonzero Input Pending count can indicate indicate typeahead or a
      client program dumping commands faster than the command scheduling
      parameters let them be executed.  Telnet sessions in character mode also
      show up with positive Input Pending counts when the player is in the
      middle of typing a command.
    - A nozero Input Lost count means that the player has typed a line longer
      than what the MUX can handle.  This usually indicates a problem with
      the player's client or terminal (a stuck key).
    - A persistently large Output Pending count can indicate netlag between
      the host site and the player's site, or merely that the player has
      performed a command that generated a lot of output which hasn't been
      sent yet.
    - A nonzero Output Lost count usually means that the player performed
      a command that produced more output than the output buffer could hold.
      It may also indicate network problems or that the player is generating
      output faster than the network or his client can process it.
     
& slay
  Command: slay <player/object>
  Kills the indicated player or object without paying any insurance to the
  victim.  It should be used in places where suicide should not be rewarded.
  See also: kill, IMMORTAL.

& WHO
  Command: WHO <prefix>
 
  The WHO command returns miscellaneous information about connected players.
  It returns the player name, connect time, idle time, and player flags just
  like the player WHO command (which is available as the DOING command), but
  returns the following information in place of the player's Doing string:
 
     Room         - The room that the player is in.
     Commands     - The number of commands that the player has entered during
                    this session (not counting machine commands).
     Host flags   - located bwtween the Commands and Host fields:
                    F(forbidden), R(registration), +(suspect).
     Host         - The Internet host name or address from where the player has
                    connected.

  See also: SESSION, DOING.

& DOING
  Command: DOING <prefix>

  This command is very similar to the mortal WHO command (the wizard WHO
  command returns different information).  When run by a wizard, the DOING
  command reports additional information about the player in the form of flag
  letters between the idle time and the players' Doing string.  The following
  letters may be present:
 
  D - Player is set DARK.
  d - Player is not shown on the WHO list because they have been idle for
      longer than the default inactivity timeout and the idle_dark_wiz
      configuration parameter has been turned on. (only if not D)
  U - Player is set UNFINDABLE.
  u - Player is in an UNFINDABLE location (only if not U).
  + - Player is set SUSPECT.
 
  See also: SESSION, WHO, DARK, UNFINDABLE, SUSPECT, idle_dark_wiz.

& wizhelp
  Command: wizhelp <topic>
  Displays information from the wizard help file.  The information is
  typically of use only to wizards and/or the game maintainer.
  See also: the source code.

& @addcommand
  Command: @addcommand <name>=<thing>/<attribute>
  This command has the capability of adding a softcoded command to the MUX's
  built-in command table. If <name> already exists as a built-in command,
  such as 'look' or 'WHO', it will actually replace the functionality of
  that command, and all aliases that currently point to it. As in look's
  case, the aliases 'l', 'lo', and 'loo', and the main command 'look' will
  all point to these softcoded commands. The syntax of <thing>/<attribute> is
  like any normal $command. 
 
  For example:

  > &LOOK me=$look:say I looked here!
  > &LOOK_WITH_ARG me=$look *:say I looked at %0!
  > &LOOK_OUTSIDE me=$look/outside *:say I looked outside at %0!
  > @addcommand look=me/look
  > @addcommand look=me/look_with_arg
  > @addcommand look=me/look_outside
 
  { 'help @addcommand2' for more }
 
& @addcommand2
  Yes, you can specify more than one attribute to go with <name>. When you
  type 'look' or 'look sofa', the game will execute all attributes that
  match what you have typed in. Aliases like 'l' are expanded to 'look' so
  you don't have to worry about those when you take command matching into
  consideration. If none of the attributes attached match (the attribute
  *must* begin with $<name> in order to match at all!), no output will
  be generated.
 
  Another use is to speed up use of a particular global command. Just use
  @addcommand to add it to the built-in list, and it will be looked up
  much faster.
 
  See also: @delcommand, @listcommands.
 
& @delcommand
  Command: @delcommand <name>[=<thing>/<attribute>]
  Deletes a command added by @addcommand. With only <name> specified, deletes
  all added commands under <name>. When you specify <thing> and <attribute>,
  it only deletes that specific entry. If the command or commands you are
  deleting had replaced a built-in command, the built-in command and all
  aliases are restored to their normal names and actions.
 
  See also: @addcommand, @listcommands.
 
& @listcommands
  Command: @listcommands [<name>]
  Lists commands added by @addcommand. With <name> specified, lists all
  commands added under that particular command name. Without it, lists all
  added commands.
 
  See also: @addcommand, @listcommands.
 
& @admin
  Command: @admin <param>=<value>
  Sets a TinyMUX configuration parameter to the indicated value.
  Type 'wizhelp config parameters' for a list of the config parameters that
  may be set.

& @apply_marked
  Command: @apply_marked <command>
  Performs <command> once for each object in the database that has its MARK
  flag set, substituting the characters ## for the object number of the
  marked object.  The command is performed by the player invoking the
  @apply_marked command, not by the marked object.  This command may only
  be used when database cleaning is disabled (via @disable cleaning),
  as cleaning uses the MARKED flag to check connectivity.
  See also: @mark, @mark_all, MARKED.

& @attribute
  Command: @attribute[/<switch>] <attrib>[=<value>]
  Performs operations on user-named attributes depending on the switch used.
  The following switches are available:
     /access   - Changes mthejkk access to the named attribute.  <value> is a
                 space-separated list of permissions to add or remove from
                 the attribute's access permissions.
     /delete   - Removes the named attribute from the attribute table.
                 This switch does not remove instances of the attribute from
                 objects, and any that remain will be renamed to the 
                 user-named attribute that re-uses the attribute number
                 of the deleted attribute.
     /rename   - Changes the name of the named attribute to <value>.
  Note that changes to user-named attributes performed by this command
  are permanent and do not need to be performed each time the MUX is
  restarted.
 
& @boot
  Command: @boot[/<switches>] <player>
  Severs the named player's connection to the game.  The player is given a
  notice that they have been booted.  If the player is connected to the game
  more than once, then all connections to that player are severed.
 
  The following switches are available:
    /quiet - Don't give the booted player any special notice.
    /port  - Disconnects only a specific port (port numbers may be obtained
             from the SESSION command).  In this case <player> must be a
             number.
  See also: @destroy, @toad, SESSION.

& @chown
  Command: @chown <object>=<player>
 
  Wizards may @chown objects, rooms, and exits to other players.
  @Chowned objects are set HALT.
 
  See also: @chownall.

& @clone
  Command: @clone[/<switches>] <object>
  Wizards may also specify the /preserve switch, which preserves the original
  owner of the object in the new copy, instead of creating the copy as being
  owned by the wizard.

& @chownall
  Command: @chownall <victim>[=<recipient>]
  Changes the ownership of all of the victim's objects, rooms, and exits to
  the indicated recipient (or to the wizard performing the @chownall if
  no recipient is specified).  All objects, rooms, and exits are set HALTED.
  See also: @chown.

& @cut
  Command: @cut <object/exit>
  Cuts off the object or exit list for the current location at the indicated
  object or exit by setting [next(thing)] to NOTHING.  Objects or exits that
  follow in the chain are not moved or otherwise changed, and are only
  accessable by object number.  This command is intended for performing
  database repair, and should be used only with extreme caution.

& @dbck
  Command: @dbck
  Performs a scan of the database looking for inconsistencies in the object
  chains, disconnected rooms, rooms waiting to be destroyed, and problems in
  the object free list.  Problems that are found are reported to the log
  file, disconnected rooms are reported to their owners, and players are
  credited for rooms destroyed.  Database checks are automatically run
  periodically, so there is usually no need to use this command.
  See also: @admin, @disable, @enable, @list.

& @dbclean
  Command: @dbclean
  This command searches the entire database and removes any stale
  user-defined attributes. It should be used sparingly, as it may take many
  minutes to execute, depending upon database size and machine speed. Only
  God may execute this command.
 
& @destroy
  Command: @destroy[/<switches>] <object>
  Players are always considered SAFE.  Objects owned by other players are
  not otherwise treated specially.

& @disable
  Command: @disable <option>
  Turns off the indicated MUX runtime parameter.  The following parameters
  may be turned off:
    building      - Allows players to use the building commands.
    checkpointing - Enables periodic database checkpoint dumping.
    cleaning      - Enables periodic scanning of the database for rooms
                    to be destroyed.
    dequeueing    - Allows commands to be removed from the queue and
                    executed.
    idlechecking  - Enables periodic checking for and booting of idle
                    players.
    interpret     - Enables execution of commands that place commands
                    on the queue.
    logins        - Allows nonwizard players to connect to their characters.
    eventchecking - Enables certain attribute events (@daily, etc) to occur.
 
  These parameters are all enabled by default.
  See also: @enable, @list.

& @doing
  Command: @doing[/<switch>] <text>
  Wizards may use the /header switch to set the Doing header in the WHO report.
  If no header is specified, the header is reset to "Doing".

& @dump
  Command: @dump[/<switches>]
  Writes a checkpoint dump of the database to disk.  Checkpoint dumps are
  automatically performed periodically, so there is usually no need to use
  this command.  Switches may be used to either dump just the structure
  portion of the database to a flat file, or to ensure that all changes to
  the text database are written out to disk.  The default is to write out
  both files.
  The following options are available:
     structure  - Dump the structure portion of the database to a flat file.
     text       - Ensure that all changes to the text portion of the
                  database are written out to disk.
     optimize   - Rewrites the gdbm hash table out to disk, compressing
                  unused space. Should be used sparingly, and only when
                  there has been a lot of shuffling in the database.
 
  Note that the structure and text options will cause your database and
  certain caches to be out of sync. They should NOT be used in the course
  of normal operation.
 
  See also: @admin, @disable, @enable, @list, @shutdown.

& @enable
  Command: @enable <option>
  Turns on the indicated MUX runtime parameter.  The following parameters
  may be turned on:
    building      - Allows players to use the building commands.
    checkpointing - Enables periodic database checkpoint dumping.
    cleaning      - Enables periodic scanning of the database for rooms
                    to be destroyed.
    dequeueing    - Allows commands to be removed from the queue and
                    executed.
    idlechecking  - Enables periodic checking for and booting of idle
                    players.
    interpret     - Enables execution of commands that place commands
                    on the queue.
    logins        - Allows nonwizard players to connect to their characters.
    eventchecking - Enables certain attribute events (@daily, etc) to occur.
 
  These parameters are all enabled by default.
  See also: @disable, @list.

& @fixdb
  Command: @fixdb[/<switch>] <object>=<value>
  This command directly edits the database structure according to the
  switch specified.  As such, it is possible to produce database
  inconsistencies that can hang or crash the server.  This command should
  be used with extreme caution.
 
  The following switches are available:
     contents     - Sets the contents pointer of <object> to <value>
     exits        - Sets the exits pointer of <object> to <value>
     location     - Sets the location pointer of <object> to <value>
     next         - Sets the next pointer of <object> to <value>
     owner        - Sets the owner of <object> to <value>
     pennies      - Sets the value or wealth of <object> to <value>
     rename       - Renames <object> to <value>

& @function
  Command: @function[/<switches>] <function>=<object>/<attr>
 
  This command creates a global function named <function>.  When invoked,
  the arguments to the function are loaded into %0-%9, the <attr> attribute
  from <object> is fetched, and substitution is performed on the resulting
  text.  The result of that substitution is returned as the function result.

  If the /privileged switch is given, then the function is evaluated as if
  the evaluation were being performed by the object on which it is stored,
  instead of as if it were being performed by the invoker of the function.
  This may be used to allow access to information normally available only
  to wizards.
 
  The /preserve switch causes r-registers to be preserved across the defined
  function, so you can feel free to use registers in the code without
  worrying about them overwriting previous definitions.
 
  The function definitions created by @function are not stored in the database
  so they need to be re-created each time the MUX is started.  It is
  recommended that the Startup attribute for player #1 include code to
  set up all global functions.
 
  Function definitions may not be removed (aside from shutting down and
  restarting the MUX, but they may be redefined so that they point to an
  unused attribute.  This command may normally only be invoked by player #1.
 
& @halt
  Command: @halt[/<switches>] [<object>]
  This command can be used to halt commands being run by a specific object,
  all commands being run by objects owned by a specific player, or all
  commands in the game.  If <object> is not specified, the object running
  the command is halted.  If the object being halted is a player, then
  all commands being run by objects owned by that player are halted.
  Halting an object does not affect commands waiting on it as a semaphore,
  use the @drain command to reset a semaphore.
 
  The /all switch may be used to halt all commands globally.
  See also: @drain, @notify, kill, HALTED, SEMAPHORES.

& @kick
  Command: @kick <count>
  Immediately executes the first <count> commands from the top of the queue.
  See also: @disable, @enable, @timewarp.

& @list
  Command: @list [<option>]
  Lists information from internal databases.  Information is available
  about the following options:
 
    allocations         attr_permissions    attributes          bad_names
    buffers             commands            costs               db_stats
    default_flags       flags               functions           globals
    hashstats           logging             options             permissions
    powers              process             site_info           switches
    user_attributes
 
  Type wizhelp @list <option> for help with a particular option.

& @list allocations
  Command: @list allocations
  This command lists the usage statistics for the internal buffer pools.
  For each buffer pool, the following information is listed:
    Size   - The size of a buffer, in characters.
    InUse  - The number of buffers presently allocated from the pool.
    Total  - The total number of buffers currently in the pool.
    Allocs - The total number of buffers ever allocated from the pool.
    Lost   - The number of buffers lost due to buffer header corruption.
 
  Information is reported for the following pools:
    Lbufs    - Large buffers, used when handling data input by the user,
               object attributes, the results of interpreting commands, and
               many other places.
    Mbufs    - Medium-sized buffers, for when an sbuf is too small but an lbuf
               is too large.
    Sbufs    - Small buffers, for when you need only a little space.
    Bools    - Boolean expressions, used when evaluating locks.
    Descs    - Network descriptors, one is used for each connected player.
    Qentries - Queue entries, one is used for each command placed on the
               queue. (@wait, @trigger, @switch, @dolist, etc).
 
  See also: @list buffers.

& @list attr_permissions
  Command: @list attr_permissions
  Lists the attributes and the access restrictions that have been placed on
  them. The attributes are listed one per line.  Refer to the attr_access
  config parameter for the meanings of the restrictions.
 
  Note that being allowed to write to an attribute does not imply the right
  to use the @<attr-name> shorthand command to set it, just the @set command.
  See also: @list permissions, attr_access.

& @list attributes
  Command: @list attributes
  Lists the attributes that are visible or settable by you.
  See also: @list attr_access, @list permissions.

& @list bad_names
  Command: @list bad_names
  This command lists the player names that are not allowed to be created.
  Any create request (whether via the login screen or @pcreate) that matches
  (after wildcard expansion) one of the names in the list will be rejected.

& @list buffers
  Command: @list buffers
  For each buffer in a buffer pool that is currently allocated, lists where
  within TinyMUX the buffer was allocated.

& @list commands
  Command: @list commands
  Lists the internal commands that you may execute.  This command does not
  list the attribute-setting commands that you may use (like @va or @ahear),
  and does not list exits in your current room or $-commands on objects.
  See also: @list attr_access, @list attributes, @list permissions.

& @list costs
  Command: @list costs
  Lists the costs that are associated with some commands, particularly those
  that expand the database.

& @list db_stats
  Command: @list db_stats
  Lists statistics for the database cache. If compression is enabled,
  displays compression statistics as well.

& @list default_flags
  Command: @list default_flags
  Lists the flags that are automatically given to players, things, rooms,
  exits, and robots when they are created.
  See also: player_flags, thing_flags, room_flags, exit_flags, robot_flags.

& @list flags
  Command: @list flags
  For each object type, lists the name and key letter for all flags that may
  be set on that object type that are visible to you.

& @list functions
  Command: @list functions
  Lists the functions that may be used to obtain information when evaluating
  command lines.

& @list globals
  Command: @list globals
  Lists the global parameters that may be set or cleared by the @enable and
  @disable commands.  The following parameters are displayed.
 
    building      - Indicates whether or not commands that alter the
                    stricture of the database are allowed.
    checkpointing - Indicates whether or not the database is to be
                    periodically written to disk.
    cleaning      - Indicates whether or not the database is to be
                    periodically checked for deleted or disconnected rooms,
                    and other connectivity problems.
    dequeueing    - Indicates whether or not commands on the queue may be
                    automatically executed.
    idlechecking  - Indicates whether or not the inactivity limits are
                    enforced.
    interpret     - Indicates whether or not new commands may be added to
                    the queue.
{ 'wizhelp @list globals2' for more }
& @list globals2
    logins        - Indicates whether or not nonwizard players are allowed
                    to connect.
  See also: @dbck, @disable, @enable, @kick, @list permissions,
            @timewarp, checkpoint, conn_timeout, dump_interval, dump_offset,
            idle_interval, idle_timeout.

& @list hashstats
  Command: @list hashstats
  Lists the hashing statistics for each of the internal hash tables.
  For each hash table, the following information is displayed:
    Size    - The number of hash buckets in the hash table.
    Entries - The number of entries currently in the hash table.
    Deleted - The number of entries that have been deleted from the hash
              table.
    Empty   - The number of hash buckets with no entries.
    Lookups - The number of times the hash table has been searched.
    Hits    - The number of times that an item that was searched for was
              found.
    Checks  - The total number of comparisons made against hash table entries
              to see if they were the desired entry.
    Longest - The maximum number of entries in one hash bucket.
 
{ 'wizhelp @list hashstats2' for more }
& @list hashstats2
  Information is displayed for the following hash tables:
    Commands            - Internal MUX commands
    Logged-out commands - Commands valid whether or not you are connected
                          (such as WHO and QUIT).
    Functions           - MUX functions, such as rand() and lexits().
    Flags               - Names of flags.
    Powers              - Names of powers.
    Attribute names     - Object attribute names.
    Attribute numbers   - Object attribute numbers (only used internally).
    Player names        - Names of all players.
    Net descriptors     - Mapping of player DB numbers to net descriptors.
    News topics         - Topics for the news command.
    Help topics         - Topics for the help command.
    Wizhelp topics      - Topics for the wizhelp command.
 
  See also: alias, attr_alias, flag_alias.

& @list logging
  Command: @list logging
  Lists the type of information that is written to the log file and how it is
  displayed.  The following types of information may be logged:
    accounting     - Usage information on player disconnect.
    all_commands   - All commands executed by anyone or anything.
    bad_commands   - Commands that resulted in a 'Huh?' message.
    buffer_alloc   - Allocates and frees of buffers in the buffer pools.
    bugs           - Things that should never happen, but did.
    checkpoints    - Writes of the database to disk.
    config_changes - Changes in the configuration parameters.
    create         - The creation of new players.
    killing        - Use of the kill command, successful and unsuccessful.
    logins         - Players connecting and disconnecting.
    network        - New and dropped network connections.
    problems       - Database inconsistencies that are found.
    security       - Connect attempts with the wrong password, etc.
    shouts         - Messages sent to all players or all wizards.
    startup        - Events while starting up.
    wizard         - Use of powerful wizard commands, like @toad.
{ 'wizhelp @list logging2' for more }
& @list logging2
  The following formatting information is listed:
    flags          - Include flags for players/objects/rooms listed.
    location       - Include location if player/object when requested.
    owner          - Include owner of objects/rooms listed.
    timestamp      - Prefix log entries by a timestamp.
 
  See also: log, log_options.

& @list options
  Command: @list options
  Lists the value of many of the configuration parameters.
  See also: @admin.

& @list permissions
  Command: @list permissions
  For each command that you are allowed to use, lists the permissions that are
  needed to execute it.
  See also: access, attr_cmd_access.

& @list powers
  Command: @list powers
  Lists the various powers.
 
& @list process
  Command: @list process
 
  Lists information about the running MUX process and its resource usage.
  The following information is returned:
     Process number.
     Pagesize of the system running the MUX, in bytes.
     CPU time used, both user and system.
     Maximum resident size, in both pages and bytes.
     Integral resident size of the shared, private, and stack segments.
        This number is not terribly useful.
     Page faults, counting separately those that cause I/O and those that do
        not.
     Number of times the process has been swapped out.
     Number of real disk reads and writes done (possibly via NFS).
     Number of network packets read and written.
     Context switches, counting separately voluntary switches (as the result
        of calling a blocking I/O routine) and involuntarily switches (as the
        result of a timeslice end or a higher-priority process becoming
        runnable).
     Signals received.
     How many file descriptors are available to the MUX.

& @list site_information
  Command: @list site_information
  Lists the contents of the site access and suspect lists.
 
    Address - The address to which this entry applies.
    Mask    - The mask that is ANDed to both the input address and the address
              in the entry when checking to see if this entry is to be used.
    Status  - Indicates what type of access or restriction is to be applied.
              The following statuses may occur in the site access list:
 
                Forbidden    - Connections from this site are rejected.
                Registration - Connections from this site are accepted,
                               new characters may not be created with the
                               'create' command, players wanting a character
                               must get a wizard to create one for them.
                Unrestricted - Connections from this site are accepted,
                               new characters may be created with the 'create'
                               command.
{ 'wizhelp @list site_information2' for more }
& @list site_information2
              The following statuses may occur in the site suspect list:
 
                Suspected    - Notify logged-in wizards of any connects or
                               disconnects from this site.
                Trusted      - Don't notify wizards of connects or disconnects
                               from this site.
 
  See also: forbid_site, permit_site, register_site, suspect_site, trust_site.

& @list switches
  Command: @list switches
  Lists the commands that support switches as well as the switches that may
  be used.

& @list user_attributes
  Command: @list user_attributes
  Lists the defined user-named attributes, along with their internal
  attribute numbers and access restrictions.

& @list_file
  Command: @list_file <file>
  Lists the contents of one of the message files that are shown during the
  connect/create/disconnect process as conditions warrant.  The following
  files may be listed:
     badsite_connect - shown when a connection is opened from a forbidden
                       site.
     connect          - shown when a connection is opened from a site for
                        which registration is not enforced.
     create_register  - shown when the 'create' command is used from a site 
                        for which registration is enforced.
     down             - shown when a non-wizard attempts to connect to or
                        create a character when logins are disabled.
     full             - shown when a non-wizard attempts to connect to or
                        create a character when the maximum number of connected
                        players are connected.  Note that this is different
                        from what happens when someone tries to connect but
                        there are no free descriptors, which is
                        machine-dependent (usually the connect attempt hangs
                        or is rejected).
     guest_motd       - shown to guest characters immediately after they
                        connect.
{ 'wizhelp @list_file2' for more }
& @list_file2
     motd             - shown to all players immediately after they connect.
                        (except guests and players connecting for the first
                        time)
     newuser          - shown to players the first time they connect in place
                        of the motd file.
     quit             - shown to players when they disconnect from the game.
     register_connect - shown when a connection is opened from a site for
                        which registration is enforced.
     wizard_motd      - shown to wizards when they connect in addition to
                        the motd file.
  See also: @readcache, badsite_file, connect_file, connect_reg_file,
            down_file, guest_file, motd_file, newuser_file, quit_file,
            register_create_file, wizard_motd_file.

& @listmotd
  Command: @listmotd
  Lists the current MOTD messages as set by the @motd command.
  See also: @motd.

& @lock
  Command: @lock <object>=<key>
  Note that with attribute locking, a WIZARD object can read any attribute of
  any object, including attributes invisible to players.
 
  Player #1 may also make attribute locks of the form <attr-num>:<value>
  Note that if <attr-num> is not a valid attribute number, the lock will
  never succeed.

& @mark
  Command: @mark[/<switches>] [<player>] [<class>=<restriction>]
  Sets or clears the MARKED flags for objects that match the search criteria.
  This command may only be used when database cleaning is disabled (via
  @disable cleaning), as cleaning uses the MARKED flag to check
  connectivity.
 
  The following switches are available:
     /set    - (default) Set the MARKED flag on the selected objects.
     /clear  - Clear the MARKED flag on the selected objects.
 
  See also: @apply_marked, @mark_all, MARKED, SEARCH CRITERIA.

& @mark_all
  Command: @mark_all[/<switches>]
 
  Sets or clears the MARKED flag for all objects in the database.  This command
  may only be used when database cleaning is disabled (via @disable cleaning),
  as cleaning uses the MARKED flag to check connectivity.
 
  The following switches are available:
     /set    - (default) Set the MARKED flag on all objects.
     /clear  - Clear the MARKED flag on all objects.
 
  See also: @apply_marked, @mark_all, MARKED.

& @motd
  Command: @motd[/<switches>] <message>
 
  This command sets or lists short messages that are displayed to players
  after they successfully log in to the game (or after they fail because
  logins are not allowed).  These messages are displayed in addition to
  the contents of the motd.txt and wizmotd.txt files.
 
  The following switches are available:
     (No switches)   - Sets the message that all players see when they connect.
     /wizard         - Sets the message that wizards see when they connect.
     /down           - Sets the message the players see when they try to
                       connect, but fail because logins are disabled.
     /full           - Sets the message that players see when they try to
                       connect, but fail because there are too many players
                       already connected.
     /list           - Lists the current messages.
  See also: @listmotd.

& @newpassword
  Command: @newpassword <player>[=<newpassword>]
  Gives <player> the new password <newpassword>.  If <newpassword> is not
  specified, the player is given a null password.  If logged in, the player
  is notified that his password has been changed.
  See also: @password.

& @pcreate
  Command: @pcreate <player>=<password>
  Creates a new player with the indicated password.  This command is
  equivalent to typing 'create <player> <password>' from the connection
  screen, and is normally only used when registration is enabled.
  See also: REGISTRATION.

& @poor
  Command: @poor <amount>
  Sets the wealth of all players to <amount>.

& @ps
  Command: @ps[/<switches>] [<object>]
  Wizards may also use the /all switch to view the entire queue.
  See also: @ps (player version).

& @quota
  Command: @quota[/<switches>] [<player>[=<quota>]]
           @quota/all[/<switches>] [<quota>]]
  Lists or sets the player's (or everyone's) remaining or total quota
  according to the switches used.
  The following switches are available:
     /all       - Display or set the quota for all players.
     /fix       - Repair the remaining or total quota, assuming that the other
                  is correct.
     /remaining - Set or repair the remaining quota.
     /set       - Set the remaining or total quota to the specified value.
     /total     - Set or repair the total quota.
  See also: QUOTAS.

& @readcache
  Command: @readcache
  Reads the commonly-used text files and help indexes on the game directory
  into an internal cache, destroying the prior contents of the cache.
  Use this command whenever you change one of the text of index files in
  the game directory. Be sure and run mkindx to produce new index files
  before you run this command.

& @restart
  Command: @restart
  This command literally restarts the game. To the players, it appears as
  merely a short pause in the action. There are many reasons to @restart,
  including updating the source code, freeing built-up memory, etc.
  @restart dumps and reloads the database, so you cannot use it to change the
  database. You may recompile and use @restart to implement the changes
  without having to @shutdown.
 
  @restart maintains all connections, any relevant information about them
  across restarts. Nothing should be adversely affected by an @restart.
  However, it should be used sparingly due to the tedious nature of dumping
  and loading the database.
 
  NOTE: If you update the MUX binary with an outside binary, you should
  never overwrite the old one. Instead, you should delete or move it, and
  place the new binary in its place, for reasons beyond the scope of this
  document. This warning does not apply if you remake the binary in your
  game's source directory.
 
  Sending the MUX process a SIGUSR1 will duplicate an @restart.
 
& @shutdown
  Command: @shutdown <text>
  Disconnects all connected players, saves the database to disk, and shuts
  down the game.  The game is unavailable until it is restarted.  If an
  argument is specified, it is written to the file named by the status_file
  config directive.
  See also: status_file

& @startslave
  Command: @startslave
  This command restarts the slave process that does user and hostname
  lookups. It should only be used it the slave process has locked up or died
  for some reason.
 
& @timewarp
  Command: @timewarp[/<switches>] <secs>
  Subtracts (or adds if negative) <secs> to one or more internal timers,
  depending on the switches specified from the following list:
     /check    - The time left until the next consistency check and database
                 cleaning.
     /dump     - The time left until the next automatic checkpoint dump.
     /idle     - The time left until the next check for idle users.
     /queue    - (default) Adjusts the time-to-execute for all entries in the
                 wait and semaphore queues.  Entries whose time-to-execute
                 becomes less than the current time are then ready for
                 execution. The contents of the object queue are also
                 appended to the player queue.
 
  Note: these flags may be specified together if desired.
  See also: @list options.

& @toad
  Command: @toad[/<switches>] <victim>[=<recipient>]
  Turns the victim into an object (a slimy toad) and disconnects them from
  the game.  The named recipient (or the @toading wizard) get ownership of
  all the victim's things, rooms, and exits, as well as of the toad object
  itself.
 
  The following switches are available:
    /no_chown - Don't change the ownership of the victim or his objects.
  See also: @boot, @chownall, @destroy.

& @wall
  Command: @wall[/<switches>] <message>
  With no switches, shouts <message> to every connected player or to every
  connected wizard, prefixed by either 'Announcement:' (if for everyone) or
  'Broadcast:' (if for wizards).  The following switches can be used to get the
  described effects:
     /emit      - Format the message as an emit (ie send just <message>).
     /pose      - Format the message as a pose (ie <youname> <message>).
     /wizard    - Only send the message to connected wizards.
     /admin	- Send the message to connected wizards and royalty.
     /no_prefix - Don't prepend 'Announcement:' or 'Broadcast:' to the message.
  If neither /emit or /pose are used, you can format the message one of several
  ways by specifying ':', ';', or '"' as the first character of the message.
  ':' and ';' format the message as if /pose were specified, except that ';'
  does not insert a space between your name and the message.  '"' formats the
  message in normal @wall format (this is the default).
  The message is also written to the log file.

& INHERIT
  Flag: INHERIT(I) (all types)
  When set on an object, gives the object access to the WIZARD and IMMORTAL
  powers that its owner has, and also allows that object to control the player
  and other INHERIT objects owned by that player.
  When set on a player, gives all of that player's objects access to the
  WIZARD and IMMORTAL powers of their owner, and allows them to control the
  player or any object owned by the player.

& MARKED
  Flag: MARKED(m) (all types)
  This flag is used by the database cleaning routines to check the
  connectivity of the database, and also by the @mark commands to select
  objects for special attention.  Since database cleaning is performed
  automatically from time to time, automatic cleaning must be disabled
  before using the @mark commands, and the command @mark_all/clear should
  be run immediately before turning automatic cleaning back on.
  See also: @apply_marked, @dbck, @disable, @enable, @list, @mark,
            @mark_all.

& STARTUP
  Flag: STARTUP(z) (all types)
  This flag is managed internally by the server and it is not directly
  settable.  It indicates whether or not the object has a STARTUP attribute
  that is to be run when the MUX is booted.  This saves a considerable amount
  of time considering that very few objects have a STARTUP attribute.
  This flag is set automatically when the STARTUP attribute is set to a
  non-empty string, and cleared when the STARTUP attribute is removed or
  set to a null string.
  See also: @startup.

& SUSPECT
  Flag: SUSPECT(u) (players)
  When set on a player, causes connects, disconnects, name changes, kills,
  and attempted kills to be reported to all connected wizards.
  This flag is only visible and settable by wizards.

& WIZARD
  Flag: WIZARD(W) (all types)
  A player or object that is set WIZARD controls all of the objects in the
  database (except for player #1), regardless of their ownership or flags.
  In general, WIZARDs can do anything using #<number> or *<player>.
  Wizards can also use many additional commands that are useful for game
  administration and maintenance.
  Only player #1 can set or clear this flag.  An object owned by a Wizard has
  wizard privileges only if its WIZARD or INHERIT flag is set, or if the
  owning Wizard has his INHERIT flag set.
  See also: CONTROL, INHERIT.

& @allowance
  Attribute: Allowance
  Command: @allowance <object>[=<amount>]
  Sets the amount of money that the player receives each day he/she connects
  to the MUX.  The Allowance attribute overrides the default allowance
  specified by the paycheck config parameter.
  This attribute is only visible and settable by wizards.  It is only
  meaningful for players, and has no effect on other object types.

& @comment
  Attribute: Comment
  Command: @comment <object>[=<text>]
  Sets a wizard-visible comment on the indicated object.
  This attribute is only visible and settable by wizards.

& @timeout
  Attribute: Timeout
  Command: @timeout <object>[=<seconds>]
  Sets an idle timeout value on <object> that is different from the default
  value.  If the value is non-numeric or less than or equal to zero, then
  the default value is used.
  This attribute is only visible and settable by wizards.  It is only
  meaningful for players, and has no effect on other object types.
  See also: idle_timeout.

& MASTER ROOM
  The master room contains the default exits and $-commands for the MUX.
  The exits in the master room are checked if a command doesn't match an exit
  in the player's current room, and the $-commands on the room and its
  contents.
 
  Caution: Do not allow players into the master room, as they can leave
  objects that will be searched for $-commands.  Make sure that the room is
  not JUMP_OK or LINK_OK, and that any exits leading to the room are locked so
  that only wizards may use them.
 
  To make global commands, make an exit in the master room that is locked to
  #0 (or some other impossible lock) and has an appropriate Afail action (and
  possibly Fail and Ofail messages).  You can make global exits by having an
  unlocked exit from the master room (or an exit locked to a desired key
  object) lead to the desired destination.  When a player goes through one of
  these exits, any KEY objects are returned home, as is done with @teleport.
 
  Do not put too many objects in the room, because each object is searched
  for $-command every time anyone (or anything) anywhere on the MUX enters
  an unrecognized command.
  See also: @link, @lock, @open, master_room.

& CONFIG PARAMETERS
  Topic: CONFIG PARAMETERS
 
  The following configuration parameters may be specified in the configuration
  file, or given to the @admin command.  Type 'wizhelp <param>' for help on a
  particular parameter.
 
  access  alias  attr_access  attr_alias  attr_cmd_access
  bad_name  badsite_file  cache_depth  cache_trim  cache_width
  check_interval  check_offset  clone_copies_cost  comsys_database
  command_quota_increment  command_quota_max  compress_program  compression
  concentrator_port  config_access  conn_timeout  connect_file
  connect_reg_file  crash_database  create_max_cost  create_min_cost
  dark_sleepers  default_home  dig_cost  down_file  down_motd_message
  dump_interval  dump_message  dump_offset  earn_limit  examine_flags
  examine_public_attrs  exit_flags  exit_quota  events_daily_hour
  fascist_teleport  find_money_chance  fixed_home_message
  fixed_tel_message  flag_alias  forbid_site  fork_dump  fork_vfork
  full_file  full_motd_message  function_access  function_invocation_limit
  function_recursion_limit  gdbm_database  good_name  guest_char_num
  guest_file  guest_nuker  guest_prefix  guests_channel  have_comsys
  have_macros  have_mailer  have_zones  help_file  help_index  hostnames
  idle_interval  idle_timeout  idle_wiz_dark  include  indent_desc
  initial_size  input_database  kill_guarantee_cost  kill_max_cost
  kill_min_cost  list_access  link_cost  lock_recursion_limit  log
{ 'wizhelp config parameters2' for more }
& CONFIG PARAMETERS2
  log_options  logout_cmd_access  logout_cmd_alias  look_obey_terse
  machine_command_cost  mail_database  mail_expiration  master_room
  max_players  match_own_commands  money_name_plural  money_name_singular
  motd_file  motd_message  mud_name  news_file  news_index  newuser_file
  notify_recursion_limit  open_cost  output_database  output_limit  page_cost
  paranoid_allocate  parent_recursion_limit  paycheck  pemit_any_object
  pemit_far_players  permit_site  player_flags  player_listen 
  player_match_own_commands  player_queue_limit  player_quota
  player_starting_home  player_starting_room  plushelp_file  plushelp_index
  port  postdump_message  public_channel  public_flags  queue_active_chunk
  queue_idle_chunk  quiet_look  quiet_whisper  quit_file  quotas
  read_remote_desc  read_remote_name  register_create_file
  register_site  retry_limit  robot_cost  robot_flags  robot_speech
  room_flags  room_quota  sacrifice_adjust  sacrifice_factor  search_cost
  see_owned_dark  signal_action  site_chars  space_compress  stack_limit
  starting_money  starting_quota  suspect_site  sweep_dark
  switch_default_all  terse_shows_contents  terse_shows_exits
  terse_shows_move_messages  thing_flags  thing_quota  timeslice
  trace_output_limit  trace_topdown  trust_site  uncompress_program
  unowned_safe  use_http  user_attr_flags  wait_cost  wizard_help_file
  wizard_help_index  wizard_motd_file  wizard_motd_message
  wiznews_file  wiznews_index  zone_recursion_limit
 
& access
  Config parameter: access <command> <permlist>
  Modifies the permissions needed to execute the indicated command.
  Specifying a permission adds it to the list of permissions required; to
  remove a permission prefix it with a ! character.
  See also: PERMISSIONS, @list.

& alias
  Config parameter: alias <new> <old>.
  Defines the command <new> to be an alias of the command <old>.
  See also:

& attr_access
  Config parameter: attr_access <attr> [!]<privilege> [[!]<privilege>]...
  Changes the access rights to the named attribute.
 
  The following privileges may be used:
  private     - The attribute is visible only to those who can examine the
                object.
  internal    - The attribute is not visible to anyone.
  wizard      - Only wizards may change the attribute.
  hidden      - The attribute is visible only to wizards.
 
& attr_alias
  Config parameter: attr_alias <alias> <attr>.
  Makes <alias> an alias for the attribute <attr>.

& attr_cmd_access
  Config parameter: attr_cmd_access [!]<privilege> [[!]<privilege>]...
  Changes the access rights on all attribute-setting commands in parallel.
  Use this parameter to allow or deny access to the attribute-setting commands
  as a group.  This directive should normally be followed by access directives
  to properly set access to restricted attributes.
  See also: access, PERMISSIONS.

& bad_name
  Config parameter: bad_name <wildcarded-name>.
  Specifies that any name that matches <wildcarded-name> may not be used as a
  player name.  Attempts to create a player with a disallowed name (or to
  rename to a disallowed name) will be rejected.  Normally, words that
  lead off messages from MUX are disallowed, some sites may wish to disallow
  some obscene names as well.

& badsite_file
  Config parameter: badsite_file <path>.  Default: text/badsite.txt
  Specifies the name of the file that is sent to new net connections from
  sites that have been blocked from accessing the server.  The connection
  is closed immediately after the file is sent.
  See also: forbid_site, permit_site.

& cache_depth
  Config parameter: cache_depth <depth>.  Default: 10.
 
  Specifies the depth of the database cache.  Each bucket in the cache is
  allowed to have this many entries before it will try to remove old entries.
  See also: cache_width.

& cache_trim
  Config parameter: cache_trim <yes/no>.  Default: no.
 
  When this parameter is 'yes', the cache will be periodically trimmed to
  eliminate unused space. It is especially useful when your cache tends to
  stretch because it cannot hold all the objects being accessed at once.
 
& cache_width
  Config parameter: cache_width <depth>.  Default: ??
 
  Specifies the number of buckets in the database cache.  A hashing function
  is used to assign objects or attributes to a particular bucket, where a 
  linear search is performed.

& check_interval
  Config parameter: check_interval <secs>.  Default: 600.
  Specifies how often (in seconds) the database is to be automatically
  scanned for inconsistencies and purged of references to destroyed objects.
  Any inconsistencies found are either fixed or recorded in the log file.
  See also: check_offset, @dbck.

& check_offset
  Config parameter: check_offset <secs>.  Default: 300.
  Specifies how long after startup the first automatic database check is
  to be performed.  Subsequent checks are performed every check_interval
  seconds.
  See also: check_interval, @dbck.

& clone_copies_cost
  Config parameter: clone_copies_cost <yes/no>.  Default: NO
  Indicates whether or not @cloned objects inherit the cost of the original.
  If disabled, @cloned objects cost the same as a @create that doesn't specify
  the object cost.  The new owner is charged the correct amount in either
  case.
  See also: @clone.

& comsys_database
  Config parameter: comsys_database <path>.  Default: comsys.db
  Specifies the file that comsystem and macro information is stored in.
  This database is loaded at startup if either have_comsys or have_macros
  are on.
  See also: have_comsys, have_macros.
 
& command_quota_increment
  Config parameter: command_quota_increment <amount>. Default: 1
  Specifies the number of commands by which the command quota for connected
  users each timeslice.  Each command a user types in (commands executed by
  machines do not count) decreases the quota by 1, and the user's commands are
  only executed if the quota is greater than zero.
  See also: command_quota_max, timeslice.

& command_quota_max
  Config parameter: command_quota_max <amount>. Default: 100
  Specifies the maximum value for the command quota for connected users.
  A user's command quota is only increased if it is below this value.
  Each command a user types in (commands executed by machines do not count)
  decreases the quota by 1, and the user's commands are only executed if the
  quota is greater than zero.
  See also: command_quota_increment, timeslice.

& compress_program
  Config parameter: compress_program <path>.  Default: gzip
  Specifies the program to be run to compress the database file when it is
  written.  If database file compression is enabled, database dumps are piped
  through this program on their way out to disk.
  See also: compresion, uncompress_program.

& compression
  Config parameter: compress <yes/no>.  Default: no
  Indicates whether or not the database is to be compressed using the
  compress_program when it is written, and whether or not to check for a
  compressed database to uncompress at startup.  
  See also: compress_program, uncompress_program.

& concentrator_port
  Config parameter: concentrator_port <port number>.  Default: 6251
  Specifies the port number that the MUX will expect the concentrator
  to use when it is active. This parameter is meaningless if you do not
  have concentrator support compiled into the server.
 
& config_access
  Config parameter: config_access <param> [!]<privilege> [[!]<privilege>]...
  Changes the privileges needed to change the specified configuration
  parameter.  The value 'disabled' indicates that the parameter may only
  be specified in the configuration file at startup.  Setting privileges
  to anything other than disabled or god is meaningless unless the 
  restriction on the @admin command is weakened.
  See also: @admin, @list config_permissions, PERMISSIONS.

& conn_timeout
  Config parameter: conn_timeout <num>.  Default: 60
  Specifies how many seconds a new network connection may remain open before
  connecting to a character before being automatically disconnected.

& connect_file
  Config parameter: connect_file <path>.  Default: text/connect.txt
  Specifies the name of the file that a user sees immediately after connecting
  to the MUX if registration is not enabled.  This file normally contains
  help on how to connect to or create a character, as well as the WHO and QUIT
  commands.
  See also: connect_reg_file

& connect_reg_file
  Config parameter: connect_reg_file <path>.  Default: text/register.txt
  Specifies the name of the file that a user sees immediately after connecting
  to the MUX if registration is enabled.  This file normally contains
  help on how to get a character (usually by sending e-mail to one of the
  wizards), how to connect to an existing character, as well as the WHO and
  QUIT commands.
  See also: connect_file

& crash_database
  Config parameter: crash_database <path>.  Default: none
  Specifies the name of the database file that should be written when MUX
  detects an internal error and is about to crash.  Note that the database
  may contain corrupted links of the error occurs in the middle of moving
  links about.
  Dumping a crash database is currently not implemented.

& create_max_cost
  Config directive: create_max_cost <amount>.  Default: 505
  Specifies the maximum amount of money that is used in calculating the value
  of a created object.  Specifying more than this amount of money in a @create
  command will cause the excess to be wasted.
  See also: create_min_cost, sacrifice_adjust, sacrifice_factor.

& create_min_cost
  Config directive: create_min_cost <amount>.  Default: 10
  Specifies the minimum (and default) cost for creating an object.
  See also: create_max_cost, sacrifice_adjust, sacrifice_factor.

& dark_sleepers
  Config directive: dark_sleepers <yes/no>.  Default: yes
  Indicates whether or not disconnected players are to be considered 'dark',
  so that they do not show up when a player looks in the room that they are
  in.  Disconnected players can still be found by examining the room or by
  using [next()] to follow the contents chain for the room.

& default_home
  Config directive: default_home <location>.  Default (player_starting_home)
  Sets the home location for objects which have an invalid home (whether
  because the home location was deleted, or is owned by another player and
  is not set ABODE) and the home of their owner is also invalid.  If this
  parameter is not set, the value of player_starting_home is used instead.
  See also: player_starting_home.

& dig_cost
  Config parameter: dig_cost <amount>.  Default: 1
  Specifies how much the @dig command costs.

& down_file
  Config parameter: down_file <pathname>.  Default: text/down.txt
  Specifies the name of the file that is displayed when players attempt to
  connect to a non-wizard character when logins are disabled.
  See also: @disable, down_motd_message.

& down_motd_message
  Config parameter: down_motd_message <message>.  Default: text/down.txt
  Sets the message that is displayed when a player attempts to connect to a
  non-wizard character when logins are disabled.  This message is displayed
  in addition to the contents of the down.txt file.
  See also: @disable, down_motd_file.

& dump_interval
  Config parameter: dump_interval <amount>.  Default: 3600
  Specifies the time in seconds between automatic database dumps.
  See also: dump_offset, output_database.

& dump_message
  Config parameter: dump_message <message>.  Default: blank
  Sets the message that is sent to everyone before the database is being
  dumped to disk, whether automatically or via the @dump command.
  See also: @dump, postdump_message.

& dump_offset
  Config parameter: dump_offset <amount>.  Default: 0
  Specifies the time in seconds between startup and the first database dump.
  If zero, the value of the dump_interval parameter is used.
  See also: dump_interval.

& earn_limit
  Config parameter: earn_limit <amount>.  Default: 10000
  Specifies the threshold at which earning additional money becomes difficult.
  Specifically, players with more than this much money no longer receive a
  paycheck for each day they connect, don't receive insurance payments for
  being killed, and don't find money lying in the streets.
  See also: find_money_chance, paycheck.

& examine_flags
  Config parameter: examine_flags <yes/no>.  Default: yes
  Indicates whether or not the examine command should include an expanded
  flags list in the description of the object.
  See also: examine.

& examine_public_attrs
  Config parameter: examine_public_attrs <yes/no>.  Default: yes
  Indicate whether or not the examine command should display the public
  attributes of the object by default when used by a player who does not
  control the object.  Regardless of the setting of this parameter, the
  short form is available with examine/brief and the long form with
  examine/long.
  See also: examine.

& exit_flags
  Config parameter: exit_flags <flags>.  Default: blank
  Modifies the set of flags that an exit receives when it is created via the
  @open command or via the optional exit creation parameters of the @dig or
  @link commands.  Flags prefixed by a ! remove the indicated flag from the
  set.
  See also: @list, player_flags, robot_flags, room_flags, thing_flags.

& exit_quota
  Config parameter: exit_quota <amount>.  Default: 1
  Sets how much quota it costs to create an exit (and also how much the
  remaining quota is increased when an exit is @destroyed.
  See also: @quota, player_quota, room_quota, thing_quota, QUOTAS.

& events_daily_hour
  Config parameter: events_daily_hour <hour>.  Default: 7.
  Specifies the hour that @daily is executed. No guarantee is made as to
  what time during this hour it is executed. This should be a number between
  0 and 23.
 
& fascist_teleport
  Config parameter: fascist_teleport <yes/no>.  Default: no
  If this parameter is set to yes, then players (and objects) may not
  teleport out of locations that they do not control or which are not set
  JUMP_OK.  If the teleporting player is inside an object, the room that
  ultimately contains the object is checked.  Going home is unaffected.

& find_money_chance
  Config parameter: find_money_chance <amount>.  Default: 0
  Indicates the chance that players have of finding money when entering a
  new room.  The chance is 1 / find_money_chance, except that finding money
  is disabled if this parameter is set to zero.
  See also: earn_limit, paycheck.

& fixed_home_message
  Config parameter: fixed_home_message <string>.  Default: none
  Specifies the string that is sent to a player when they try to go home
  while they are set with the FIXED flag.
  See also: fixed_tel_message.

& fixed_tel_message
  Config parameter: fixed_tel_message <string>.  Default: none
  Specifies the string that is sent to a player when they try to teleport
  while they are set with the FIXED flag.
  See also: fixed_home_message.

& flag_alias
  Config parameter: flag_alias <alias> <flagname>.
  Defines <alias> as a synonym for the flag <flagname>.

& forbid_site
  Config parameter: forbid_site <addr> <mask>.
  Indicates that connections are to be rejected from sites whose address
  matches the specified address when ANDed with the mask.  The contents of
  the file specified by badsite_file is sent immediately before closing
  the connection.  This directive may be used to restrict access to just the
  local network, or to prevent access from troublemaking sites.
  The default is for all sites to be allowed to connect, none forbidden.
  See also: badsite_file, permit_site, register_site, SITE LISTS.

& fork_dump
  Config parameter: fork_dump <yes/no>.  Default: yes
  Indicates whether or not database dumps are to be done by fork()ing off a
  separate process to perform the dump.  While enabling this parameter reduces
  the amount of time needed to perform the dump, it requires that the system
  have enough free swap space to hold a second copy of the running game.
  See also: fork_vfork.

& fork_vfork
  Config parameter: fork_vfork <yes/no>.  Default: no
  Indicates whether or not the vfork() system call should be used in place of
  fork() when a database dump is to be performed.  This parameter is only
  checked if the fork_dump parameter is set to yes.
  See also: fork_dump.

& full_file
  Config parameter: down_file <pathname>.  Default: text/full.txt
 
  Specifies the name of the file that is displayed when players attempt to
  connect to a non-wizard character when the number of connected players
  is not less than the number of players allowed by the max_players directive.
  See also: full_motd_message, max_players.

& function_access
  Config parameter: function_access <function> [!]<priv> [[!]<priv>]...
 
  Changes the privileges needed to call the MUX function <function>.
  If you do not have permission to call a function, the function
  returns the value "#-1 PERMISSION DENIED" instead of the value it
  would normally return.
  See also: @list functions, FUNCTION LIST, PERMISSIONS.

& full_motd_message
  Config parameter: full_motd_message <message>.  Default: blank
 
  Sets the message that is displayed when a player attempts to connect to a
  non-wizard character when the number of connected players is not less than
  the number of players allowed by the max_players directive.  This message is
  displayed in addition to the contents of the full.txt file.
  See also: down_motd_file, max_players.

& function_invocation_limit
  Config directive: function_invocation_limit <num>.  Default: 2500
 
  This directive sets the maximum number of times that a command may make
  function calls.  If the invocation limit is exceeded, the string 
  '#-1 FUNCTION INVOCATION LIMIT EXCEEDED' is returned.  This limit is
  intended to prevent long hangs from creative uses of u() and iter().
  Note: @search is treated specially, each object examined with the
  eval=<arg> parameter is treated as a separate command for the purposes
  of the function invocation limit.

& function_recursion_limit
  Config directive: function_recursion_limit <num>.  Default: 50
 
  This directive sets the maximum number of nested function calls that
  may be made before the function call is aborted and the string
  '#-1 FUNCTION RECURSION LIMIT EXCEEDED' is returned.  Normally this is not
  a problem, but the u() function can be used to cause infinite recursion
  (unless blocked by a recursion limit)

& gdbm_database
  Config parameter: gdbm_database <path>.  Default: none.
  Specifies the name of the file that stores the text portion of the
  database.  The text strings are stored in a binary format optimized for
  fast retrieval and storage rather than access with programs such as more.

& good_name
  Config parameter: good_name <name>.
  Removes <name> from the list of names that may not be used as a player
  name, reversing the effect of a bad_name directive.  The name must match
  exactly (wildcard matching is not performed).

& guest_char_num
  Config parameter: guest_char_num <number>.  Default: (none)
  Indicates the database number of the guest character.  If set, the specified
  guest character is subject to additional restrictions (such as not being
  allowed to create or destroy objects).  The actual restrictions can be
  changed with the access config parameter using the no_guest permission.
  See also: guest_prefix, guest_nuker, number_guests, access.

& guest_file
  Config parameter: guest_file <path>.  Default: text/guest.txt.
  Specifies the file that is to be shown to people connecting to the
  guest character in place of the motd file.
  See also: guest_char_num.

& guest_nuker
  Config parameter: guest_nuker <num>. Default: 1.
  Specifies who is to nuke guests when they log off. If it is not a good
  object or a wizard, it defaults to #1.
  See also: guest_char_num, guest_prefix, number_guests.
 
& guests_channel
  Config parameter: guests_channel <name>. Default: Guests
  Specifies the name of the channel that guests join when they connect. You
  must have created the channel already. To disable this feature, simply set
  this parameter to nothing.
  See also: public_channel.
 
& have_comsys
  Config parameter: have_comsys <yes/no>.  Default: yes
  Specifies whether or not the comsystem should be active.
  See also: comsys_database, have_macros.
 
& have_macros
  Config parameter: have_macros <yes/no>.  Default: yes
  Specifies whether or not the macro system should b active.
  See also: comsys_database, have_comsys.
 
& have_mailer
  Config parameter: have_mailer <yes/no>.  Default: yes
  Specifies whether @mail and mail aliases should be active.
  See also: mail_database
 
& have_plushelp
  Config parameter: have_plushelp <yes/no>. Default: yes
  This specifies whether the indexed +help file should be used.
  It should be set to no if a softcoded +help command is present.
  See also: plushelp_file, plushelp_index.
 
& have_zones
  Config parameter: have_zones <yes/no>.  Default: yes
  Specifies whether zones should be active. If this is off, zone connects
  and disconnects, zone commands, and the control aspects will all be
  disabled.
 
& help_file
  Config parameter: help_file <path>.  Default: text/help.txt
  Specifies the name of the file containing the text used by the help command.
  See also: help, help_index

& help_index
  Config parameter: help_index <path>.  Default: text/help.indx
  Specifies the name of the index file used by the help command.  This file
  must be generated by mkindx from the help file.  The contents of
  this file are read in to a hash table when the game is started and whenever
  a @readcache command is executed.
  See also: help, @readcache, help_file

& parent_recursion_limit
  Config directive: parent_recursion_limit <num>.  Default: 10
 
  This directive specifies how far back to check parents for commands
  and attributes. 

& plushelp_file
  Config parameter: plushelp_file <path>.  Default: text/plushelp.txt
  Specifies the name of the file containing the text used by the +help command.
  See also: plushelp_index

& plushelp_index
  Config parameter: plushelp_index <path>.  Default: text/plushelp.indx
  Specifies the name of the index file used by the +help command.  This file
  must be generated by mkindx from the plushelp file.  The contents of
  this file are read in to a hash table when the game is started and whenever
  a @readcache command is executed.
  See also: @readcache, plushelp_file

& wiznews_file
  Config parameter: wiznews_file <path>.  Default: text/wiznews.txt
  Specifies the name of the file containing the text used by the wiznews 
  command.
  See also: wiznews_index

& wiznews_index
  Config parameter: wiznews_index <path>.  Default: text/wiznews.indx
  Specifies the name of the index file used by the help command.  This file
  must be generated by mkindex from the wizard help file.  The contents of
  this file are read in to a hash table when the game is started and whenever
  a @readcache command is executed.
  See also: @readcache, wiznews_file

& hostnames
  Config parameter: hostnames <yes/no>.  Default: yes
  Indicates whether or not IP addresses should be replaced with host names
  where possible in the log file and wizard WHO report.

& idle_interval
  Config parameter: idle_interval <secs>.  Default: 60
  Sets the interval between checks for idle users. 
  See also: conn_timeout, idle_timeout.

& idle_timeout
  Config parameter: idle_timeout <secs>.  Default: 3600 (one hour)
  Sets the amount of time that a player may remain idle before being
  automatically disconnected.  Players idle longer than this parameter are
  disconnected when the next check for idle players is done.
  See also: conn_timeout, idle_interval.

& idle_wiz_dark
  Config parameter: idle_wiz_dark <yes/no>.  Default: no
  Indicates whether or not wizards or players with the idle power who are
  idle for longer than the default timeout value are to automatically be
  set DARK, and then unDARKed when they type in their next command. Wizards
  already set DARK are not automatically unDARKed. Any player who is set
  dark by this action will have a 'd' instead of a 'D' by their idle time
  in the privileged WHO listing.

& include
  Config parameter: include <path>.  Default: none
  Reads and processes configuration directives from the named file.
  This directive is only valid during startup.

& initial_size
  Config parameter: initial_size <number>.  Default: 1000
  This is the number of objects that can be created before the database
  structure has to be reallocated again. This is needed since MUX allocates
  space for the database in large chunks, the size of which depends on
  this parameter. 

& indent_desc
  Config parameter: indent_desc <yes/no>. Default: no
  Places a blank row before and after every room, object, and exit
  description when looked at.

& input_database
  Config parameter: input_database.  Default: tinymux.db
  Specifies the name of the database file that is read in at startup.
  This file is used only as an input file, the parameter output_database
  controls where updated copies of the database are written.
  See also: crash_database, gdbm_database, output_database.

& kill_guarantee_cost
  Config parameter: kill_guarantee_cost <amount>.  Default: 100
  Specifies the amount of money you have to spend (ie. kill target = <amount>)
  to have a 100% chance of killing them (assuming there are no other factors,
  such as the victim being immortal or in a HAVEN room, etc).  The chance of
  a successful kill is <amount spent> / <kill_guarantee_cost>.
  See also: kill, kill_max_cost, kill_min_cost, HAVEN, IMMORTAL, KILLING.

& kill_max_cost
  Config parameter: kill_max_cost <amount>.  Default: 100
  Specifies the maximum amount of money that may be usefully spent on a kill
  attempt.  Spending more than this amount does not improve the chance of
  success.  Setting this parameter to less than the kill_guarantee_cost
  parameter prevents 'automatic kills', as the kill will always have a chance
  of failing.
  See also: kill, kill_guarantee_cost, kill_min_cost, HAVEN, IMMORTAL,
            KILLING.

& kill_min_cost
  Config parameter: kill_min_cost <amount>.  Default: 10
  Specifies the minimum (and default) cost for attempting to kill someone or
  something.
  See also: kill, kill_guarantee_cost, kill_max_cost, HAVEN, IMMORTAL,
            KILLING.

& list_access
  Config parameter: list_access <param> [!]<privilege> [[!]<privilege>]...
  Changes the access needed to the <param> option of the @list command.
  See also: @list, PERMISSIONS.

& link_cost
  Config parameter: link_cost <amount>.  Default: 1.
  Specifies the cost of using the @link command to establish or change the
  link of an exit to its destination, the home of a player or an object, or
  the drop-to of a room.
  See also: @link.

& lock_recursion_limit
  Config directive: lock_recursion_limit <num>.  Default: 20
 
  Sets the maximum number of levels of indirection that may be used when
  using indirect locks.  If more than this many levels are used, the lock
  fails and the user gets an error message.

& log
  Config parameter: log [!]<logoption> [[!]<logoption>]...
  Specifies what types of events are to be logged to the logfile.
  
    accounting     - Write an accounting record to the log for each player
                     who disconnects.
    all_commands   - Record all commands executed.
    bad_commands   - Record commands entered that did not match anything.
    buffer_alloc   - Record buffer allocates and frees.
    bugs           - Record internal inconsistencies found.
    checkpoints    - Record automatic database dumps.
    config_changes - Record uses of the @admin command.
    create         - Record creation of new players.
    killing        - Record uses of the kill and slay commands.
    logins         - Record connects to characters.
    network        - Record new and broken net connections.
    problems       - Record problems found with the database.
    security       - Record security-related events.
    shouts         - Record uses of the @wall command.
    startup        - Record information about game startup.
    wizard         - Record uses of dangerous commands like @toad.
  See also: log_options.

& log_options
  Config parameter: log_options [!]<option> [[!]<option>]...
  Specifies the type of information to be included in each log entry.
  The possible values are:
    flags       - Include the flags set on a player or object.
    location    - Include the location of referenced players and objects.
    owner       - Include the owner of referenced players and objects.
    timestamp   - Include a timestamp in each log entry.
  See also: log.

& logout_cmd_access
  Config parameter: logout_cmd_access <command> <permlist>
  Specifies permission for logged-out commands, like WHO, DOING, SESSION,
  QUIT, OUTPUTPREFIX, and OUTPUTSUFFIX.
 
  See also: access.

& logout_cmd_alias
  Config parameter: logout_cmd_alias <alias> <command>
  Makes <alias> an alias for <command>, where <command> is one of WHO, DOING,
  SESSION, QUIT, OUTPUTPREFIX, and OUTPUTSUFFIX.

& look_obey_terse
  Config parameter: look_obey_terse <yes/no>.  Default: YES
  Indicates whether or not the 'look' command obeys the TERSE flag when
  deciding how much information to display.  If set to yes, the
  terse_shows_contents, terse_shows_exits, and terse_shows_move_messages
  config options control the amount of information displayed for TERSE
  players.
 
  See also: terse_shows_contents, terse_shows_exits, terse_shows_move_messages.

& machine_command_cost
  Config parameter: machine_command_cost <number>.  Default: 64
  Sets the cost for running a command from a machine, as opposed to running
  it interactively.  Each command run has a one in <number> chance of being
  charged one coin for machine overhead.

& mail_database
  Config parameter: mail_database <path>.  Default: mail.db
  Sets the file that @mail information is to be stored in. The database
  is only loaded or saved if have_mailer is set to yes.
  See also: have_mailer.
 
& mail_expiration
  Config parameter: mail_expiration <number of days>. Default: 14
  Sets the number of days that a @mail message should last before it is
  automatically deleted by the system. If this parameter is set to a
  negative number, this feature will be disabled.
 
& match_own_commands
  Config parameter: match_own_commands <yes/no>.  Default: NO
  Specifies whether or not objects search themselves for $-commands when a
  command does not match an exit or an internal command.  In order for
  players to search themselves for commands, both match_own_commands and
  player_match_own_commands must be set to yes.
  See also: player_match_own_commands.

& master_room
  Config parameter: master_room <roomnum>.  Default: (none)
  Specifies the room that is searched for exits if a command does not match
  an exit in the current room, and for $-command if a command does not match
  any $-commands that are available to the player in his current location.

& max_players
  Config directive: max_players <num>.  Default: -1 (unlimited)
 
  Sets the maximum number of players that may be connected at any one time
  Note that wizards are allowed to login even if they would exceed the limit,
  and that this limit does not override any limits imposed by the system
  running the MUX (such as the maximum number of net connections a process
  may have).  Players connecting when there are max_players players connected
  receive the contents of the file named by the full_file directive, and the
  full_motd_message (also settable via @motd/full), and are disconnected.
  See also: @motd, full_file, full_motd_message.

& money_name_plural
  Config parameter: money_name_plural <string>.  Default: pennies
  Specifies the string to use to describe the coin of the realm when they
  are being referred to plurally (such as: 'You have <number> pennies.', where
  <number>  is not 1).
  See also: money_name_singular.
 
& money_name_singular
  Config parameter: money_name_singular <string>.  Default: penny
  Specifies the string to use to describe the coin of the realm when they
  are being referred to singularly (such as: 'You found a penny!').
  See also: money_name_plural.

& motd_file
  Config parameter: motd_file <pathname>.  Default: text/motd.txt
  Specifies the name of the file to be shown to players immediately after they
  connect to their characters.
  See also: @readcache, newuser_file, motd_message.

& motd_message
  Config parameter: motd_message <message>.  Default: blank
  Sets the MOTD message that is displayed to all characters when they log in.
  This message is displayed in addition to the contents of the motd.txt
  file.  It can be changed with the @motd command and examined by the
  @listmotd command.
  See also: @listmotd, @motd, motd_file.

& mud_name
  Config parameter: mud_name <string>.  Default: TinyMUX

& news_file
  Config parameter: news_file <path>.  Default: text/news.txt
  Specifies the name of the file containing the text used by the news
  command. You may use ANSI color sequences in news.
  See also: news, news_index

& news_index
  Config parameter: news_index <path>.  Default: text/news.indx
  Specifies the name of the index file used by the news command.  This file
  must be generated by mkindex from the news file.  The contents of this
  file are read in to a hash table when the game is started and whenever a
  @readcache command is executed.
  See also: news, @readcache, news_file

& newuser_file
  Config parameter: newuser_file <filename>.  Default: text/newuser.txt
  Specifies the file to be shown to new players immediately after they
  create their characters, in place of the MOTD file.  This file should
  contain information about the basic commands and how to get help.
  See also: @readcache, motd_file.

& notify_recursion_limit
  Config directive: notify_recursion_limit <num>.  Default: 20
 
  Sets the maximum number of times that the notify() routine may be called
  recursively.  A recursive call is made whenever a message heard by an
  object is to be forwarded to its contents.

& number_guests
  Config directive: number_guests <num>. Default: 30
 
  How many guests should we allow at any one time?
  See also: guest_char_num, guest_nuker, guest_prefix.
 
& open_cost
  Config parameter: open_cost <amount>.  Default: 1
  Indicates the cost of using the @open command to open a new exit.
  If a destination for the new exit is specified and the link is successful,
  then the link_cost is also charged.
  See also: @open, link_cost.

& output_database
  Config parameter: output_database <pathname>.  Default: none
  Specifies the file to which the database is to be written when writing
  checkpoint dumps or writing the final dump after receiving a @shutdown
  command.
  See also: @dump, @shutdown, checkpoint_database, input_database.

& output_limit
  Config parameter: output_limit <amount>. Default: 16200
  Specifies how many bytes should be output before the output is flushed,
  and characters are lost.

& page_cost
  Config parameter: page_cost <amount>.  Default: 10
  Specifies the cost of using the page command.
  See also: page.

& paranoid_allocate
  Config parameter: paranoid_allocate <yes/no>.  Default: no

  Controls whether or not the game performs a consistency check on the entire
  set of xbuf buffers each time one is allocated or freed.  This check
  involves making sure that nobody has written to the memory immediately before
  and after each buffer.  Normally, only the buffer being allocated or freed
  is checked.

& paycheck
  Config parameter: paycheck <amount>.  Default: 0
  Specifies the default amount of money that players receive each day they
  connect.  This parameter may be overridden by setting the ALLOWANCE
  attribute on the player to a different value.
  See also: @allowance, earn_limit, starting_money.

& pemit_any_object
  Config parameter: pemit_any_object <yes/no>.  Default: no
  Indicates whether or not players may @pemit to faraway objects they do not
  control.  It does not affect @pemits to faraway players, the
  pemit_far_players directive is used for that purpose.
  See also: pemit_far_players.

& pemit_far_players
  Config parameter: pemit_far_players <yes/no>.  Default: no
  Controls whether or not players may use the @pemit command to send messages
  to other connected players that are not in the same room.  The rules and
  costs for this form of @pemit are the same as for page.
  See also: pemit_any_object.

& permit_site
  Config parameter: permit_site <addr> <mask>.
  Indicates that connections are to be accepted and registration is not to be
  enforced from sites whose address matches the specified address when ANDed
  with the mask.  This directive is typically used to enable connections from
  a few selected hosts or subnets that would otherwise be disallowed by a
  forbid_site directive.  The default is all sites permitted, none forbidden.
  See also: badsite_file, forbid_site, register_site, SITE LISTS.

& player_flags
  Config parameter: player_flags <flags>.  Default: blank
  Modifies the set of flags that a player receives when it is created via the
  @pcreate command or via the connection screen.  Flags prefixed by a ! remove
  the indicated flag from the set.
  See also: @list, exit_flags, robot_flags, room_flags, thing_flags.

& player_listen
  Config parameter: player_listen.  Default: no
  Indicates whether the Listen, Aahear, Ahear, and Amhear attributes on
  player objects are to be obeyed.

& player_match_own_commands
  Config parameter: player_match_own_commands <yes/no>.  Default: no
  Specifies whether or not players should check themselves for $-commands.
  This parameter is only checked if the match_own_commands parameter is
  set to yes.
  See also: match_own_commands.

& player_queue_limit
  Config parameter: player_queue_limit.  Default: 100
  Sets the maximum number of commands that non-wizard players may have on the
  queue at one time.  An attempt to queue more commands than allowed will
  halt the object performing the command.

& player_quota
  Config parameter: player_quota <amount>.  Default: 1
  Sets how much quota it costs to create a robot player (and also how much the
  remaining quota is increased when a robot is @destroyed.
  See also: @quota, exit_quota, room_quota, thing_quota, QUOTAS.

& player_starting_home
  Config parameter: player_starting_home.  Default: <player_starting_room>
  Specifies the room to which the home of new players is set.  If this
  parameter has not been set, then the value of the player_starting_room
  parameter is used instead.
  See also: default_home, player_starting_room, @pcreate, player_flags.

& player_starting_room
  Config parameter: player_starting_room.  Default: 0
  Specifies the room that new players start out in.  If the
  player_starting_home parameter has not been set, then player_starting_room
  is used for both.
  See also: player_starting_home, @pcreate, player_flags.

& port
  Config parameter: port <port>.  Default: 6250
  Specifies the IP port on which the game listens for new connections.

& postdump_message
  Config parameter: postdump_message <message>.  Default: blank
  Sets the message that is sent to everyone after a database dump
  whether automatically or via the @dump command.
  See also: @dump, dump_message.

& public_flags
  Config parameter: public_flags <yes/no>.  Default: yes
  If enabled, indicates that players may get the flags of any object with the
  flags() function call.  Otherwise, they may only get the flags for objects
  that are examinable by them.
  See also: flags().

& public_channel
  Config parameter: public_channel <name>. Default: Public
  Specifies the name of the channel that new players join when they are
  created. You must have previously created the channel. To disable this
  feature, simply set this parameter to nothing.
  See also: guests_channel.
 
& queue_active_chunk
  Config parameter: queue_active_chunk <num>.  Default: 0
  Specifies the number of commands to be run from the player queue when the
  check for network traffic indicates that there is data needing to be
  read from or written to the network.
  See also: queue_idle_chunk.

& queue_idle_chunk
  Config parameter: queue_idle_chunk <num>.  Default: 3
  Specifies the number of commands to be run from the player queue when the
  check for network traffic indicates that there is no data needing to be
  read from or written to the network.
  See also: queue_active_chunk.

& quiet_look
  Config parameter: quiet_look <yes/no>.  Default: yes
  Indicates whether or not players are shown the attributes set on an object
  when they look at it.  Not recommended.

& quiet_whisper
  Config parameter: quiet_whisper <yes/no>.  Default: yes
  Indicates whether or not whispers are completely invisible except to the
  whispered-to player, or if a '<whisperer> whispers something to
  <recipient>.' message is displayed to everyone else in the same room.
  See also: whisper.

& quit_file
  Config parameter: quit_file <filename>.  Default: text/quit.txt
  Specifies the name of the file that is displayed to users after they QUIT
  but before the network connection is closed.
  See also: QUIT, @readcache.

& quota_cost
  Config parameter: quota_cost <amount>.  Default: 1
  Indicates how much adding one object to the database charges against the
  player's quota.
  See also: @create, @destroy, @dig, @open, @quota, QUOTAS.

& quotas
  Config parameter: quotas <yes/no>.  Default: no
  Indicates whether or not building quotas are enforced and maintained.
  Quotas are stored as a relative number, ie. number of objects that the
  player may create, not the total number that the player may create.
  If quotas are turned off and turned back on later, any building or
  @destroying that occurs in the interim does not affect the quotas.
  See also: @allquota, @create, @destroy, @dig, @open, @quota, QUOTAS,
            quota_cost.

& read_remote_desc
  Config parameter: read_remote_desc <yes/no>.  Default: no
  Indicates whether or not the descriptions of faraway objects are available
  to players that don't control them via the examine command and get()
  function.
  See also: examine, get().

& read_remote_name
  Config parameter: read_remote_name <yes/no>.  Default: no
  Indicates whether or not the names of faraway objects are available
  to players that don't control them via the examine command and get()
  function.
  See also: examine, get().
 
& register_create_file
  Config parameter: register_create_file <filename>. 
  Default: text/create_reg.txt
 
  Specifies the name of the file that is shown to players who attempt to
  create a new character when registration is in force from their site.
  See also: @list_file, @readcache, register_site.
 
& register_site
  Config parameter: register_site <addr> <mask>.
  Indicates that registration is to be enforced for sites whose address
  matches the specified address when ANDed with the mask.
  See also: forbid_site, permit_site, REGISTRATION, SITE LISTS.

& retry_limit
  Config paramater: retry_limit <count>.  Default: 3
  Specifies the number of times that a user is allowed to try to connect to
  an existing player before being disconnected.
  See also: conn_timeout.
 
& robot_cost
  Config paramater: robot_cost <amount>.  Default: 1000
  Specifies the cost of using the @robot command to create a robot.
  See also: @robot, ROBOT.

& robot_flags
  Config parameter: robot_flags <flags>.  Default: ROBOT
  Modifies the set of flags that a robot receives when it is created via
  the @robot command.  Flags prefixed by a ! remove the indicated flag from
  the set.
  See also: @list, exit_flags, player_flags, room_flags, thing_flags.

& robot_speech
  Config parameter: robot_speech: <yes/no>.  Default: yes
  Indicates whether or not robot characters are allowed to use the speech,
  pose, and emit commands in areas not controlled by their owner.
  See also: @robot, ROBOT.

& room_flags
  Config parameter: room_flags <flags>.  Default: blank
  Modifies the set of flags that a room receives when it is @dug.
  Flags prefixed by a ! remove the indicated flag from the set.
  See also: @list, exit_flags, player_flags, robot_flags, thing_flags.

& room_quota
  Config parameter: room_quota <amount>.  Default: 1
  Sets how much quota it costs to dig a room (and also how much the
  remaining quota is increased when a room is @destroyed.
  See also: @quota, exit_quota, player_quota, thing_quota, QUOTAS.

& sacrifice_adjust
  Config parameter: sacrifice_adjust <amount>.  Default -1.
  This parameter is part of the formula that is used to determine an object's
  value given the amount spent on its creation.  The formula is:
 
     value = (cost / sacrifice_factor) + sacrifice_adjust.
 
  The inverse formula is used to determine how much the owner receives when
  @destroying an object.
  See also: @create, @destroy, SACRIFICING, sacrifice_factor.

& sacrifice_factor
  Config parameter: sacrifice_factor <amount>.  Default 5.
  This parameter is part of the formula that is used to determine an object's
  value given the amount spent on its creation.  The formula is:
 
     value = (cost / sacrifice_factor) + sacrifice_adjust.
 
  The inverse formula is used to determine how much the owner receives when
  @destroying an object.
  See also: @create, @destroy, SACRIFICING, sacrifice_adjust.

& search_cost
  Config parameter: search_cost <amount>.  Default: 100
  Specifies how much commands that scan the entire database (such as @find,
  @search, and stats with a playername) cost.
  See also: stats, @find, @search.

& see_owned_dark
  Config parameters: see_owned_dark <yes/no>.  Default: yes
  Specifies whether or not players see their own DARK objects when they
  look at a room.  It does not affect the inventory or examine commands,
  both of which show all objects.

& signal_action
  Config parameter: signal_action <default|exit>.  Default: default
  Specifies what action to take when a fatal signal is received.  The
  possibilities are:
     default  - Log the error, produce a panic dump, dump a core file, and
                restart the game using the last reliably saved database.
                For a description of the restart process, see @restart.
     exit     - Log the error, and exit, hopefully with a core file.

& site_chars
  Config parameter: site_chars <number>:  Default: 25.
  Specifies the length of the hostname that is shown in a wizard WHO
  listing. If <number> is 0, then the hostname will be shown in full.
 
& space_compress
  Config parameter: space_compress <yes/no>.  Default: yes
  Specifies whether or not extra spaces are to be removed from user input
  as it is processed.  If enabled, multiple spaces are compressed to a single
  space, and spaces at the ends of strings are removed.

& stack_limit
  Config parameter: stack_limit <number>.  Default: 50.
  The number of items that are allowed on an object's stack. You should be
  sparse with this parameter, as stack items are retained until they are
  removed.
 
& starting_money
  Config parameter: starting_money <amount>.  Default: 0
  Sets the amount of money that new players start out with.
  See also: paycheck.

& starting_quota
  Config parameter: starting_quota <amount>.  Default: 20
  Sets the building quota that players receive when they are created, whether
  by @pcreate or the connection screen.
  See also: @quota, quotas.

& status_file
  Config parameter: status_file <filename>.  Default: shutdown.status
 
  If you give an argument to the @shutdown command, that argument is written
  out to the file named by this directive.  The file can be used by an
  auto-restart script to decide whether or not to bring the MUX back up,
  for instance.

& suspect_site
  Config parameter: suspect_site <addr> <mask>.
  Indicates that sites whose address matches the specified address when ANDed
  with the mask are to be considered suspect, and any player creates, connects
  and disconnects are to be reported to all logged-in wizards.
  See also: trust_site, SITE LISTS.

& sweep_dark
  Config parameter: sweep_dark <yes/no>.  Default: no
  Indicates whether or not players are allowed to @sweep dark places they do not
  control.
  See also: @sweep.

& switch_default_all
  Config parameter: switch_default_all <yes/no>.  Default: yes
  Indicates whether the @switch command should perform the commands for all
  targets that match or just the first one that matches if you don't specify
  either /all or /first as a command switch.

& terse_shows_contents
  Config parameter: terse_shows_contents <yes/no>.  Default yes
 
  Indicates whether or not to suppress the listing of a location's contents
  when producing TERSE output (whether from an automatic look or a 'real'
  look if look_obey_terse is turned on.
 
  See also: look_obey_terse, terse_shows_exits, terse_shows_move_messages.

& terse_shows_contents
  Config parameter: terse_shows_contents <yes/no>.  Default yes
 
  Indicates whether or not to suppress the listing of a location's contents
  when producing TERSE output (whether from an automatic look or a 'real'
  look if look_obey_terse is turned on.
 
  See also: look_obey_terse, terse_shows_exits, terse_shows_move_messages.

& terse_shows_exits
  Config parameter: terse_shows_exits <yes/no>.  Default yes
 
  Indicates whether or not to suppress the listing of a location's obvious
  exits when producing TERSE output (whether from an automatic look or a
  'real' look if look_obey_terse is turned on.
 
  See also: look_obey_terse, terse_shows_contents, terse_shows_move_messages.

& terse_shows_move_messages
  Config parameter: terse_shows_move_messages <yes/no>.  Default yes
 
  Indicates whether or not to suppress messages related to moving about
  produced by locations and exits.  These messages are the ENTER and LEAVE
  messages on locations, and the SUCC and DROP messages on exits.
  The messages seen by others (Oxxx attributes) and the actions to be
  performed (Axxx attributes) are unaffected.
 
  See also: look_obey_terse, terse_shows_contents, terse_shows_exits.

& thing_flags
  Config parameter: thing_flags <flags>.  Default: blank
  Modifies the set of flags that a thing receives when it is @created.
  Flags prefixed by a ! remove the indicated flag from the set.
  See also: @list, exit_flags, player_flags, robot_flags, room_flags.

& thing_quota
  Config parameter: thing_quota <amount>.  Default: 1
  Sets how much quota it costs to create a thing (and also how much the
  remaining quota is increased when a thing is @destroyed.
  See also: @quota, exit_quota, player_quota, room_quota, QUOTAS.

& timeslice
  Config parameter: timeslice <amount>.  Default: 1000
  Specifies the interval at which connected users' command quotas are
  increased.  Each command a user types in (commands executed by machines do
  not count) decreases that user's quota by 1, and the user's commands are
  only executed if the quota is greater than zero.
  See also: command_quota_incr, command_quota_max.

& trace_output_limit
  Config parameter: trace_output_limit <amount>.  Default: 200
  Specifies the maximum number of lines of trace output that will be displayed
  when using top-down format.  Bottom-up format output is not affected by this
  parameter.
  Note that this parameter is intended as a limit on the amount of memory used
  to store intermediate data and not on the quantity of trace output, top-down
  format needs to keep all intermediate results in memory before displaying
  them, while bottom-up format displays them immediately after generating them.
  When trace output lines are discarded, only the last (trace_output_limit)
  lines are kept.  These lines contain information about the evaluations done
  earliest in the process of evaluating the expression (usually the innermost
  evaluations and earlier arguments of outer functions).

& trace_topdown
  Config parameter: trace_topdown <yes/no>.  Default: yes
  Specifies whether TRACE output is displayed top-down (complete evaluation
  shown first, followed by sub-evaluations), or bottom-up (sub-evaluations
  shown first, followed by the larger evaluation of which they are a part).

& trust_site
  Config parameter: trust_site <addr> <mask>.
  Indicates that sites whose address matches the specified address when ANDed
  with the mask are not to be considered suspect.
  See also: suspect_site, SITE LISTS.

& uncompress_program
  Config parameter: uncompress_program <path>.  Default: gunzip
  Specifies the program to be run to uncompress compressed database files when
  reading them in at startup.
  See also: compress_program, compresion.

& unowned_safe
  Config parameter: unowned_safe <yes/no>.  Default: no
  Indicates whether or not objects not owned by you are automatically
  considered SAFE.  (This parameter only affects wizards)  Note that players
  are always considered SAFE, and DESTROY_OK things are never considered SAFE.
  See also: @destroy, DESTROY_OK, SAFE.

& use_http
  Config parameter: use_http <yes/no>.  Default: no
  Indicates whether or not http access is allowed.
 
& user_attr_access
  Config parameter: user_attr_access [!]<privilege> [[!]<privilege>]...
  Changes the access flags that new user-named attributes receive when
  they are created.  By default, user attributes are invisible to others.

& wait_cost
  Config parameter: wait_cost <amount>.  Default: 10
  Sets the amount of money that it costs to run the @wait command and other
  actions that add commands to the queue.  The money is refunded when the
  command is removed from the queue (either when it is executed or by @halt).
  See also: @wait.

& wizard_help_file
  Config parameter: wizard_help_file <path>.  Default: text/wizhelp.txt
  Specifies the name of the file containing the text used by the wizhelp
  command.
  See also: wizhelp, wizard_help_index

& wizard_help_index
  Config parameter: wizard_help_index <path>.  Default: text/wizhelp.indx
  Specifies the name of the index file used by the wizhelp command.  This file
  must be generated by mkindex from the wizard help file.  The contents of
  this file are read in to a hash table when the game is started and whenever
  a @readcache command is executed.
  See also: wizhelp, @readcache, wizard_help_file

& wizard_motd_file
  Config parameter: wizard_motd_file <path>.  Default: text/wizmotd.txt
  Specifies the name of the file that contains the wizard MOTD message that
  is displayed to wizards when they log in.  This message is displayed in
  addition to the wizard MOTD message that is set by the @motd/wiz command or
  the wizard_motd_message config parameter.  The contents of the file are
  read in to a cache when the game is started and whenever a @readcache
  command is executed.
  See also: @readcache, wizard_motd_message.
 
& wizard_motd_message
  Config parameter: wizard_motd_message <message>.  Default: blank
  Sets the wizard MOTD message that is displayed to wizards when they log in.
  This message is displayed in addition to the contents of the wizmotd.txt
  file.  It can be changed with the @motd/wiz command and examined by the
  @listmotd command.
  See also: @listmotd, @motd, motd_message, wizard_motd_file.

& zone_recursion_limit
  Config directive: zone_recursion_limit <num>. Default: 20
  This directive specifies how far back to check a zone tree for control and
  commands.
 
& CAUTIONS
  Topic: CAUTIONS
 
  The @force command evaluates its argument before putting it on the queue.
  Therefore, any ';' characters resulting from the evaluation that are
  outside of any nested delimiters will cause what follows to be treated
  as a separate command.

& CONTACT INFO
  Topic: CONTACT INFO
 
  Put information about how to contact the wizards and game maintainer
  in here so they can contact one another when the game is down.

& DEBUG FEATURES

& FILES
  Topic: FILES
 
  TinyMUX uses these files (normally kept in the same directory as the
  database files and the netmux program) to display information under
  certain circumstances.  The names of the files used can be changed with
  configuration directives (or on the netmux command line, in the case of
  netmux.conf).
 
  badsite.txt:    Displayed when someone connects from a site that is not
                  allowed to connect.  The connection is then closed.
  connect.txt:    Displayed when someone connects from a site for which
                  registration is not enabled.
  create_reg.txt: Displayed when someone tries to 'create' a character from
                  a site for which registration is enforced.
  down.txt:       Displayed when someone tries to connect to a non-wizard
                  character when logins are disabled.
  help.indx:      Index for the help.txt file, produced by the mkindx program.
  help.txt:       File containing information displayed by the help command.
{ 'wizhelp files2' for more }
& files2
  guest.txt:      Displayed to whoever connects to the guest character
                  specifiedby the guest_character config parameter.
  motd.txt:       Displayed after someone connects to an existing character.
  netmux.conf:   Configuration directives read at startup.
  news.indx:      Index for the news.txt file, produced by the mkindx program.
  news.txt:       File containing information displayed by the news command.
  newuser.txt:    Displayed after someone creates a new character or connects
                  to their character for the first time.
  quit.txt:       Displayed after someone QUITs but before the net connection
                  is closed.
  register.txt:   Displayed when someone connects from a site for which
                  registration is enabled.
  wizhelp.indx:   Index for the wizhelp.txt file, produced by the mkindx
                  program.
  wizhelp.txt:    File containing information displayed by the wizhelp
                  command.
  wizmotd.txt:    Displayed to wizards when they connect to their characters.
 
  See also: badsite_file, connect_file, connect_reg_file, down_file,
            guest_file, help_file, help_index, motd_file, news_file,
            news_index, newuser_file, quit_file, register_create_file,
            wizard_help_file, wizard_help_index, wizard_motd_file.

& INHERITANCE
& LOGGING
& PERMISSIONS
  Topic: PERMISSIONS
 
  Access to many MUX features is controlled by a set of permissions, which
  can usually be changed via the configuration file or the @admin command.
  This is a list of the valid permissions and their meanings.
    god           - Only player #1 may use this feature.
   +wizard        - Only wizards (players with their WIZARD bit set) may use
                    this feature.
   +builder       - Only builders (BUILDER power) may use this feature.
   +immortals     - Only immortals (IMMORTAL bit) may use this feature.
   +robot         - Only robots (ROBOT bit) may use this feature
    no_haven      - Only players who are not set HAVEN may use this feature.
    no_robot      - Robots may not use this feature.
    no_slave      - Slave players (SLAVE bit) may not use this feature.
    no_suspect    - Suspect players (SUSPECT bit) may not use this feature.
    no_guest      - Guest players (guest_character config directive) may not
                    use this feature.
{ 'wizhelp permissions2' for more }
& permissions2
    global_build  - This feature may only be used when the global building
                    flag is turned on.
    global_interp - This feature may only be used when the global
                    interpretation flag is turned on.
    disabled      - Nobody may use this feature.
    need_location - Only players and things may use this feature.
    need_contents - Only players, things, and rooms may use this feature.
    need_player   - Only players may use this feature.
 
  Restrictions are normally additive (meaning that you must be a member of all
  required groups and not be a member of any excluded group).  The permissions
  marked with a + are different, in that if more than one is required, then
  being a member of any + group will grant access to the feature and skip
  the remaining checks.

& SEARCH CRITERIA
  Topic: SEARCH CRITERIA
 
  The following criteria may be used when searching the database with the
  @search and @mark commands:
 
  Syntax: {@mark|@search} [<player>] [<class>=<restriction>]
 
  <player>  - Restricts to objects owned by the named player.
              By default, the search is limited to objects owned by the
              invoking player, except when searching for players or if
              the invoking player is a wizard.
{ 'wizhelp search criteria2' for more }
& search criteria2
  The following classes may be used when searching:
 
  TYPE      - Restricts to objects of the indicated type (OBJECTS, ROOMS,
              EXITS, PLAYERS).
  NAME      - Restricts to objects whose names start with <restriction>.
  OBJECTS   - A combination of TYPE=OBJECT and NAME=<restriction>
  ROOMS     - A combination of TYPE=ROOM and NAME=<restriction>
  EXITS     - A combination of TYPE=EXIT and NAME=<restriction>
  PLAYERS   - A combination of TYPE=PLAYER and NAME=<restriction>
  FLAGS     - Restricts to objects which have the flags listed in
              <restriction> set.
  See also: @mark, @search.

& REGISTRATION
  See: SITE LISTS
 
& SITE LISTS
  Topic: SITE LISTS
 
  There are two site lists, one for controlling access and registration, and
  one for suspect warning.  The first list is controlled by the forbid_site,
  permit_site, and register_site parameters, the second by the suspect_site
  and trust_site parameters. The syntax of these parameters is:
  <param-name> <address> <mask>, where:
 
  Address  - Four-part decimal Internet address, specified as a.b.c.d,
             of the host or network to which this parameter applies.
  Mask     - Four-part decimal Internet address, specified as a.b.c.d
             The mask is used to determine which parts of the address are
             to be used for comparison, it is ANDed with both the address
             of the host and the address in the directive.
 
  The parameters are applied in the order specified in the configuration file,
  and the first one that matches is used.  Therefore, you should put
  the more-specific parameters before the more general ones.
  Additions made to the lists after startup with the @admin command are put
  at the front of the list, and are checked before entries from the config
  file and previous entries made by the @admin command.
{ 'wizhelp site lists2' for more }
& site lists2
 
  Example:  Restricting Access
 
  register_site  135.246.4.40 255.255.255.255  <- Allow this site w/reg
  forbid_site    135.246.4.0  255.255.255.0    <- Disallow a class C subnet
  permit_site    135.246.0.0  255.255.0.0      <- Permit a class B network
  register_site  195.3.17.1   255.255.255.255  <- Permit this site w/reg.
  forbid_site    0.0.0.0      0.0.0.0          <- DIsallow everyone else
 
  These directives only allow access from 135.346.*.* and 195.3.17.1, except
  that all hosts in the 135.246.4 subnet except for 135.246.4.40 are also
  not allowed access.  People connecting from 135.246.4.40 and 195.3.17.1
  are not allowed to create their own characters (registration is enabled
  for those sites), while people connecting from elsewhere on the 135.246
  net are allowed to create their own characters.
 
  See also: @admin, @list site_information, forbid_site, permit_site,
            register_site, suspect_site, trust_site.
