Archon Commands Help

CoffeeMud 5.7

ABILITY_PREREQS

Ability Prerequisites is a comma delimited list of skills or skill masks that
describe what skills or set of skills must be learned, and at what optional
proficiency, before a player of a given class can learn that skill. The list is
comma delimited, and each item in the list consists of a valid Ability ID (like
Spell_Fireball), or a wildcard mask of Ability_IDs (like Spell_F* to select all
Ability IDs beginning with Spell_F). Following the Ability_ID is an optionally
number in parenthesis, which would represent the minimum proficiency of the
aforementioned Ability that is required.
Example:
Skill_Trip(50),Fighter_*(10)
The above means that the current ability requires that the player have Trip at
50% proficiency and any Fighter skill at 10% proficiency or better.

AFFECT

Command : AFFECT
Usage : AFFECT ([TARGET])
Example : affect
Example : affect room
Example : affect area
Example : affect orc
Short(s): AFF
List the spell or other affects that your character is currently under the
influence of. If targeted, it will show what the given target is affected by.

AFTER

Command : AFTER
Usage : AFTER (EVERY/STOP/LIST) [NUMBER] [SECONDS/TICKS/MINUTES/HOURS]
[COMMAND]
Example : after 5 seconds smile
Example : after every 5 seconds at bob smile
Example : after 10 minutes shutdown noprompt
Example : after stop
Example : after list
Short(s):
A command to delay the execution of a command. The every parameter may be used
to make a command automatically recurring. after stop should be used to cancel
commands created with the every parameter.

AHELP

Command : AHELP
Usage : AHELP [TOPICNAME]
Example : ahelp ahelp
Short(s):
A command to view the Administrative help commands.

ANNOUNCE

Command : ANNOUNCE
Usage : ANNOUNCE message
Usage : ANNOUNCETO [ALL/HERE/PLAYER NAME] message
Usage : ANNOUNCEMSG new personalized announce message prefix
Example : announce A new area is discovered!
Example : announceto all A new area is discovered!
Example : announceto bob Hi Bob!
Example : announcemsg A squeeky voice screeches
Short(s):
A command to make annoucements to players -- even those who don't want to be
announced to. This command can be used to announce to all players or selected
players using the announceto syntax. This is also the command used to personalize
your announce prefix message by using the announcemsg syntax.

AREAS

See the normal HELP AREAS for usage information. The Archon version of this
command will color the area names based on whether the area is active or passive,
frozen or stopped. Also, area names will be in parenthesis if they are currently
Hidden from normal users.

AS

Command : AS
Usage : AS [PLAYERNAME/MOBNAME] (HERE) [COMMAND]
Example : as "bob" inventory
Example : as bob here drop all
Example : as bob cast fireball monster
Short(s):
A command that allows one to issue other commands as if they were another
player or mob. This is the best way to manage a players inventory or bank accounts
from the command line. The optional "here" parameter should follow the name if the
command is to be issued with the player in the same room as the archon.

ASSIST

A COMMAND JOURNAL.  See Archon Help (AHELP) on COMMAND JOURNALS

AT

Command : AT
Usage : AT [ROOM ID/DESC/MOB/AREA] [COMMAND]
Example : at "the greasy pub" smile
Example : at Midgaard#3001 bow
Example : at bob cast fireball bob
Short(s):
A command that allows one to issue other commands elsewhere in the mud.

ATOPICS

Command : ATOPICS
Usage : ATOPICS [TOPICNAME]
Example : atopics
Short(s):
A command to view the Administrative help topics.

BAN

Command : BAN
Usage : BAN [PLAYER TYPE/IP ADDRESS]
Example : ban bob
Example : ban io.com
Example : ban isp3.io.com
Example : ban 123.32.23.1
Example : ban 123.32.23.*
Example : ban *the great
Example : ban *penis*
Short(s):
A command to ban the given player or ip address from the system. See also
LIST, DESTROY

BANISH


Skill : Banish
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : BANISH
Usage : BANISH [PLAYER NAME] ([MAP ROOM]) (RL TIME)
Example : banish gunther
Example : banish gunther Midgaard#3001
Example : banish gunther 3 hours
Example : banish gunther 14 years
From anywhere on the map, the player with this skill can send the target
mob/player to a prison from which they can never escape. Use this skill again on
the same player to release them. The Archon can optionally specify a room on the
map which this skill will copy and use as the jail. The Archon can also optionally
end the command with the number of seconds, ticks, minutes, hours, days, weeks, or
years in which to keep the player imprisoned.

BEACON

Command : BEACON
Usage : BEACON ([PLAYER TYPE])
Example : beacon
Example : beacon bob
Short(s):
A command to change the start room of a player. If no player is named, this
command will change their own start room to the room they occupy. If a player is
named, this command changes the players start room to the room the player currently
occupies.

BOOT

Command : BOOT
Usage : BOOT [PLAYER NAME/IP ADDRESS]
Example : boot bob
Example : boot 192.168.0.1
Short(s):
A command to boot off a player.

BUG

A COMMAND JOURNAL.  See Archon Help (AHELP) on COMMAND JOURNALS

CATALOG

Command  : CATALOG
Usage : CATALOG LIST (MOBS/ITEMS/) (NAME MASK)
Usage : CATALOG (DELETE) [ITEM/MOB NAME]
Usage : CATALOG (ROOM/AREA/WORLD) (MOBS/ITEMS/)
Usage : CATALOG EDIT [ITEM NAME]
Usage : CATALOG SCAN/DBSCAN (ROOM/AREA/WORLD) (MOBS/ITEMS/)
Usage : CATALOG OVERLOOK/DBOVERLOOK (ROOM/AREA/WORLD) (MOBS/ITEMS/)
Example : catalog list
Example : catalog list mobs the st
Example : catalog the waiter
Example : catalog delete the waiter
Example : catalog edit the sword
Example : catalog room mobs
Example : catalog scan area
Example : catalog dboverlook area mobs
Short(s) :
This command is used to manage your muds global catalog of generic mobs and/or
items. The catalog is a place where you can store templates of mobs and items for
reuse, or for quick global modification and analysis. Mobs and items in your
catalog can be changed globally simply by creating and then changing any instance
of one of them. You can create new instances of a cataloged object simply by
entering CREATE <cataloged object name>. Your catalog is keyed by name, so once
the name of a cataloged item or mob is set, it should not be changed.

You may review the objects in your catalog using the catalog list command. You
can also check the catalog synchronicity of the objects in your live rooms with
scan, or your saved rooms with dbscan. You can check for uncataloged objects in
live rooms with the overlook parameter, or in your saved rooms with dboverlook.

You may delete an object from your catalog to stop using it as a global
template. Deleting an object from the catalog only detaches instances of a
cataloged object from all others, but does not destroy any actual instances.

The catalog is also used to manage a global random item-drop table. Items can
be set to randomly appear in the inventories of selected mobs when those mobs are
brought to life, or at the moment of their death. Use CATALOG EDIT <item name>
to change drop settings.

CHARGEN

Skill    : CHARGEN
Usage : CHARGEN
Example : chargen
Short(s) :
A little utility designed to give example characters of various levels, for
comparison with MOBs of similar level.

CLOAK

Command  : CLOAK
Usage : CLOAK (OFF)
Example : cloak
Example : cloak off
Short(s) :
Cloak makes the player unable to be seen in the WHO list. They can still be
seen by players in the same room, however.

CMFS

CoffeeMud File System
The CoffeeMud File System is a means of accessing files inside your main
CoffeeMud folder along side files stored in your CoffeeMud database. Files in the
CMFS can be stored either in the local file system, in CoffeeMud's database, or in
both. The CMFS sees both sets of files and folders/directories as if they were
part of a single file system.

Normally, the files required for operation of CoffeeMud, such as text files,
class files, help files, images, and other files, are loaded from the appropriate
directories on your LOCAL file system inside the main CoffeeMud folder. If you
installed CoffeeMud into D:\games\engines\coff, for instance, the file intro.txt
(the intro screen) would be loaded from D:\games\engines\coff\
resources\text\intro.txt.

Under the CoffeeMud system, however, you should always think of your CoffeeMud
folder as a file system unto itself. The same file discussed above, even when
referring to the local file system inside CoffeeMud, would be accessed using the
path: resources/text/intro.txt. You'll notice that the path separators are forward
slashes / like in UNIX, instead of the normal back-slashes \ used in DOS. This is
the standard for the CMFS. You'll also notice that the resources directory is
accessed as if it were at the root of its own drive. This is also part of the
CoffeeMud File System. Because of this, CoffeeMud is utterly unable to access any
files outside of its installation directory. Keep this in mind!

Within this installation directory structure, CoffeeMud is able to store files
both on your local file system drive, and in your database (VFS Files). The VFS,
or Virtual File System, refers specifically to files and folders which are saved in
your database, and accessible through the MUDGrinder's File Browser, or the MUD's
SHELL command (see HELP SHELL). When the CoffeeMud directory structure is viewed
through those two screens, files in the CoffeeMud database and files in the local
file system are both viewable as if they were part of a single file system, the
CMFS.

The files referenced in CoffeeMud are case-insensitive, except where dealing
with the local file system, where it may be case-sensitive depending upon your
operating system. Any filename or path may be preceded by a :: string to denote
forced VFS/database access, or // to denote forced local file-system access. When
neither is specified for a given file path, the VFS file is always preferred over
the local one. For instance, the path ::resources/text/intro.txt would refer ONLY
to a copy of the intro.txt file stored in the database as a VFS file. If that file
is not in the database when the :: string is used, the file will not be found. The
path //resources/text/intro.txt would refer ONLY to the copy of the intro.txt file
stored in the local file system, even if the same file appears in the VFS. The
path resources/text/intro.txt will use the copy of intro.txt stored in the VFS *if*
it exists there, or the one on the local file system otherwise.

The / character is always used to separate directory paths and folders, such as
/resources/text/intro.txt would refer to the file down.txt in the text folder,
which in turn is in the resources folder, which in turn is located in the root
directory.

So, as we've seen, whenever you need to refer to a file in CoffeeMud, you
should keep this system in mind. Files which are part of your CMFS may be in the
VFS database, or in the local file system. They may even be in both! This system
provides security for the server in which CoffeeMud is being run, and provides for
the ability to grant folder-level (or even VFS-folder-level) security to builders
and other administrative users.

COLORLIST

Below are a list of the standard color codes for CoffeeMud.

^N Normal
^! Bold
^H Highlight
^_ Underline
^* Blink
^/ Italics
^. Reset (turns off reverse)
^^ Generates an untranslated "^" character
^? Restores previous color
^f You-Fight
^e Fight-You
^F Fight
^S Spell
^E Emote
^T Talk
^Q Channel Background
^q Channel Foreground
^x Important message 1
^X Important message 2
^Z Important message 3
^O Room Title
^L Room Description
^D Direction
^d Door
^I Item
^M MOB
^w White
^g Green
^b Blue
^r Red
^y Yellow
^c Cyan
^p Purple
^W Dark White
^G Dark Green
^B Dark Blue
^R Dark Red
^Y Dark Yellow
^C Dark Cyan
^P Dark Purple
^U Unexplored Direction
^u Unexplored Door

COMMAND_JOURNALS

Usage      : [JOURNAL_NAME] (REVIEW/TRANSFER) [MSG NUMBER]
Example : list ideas
Example : ideas review 10
Example : ideas transfer 10 bugs
A command journal is a special kind of command that can be created and modified
from the MUDGrinder Control Panel or the coffeemud.ini file. It is a special kind
of journal that users can write to from the command line with the command journal
command word, such as BUG, or IDEA, or TYPO. The Command Journal's entries can
then be listed by those with the necessary security clearance by using the LIST
[JOURNALNAME] command. Entries can also be stepped through using the command
[JOURNALNAME] REVIEW ([MSG NUMBER]) syntax. They can be transferred from the
step-through menu to other journals, or they can be transferred directly from the
command line with [JOURNALNAME] TRANSFER [MSG NUMBER] [2ND_JOURNALNAME]. Lastly,
entries in a command journal can be deleted from the step-through menu, or by
entering DESTROY [JOURNALNAME] [MSG NUMBER].

COMPONENTS

Components refers to spell components/materials.  This is an optional system in
CoffeeMud where you can create spell material, equipment, or component requirements
for the casting of spells, or usage of skills. Archons, mobs, and those with the
COMPONENTS security flag are exempt. You can enter LIST COMPONENTS to see current
definitions, or CREATE COMPONENT to see how to define a new one. You can DESTROY
them too, of course. The list of components is maintained in
resources/skills/components.txt

COPY

Command : COPY
Usage : COPY ([NUMBER]) [ITEM TYPE]/[DIRECTION]
Example : copy joe
Example : copy beast sword
Example : copy Longsword@room
Example : copy Longsword@an orc
Example : copy east
Short(s):
A command for the creation of items, mobs, and rooms. Enter COPY for more
information on command usage.

CREATE

Command : CREATE
Usage : CREATE [ITEM TYPE] ...
Example : create room e StdRoom
Example : create item Longsword
Example : create item Longsword@room
Example : create item Longsword@an orc
Example : create StdExit east
Short(s):
A command for the creation of items, mobs, quests, rooms, polls, exits,
classes, races, etc. Enter CREATE for more information on command usage on items,
mobs, components, and exits. Use AHELP QUESTS for more information on creating
quests.

DESTROY

Command : DESTROY
Usage : DESTROY [ITEM TYPE] ...
Example : destroy room e
Example : destroy orc
Example : destroy item longsword
Example : destroy item longsword@an orc
Short(s):
A command for the destruction of items, quests, components, mobs, rooms, exits,
polls, classes, races, and listed bugs, typos, ideas, and ban. Enter DESTROY for
more information on command usage.

DEVIATIONS

Command : DEVIATIONS
Usage : DEVIATIONS [MOBS/ITEMS/BOTH] [MASK]/ROOM/AREA
Example : deviations mobs area
Short(s):
A command for showing items in a room or area, and how they deviate from
established norms for their type and level.

DUMPFILE

Command  : DUMPFILE
Usage : DUMPFILE (RAW) [USER/ALL] [FILENAME]
Example : dumpfile all classes.txt
Short(s) :
Unloads most resource text and help files for easy refreshing.

EXPERTISES

Expertises are flags that modify the effects of the numeric/gradiant aspects of
spells, skills, prayers etc. This includes things like range, durations, cost,
damage, etc. Players can gain expertises to enhance their skills by spending
trains using the GAIN command. You can enter LIST EXPERTISE to see current
definitions, or CREATE EXPERTISE to see how to define a new one. You can DESTROY
them too, of course. The list of components is maintained in
resources/skills/expertises.txt

EXPIRE

Command : EXPIRE
Usage : EXPIRE [PLAYERNAME] ([NEW DAYS REMAINING])
Example : expire bob
Example : expire bob 15
Short(s):
This command sets and displays the amount of active days a user has left. This
command is only relevant if the account expiration system is enabled in your
coffeemud.ini file.

EXPORT

Command : EXPORT
Usage : EXPORT (AREA/ROOM/WORLD/PLAYER) (DATA/ITEMS/MOBS/WEAPONS/ARMOR)
([FILE]/SCREEN/EMAIL)
Example : export room myroom
Example : export area /home/users/myarea
Example : export area weapons /home/users/myarea
Example : export area screen
Example : export area email
Example : export world data /exportfiles/
Example : export player bob
Short(s):
The export command will generate the official coffeemud area files, whose
extension is "*.cmare". This command may also be used to export individual rooms,
player data, or unique items or mobs as well. If the second parameter
(ITEMS/MOBS/WEAPONS/etc) is NOT specified, export will produce full room data for
the scope of the first parameter (AREA, ROOM, or WORLD). If the second parameter IS
specified, then only the specified data will be generated.
The results will be written to the file given in the last argument, or to the
screen if "screen" is given as the last argument, or sent to your email address if
that is enabled. The extension need not be included, as coffeemud will add it if
not present. If a directory name is given (no file name), the system will
reference the AREA ARCHIVE file name for an Area, assuming EXPORT AREA or EXPORT
WORLD is used. The default directory for this command is the CoffeeMud root.

FREEZE


Skill : Freeze
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : FREEZE
Usage : FREEZE [PLAYER NAME]
Example : freeze gunther
From anywhere on the map, the player with this skill can render the target
mob/player unable to move. Use this skill again on the same player to release
them. Magic won't help the player, though the TRANSFER Archon command will still
work.

GENERATE

Command : GENERATE
Usage : GENERATE [OBJ TYPE] [ID] (FROM [FILENAME]) ([VAR]=[VAL]...)
([DIRECTION])
Example : generate area maze_dungeon from examples/randomdata.xml areasize=50
areaname=test level_range=10?20 aggrochance=50 theme=kobolds south
Example : generate string list

This command uses an xml file to generate random content for your mud. This
content can be anything from whole areas, to rooms, mobs, items, or simple strings.
By default, the content is built from the file in
resources/examples/randomdata.xml, though the builder may specify his or her own
xml file path as one of the many arguments. The arguments, briefly, are:

OBJ TYPE: One of the following: AREA, ROOM, MOB, ITEM, or STRING.

ID : one of the "id" xml attributes defined on any tag in the XML file.
Use GENERATE STRING LIST for a list of all "id" attributes defined in your file.

FROM "F": An optional argument to specify your own xml file, with the resources
directory being the default root.

VAR=VAL : One or more variables and their definitions. Many tags will have a
specific set of required variables which must be defined in order for the content
to be generated. Failing to specify one of the required variables will cause an
error message listing the variables which must be defined, and the type of data
required for the variable. Variable types which list numbers as their data types
may also have math expressions values (so you can use random numbers). See the
help on MATH EXPRESSION for more information on this. In addition to required
variables, you may also use the space to enter one or more "override" values. Many
object fields (such as LEVEL for mobs and items, or NAME, etc) as well as the XML
id tags, can have their "random" values overridden by defining them using the
generate command.

DIRECTION: This applies only to ROOM and AREA object types. The object, if
successfully generated, will be linked to the current room that the player is
standing in, in the direction they specify.

In closing, the GENERATE command is an interesting way to deliver large amounts
of dynamic content for your world, though it can never replace the caring touch of
a real, creative builder. If anyone is interested in writing their own xml
content, please open up the examples/randomdata.xml file and begin reading. Use
that file as an example on how to construct your own.

GMODIFY

Command : GMODIFY
Usage : GMODIFY (AREA/ROOM) [FIELD=VAL](&&/||[FIELD=VAL])
(CHANGE=[FIELD=VAL])
Example : gmodify area class=genmob&&name=the cityguard change=name=the guard
Example : gmodify world class=[cs]GenMob&&name=[ss]city change=name=[ss]
Example : gmodify ?
Short(s):
A command to select objects in a given area, room, or the whole world based on
the specified field values, and optionally change some of those specified fields.

Searching the entire world is implied, but the first parameter may be the word
AREA or ROOM to narrow the search. You may also enter WORLD to make the world
search explicit.

The next parameter is the search criteria. The key phrase WHEN= may optionally
precede it to make explicit that you are specifying the search criteria. The
search criteria fields may be separated by && strings to specify that all of the
preceding criteria AND the next single criteria must be true. The criteria fields
may also be separated by || strings to specify that all of the preceding criteria
OR the next single criteria may be true. One of those strings must be present when
specifying more than one criteria.

Each field in the search criteria must be of the form FIELD=VALUE,
FIELD!=VALUE, FIELD$VALUE, FIELD>VALUE, FIELD<VALUE, FIELD>=VALUE, or
FIELD<=VALUE. Where FIELD must be a valid search field. Enter GMODIFY ? for a
complete list of all valid fields. Not all fields will apply to all object types,
so take this into account especially when using < or != operators. The
operators are all normal except for the new one, $, which means that the value is
really a regular expression. The VALUE portion of the criteria may be prefixed with
modifiers, which include:
[ss] to specify that the value refers to a substring of the fields whole value.
[cs] to specify that the search is case sensitive (case insensitive is
implied).

The last parameter is the optional change specifications. These specifications
must be prefixed with the key phrase CHANGE=. If these specifications are not
included, GMODIFY will display the results of the search. The change
specifications are similar to the search criteria in that they consist of groupings
of FIELD=VALUE separated by && strings. Unlike search criteria, however, operators
other than =, and strings other than || have no special meaning. The fields, like
in the search criteria, must be valid fields for the options selected by the search
criteria. The fields on the object will be changed to the specified value UNLESS
the following conditions are met: the VALUE portion of a field is prefixed with the
modifier [ss], and the VALUE portion of an identical field in the search criteria
was also prefixed with the modifier [ss]. Under those special conditions, instead
of substituting the entire field value on the object with the new value, ONLY the
portion of the string selected in the search criteria will be substituted.

GOTO

Skill    : GOTO
Usage : GOTO [ROOM ID/DESC/MOB/AREA]/PREVIOUS (!)
Example : goto Midgaard#3001
Example : goto #3001
Example : goto north
Example : goto hassan
Example : goto temple of mota
Example : goto midgaard
Example : goto previous
Short(s) :
The invoker and his or her followers will be transported, with very little
fanfare, to the destination listed. This ability is not magical in nature, and is
thus not affected by no-teleport areas and rooms. Appending an exclaimation point
to the room will ADD fanfare to the entrance.

HOLIDAYS

Holidays are a special/reserved quest defined by file
/resources/quests/holidays/holidays.quest. They are very simple Scriptless quests
that can be started at random intervals, or on certain mud dates, or real-life
dates. The holidays will only impact the areas specified by the holiday settings,
and only the mobs in those areas specified in the settings, and only with the
features you specify. Use LIST HOLIDAYS to see a list of all defined holidays and
the areas hey are defined for. By default, 3 special-case weather related holidays
are included which impact any area that meets their criteria. You can use MODIFY
HOLIDAY <name> to change the settings for a holiday, DESTROY HOLIDAY <name>
to delete one, or CREATE HOLIDAY name to create a new one that will automatically
apply to the area the creator is standing in.

HUSH


Skill : Hush
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : HUSH
Usage : HUSH [PLAYER NAME]
Example : hush gunther
From anywhere on the map, the player with this skill can render the target
mob/player unable to communicate on any channels, or use the tell command. Use
this skill again on the same player to release them.

I3

This refers to the InterMud3 system, which may or may not be available on your
system. Enter I3 by itself for a list of available commands. For more help, enter
HELP I3 LIST, HELP I3 CHANNELS, HELP I3 ADD, HELP I3 DELETE, HELP I3 LISTEN, HELP
I3 LOCATE, HELP I3 SILENCE, or HELP I3 INFO.

I3_ADD

Command : I3 ADD
Usage : I3 ADD [REMOTE CHANNEL NAME]
Example : i3 add BADCHAN
Short(s):
Sends an add-channel message to the InterMud3 router. The channel listed must
already appear in your coffeemud.ini file.

I3_CHANNELS

Command  : I3 CHANNELS
Usage : I3 CHANNELS
Example : i3 channels
Short(s) :
Lists all the channels available on the InterMud3 network, even those which
your mud does not subscribe to.

I3_DELETE

Command : I3 DELETE
Usage : I3 DELETE [LOCAL CHANNEL NAME]
Example : i3 delete BADCHAN
Short(s):
Sends a remove-channel message to the InterMud3 router. The channel listed
must already appear in your coffeemud.ini file.

I3_INFO

Command : I3 INFO
Usage : I3 INFO [MUD NAME]
Example : i3 info coffeemud
Short(s):
Give some special information about the InterMud3 mud listed.

I3_LIST

Command : I3 LIST
Usage : I3 LIST
Example : i3 list
Short(s):
Lists all the muds available on the InterMud3 channels.

I3_LISTEN

Command : I3 LISTEN
Usage : I3 LISTEN [REMOTE CHANNEL NAME]
Example : i3 listen BADCHAN
Short(s):
Sends a listen-channel message to the InterMud3 router. The channel listed
must already appear in your coffeemud.ini file.

I3_LOCATE

Command : I3 LOCATE
Usage : I3 LOCATE [NAME]
Example : i3 locate bob
Short(s):
Sends a player locate message to the InterMud3 router, which will hopefully
respond some day with the name of a mud where a player of the given name is
located.

I3_SILENCE

Command : I3 SILENCE
Usage : I3 SILENCE [REMOTE CHANNEL NAME]
Example : i3 silence BADCHAN
Short(s):
Sends a no-listen-channel message to the InterMud3 router. The channel listed
must already appear in your coffeemud.ini file. This command will silence all
traffic to your server from that channel.

IDEA

Command : IDEA
Usage : IDEA [MESSAGE]/REVIEW (STARTING MSG)
Example : idea nothing is spelled right in this room!
Example : idea review
Example : idea review 7
Short(s):
This command can be used to submit ideas to the system. When the REVIEW
parameter is given, the ideas will be iterated through one at a time to give the
archon a chance to delete, comment on, or email each one. An optional starting
number can be given to REVIEW.

IMPORT

Command  : IMPORT
Usage : IMPORT (NOPROMPT) (NODELETE) (AREATYPE=TYPE) [FILE NAME(S)]
Example : import /areas/myarea.cmare
Example : import noprompt nodelete /areas/midgaard.are
Example : import areatype=stdthininstance /areas/midgaard.are
/areas/school.are
Example : import noprompt /areas/areas.lst
Example : import noprompt /areas/
Short(s) :
The import command will allow you to import official coffeemud area files,
whose extension is "*.cmare"
CoffeeMud may also import, with varying levels of success, the "*.are" files
used by other muds. Some formats are better supported than others, so be sure to
carefully examine the imported area afterwards.
The import command will auto detect, based on the file given, whether the file
refers to a coffeemud area file, room file, a "*.are" from another mud, or a
"*.lst" list of other area files.
The CoffeeMud "resources" directory is the default path. Remember that all
paths in CoffeeMud treat the install directory as "root'. This means that the files
being imported must be copied into a folder underneath your install directory
before use. See the help on VFS for more information on this concept.

JRUN

Command  : JRUN
Usage : JRUN [FILENAME] [PARM1] ...
Example : jrun resources/myscript.js parm1 parm2
Short(s) :
Runs the given file as Javascript. See the Programming Guide for more
information on how to write Javascript for CoffeeMud.

LINK

Command : LINK
Usage : LINK [ROOMID] [DIRECTION]
Example : link midgaard#3001 north
Example : link Smurfy Road east
Example : link midgaard#3001#(3,2) north
Short(s):
A command for the linking of rooms to each other, including grid rooms.

LIST

Command : LIST
Usage : LIST ([SHOPKEEPER])
Example : list
Example : list quests
Example : list reports
Example : list log last 10
Short(s):
The normal player version of this command will display the items which a
particular shopkeeper MOB may be selling, along with the prices being offered to
your characters.

The Admin version can also be qualified with UNLINKEDEXITS, ITEMS, ARMOR,
ENVRESOURCES, WEAPONS, MOBS, ROOMS, AREA, LOCALES, BEHAVIORS, EXITS, RACES,
CLASSES, STAFF, SPELLS, SONGS, PRAYERS, PROPERTIES, THIEFSKILLS, COMMON, JOURNALS,
SKILLS, QUESTS, DISEASES, POISONS, TICKS, MAGIC, TECH, CLANITEMS, COMMANDJOURNAL,
TITLES, NOPURGE, BANNED, RACECATS, LOG, USERS, LINKAGES, REPORTS, THREADS,
RESOURCES, ONEWAYDOORS, CHANTS, POWERS, SUPERPOWERS, CLANS, GOVERNMENTS, FACTIONS,
MATERIALS, OBJCOUNTERS, POLLS, CONTENTS, BUGS, TYPOS, IDEAS, TASKS, or ASSISTS.
depending upon the listers security.

LOAD

Command : LOAD
Usage : LOAD [OBJECT TYPE] [PATH/NAME]
Example : load resource banned.ini
Example : load ability /myclasses/blah.class
Example : load weapon /myclasses/blah2.class
Example : load class com.planet_ink.coffee_mud.Items.Weapons.Sword.class
Example : load weapon com/planet_ink/coffee_mud/Items/Weapons/Sword.java
Short(s):
A command for the loading of resources, faction ini files, or class files of
java or javascript.

Use LIST RESOURCES to see a list of resources.

For class files, the LIST command can also show whats already loaded. This
command will automatically attempt to unload a class if it is already loaded. If
the specified class is a java source file or javascript, it will attempt to compile
it first. For loading classes, the second parameter may be the word "class" and
the system will attempt to correct your ambiguity. If it is unable to determine
the type of class being loaded, however, you may get an error. It is therefore
better just to use the load [CLASS-TYPE] syntax instead.

MASKS

In numerous parameters, places, and input fields, CoffeeMud will ask you for
something called a "Zapper Mask". The mask is used to help select particular mobs,
items, etc from the universe of available selections by "filtering out" those you
don't want. For example, if you wanted to only select mobs named Bob, you would
compose a mask that Disallows non-mobs, and Disallows things that dont have the
name Bob. This is done using the Zapper Mask syntax, shown below:
+SYSOP (allow archons to bypass the rules)
-SYSOP (always disallow archons)
+SUBOP (allow archons or area staff to bypass the rules)
-SUBOP (always disallow archons and area staff)
-PLAYER (disallow all players)
-MOB (disallow all mobs/npcs)
-CLASS (disallow all classes)
-CLASS +thief +mage +ranger (create exceptions)
-BASECLASS (disallow all base classes)
-BASECLASS +thief +mage +ranger (create exceptions)
-thief -mage -ranger (disallow only listed classes)
-RACE (disallow all races)
-RACE +elf +dwarf +human +half +gnome (create exceptions)
-elf -dwarf -human -half -gnome (disallow only listed races)
-RACECAT (disallow all racial categories)
-RACECAT +elf +insect +humanoid +canine +gnome (create exceptions)
+RACECAT (do not disallow all racial categories)
+RACECAT -elf -insect -humanoid -canine -gnome (create exceptions)
-ALIGNMENT (disallow all alignments)
-ALIGNMENT +evil +good +neutral (create exceptions)
-evil -good -neutral (disallow only listed alignments)
-GENDER (disallow all genders)
-GENDER +male +female +neuter (create exceptions)
-male -female -neuter (disallow only listed genders)
-FACTION (disallow all faction and values, even a lack of faction)
-FACTION +myfactionrange +faction.rangename (create exceptions)
-rangename -faction.rangename (disallow only faction range named)
-TATTOOS (disallow all tattoos, even a lack of a tattoo)
-TATTOOS +mytatto +thistattoo +anytattoo etc.. (create exceptions)
+TATTOOS (do not disallow any or no tattoos)
+TATTOOS -mytattoo -anytatto, etc.. (create exceptions)
-EXPERTISES (disallow all expertises, even a lack of a edus)
-EXPERTISES +myedu +thisedu +anyedu etc.. (create exceptions)
+EXPERTISES (do not disallow any or no expertises)
+EXPERTISES -myedu -anyedu, etc.. (create exceptions)
-SECURITY (disallow all security flags, even a lack of a security)
-SECURITY +cmdrooms +area cmditems etc.. (create exceptions)
+SECURITY (do not disallow any or no expertises)
+SECURITY -cmdrooms +area cmditems, etc.. (create exceptions)
-MOOD +grumpy +normal (disallow all except those with given moods)
+MOOD -grumpy -normal (disallow only those with subtracted moods)
-LEVEL (disallow all levels)
-LEVEL +=1 +>5 +>=7 +<13 +<=20 (create exceptions)
-=1 ->5 ->=7 -<13 -<=20 (disallow only listed levels range)
-NAMES (disallow everyone)
-NAMES +bob "+my name" etc.. (create name exceptions)
+NAMES (do not disallow anyone who has a name)
+NAMES -bob "-my name" etc.. (create name exceptions)
-CLAN (disallow anyone, even no clan)
-CLAN +Killers "+Holy Avengers" etc.. (create clan exceptions)
+CLAN (do not disallow anyone, even non clan people)
+CLAN -Killers "-Holy Avengers" etc.. (create clan exceptions)
-DEITY (disallow anyone, even no deity)
-DEITY +Apollo "+Grothon The Great" etc.. (create deity exceptions)
+DEITY (do not disallow anyone, even non deity worshipping people)
+DEITY -Apollo "-rothon The Great" etc.. (create deity exceptions)
-ANYCLASS (disallow all multi-class combinations)
-ANYCLASS +thief +mage +ranger (exceptions, allow any class)
+ANYCLASS (do not disallow all multi-class combinations)
+ANYCLASS -thief -mage -ranger (exceptions, disallow any class)
-STR X (disallow those with strength greater than X)
+STR X (disallow those with strength less than X)
-INT X (disallow those with intelligence greater than X)
+INT X (disallow those with intelligence less than X)
-WIS X (disallow those with wisdom greater than X)
+WIS X (disallow those with wisdom less than X)
-CON X (disallow those with constitution greater than X)
+CON X (disallow those with constitution less than X)
-CHA X (disallow those with charisma greater than X)
+CHA X (disallow those with charisma less than X)
-DEX X (disallow those with dexterity greater than X)
+DEX X (disallow those with dexterity less than X)
+-ADJSTR...ADJCON (Same as above, but uses current values)
-GROUPSIZE X (disallow those in groups larger than X)
+GROUPSIZE X (disallow those in groups smaller than X)
-AREA (disallow in all areas)
-AREA "+my areaname" etc.. (create exceptions)
+AREA (do not disallow any areas)
+AREA "-my areaname" etc.. (create exceptions)
-HOME (disallow in all home/beacon areas)
-HOME "+my home/beacon areaname" etc.. (create exceptions)
+HOME (do not disallow any home/beacon areas)
+HOME "-my home/beacon areaname" etc.. (create exceptions)
-ITEM "+item name" etc... (disallow only those with an item name)
-WORN "+item name" etc... (disallow only those wearing item name)
-EFFECTS (disallow anyone, even no effects)
-EFFECTS +Sleep "+Wood Chopping" etc.. (create name exceptions)
+EFFECTS (do not disallow anyone, even non effected people)
+EFFECTS -Sleep "-Wood Chopping" etc.. (create name exceptions)
-SKILLS (disallow anyone, even those with no skill)
-SKILLS +Spell_Sleep(75) etc.. (create exceptions with proficiency)
+SKILLS (do not disallow anyone, even non skilled people)
+SKILLS -Spell_Sleep(75) etc.. (create exceptions with proficiency)
-MATERIAL "+WOODEN" etc.. (disallow only items of added materials)
+MATERIAL "-WOODEN" etc.. (Do not disallow items of -materials)
-RESOURCES "+OAK" etc.. (disallow only items of added resources)
+RESOURCES "-OAK" etc.. (Do not disallow items of -resources)
-JAVACLASS "+GENMOB" etc.. (disallow only objects of +java class)
+JAVACLASS "-GENITEM" etc.. (Do not disallow objs of -classes)
-ABILITY X (disallow those with magical ability less than X)
+ABILITY X (disallow those with magical ability greater than X)
-IF <CONDITION> (disallow, unless they meet Scriptable conditions)
+IF <CONDITION> (never disallow anyone who meets Scriptable cond)
-VALUE X (disallow those with value or money less than X)
+VALUE X (disallow those with value or money greater than X)
-WEIGHT X (disallow those weighing less than X)
+WEIGHT X (disallow those weighing more than X)
-ARMOR X (disallow those with armor bonus less than X)
+ARMOR X (disallow those with armor bonus more than X)
-DAMAGE X (disallow those with damage bonus less than X)
+DAMAGE X (disallow those with damage bonus more than X)
-ATTACK X (disallow those with attack bonus less than X)
+ATTACK X (disallow those with attack bonus more than X)
-WORNON "+TORSO" etc.. (disallow only items wearable on +locations)
+WORNON "-NECK" etc.. (Do not disallow items wearable on -locations)
-DISPOSITION "+ISHIDDEN" etc.. (disallow only with +dispositions)
+DISPOSITION "-ISHIDDEN" etc.. (Do not disallow only with sub disp)
-SENSES "+CANSEEDARK" etc.. (disallow only those with +senses)
+SENSES "-CANSEEDARK" etc.. (Do not disallow those with -senses)
-HOUR +X (disallow always, unless the hour is X)
+HOUR -X (disallow those only when the hour is X)
-SEASON +FALL (disallow those only when season is FALL)
+SEASON -SPRING (disallow those whenever the season is SPRING)
-MONTH +X (disallow those only when month number is X)
+MONTH -X (disallow those whenever the month number is X)
-DAY +X (disallow those only when day number is X)
+DAY -X (disallow those whenever the day number is X)
-WEATHER +DROUGHT (disallow those only when weather is DROUGHT)
+WEATHER -BLIZZARD (disallow those whenever the weather is BLIZZARD)
-QUESTWIN "+MY QUEST" (disallow those who have not my MY QUEST)
+QUESTWIN "-MY QUEST" (disallow those who have won MY QUEST)
-SKILLFLAG (disallow anyone, even those with no skills)
-SKILLFLAG +ENCHANTMENT etc.. (create exceptions to -skillflag)
+SKILLFLAG (do not disallow anyone, even non skilled people)
+SKILLFLAG -ENCHANTMENT etc.. (create exceptions to +skillflag)
-CHANCE 50 (disallow the given % of the time)

MATH_FORMULA

In certain fields and specifications, CoffeeMud will allow you to enter a
mathematical formula in place of a simple number in order to calculate a number at
run-time. This is useful for occasions where you want the number to have a random
element, or where the value of the number is calculated based on certain variables
only available at run-time.

The formulas can be anything from a simple number, to numbers combined with
mathematical operators + - \ *, grouped with parenthesis ( ), and may also include
certain special operators.

One special operator, ? , is for generating a random number (ex: 2?5 refers to
a random number between 2 and 5). Another special operator, >, is for bounding the
result of an operation (ex: 5 * 10 > 10 will evaluate to the greater of 10 or 5 *
10. The < operator does the opposite.

MERGE

Command  : MERGE
Usage : MERGE (AREA/ROOM) (CHANGE=[FIELD,..]) (ON=[FIELD,..])
(IGNORE=[FIELD,..]) [PATH & FILE NAME]
Usage : MERGE (AREA/ROOM) DATABASE (MOBS/ITEMS/ROOMS) DBCLASS=[JAVACLASS]
DBSERVICE=[DB SERVICE URL]
: DBUSER=[USERNAME] DBPASS=[PASSWORD] (IGNORE=[FIELD,..])
(MASK=[ZAPPERMASK])
Example : merge /myfiles/myitems.cmare
Example : merge change=damage,level,ability /myfiles/myweapons.cmare
Example : merge area change=material ignore=level /myfiles/myweapons.cmare
Example : merge change=damage on=name /myfiles/weapons.cmare
Example : merge area database dbclass=com.mysql.jdbc.Driver
dbservice=jdbc:mysql://localhost:3306/db
: dbuser=username dbpass=password ignore="IMG,ATTACK" MASK="-NAMES
+Bob"
Short(s) :
Allows you to selectively modify all instances of a mob or item in the world
based on the contents of a CMARE file containing items or mobs, or another
CoffeeMud database.

When using CMARE files, the files must be generated using the EXPORT
(WORLD/AREA/ROOM) (ITEMS/WEAPONS) command. The first parameter specifies whether
the items in the text file are to be merged with those in the entire world, in your
current area, or just the room. The second parameter (CHANGE) is implied to be ALL
unless specified otherwise. It denotes which fields in the existing items may be
changed based on what changes are seen to the item inside the CMARE file. The
third parameter (ON) is implied to be ALL unless specified otherwise. It denotes
how an item in the CMARE file is matched with an existing item in your world. If
the listed fields from the CMARE file and the existing item are equal, the items
will be considered a match for the purposes of merging. The fourth parameter
(IGNORE) is implied to be NONE unless specified otherwise. It denotes exceptions
to the (ON) parameter, namely which fields are allowed to differ between items in
the CMARE file and an existing item in cases where they would otherwise be
considered a match according to the (ON) parameter. Matched items in your existing
world, in every room, will be modified accordingly, and the room will be resaved to
your database. The log will reflect all changes made to your world. Every room in
every area in your world will be reloaded from the database prior to any
evaluations or changes.

When using a database as a source, the merge command will compare and match the
database version of the room contents with the local world. The user is then given
the opportunity to make changes to the local world depending on differences. The
merge requires DBCLASS, DBSERVICE, DBUSER, and DBPASS parameters be set. The
IGNORE parameters is a comma delimited list of fields to ignore when displaying
differences. To mask the types of objects checked, the user can specify mobs,
items, or the whole rooms after the word database, and a zappermask can be included
after the mask parameters.

MESSAGE_TYPES

The following are valid message codes in CoffeeMud.  They are usable as such in
Scriptable for the EXECMSG_PROG and CNCLMSG_PROG triggers:

"AREAAFFECT", "PUSH", "PULL", "RECALL", "OPEN", "CLOSE", "PUT", "GET",
"UNLOCK", "LOCK", "WIELD", "GIVE", "BUY", "SELL", "DROP", "WEAR", "FILL",
"DELICATE_HANDS_ACT", "VALUE", "HOLD", "NOISYMOVEMENT", "QUIETMOVEMENT",
"WEAPONATTACK", "LOOK", "READ", "NOISE", "SPEAK", "CAST_SPELL","LIST", "EAT",
"ENTER", "FOLLOW", "LEAVE", "SLEEP", "SIT", "STAND", "FLEE", "NOFOLLOW", "WRITE",
"FIRE", "COLD", "WATER", "GAS", "MIND", "GENERAL", "JUSTICE", "ACID", "ELECTRIC",
"POISON", "UNDEAD", "MOUNT", "DISMOUNT", "OK_ACTION", "OK_VISUAL", "DRINK",
"HANDS", "PARALYZE", "WAND_USE", "SERVE", "REBUKE", "ADVANCE", "DISEASE", "DEATH",
"DEPOSIT", "WITHDRAW", "EMOTE", "QUIT", "SHUTDOWN", "VIEW", "RETIRE",
"RETREAT","PANIC", "THROW", "EXTINGUISH", "TELL", "SITMOVE", "KNOCK", "PRACTICE",
"TEACH", "REMOVE", "EXPCHANGE", "DAMAGE", "HEALING", "ROOMRESET", "RELOAD",
"SNIFF", "ACTIVATE", "DEACTIVATE", "FACTIONCHANGE", "LOGIN", "LEVEL", "EXAMINE",
"BORROW"

And here are some general message code types that may also be used:
"TO












EYES","MOUTH","SOUND","GENERAL","MAGIC","DELICATE","MALICIOUS","CHANNEL","OPTIMIZE"

METACRAFT

Usage    : METACRAFT (EVERY) [ITEM NAME] ([MATERIAL NAME]) (TO SELF/HERE/FILE
[FILENAME])
Example : metacraft wagon oak
Example : metacraft wagon
Example : metacraft "every sword" bronze
Example : metacraft "every sword"
Example : metacraft "every sword" iron to file /items.cmare
This skill will allow you to create any item that is craftable from the
numerous common skills. The item created may be made of a material specified, or
automatically crafted by a random material valid to the appropriate skill. You can
also specify the destination of the items, whether it be the room, your inventory,
or an xml file.

MODIFY

Command : MODIFY
Usage : MODIFY [ITEM TYPE] ...
Example : modify room name The Grassy Knole
Example : modify mob orc
Example : modify item longsword
Example : modify item "longsword@an orc"
Example : modify jscript
Short(s):
A command for the modification of items, mobs, users, quests, rooms, polls,
classes, races, and exits. Enter MODIFY for more information on command usage.

MPRUN

Command  : MPRUN
Usage : MPRUN ([USER]:[PASS]) [SCRIPT]
Example : mprun once_prog;mpecho hello!;~;
Example : mprun load=mine.script
Example : mprun archons:password once_prog;mpecho hello!;~;
Short(s) :
Runs the given script as per the Scriptable behavor. Since Scriptable scripts
are event-triggered, any commands executed must be in a ONCE_PROG trigger (or
perhaps a RAND_PROG).

For use as part of automated testing, MPRUN can also be executed by
unauthorized users so long as they know the username and password of an authorized
user. Any failed attempts to use this command will cause the user to be marked as
unable to use this command for two minutes.

MULTIWATCH

Ability    : Multiwatch
Usage : MULTIWATCH (AUTO/STOP/ADD [NAME] ... [NAME])
Example : multiwatch add playerone playertwo
Example : multiwatch auto
Example : multiwatch stop
Description:
This is an archon skill to assist in determining if a set of players who are
connected from the same ip address are the same person. It does this by tracking
certain pieces of data which together may be taken as rather circumstantial
evidence of someone multiplaying. The definition of the numbers are as follows:
SYNC - The number of commands entered by more than one member of an IP group
within a single 4 second period.
SPEECH - This refers to SAY commands, broken into three sections. The first
number represents the number of SAY commands done in the same room with a player
who has the same IP address. The second number represents the number of SAY
commands directed at another player. The last number is the number of SAY commands
total.
SOCIALS - These are also divided into three numbers where, again, the first is
the number of socials in the same room with a player with the same IP, the second
being socials directed at another player, and the last being the number of total
socials.
CMD - The number of commands entered which are different than the previous
command entered.
ORDER - The number of times one of the players in the group gave an ORDER to
another player in the group. A sure sign indeed.

NOPURGE

Command : NOPURGE
Usage : NOPURGE [PLAYER NAME]
Example : nopurge bob
Short(s):
Makes a player inelligible for purging by the autopurge system. Use LIST
NOPURGE, or DESTROY NOPURGE for maintaining the list.

NOWIZINFO

Command : NOWIZINFO
Usage : NOWIZINFO
Example : nowizinfo
Short(s):
Turn off the automatic information channel available to admins and area admins.

NOWIZINV

Command  : WIZARD INVISIBILITY
Usage : VISIBLE
Example : visible
Short(s) : nowizinv
Wizard Invisibility makes the invoker completely undetectable by other mobs or
players. This command turns wizard invisibility off. See WIZINV for more
information.

ORDER

Command : ORDER
Usage : ORDER [TARGET NAME] [COMMAND(S)]
Example : order dog flee
Short(s):
This command will allow you to force a mob to perform any command listed in the
COMMANDS or SOCIALS list.

PAUSE

Command : PAUSE
Usage : PAUSE [ROOM/AREA/OBJECTNAME]
Example : pause
Example : pause area
Example : pause orc
Short(s):
This very powerful and dangerous command allows you to suspend all thread and
ticking operations in the entire mud. It can be a quick and easy way to discern
locked up threads, or to free up CPU time for other purposes. Enter PAUSE alone to
suspend and resume all threads, or specify room, area, or an object name to suspend
the ticking of just that object.

POOF

Command : POOF
Usage : POOF
Short(s):
For players with access to the GOTO command, this command will allow the admin
to change the messages seen when they leave and enter a room via GOTO. The S-NAME,
S-HIM-HER and other codes may be used so that the admins name is properly
presented. Remember to surround the codes with the less-than and greater-than tag
markers!

POSSESS

Skill    : POSSESS
Usage : POSSESS [MOB NAME]
Example : possess dragon
Short(s) :
This command will allow your character to possess and control any given mob.
That mob will be controlled as if it were your own character. Use the QUIT command
to return to your own characters body. Should the mob die, you will be returned
automatically. POSSESS does not transfer your security levels to the possessed mob
UNLESS you have turned on your SYSMSGS flag before possessing.

PURGE

Command : PURGE
Usage : PURGE [ITEM TYPE] ...
Example : purge orc
Example : purge item longsword
Example : purge item longsword@an orc
Short(s):
This command is a weak form of DESTROY, allowing only items and mobs to be
destroyed. Rejuvinating mobs will still rejuvinate when purge is used, unlike
destroy.

QUESTS

Quests are defined as a definable tasks which are completed by players for
prizes. These tasks, the monitoring of their completion and status, as well as
their availability, can all be automated by CoffeeMud.

A quest is created using the CREATE QUEST [SCRIPT] command. Where [SCRIPT] is
a either a complete quest script, where each command line is terminated by a
semicolon (;), or a load command of the form LOAD=[SCRIPT PATH]. An example of a
create script using a load command is as follows: CREATE QUEST
LOAD=/resources/quests/myquest.txt. To load one of the built-in quests, for
instance, use CREATE QUEST LOAD=quests/robbed/robbed.quest.

Quests may be started manually, or by making them autoquests using the SET WAIT
and SET INTERVAL commands below. Quests may be started manually by using the
MODIFY QUEST [QUEST NAME] command. Quests can be listed, to see their status,
using the LIST QUESTS command. Quests can be removed from the list using the
DESTROY QUEST [QUEST NAME] command. Quests can be saved using the SAVE QUESTS
command. Quests saved this way will be restored during the next CoffeeMud reboot.

When creating a new quest using the CREATE QUEST [SCRIPT] command, whether you
use the load command to specify an external script, or include the script directly
into the create command, the quest script commands are as follows:

SET NAME [QUEST NAME] - the *unique* name of your quest. This is a required
command!

SET DURATION [#TICKS] - # of ticks (4 second periods) the quest will last once
started. 0=eternal. This is a required command!

SET WAIT [#TICKS] - minimum # ticks to wait between auto-starts of the quest.
Required for auto-quests only!

SET DATE [#DAY]-[#MONTH] - The real-life start-date of the quest. This is a
valid substitute for the SET WAIT requirement.

SET MUDDAY [#DAY]-[#MONTH] - The start mud-date of the quest, according to the
default global mud calendar. This is a valid substitute for the SET WAIT
requirement.

SET INTERVAL [#TICKS] - random # ticks (1-#TICKS) to wait between auto-starting
the quest, AFTER the WAIT period (see above) is over. Required for auto-quests!

SET MINPLAYERS [#PLAYERS] - Minimum number of players who must be online for a
timed quest to automatically start. See SET PLAYERMASK.

SET PLAYERMASK [MASKSTRING] - If this string is empty or not specified, then
anyone is considered a player for the purposes of the MINPLAYERS setting above.
However, you can specify a "zapper mask" to narrow down the definition of a player.
See HELP ZAPPERMASKS for the list of valid mask values to put here.

SET RUNLEVEL [#LEVEL] - Normally, a timed quest will always run when its time
comes up. Setting a value above -1 will prevent this quest from running when its
time comes up if another quest is also running at the same or LOWER run level.

IMPORT MOBS [XML FILE PATH] - this will import a list of custom mobs from a
.CMARE file generated using the EXPORT ROOM MOBS command. The parameter must be the
path and file name of the file, using the same format as the LOAD= command
mentioned above. This list can then be accessed with the LOAD MOB, or LOAD
MOBGROUP command.

IMPORT ITEMS [XML FILE PATH] - this will import a list of custom items from a
.CMARE file generated using the EXPORT ROOM ITEMS command. The parameter must be
the path and file name of the file, using the same format as the LOAD= command
mentioned above. This list can then be accessed with the LOAD ITEM or LOAD
ITEMGROUP command.

SET AREA ([AREA NAME OR NAMES]) - will set the current designated area to the
area specified. Although this does nothing in itself, it is important for the
several commands which load mobs and items. The area name ANY may be given to
choose a random area. Several area names may be specified as choices by setting the
first area name as ANY, followed by your other area name choices, separated by
spaces. If no area name is given, this will CLEAR the area designation. This can
have a profound impact on how subsequent mob or item loading, or room setting
commands work.

SET AREA [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET AREAGROUP ([AREA NAME OR NAMES]) - will set the current designated
ROOMGROUP to the areas specified. Although this does nothing in itself, it is
important for the several commands which load mobs and items. The area name ANY may
be given to choose a random area. The area name ALL may be given to choose all
world areas. Several area names may be specified as choices by setting the first
area name as ANY, followed by your other area name choices, separated by spaces. If
no area name is given, this will CLEAR the ROOMGROUP designation. This can have a
profound impact on how subsequent mob or item loading, or room setting commands
work.

SET ROOMGROUP ([ROOM NAME]) - will set the ROOMGROUP to the set specified. If
an area has been previously designated, and not cleared (see SET ROOMGROUP), then
the rooms will be selected from the designated area according to the room name
criteria. Otherwise, rooms from the whole map will be chosen. If a room name of ANY
is given, then the rooms will be chosen randomly from the world, or the area if
designated. The room name of ALL will choose all rooms. Several room names may be
specified as choices by setting the first room name as ANY, followed by your other
room name choices, separated by spaces. If no room name is given, this will
effectly clear the ROOMGROUP designation (but it will not clear the area
designation!). Valid room names include map room IDs such as MyArea#123, or key
words from the titles or descriptions of rooms.

SET ROOMGROUP [OBJECT] - serves the same purpose as the above command of the
same name, but the argument is an object specifier. See Object Specifiers below
this command listing.

SET ROOM ([ROOM NAME]) - will set the current designated room to the set
specified. If a room or area has been previously designated, and not cleared (see
SET AREA), then the room will be selected from the designated area according to the
room name criteria. Otherwise, a room from the whole map will be chosen. If a room
name of ANY is given, then the room will be chosen randomly from the world, or the
area if designated. Several room names may be specified as choices by setting the
first room name as ANY, followed by your other room name choices, separated by
spaces. If no room name is given, this will effectly clear the room designation
(but it will not clear the area designation!). Valid room names include map room
IDs such as MyArea#123, or key words from the titles or descriptions of rooms.

SET ROOM [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET ROOMGROUPAROUND [#RADIUS] ([ROOM NAME])- will set the ROOMGROUP to the set
of rooms up to RADIUS rooms from the previously set ROOM. The rooms will be
selected from the set of rooms which are up to RADIUS rooms away from the currently
set ROOM (see SET ROOM/SET LOCALE). The radius must then be greater than 0. If the
following room name of ANY is given, then all rooms in the radius are grouped.
Several room names may be specified as choices by setting the first room name as
ANY, followed by your other room name choices, separated by spaces. If no room
name is given, this will effectly clear the ROOMGROUP designation (but it will not
clear the area designation!). Valid room names include map room IDs such as
MyArea#123, or key words from the titles or descriptions of rooms.

SET LOCALEGROUP ([LOCALE]) - will set the ROOMGROUP to the ones with the
specified class name. If an area has been previously designated, and not cleared
(see SET AREA), then the rooms will be selected from the designated area according
to the locale criteria. Otherwise, rooms from the whole map will be chosen. If a
locale name of ANY is given, then the rooms will be chosen randomly from the world,
or the area if designated. Several locale types may be specified as choices by
setting the first locale type as ANY, followed by your other locale type choices,
separated by spaces. If no locale is given, this will effectly clear the ROOMGROUP
designation (but it will not clear the area designation!). Valid locale names may
be Locale class names such as MountainSurface, StdRoom, etc, or they may be locale
types such as stone, wooden, underwater, mountains, etc.

SET LOCALEGROUP [OBJECT] - serves the same purpose as the above command of the
same name, but the argument is an object specifier. See Object Specifiers below
this command listing.

SET LOCALEGROUPAROUND ([#RADIUS] [LOCALE]) - will set the ROOMGROUP to the ones
with the specified class name. The rooms will be selected from the set of rooms
which areup to RADIUS rooms away from the currently set ROOM (see SET LOCALE/SET
ROOM). The radius must then be greater than 0. If the following locale name of ANY
is given, then all rooms in the radius are grouped. Several room names may be
specified as choices by setting the first locale name as ANY, followed by your
other locale name choices, separated by spaces. If no locale name is given, this
will effectly clear the ROOMGROUP designation (but it will not clear the area
designation!). Valid locale names may be Locale class names such as
MountainSurface, StdRoom, etc, or they may be locale types such as stone, wooden,
underwater, mountains, etc.

SET LOCALE ([LOCALE]) - will set the current designated room to the one with
the specified class name. If a room or area has been previously designated, and not
cleared (see SET AREA), then the room will be selected from the designated area
according to the locale criteria. Otherwise, a room from the whole map will be
chosen. If a locale of ANY is given, then the room will be chosen randomly from the
world, or the area if designated. Several locale types may be specified as choices
by setting the first locale type as ANY, followed by your other locale type
choices, separated by spaces. If no locale is given, this will effectly clear the
room designation (but it will not clear the area designation!). Valid locale
names may be Locale class names such as MountainSurface, StdRoom, etc, or they may
be locale types such as stone, wooden, underwater, mountains, etc.

SET LOCALE [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET MOBGROUP (RESELECT) ([MOB NAME]) - will designate a set of mobs with the
given name. If the name ends with MASK=..., then a mask as described by the help
entry for ZAPPERMASKS will apply in addition to the name mask entered before the
MASK= string. A mob name of ALL will select all appropriate mobs. The mobs chosen
will be selected from those in the designated ROOMGROUP (if one is designated),
AREA (if one is designated) or the world. The mobs must exist somewhere in the map
for this command to work. Normally a mob will not be placed in the mobgroup if the
mob has been previously set with SET MOB, or SET MOBTYPE. The RESELECT flag is an
optional first flag which, if specified, designates that mobs may be placed in the
mobgroup even if previously set, so long as the RESELECT flag was also used in the
previous SET MOB or SET MOBTYPE command.

SET MOBGROUP [OBJECT] - serves the same purpose as the above command of the
same name, but the argument is an object specifier. See Object Specifiers below
this command listing

SET MOB (RESELECT) ([MOB NAME]) - will set the current mob to one with the
given mob name. If the name ends with MASK=..., then a mask as described by the
help entry for ZAPPERMASKS will apply in addition to the mob name entered before
the MASK= string. Ths mob chosen will be selected from a MOBGROUP if one has been
set. Otherwise, the mob chosen will be selected from those in the designated
ROOMGROUP (if one is designated), or the AREA (if one is designated) or finally the
world. The mob must exist somewhere one of those groups for this command to work.
If a room has been previously designated, then this command will bring the chosen
mob to that room. If a room or area has not been designated (or was cleared), then
this command will designate a new room and area. Normally a mob will not be chosen
by this command if the mob has been previously set with SET MOB, or SET MOBTYPE.
The RESELECT flag is an optional first flag which, if specified, designates that a
mob may be chosen if previously chosen, so long as the RESELECT flag was also used
in the previous SET MOB or SET MOBTYPE command.

SET MOB [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET MOBTYPE (RESELECT) ([CLASS]) - will set the current mob to one with the
given class name. Ths mob chosen will be selected from a MOBGROUP if one has been
set. Otherwise, the mob chosen will be selected from those in the designated
ROOMGROUP (if one is designated), AREA (if one is designated) or the world. The mob
must exist somewhere in the map for this command to work. If a room has been
previously designated, then this command will bring the mob to that room. If a room
or area has not been designated (or was cleared), then this command will designate
a new room and area. Normally a mob will not be chosen by this command if the mob
has been previously set with SET MOB, or SET MOBTYPE. The RESELECT flag is an
optional first flag which, if specified, designates that a mob may be chosen if
previously chosen, so long as the RESELECT flag was also used in the previous SET
MOB or SET MOBTYPE command.

SET MOBTYPE [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET ITEMGROUP (RESELECT) ([ITEM NAME]) - will designate a set of items with
the given name. If the name ends with MASK=..., then a mask as described by the
help entry for ZAPPERMASKS will apply in addition to the item name entered before
the MASK= string. A mob name of ALL will select all appropriate mobs. The items
chosen will be selected from those in the designated ROOMGROUP (if one is
designated), the AREA (if one is designated) or the world. The items must exist
somewhere in the map for this command to work. Normally an item will not be placed
in the itemgroup if the item has been previously set with SET ITEM, or SET
ITEMTYPE. The RESELECT flag is an optional first flag which, if specified,
designates that items may be placed in the itemgroup even if previously set, so
long as the RESELECT flag was also used in the previous SET ITEM or SET ITEMTYPE
command.

SET ITEMGROUP [OBJECT] - serves the same purpose as the above command of the
same name, but the argument is an object specifier. See Object Specifiers below
this command listing

SET ITEM (RESELECT) ([ITEM NAME]) - will set the current item to one with the
given name. The item chosen will be selected from those in the designated ROOMGROUP
(if one is designated), AREA (if one is designated) or the world. The item must
exist somewhere in a room on the map for this command to work. If a room has been
previously designated, then this command will bring the item to that room. If a
room or area has not been designated (or was cleared), then this command will
designate a new room and area. Normally an item will not be chosen by this command
if the item has been previously set with SET ITEM, or SET ITEMTYPE. The RESELECT
flag is an optional first flag which, if specified, designates that an item may be
chosen if previously chosen, so long as the RESELECT flag was also used in the
previous SET ITEM or SET ITEMTYPE command.

SET ITEM [OBJECT] - serves the same purpose as the above command of the same
name, but the argument is an object specifier. See Object Specifiers below this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET ITEMTYPE (RESELECT) ([CLASS]) - will set the current item to one with the
given class name. The item chosen will be selected from those in the designated
ROOMGROUP (if one is designated), AREA (if one is designated) or the world. The
item must exist somewhere in a room on the map for this command to work. If a room
has been previously designated, then this command will bring the item to that room.
If a room or area has not been designated (or was cleared), then this command will
designate a new room and area. Normally an item will not be chosen by this command
if the item has been previously set with SET ITEM, or SET ITEMTYPE. The RESELECT
flag is an optional first flag which, if specified, designates that an item may be
chosen if previously chosen, so long as the RESELECT flag was also used in the
previous SET ITEM or SET ITEMTYPE command.

LOAD MOBGROUP ([#NUMBER]) [MOB NAME] - will instantiate all (or optionally, the
given number) mobs of the given name from the set of mobs imported using the IMPORT
MOBS command above. If the mob name ends with MASK=..., then a mask as described by
the help entry for ZAPPERMASKS will apply in addition to the mob name entered
before MASK= string. This selected mobs will be set as the current MOBGROUP. If a
room, roomgroup, or area has been previously designated, then this command will
create each mob in that room or random room in the area. If a room or area has not
been designated (or was cleared), then this command will designate a random room
and area. This command will also designate the current mob to the last one loaded.

LOAD MOB [MOB NAME] - will instantiate a mob of the given name from the list of
mobs imported using the IMPORT MOBS command above. If the name ends with MASK=...,
then a mask as described by the help entry for ZAPPERMASKS will apply in addition
to the name mask entered. This selected mob will be set as the current mob. If a
room, roomgroup, or area has been previously designated, then this command will
create the mob in that room. If a room or area has not been designated (or was
cleared), then this command will designate a random room and area.

LOAD ITEMGROUP ([#NUMBER]) [ITEM NAME] - will instantiate all (or optionally,
the given number) items of the given name from the list of items imported using the
IMPORT ITEMS command above. This items will be set as the current ITEMGROUP. If a
room, roomgroup, or area has been previously designated, then this command will
create the item in that room. If a room or area has not been designated (or was
cleared), then this command will designate a random room and area. This command
will also designate the current item to the last one loaded.

LOAD ITEM [ITEM NAME] - will instantiate an item of the given name from the
list of items imported using the IMPORT ITEMS command above. This item will be set
as the current item. If a room, roomgroup, or area has been previously designated,
then this command will create the item in that room. If a room or area has not been
designated (or was cleared), then this command will designate a random room and
area.

GIVE ITEM - will give the currently designated item (designated using the SET
ITEM, or LOAD ITEM command) to the last designated mob or mobs (designated using
the SET MOB, SET MOBGROUP, LOAD MOBGROUP, or LOAD MOB commands).

GIVE ITEMS - will give all currently designated items (designated using the
SET/LOAD ITEM/ITEMGROUP command) to the last designated mob or mobs (designated
using the SET MOB, SET MOBGROUP, LOAD MOBGROUP, or LOAD MOB commands).

GIVE BEHAVIOR [BEHAVIOR ID] ([PARAMETERS]) - The behavior ID must be a valid
behavior class name. The parameters are any parameters you wish to pass to the
behavior. This command will give the most recently designated mob, item, area, room
or mobgroup (designated using the set or load commands), itemgroup, or roomgroup
the above behavior. The parameters above are optional, and include any text that
would be valid for the behavior id specified. The text may also optionally include
embedded references to other quest objects. See below Object Specifiers in
Parameters below for more information on using this feature.

GIVE ABILITY [ABILITY ID] ([PARAMETERS]) - The ability ID must be a valid
ability class name. The parameters are any parameters you wish to pass to the
ability. This command will give the currently designated mob, or mobgroup
(designated using the set or load commands) the above ability. The parameters above
are optional, and include any text that would be valid for the ability id
specified. The text may also optionally include embedded references to other quest
objects. See below Object Specifiers in Parameters below for more information on
using this feature.

GIVE AFFECT [ABILITY ID] ([PARAMETERS]) - The ability ID must be a valid
ability class name. The parameters are any parameters you wish to pass to the
ability. This command will give the currently designated mob, item, room, area, or
mobgroup (designated using the set or load commands), itemgroup, or roomgroup the
above affect. The parameters above are optional, and include any text that would be
valid for the ability id specified. The text may also optionally include embedded
references to other quest objects. See below Object Specifiers in Parameters below
for more information on using this feature.

GIVE FOLLOWER [MOB NAME] - The mob name is a mob which will be selected from
the list of previously designated mobs (designated using the LOAD MOB, SET MOB, or
SET MOBTYPE commands). This mob will be made into a follower of the mob most
recently designated using the SET MOB, SET MOBTYPE, or LOAD MOB command. This
command does not change the current mob designation, nor does it change the
location of either mob.

TAKE BEHAVIOR [BEHAVIOR ID] - The behavior ID must be a valid behavior class
name. This command will take from the most recently designated mob, item, area,
room or mobgroup (designated using the set or load commands), itemgroup, or
roomgroup the above behavior.

TAKE ABILITY [ABILITY ID] - The ability ID must be a valid ability class name.
This command will take from the currently designated mob, or mobgroup (designated
using the set or load commands) the above ability. The parameters above are
optional, and include any text that would be valid for the ability id specified.

TAKE AFFECT [ABILITY ID] - The ability ID must be a valid ability class name.
This command will take from the currently designated mob, item, room, area, or
mobgroup (designated using the set or load commands), itemgroup, or roomgroup the
above affect.

RESET- If a ROOM has been designated using SET ROOM, or by any other previously
described method, this command will cause that room to reset, or re-load from the
database. If a ROOM is not currently set (or has been unset), but a ROOMGROUP or
an AREA has been set, this command will cause all rooms in that set (respectively)
to reload from the database. Doing either can be somewhat time consuming, and may
disrupt any players in the rooms affected, as it will cause items to vanish from
the floor, and make players and mobs unable to move until the process is completed.

<SCRIPT> - This designates the beginning of embedded Javascript in your
quest script. The end is designated by a corresponding </SCRIPT> tag on its own
line. See the next section for more details.

LOAD= ([QUEST FILE]) ([ARGUMENT] ... [ARGUMENT]) - This command will cause the
specified external quest script file to be loaded and executed as if it were
embedded at the current point in the script. The quest filename is of the same
format mentioned above. When LOAD= is used as a command inside a script, you can
also specify one or more space-delimited arguments which will be accessible inside
the target quest script as Object Specifiers. The first argument given, whether it
is itself an Object Specifier, or a simple string, will be accessible inside the
target quest script as ARG1, the second as ARG2, and so forth. A special case
exists, however, if one of the arguments evaluates to an Object Specifier which
represents a group of objects (such as MOBGROUP or ITEMGROUP). If that case
occurs, the LOAD= command will execute once for every object inside the group! See
the discussion of Object Specifiers and Object Spcifiers in Parameters for more
information.

<OPTION> ([QUEST SCRIPT COMMANDS]) </OPTION> - Putting quest script
commands inside of <OPTION> tags means that, for every execution of the quest
script, only ONE of the <OPTION> tags will be have their script commands
executed. The one chosen will be selected at random. If only one <OPTION> tag
exists, it will be chosen every time, of course.

* Note About #. In a quest script, anywhere the # sign is used above (such as
[#TICKS] or [#PLAYERS], you may enter a normal old every day number (34) or you may
enter a valid arithmetic expression using real or integer numbers and any of the
following operators: + - * () ?

* Object Specifiers. Many of the SET ... commands, such as SET MOBGROUP, SET
MOB, SET ITEMGROUP, SET ROOM, etc, have forms which allow you to designate their
value using an [OBJECT] string. An [OBJECT] string is one of the following basic
quest-script values: "LOADEDMOBS", "LOADEDITEMS", "AREA", "ROOM", "MOBGROUP",
"ITEMGROUP", "ROOMGROUP", "ITEM", "ENVOBJ", "STUFF", "MOB", or one of the following
mystery quest-script values: "FACTION", "FACTIONGROUP", "AGENT", "AGENTGROUP",
"ACTION", "ACTIONGROUP", "TARGET", "TARGETGROUP", "MOTIVE", "MOTIVEGROUP",
"WHEREHAPPENED", "WHEREHAPPENEDGROUP", "WHEREAT", "WHEREATGROUP", "WHENHAPPENED",
"WHENHAPPENEDGROUP", "WHENAT", "WHENATGROUP", "TOOL", "TOOLGROUP". Using the SET
command in this way allows you to either COPY an objects value, or re-designate it
for the purposes of one of the GIVE ... commands. If the quest script was executed
from inside of another using the LOAD= script command, and arguments were specified
from the above objects, you may also have access to argument object specifiers,
such as ARG1, ARG2, ... ARGN. There will be one such object specifier available
for each argument passed to the script. Please note that some object specifiers
return single objects (such as MOB, ITEM, ROOM) and some return collections of
objects (such as ROOMGROUP, MOBGROUP, ITEMGROUP). Object specifiers can also be
combined using + and - characters. For instance, MOBGROUP-MOB would return the
group of mobs in the MOBGROUP minus the specified MOB while the specifier MOB+ITEM
would refer to an object group containing both the specified MOB and the specified
ITEM.

* Object Specifiers in Parameters. When specifing parameters for the GIVE
BEHAVIOR, GIVE ABILITY, or GIVE AFFECT command, you may embed the names of one or
more of the Object Specifiers by prefixing the Object Specifier code string with a
$ character, and concluding it with a space or other non-alphanumeric character.
For instance, the command: "give script GREET_PROG 100; say I love $MOB!!!;~;"
would embed the name string for the MOB object specifier inside the in-line script.
In addition to this capability, you may also put a special character after the $
and before the object specifier to manipulate how the name of the object is
generated. Special characters are: '_' (to make the name in uppercase), '&' to
remove any prefixed english article words from the name, or '|' to replace all
spaces in the name with | characters (which is very useful for QuestChat
parameters).

Mystery Objects in Quest scripts:

In addition to the normal quest objects mentioned above, such as MOB, ITEM,
ROOM and so forth, there are also extranous objects and groups intended for use
when building logic problem mysteries. The commands for setting these are as
follows:

SET AGENT [OBJECT] - Sets the AGENT variable to the [OBJECT]. Will also set
the MOB object. See Object Specifiers above this command listing. If the object
resolves to a group of objects, a random one from the group will be chosen.

SET AGENTGROUP [OBJECT] - Sets the AGENTGROUP variable to the [OBJECT]. Will
also set the MOBGROUP object to the same, as well as designate one random mob from
the group as the AGENT and the MOB. See Object Specifiers above this command
listing.

SET AGENTGROUP [#NUMBER] - Sets the AGENTGROUP variable to the currently set
MOBGROUP, selecting at most NUMBER mobs randomly from that list. Will also set the
MOBGROUP object to the same, as well as designate one random mob from the group as
the AGENT and the MOB. See Object Specifiers above this command listing.

SET WHEREHAPPENED [OBJECT] - Sets the WHEREHAPPENED variable to the [OBJECT].
Will also set the ROOM object. See Object Specifiers above this command listing.
If the object resolves to a group of objects, a random one from the group will be
chosen.

SET WHEREHAPPENEDGROUP [OBJECT] - Sets the WHEREHAPPENEDGROUP variable to the
[OBJECT]. Will also set the ROOMGROUP object to the same, as well as designate one
random room from the group as the WHEREHAPPENED and the ROOM. See Object
Specifiers above this command listing.

SET WHEREHAPPENEDGROUP [#NUMBER] - Sets the WHEREHAPPENEDGROUP variable to the
currently set ROOMGROUP, selecting at most NUMBER rooms randomly from that list.
Will also set the ROOMGROUP object to the same, as well as designate one random
room from the group as the WHEREHAPPENED and the ROOM. See Object Specifiers above
this command listing.

SET WHEREAT [OBJECT] - Sets the WHEREAT variable to the [OBJECT]. Will also
set the ROOM object. See Object Specifiers above this command listing. If the
object resolves to a group of objects, a random one from the group will be chosen.

SET WHEREATGROUP [OBJECT] - Sets the WHEREATGROUP variable to the [OBJECT].
Will also set the ROOMGROUP object to the same, as well as designate one random
room from the group as the WHEREAT and the ROOM. See Object Specifiers above this
command listing.

SET WHEREATGROUP [#NUMBER] - Sets the WHEREATGROUP variable to the currently
set ROOMGROUP, selecting at most NUMBER rooms randomly from that list. Will also
set the ROOMGROUP object to the same, as well as designate one random room from the
group as the WHEREAT and the ROOM. See Object Specifiers above this command
listing.

SET WHENHAPPENED [OBJECT] - Sets the WHENHAPPENED variable to the timeclock
[OBJECT]. See Object Specifiers above this command listing. If the object
resolves to a group of objects, a random one from the group will be chosen.

SET WHENHAPPENED [#HOURS-DIFFERENCE] - Sets the WHENHAPPENED variable to the
current time plus or minus the hours difference specified. See Object Specifiers
above this command listing. If the object resolves to a group of objects, a
random one from the group will be chosen.

SET WHENHAPPENEDGROUP [OBJECT] - Sets the WHENHAPPENEDGROUP variable to the
[OBJECT]. Will also designate one random time from the group as the WHENHAPPENED.
See Object Specifiers above this command listing.

SET WHENHAPPENEDGROUP [#HOURS-DIFFERENCE] ... [#HOURS-DIFFERENCE] - Sets the
WHENHAPPENEDGROUP list to the current time plus or minus the list of
hours-differences given. Will also designate one random time from the group as the
WHENHAPPENED. See Object Specifiers above this command listing.

SET WHENAT [OBJECT] - Sets the WHENHAPPENED variable to the timeclock [OBJECT].
See Object Specifiers above this command listing. If the object resolves to a
group of objects, a random one from the group will be chosen.

SET WHENAT [#HOURS-DIFFERENCE] - Sets the WHENAT variable to the current time
plus or minus the hours difference specified. See Object Specifiers above this
command listing. If the object resolves to a group of objects, a random one from
the group will be chosen.

SET WHENATGROUP [OBJECT] - Sets the WHENATGROUP variable to the [OBJECT]. Will
also designate one random time from the group as the WHENAT. See Object Specifiers
above this command listing.

SET WHENATGROUP [#HOURS-DIFFERENCE] ... [#HOURS-DIFFERENCE] - Sets the
WHENATGROUP list to the current time plus or minus the list of hours-differences
given. Will also designate one random time from the group as the WHENAT. See
Object Specifiers above this command listing.

SET FACTION [OBJECT] - Sets the FACTION variable to the faction string
[OBJECT]. See Object Specifiers above this command listing. If the object
resolves to a group of objects, a random one from the group will be chosen.

SET FACTION [FACTION NAME] - Sets the FACTION variable to one of the given name
or ANY to choose a random one.

SET FACTIONGROUP [OBJECT] - Sets the FACTIONGROUP variable to the [OBJECT].
Will also designate one random faction from the group as the FACTION. See Object
Specifiers above this command listing.

SET FACTIONGROUP [#NUMBER] - Sets the FACTIONGROUP variable to NUMBER random
factions, or ALL to set it to all of them. Will also designate one random faction
from the group as the FACTION. See Object Specifiers above this command listing.

SET FACTIONGROUP [FACTION NAME] ... [FACTION NAME] - Sets the FACTIONGROUP
variable to the set of factions designated by the faction names. Will also
designate one random faction from the group as the FACTION. The faction names are
space delimited, and names grouped with double-quotes.

SET TARGET [OBJECT] - Sets the TARGET variable to the [OBJECT]. Will also set
the MOB or ITEM object depending on what gets designated. See Object Specifiers
above this command listing. If the object resolves to a group of objects, a
random one from the group will be chosen.

SET TARGETGROUP [OBJECT] - Sets the TARGETGROUP variable to the [OBJECT]. Will
also set the MOBGROUP or ITEMGROUP object to the same (depending on what type of
group is designated), as well as designate one random object from the group as the
TARGET, and either the MOB or ITEM. See Object Specifiers above this command
listing.

SET TARGETGROUP [#NUMBER] - Sets the TARGETGROUP variable to the currently set
MOBGROUP (if one is currently set) or ITEMGROUP if not. It will select at most
NUMBER objects randomly from that list. Will also re-set the MOBGROUP or ITEMGROUP
object to the same, as well as designate one random mob or item from the group as
the TARGET and either the MOB or ITEM. See Object Specifiers above this command
listing.

SET TOOL [OBJECT] - Sets the TOOL variable to the [OBJECT]. Will also set the
MOB or ITEM object depending on what gets designated. See Object Specifiers above
this command listing. If the object resolves to a group of objects, a random one
from the group will be chosen.

SET TOOLGROUP [OBJECT] - Sets the TOOLGROUP variable to the [OBJECT]. Will
also set the MOBGROUP or ITEMGROUP object to the same (depending on what type of
group is designated), as well as designate one random object from the group as the
TOOL, and either the MOB or ITEM. See Object Specifiers above this command
listing.

SET TOOLGROUP [#NUMBER] - Sets the TOOLGROUP variable to the currently set
MOBGROUP (if one is currently set) or ITEMGROUP if not. It will select at most
NUMBER objects randomly from that list. Will also re-set the MOBGROUP or ITEMGROUP
object to the same, as well as designate one random mob or item from the group as
the TOOL and either the MOB or ITEM. See Object Specifiers above this command
listing.

SET MOTIVE [OBJECT] - Sets the MOTIVE variable to the string [OBJECT]. See
Object Specifiers above this command listing. If the object resolves to a group
of objects, a random one from the group will be chosen.

SET MOTIVE [STRING] - Sets the MOTIVE variable to the string.

SET MOTIVEGROUP [OBJECT] - Sets the MOTIVEGROUP variable to the [OBJECT]. Will
also designate one random string from the group as the MOTIVE. See Object
Specifiers above this command listing.

SET MOTIVEGROUP [STRING] .. [STRING] - Sets the MOTIVEGROUP to the set of
strings specified. Will also designate one random string from the group as the
MOTIVE. The strings are space delimited, and words grouped with double-quotes.

SET ACTION [OBJECT] - Sets the ACTION variable to the string [OBJECT]. See
Object Specifiers above this command listing. If the object resolves to a group
of objects, a random one from the group will be chosen.

SET ACTION [STRING] - Sets the ACTION variable to the string.

SET ACTIONGROUP [OBJECT] - Sets the ACTIONGROUP variable to the [OBJECT]. Will
also designate one random string from the group as the ACTION. See Object
Specifiers above this command listing.

SET ACTIONGROUP [STRING] .. [STRING] - Sets the ACTIONGROUP to the set of
strings specified. Will also designate one random string from the group as the
ACTION. The strings are space delimited, and words grouped with double-quotes.

Final notes: This stuff may seem complicated, but just make sure you carefully
examine the sample quests found in the CoffeeMud resources directory! Also,
remember that quest script errors are always sent out to your mud.log, so check
their often when starting up a new quest!.

RECORD


Skill : Record
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : RECORD
Usage : RECORD [PLAYER NAME]
Example : record gunther
From anywhere on the map, the player with this skill can begin recording all
activity of the target to a file in the local file system as if they were snooping
them.

RESET

Command  : RESET
Usage : RESET (REJUV) ROOM/AREA (ITEMS/MOBS)
Usage : RESET MOBSTATS ROOM/AREA/WORLD/CATALOG (NOSAVE) ([AREANAME])
Usage : RESET ITEMSTATS ROOM/AREA/WORLD/CATALOG (NOSAVE) ([AREANAME])
Example : reset room
Example : reset area
Example : reset rejuv area items
Example : reset mobstats world
Example : reset itemstats catalog nosave midgaard
Short(s) :
The reset room or area command will revive any wandered or dead mobs whose
location is the same as the invokers. Any removed items which are resettable will
also return. Any items or mobs which do not belong in the location will be
returned to their proper homes.

The reset rejuv room or area command will revive any dead mobs or resettable
items at the location of the invoker. Mobs that have wandered away will not be
returned. No other mobs or items in the room will be affected.

The reset itemstats and reset mobstats commands serve a similar purpose. Both
will modify the vital statistics of all the mobs or items in the room, area, world,
or catalog specified. The statistics will be "normalizations" of vital combat
scores based on the mob or items level, and the game engine's definition of nominal
ratings for that level. They will allow a "preview" of changes to be made by
specifying the "nosave" parameter on the command line, which prevents permanent
changes. Area names may also be specified on the command line to cause the command
to skip certain areas (for use with WORLD parameter only).

RESTRING

Command : RESTRING
Usage : RESTRING [ITEM NAME]
Example : restring longsword
Example : restring "longsword@an orc"
Short(s):
This command is a weak for of MODIFY. It allows you to modify an items name,
display text, and description.

SAVE

Command : SAVE
Usage : SAVE [ROOM, QUESTS, MOBS, ITEMS, USERS]
Example : save room
Short(s):
A command to permanently save the contents of a room, the mobs in the room, the
current quests list, or the users who are logged in. The command will apply to the
room in which your Character is located.

SECURITY

SECURITY in CoffeeMud is on a player by player basis.  
SYSOP status is defined as the ultimate security to do anything, anywhere, at
any time. Access to all commands in all areas will be available. SYSOP status is
defined in the CoffeeMud ini file entry SYSOPMASK which establishes the player
characteristics that designate SYSOPS. All players who meet the requirements of the
mask are automatically SYSOPS.

Players who are not SYSOPS may also be granted specific privileges. Each of
the privileges may be limited to specific areas, or available globally. Privileges
are defined in the Security section of a players settings. Each security code
listed for a player may be either a list of security Groups, or a specific security
code.

Security GROUPS are also defined in the ini file. A Security GROUP consists of
a group name, and a set of strings or codes representing privileges for that group.
Each group is prefixed in the INI file with the "GROUP_". However, you should not
use the "GROUP_" when adding group priviledges to the Security field of a player.
For instance, if you have "GROUP_BUILDER" defined in the INI file, then you would
add "BUILDER" to Security when modifying a player in order to make that user part
of the BUILDER group. The security codes which make up each group are implicitly
global, but can be qualified as area-only using the keyword "AREA".

The following are the default strings or codes which, when found in a players
security settings or in a group definition, confer the listed privileges. Each of
these settings may be entered as listed below, or prefixed with the word "AREA"
followed by a space, followed by the key. This has the effect of making that
privilege only available in or at areas where the Player is listed in the areas
"Staff" setting. For example, the security code "ANNOUNCE" by itself confers the
global ability to use the ANNOUNCE command. The security code "AREA ANNOUNCE"
means that the ANNOUNCE command can only be used inside areas where the player is
listed as Staff.


ABOVELAW=Immunity to the Arrest behavior.
AFTER=The ability to use the command of the same name.
AHELP=The ability to access administrative help files.
ALLSKILLS=This code gives the player access to ALL skills,songs,prayers,spells
at their next login.
ANNOUNCE=The ability to use the command of the same name.
AS=The ability to use the command of the same name.
AT=The ability to use the command of the same name.
BAN=The ability to use the command of the same name, as well as DESTROY BAN,
LIST BAN, and access the BAN MUDGrinder feature.
BEACON=The ability to use the command of the same name.
BOOT=The ability to use the command of the same name.
CHARGEN=The ability to use the command of the same name.
CLOAK=The ability to use the command of the same name, as well as see those who
are cloaked.
CMDAREAS=The ability to Create, Modify, and Destroy areas. Also gains access
to the MUDGrinder area tool.
CMDCLANS=The ability to Modify or Destroy clans.
CMDCLASSES=The Ability to Create, Modify, Destroy custom classes.
CMDABILITIES=The Ability to Create, Modify, Destroy custom abilities.
CMDEXITS=The Ability to Create, Modify, Link, Unlink, or Destroy exits.
CMDITEMS=The Ability to Create, Modify, Destroy items in rooms.
CMDMOBS=The Ability to Create, Modify, Destroy mobs in rooms. This code also
prevents Mobile mobs from wandering away and confers other similar priviledges.
CMDRECIPES=The Ability to Create, Modify, Destroy Common Skill recipe items.
CMDPLAYERS=The Ability to Modify or Destroy players. Also has the ability to
view Player settings in the MUDGrinder.
CMDQUESTS=The Ability to Create, Modify, Destroy quests. Also has the ability
to access the quests and file editors in the MUDGrinder.
CMDRACES=The Ability to Create, Modify, Destroy custom races.
CMDFACTIONS=The Ability to Create, Modify, and Destroy factions.
CMDROOMS=The ability to Create, Modify, and Destroy rooms. Also gains access
to the MUDGrinder area tool.
CMDSOCIALS=The Ability to Create, Modify, Destroy socials.
COMPONENTS=The Ability to Create, Modify, Destroy spell/skill components.
EXPERTISE=The Ability to Create, Modify, Destroy spell/skill expertises.
TITLES=The Ability to Create, Modify, Destroy player auto-titles.
CARRYALL=Overrides item carrying restrictions.
CATALOG=The ability to use the catalog command of mobs and items.
COPYITEMS=The Ability to copy existing items.
COPYMOBS=The Ability to copy existing items.
COPYROOMS=The ability to copy existing rooms.
DUMPFILE=The ability to use the command of the same name.
EXPORT=The ability to export mobs, items, or rooms.
EXPORTFILE=The ability to export to a file. Requires EXPORT or EXPORTPLAYERS.
EXPORTPLAYERS=The ability to export player data.
FS: <path>=The ability to read/write files in the local path given. No
preceding / chars!
GMODIFY=The ability to use the command of the same name.
GOTO=The ability to use the command of the same name, as well as walk through
doors.
IDLEOK=This code makes the player exempt from any idletimer settings from the
coffeemud.ini file.
I3=The ability to manage the CHANNELS aspect of I3.
IMMORT=Players with this code never ever die.
IMPORTITEMS=The ability to import items into a room.
IMPORTMOBS=The ability to import mobs into a room.
IMPORTPLAYERS=The ability to import players from a file.
IMPORTROOMS=The ability to import rooms or areas from a file.
JOURNALS=The ability to administer all journals.
JSCRIPTS=The ability to approve javascript in Scriptabler behaviors.
KILLASSIST=The ability to LIST and DESTROY entries in the ASSIST list.
KILLBUGS=The ability to LIST and DESTROY entries in the BUG list.
KILLDEAD=The ability to kill anyone by entering 'kill [name] dead'
KILLIDEAS=The ability to LIST and DESTROY entries in the IDEAS list.
KILLTYPOS=The ability to LIST and DESTROY entries in the TYPOS list.
LISTADMIN=The ability to LIST ticks, the log, reports, or threads.
LOADUNLOAD=The ability to load and unload resources. Also gains access to
resource manager in MUDGrinder.
MERGE=The ability to merge mob or item changes from a file or database.
MXPTAGS=The ability to insert MXP tags using the ^< ^> ^& syntax.
NOEXPIRE=This character never expires, but always remains active.
NOPURGE=The ability to add, LIST, or DESTROY entries on the NOPURGE list.
ORDER=The ability to order mobs around. Also grants the ability to GIVE
without failure, and use Take and Dress without failure. The global version of
this code also allows ordering players.
PKILL=The ability to override PKILL flag settings.
POSSESS=The ability to use the command of the same name.
PURGE=The ability to use the command of the same name.
RESET=The ability to use the command of the same name as it applies to rooms or
areas.
RESETUTILS=The ability to use the command of the same name as it applies to the
miscellaneous RESET tools.
RESTRING=The ability to use the command of the same name.
SESSIONS=The ability to use the command of the same name.
SHUTDOWN=The ability to use the command of the same name.
SNOOP=The ability to use the command of the same name.
STAT=The ability to use the command of the same name.
SUPERSKILL=This code makes it impossible for the player to fumble a spell or
skill that they have.
SYSMSGS=The ability to use the command of the same name.
TASKS=The ability to ADD, LIST and DESTROY entries in the TASKS list.
TICKTOCK=The ability to use the command of the same name.
TRAILTO=The ability to use the command of the same name.
TRANSFER=The ability to use the command of the same name.
VFS: <path>=The ability to read/write files in the vfs path given. No
preceding / chars!
WHERE=The ability to use the command of the same name.
WIZINV=The ability to use the command of the same name, as well as see those
who are WIZINV.

Here is an example Security setting for a player:
Security: BUILDER, AREA GOTO, SNOOP, VFS: RESOURCES/TEXT/
The above would give a player access to the BUILDER group defined by
GROUP_BUILDER in your INI file. It would also give access to the GOTO command, but
only insofar as it relates to areas where the player is listed as Staff. Lastly,
it gives global access to the Snoop command.

SESSIONS

Skill    : SESSIONS
Usage : SESSIONS (STATUS/VALID/NAME/IP/IDLE)
Available:
Example : sessions
Example : sessions name
Short(s) :
Lists the players online, their idle time, status, and ip address. An optional
parameter may be given to sort by one of the fields.

SHELL

Command : SHELL
Usage : SHELL [COMMAND] [PARAMETERS]
Example : shell
Example : shell ?
Example : shell directory
Example : shell cd /resources/text
Example : shell copy thisfile.txt ::
Example : shell del ::thisfile.txt
Example : shell edit thisfile.txt
Short(s): .
This command allows the archon, and users with appropriate FS: and/or VFS:
security flags to access the file system and/or the virtual file system. See help
on CMFS or VFS for the difference between the two.

The commands are case-insensitive, except where dealing with the local file
system, where it may be case-sensitive depending upon the host system. As
mentioned in the CMFS docs, filenames and paths may be preceded by a :: string to
denote forced VFS access, or // to denote forced local file-system access. When
neither is specified for a given shell command, the VFS file is always preferred.
The / character is always used to separate directory paths and folders, such as
/resources/text/down.txt would refer to the file down.txt in the text folder, which
in turn is in the resources folder, which in turn is located in the root directory.

The shell command may be entered with no parameter to see the players current
directory. When viewing directories, a "-" character will precede a file which
exists only in the VFS system. A "+" character will precede a file which exists in
both the local file system and the VFS system. Since folders always exist in the
VFS, they will always be seen with the "+" character preceding them.

The shell command can be used to create directories, delete files or
directories, copy files, search for files with given names, search inside text
files for a text string, display a text file, or edit a text file. Many commands
support a mask to limit the files displayed. The mask may include "*" characters
anywhere in the string to match 0 or more unknown characters in the filenames. A
"?" character always matches a single unknown character in a filename.

See HELP CMFS for more information on CoffeeMuds file system.

SHUTDOWN

Command : SHUTDOWN
Usage : SHUTDOWN (RESTART) (NOPROMPT)
Example : shutdown
Short(s):
With no argument, this command will bring down the CoffeeMud server. With the
restart argument, it will "bounce" (restart) the server.

SNOOP

Command : SNOOP
Usage : SNOOP [TARGET NAME]
Example : snoop player
Short(s):
This command will allow you to watch a player play -- seeing everything they
type in, and everything they read on their screen.

STAT

Command : STAT
Usage : STAT ((SKILL TYPE) [TARGET NAME])/([NUMBER] [DAYS/WEEKS/MONTHS/YEARS]
(/SKILLUSE/QUEST))
Example : stat
Example : stat 2 weeks
Example : stat tom
Example : stat equipment bob
Example : stat combat bob
Example : stat inventory bob
Example : stat questwins bob
Example : stat tattoos bob
Example : stat titles bob
Example : stat scripts bob
Example : stat roomsexplored bob
Example : stat factions bob
Example : stat spell bob
Example : stat skill hassan
Example : stat chant hassan
Example : stat prayer hassan
Short(s):
This command serves two purposes. The first is to allow you to view a usage
statistics report on your mud. Entering STAT alone allows you to see information
gathered since midnight. You may also enter a number and a scale (days, weeks,
months, or years) to view information going farther back.

STAT will also allow you to retreive basic stat information on a player or mob
in the game. Entering STAT and the players name brings up the most basic SCORE
information. Including a skill type before the name will list their abilities of
that type. Valid skill types include: SKILL, SPELL, PRAYER, SONG, TRAP, PROPERTY,
"THIEF SKILL", LANGUAGE, CHANT, "COMMON SKILL", DISEASE, POISON. You can also get
special reports by entering one of the following before the name: EQUIPMENT,
COMBAT, INVENTORY, QUESTWINS, TATTOOS, TITLES, SCRIPTS, WORLDEXPLORED,
AREASEXPLORED, ROOMSEXPLORED, FACTIONS

STINKIFY


Skill : Stinkify
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : STINKIFY
Usage : STINKIFY [PLAYER NAME]
Example : stinkify gunther
From anywhere on the map, the player with this skill can cause the target to
become 1 level stinkier than they were before.

SYSMSGS

Command : SYSMSGS
Usage : SYSMSGS
Example : sysmsgs
Short(s):
A command to toggle debug mode, or extended messages.

TAKE

Command : TAKE
Usage : TAKE (ALL) [ITEM NAME] ([MOB NAME])
Example : take all dagger Horice
Example : take qp Horice
Example : take all Horice
Example : take pie Horice
Short(s):
This is A command that forces the specified mob or character to give item that
is in his or her inventory or equipment to you. If the item is inside a specified
container, it will be retreived from the container. The very special item name
"qp" may be used to take Quest Points from players using this command.

TASK

Command : TASK
Usage : TASK [MESSAGE]/REVIEW (STARTING MSG)
Example : task nothing is spelled right in this room!
Example : task review
Example : task review 7
Short(s):
This command can be used to submit builder tasks to the system. When the
REVIEW parameter is given, the tasks will be iterated through one at a time to give
the builder a chance to delete, comment on, or email each one. An optional
starting number can be given to REVIEW. The player must be either an Archon, or a
player with the TASKS security string to use this feature.

TATTOO

Tattoo's are intended to act as miscellaneous flags which players may obtain,
not unlike a quest point. These tattoo's can then be checked for as requirements
to enter rooms or exits, or to possess certain items.
An example would be like this: The completion of a specific quest occurs when
Gunther defeats the evil sorcerer Nunder and enters his inner chamber (where all
the treasure is hidden). Entering this inner chamber automatically grants Gunther
a Tatto called "NUNDERKILLER". Now, elsewhere in the realm is the second quest
where Nunder's apprentice has escaped with an ancient artifact and is up to no
good. However, to even ENTER the area where Nunder's apprentice is operating, the
system (via the Prop_ReqTattoo property on this other Area) requires that Gunther
already have the "NUNDERKILLER" Tattoo. If Gunther had not defeated Nunder and
obtained the "NUNDERKILLER" Tattoo, he would not be allowed into the realm of
Nunder's apprentice.

TICKTOCK

Command : TickTock
Usage : [NUM HOURS]/CLANTICK/[THREAD NAME]
Example : ticktock 10
Example : ticktock -4
Example : ticktock CLANTICK
Example : ticktock THPLAYERS0
Advance the time by specified number of hours, or cause one of the specified
maintenance threads to immediately go through a cycle. Use LIST REPORTS to get a
list of maintenance threads.

TRAILTO

Command : TRAILTO
Usage : TRAILTO (CONFIRM) (AREANAMES) (IGNOREROOMS=[ROOMS LIST]) [AREA NAME]
/[ROOM ID] /EVERYROOM /EVERYAREA
Example : trailto MyArea#394
Example : trailto everyarea
Example : trailto confirm areanames "ignorerooms=myarea#10,myarea#20" everyarea
Short(s):
This command shows the directions one must travel to get from their current
position to the destination given.

TRANSFER

Skill    : TRANSFER
Usage : TRANSFER [ALL/[MOB NAME]/"ITEMS X"] [ROOM ID/DESC/MOB/AREA]
Example : transfer all Midgaard#3001
Example : transfer all midgaard
Example : transfer all north
Example : transfer bob #3001
Example : transfer smurf hassan
Example : transfer bobbyjoe temple of mota
Example : transfer "item sword" north
Example : transfer "all item sword" north
Example : transfer "all items" north
Short(s) :
The targets and their followers will be transported, with very little fanfare,
to the destination listed. This ability is not magical in nature, and is thus not
affected by no-teleport areas and rooms. If all or item is used, it will refer
only to those in the same room as the admin. Otherwise, the admins present area
will be checked for all instances of the name and transfers all of them. If none
are found in the same area, the whole world will be checked.

TYPO

Command : TYPO
Usage : TYPO [MESSAGE]/REVIEW (STARTING MSG)
Example : typo nothing is spelled right in this room!
Example : typo review
Example : typo review 7
Short(s):
This command can be used to submit typos to the system. When the REVIEW
parameter is given, the typos will be iterated through one at a time to give the
archon a chance to delete, comment on, or email each one. An optional starting
number can be given to REVIEW.

UNLINK

Command : UNLINK
Usage : UNLINK [DIRECTION]
Example : unlink north
Short(s):
A command for the unlinking of rooms from each other.

UNLOAD

Command  : UNLOAD
Usage : UNLOAD HELP/CLASS/USER/FACTION/ALL/[RESOURCE NAME]
Example : unload help
Example : unload all
Example : unload armorsmith
Example : unload class Thief_Search
Example : unload user joe
Short(s) :
Unloads most resource text, cached users, class objects, and help files for
easy refreshing.

VFS

VFS Refers specifically to those files in the CMFS (CoffeeMud File System)
which are stored in your database, as opposed to directly in your local file system
(hard drive). VFS files are also mentioned to distinguish between local files,
although VFS files appear to CoffeeMud to be right along side, or even on top of,
your local files in your local directories. VFS can even include its own
directories which are not in your local file system. See HELP CMFS for more
information on this topic.

WHERE

Command : WHERE
Usage : WHERE (AREA) (ROOM/MOB/ITEM/MOBMASK/ITEMMASK) ([MASK])
Example : where
Example : where dog
Example : where area item knife
Example : where area mobmask -race +orc -levels +>=10
Example : where !
Short(s):
Without an argument, this command displays the names and locations of all
players online. With the ROOM, MOB, ITEM, or no argument, it will show all mobs,
rooms, and/or items the match the given key words in the mask, along with room
locations. With the MOBMASK, ITEMMASK arguments, it will show all mobs or items
that match the given Zapper Mask (See ZAPPERMASKS). The arguments may be qualified
with AREA to show only the Archons current area. The argument ! will show the
mundane/player version of the WHERE command.

WIZEMOTE

Command : WIZEMOTE
Usage : WIZEMOTE [ALL/HERE/ROOM NAME/AREA NAME/CLAN NAME/PLAYER NAME] message
Example : wizemote all You are having fun!
Example : wizemote here We are having fun!
Example : wizemote bob You are having more fun though.
Example : wizemote "Death Area" Something bad happened here!
Example : wizemote "Death Area#5320" Something bad happened there!
Example : wizemote "The Artisans" Something bad happened to your clan!
Short(s):
A command to send emote-type messages to everyone in an area, a room, a clan,
or to a specific player, or to everyone everywhere.

WIZINFO

Command : WIZINFO
Short(s):
The automatic information channel available to admins and area admins. Turned
off with NOWIZINFO

WIZINV

Skill    : WIZARD INVISIBILITY
Usage : WIZINV (OFF/NOCLOAK)
Example : wizinv
Example : wizinv nocloak
Short(s) :
Wizard Invisibility makes the invoker completely undetectable by other mobs or
players. In addition, the invoker will not hunger or thirst, may pass through any
terrain unhindered (except doors), and is invulnerable to sleep spells. Lastly,
unless the nocloak parameter is specified, the Archon is completely cloaked as per
the CLOAK command.

WRATH


Skill : Wrath
Domain : Archon
Use Cost : Movement (50)
Quality : Malicious
Targets : Creatures
Range : Touch - Range 1
Commands : WRATH
Usage : WRATH [PLAYER NAME] (!)
Example : wrath gunther
Example : wrath gunther !
From anywhere on the map, the player with this skill can immediately knock
another mob out of their shoes, depriving them of half of their hit points, mana,
and movement in the process. If the "!" flag is added, an announcement of the wrath
will also be made.

XML

Command  : 
Usage : By MUDGrinder only
Example :
Short(s) :
This command exist to fascillitate the transfer of information between
MUDGrinder and CoffeeMud. Do not use this command for any reason.

ZAPPERMASKS

+SYSOP (allow archons to bypass the rules)  
-SYSOP (always disallow archons)
+SUBOP (allow archons or area staff to bypass the rules)
-SUBOP (always disallow archons and area staff)
-PLAYER (disallow all players)
-MOB (disallow all mobs/npcs)
-CLASS (disallow all classes)
-CLASS +thief +mage +ranger (create exceptions)
-BASECLASS (disallow all base classes)
-BASECLASS +thief +mage +ranger (create exceptions)
-thief -mage -ranger (disallow only listed classes)
-RACE (disallow all races)
-RACE +elf +dwarf +human +half +gnome (create exceptions)
-elf -dwarf -human -half -gnome (disallow only listed races)
-RACECAT (disallow all racial categories)
-RACECAT +elf +insect +humanoid +canine +gnome (create exceptions)
+RACECAT (do not disallow all racial categories)
+RACECAT -elf -insect -humanoid -canine -gnome (create exceptions)
-ALIGNMENT (disallow all alignments)
-ALIGNMENT +evil +good +neutral (create exceptions)
-evil -good -neutral (disallow only listed alignments)
-GENDER (disallow all genders)
-GENDER +male +female +neuter (create exceptions)
-male -female -neuter (disallow only listed genders)
-FACTION (disallow all faction and values, even a lack of faction)
-FACTION +myfactionrange +faction.rangename (create exceptions)
-rangename -faction.rangename (disallow only faction range named)
-TATTOOS (disallow all tattoos, even a lack of a tattoo)
-TATTOOS +mytatto +thistattoo +anytattoo etc.. (create exceptions)
+TATTOOS (do not disallow any or no tattoos)
+TATTOOS -mytattoo -anytatto, etc.. (create exceptions)
-EXPERTISES (disallow all expertises, even a lack of a edus)
-EXPERTISES +myedu +thisedu +anyedu etc.. (create exceptions)
+EXPERTISES (do not disallow any or no expertises)
+EXPERTISES -myedu -anyedu, etc.. (create exceptions)
-SECURITY (disallow all security flags, even a lack of a security)
-SECURITY +cmdrooms +area cmditems etc.. (create exceptions)
+SECURITY (do not disallow any or no expertises)
+SECURITY -cmdrooms +area cmditems, etc.. (create exceptions)
-MOOD +grumpy +normal (disallow all except those with given moods)
+MOOD -grumpy -normal (disallow only those with subtracted moods)
-LEVEL (disallow all levels)
-LEVEL +=1 +>5 +>=7 +<13 +<=20 (create exceptions)
-=1 ->5 ->=7 -<13 -<=20 (disallow only listed levels range)
-NAMES (disallow everyone)
-NAMES +bob "+my name" etc.. (create name exceptions)
+NAMES (do not disallow anyone who has a name)
+NAMES -bob "-my name" etc.. (create name exceptions)
-CLAN (disallow anyone, even no clan)
-CLAN +Killers "+Holy Avengers" etc.. (create clan exceptions)
+CLAN (do not disallow anyone, even non clan people)
+CLAN -Killers "-Holy Avengers" etc.. (create clan exceptions)
-DEITY (disallow anyone, even no deity)
-DEITY +Apollo "+Grothon The Great" etc.. (create deity exceptions)
+DEITY (do not disallow anyone, even non deity worshipping people)
+DEITY -Apollo "-rothon The Great" etc.. (create deity exceptions)
-ANYCLASS (disallow all multi-class combinations)
-ANYCLASS +thief +mage +ranger (exceptions, allow any class)
+ANYCLASS (do not disallow all multi-class combinations)
+ANYCLASS -thief -mage -ranger (exceptions, disallow any class)
-STR X (disallow those with strength greater than X)
+STR X (disallow those with strength less than X)
-INT X (disallow those with intelligence greater than X)
+INT X (disallow those with intelligence less than X)
-WIS X (disallow those with wisdom greater than X)
+WIS X (disallow those with wisdom less than X)
-CON X (disallow those with constitution greater than X)
+CON X (disallow those with constitution less than X)
-CHA X (disallow those with charisma greater than X)
+CHA X (disallow those with charisma less than X)
-DEX X (disallow those with dexterity greater than X)
+DEX X (disallow those with dexterity less than X)
+-ADJSTR...ADJCON (Same as above, but uses current values)
-GROUPSIZE X (disallow those in groups larger than X)
+GROUPSIZE X (disallow those in groups smaller than X)
-AREA (disallow in all areas)
-AREA "+my areaname" etc.. (create exceptions)
+AREA (do not disallow any areas)
+AREA "-my areaname" etc.. (create exceptions)
-HOME (disallow in all home/beacon areas)
-HOME "+my home/beacon areaname" etc.. (create exceptions)
+HOME (do not disallow any home/beacon areas)
+HOME "-my home/beacon areaname" etc.. (create exceptions)
-ITEM "+item name" etc... (disallow only those with an item name)
-WORN "+item name" etc... (disallow only those wearing item name)
-EFFECTS (disallow anyone, even no effects)
-EFFECTS +Sleep "+Wood Chopping" etc.. (create name exceptions)
+EFFECTS (do not disallow anyone, even non effected people)
+EFFECTS -Sleep "-Wood Chopping" etc.. (create name exceptions)
-SKILLS (disallow anyone, even those with no skill)
-SKILLS +Spell_Sleep(75) etc.. (create exceptions with proficiency)
+SKILLS (do not disallow anyone, even non skilled people)
+SKILLS -Spell_Sleep(75) etc.. (create exceptions with proficiency)
-MATERIAL "+WOODEN" etc.. (disallow only items of added materials)
+MATERIAL "-WOODEN" etc.. (Do not disallow items of -materials)
-RESOURCES "+OAK" etc.. (disallow only items of added resources)
+RESOURCES "-OAK" etc.. (Do not disallow items of -resources)
-JAVACLASS "+GENMOB" etc.. (disallow only objects of +java class)
+JAVACLASS "-GENITEM" etc.. (Do not disallow objs of -classes)
-ABILITY X (disallow those with magical ability less than X)
+ABILITY X (disallow those with magical ability greater than X)
-IF <CONDITION> (disallow, unless they meet Scriptable conditions)
+IF <CONDITION> (never disallow anyone who meets Scriptable cond)
-VALUE X (disallow those with value or money less than X)
+VALUE X (disallow those with value or money greater than X)
-WEIGHT X (disallow those weighing less than X)
+WEIGHT X (disallow those weighing more than X)
-ARMOR X (disallow those with armor bonus less than X)
+ARMOR X (disallow those with armor bonus more than X)
-DAMAGE X (disallow those with damage bonus less than X)
+DAMAGE X (disallow those with damage bonus more than X)
-ATTACK X (disallow those with attack bonus less than X)
+ATTACK X (disallow those with attack bonus more than X)
-WORNON "+TORSO" etc.. (disallow only items wearable on +locations)
+WORNON "-NECK" etc.. (Do not disallow items wearable on -locations)
-DISPOSITION "+ISHIDDEN" etc.. (disallow only with +dispositions)
+DISPOSITION "-ISHIDDEN" etc.. (Do not disallow only with sub disp)
-SENSES "+CANSEEDARK" etc.. (disallow only those with +senses)
+SENSES "-CANSEEDARK" etc.. (Do not disallow those with -senses)
-HOUR +X (disallow always, unless the hour is X)
+HOUR -X (disallow those only when the hour is X)
-SEASON +FALL (disallow those only when season is FALL)
+SEASON -SPRING (disallow those whenever the season is SPRING)
-MONTH +X (disallow those only when month number is X)
+MONTH -X (disallow those whenever the month number is X)
-DAY +X (disallow those only when day number is X)
+DAY -X (disallow those whenever the day number is X)
-WEATHER +DROUGHT (disallow those only when weather is DROUGHT)
+WEATHER -BLIZZARD (disallow those whenever the weather is BLIZZARD)
-QUESTWIN "+MY QUEST" (disallow those who have not my MY QUEST)
+QUESTWIN "-MY QUEST" (disallow those who have won MY QUEST)
-SKILLFLAG (disallow anyone, even those with no skills)
-SKILLFLAG +ENCHANTMENT etc.. (create exceptions to -skillflag)
+SKILLFLAG (do not disallow anyone, even non skilled people)
+SKILLFLAG -ENCHANTMENT etc.. (create exceptions to +skillflag)
-CHANCE 50 (disallow the given % of the time)

as

Command : AS
Usage : AS [PLAYERNAME/MOBNAME] (HERE) [COMMAND]
Example : as "bob" inventory
Example : as bob here drop all
Example : as bob cast fireball monster
Short(s):
A command that allows one to issue other commands as if they were another
player or mob. This is the best way to manage a players inventory or bank accounts
from the command line. The optional "here" parameter should follow the name if the
command is to be issued with the player in the same room as the archon.