/
com/planet_ink/coffee_mud/Abilities/Common/
com/planet_ink/coffee_mud/Abilities/Diseases/
com/planet_ink/coffee_mud/Abilities/Druid/
com/planet_ink/coffee_mud/Abilities/Fighter/
com/planet_ink/coffee_mud/Abilities/Languages/
com/planet_ink/coffee_mud/Abilities/Misc/
com/planet_ink/coffee_mud/Abilities/Prayers/
com/planet_ink/coffee_mud/Abilities/Properties/
com/planet_ink/coffee_mud/Abilities/Skills/
com/planet_ink/coffee_mud/Abilities/Songs/
com/planet_ink/coffee_mud/Abilities/Specializations/
com/planet_ink/coffee_mud/Abilities/Spells/
com/planet_ink/coffee_mud/Abilities/Thief/
com/planet_ink/coffee_mud/Abilities/Traps/
com/planet_ink/coffee_mud/Behaviors/
com/planet_ink/coffee_mud/CharClasses/
com/planet_ink/coffee_mud/CharClasses/interfaces/
com/planet_ink/coffee_mud/Commands/
com/planet_ink/coffee_mud/Commands/interfaces/
com/planet_ink/coffee_mud/Common/
com/planet_ink/coffee_mud/Common/interfaces/
com/planet_ink/coffee_mud/Exits/interfaces/
com/planet_ink/coffee_mud/Items/Armor/
com/planet_ink/coffee_mud/Items/Basic/
com/planet_ink/coffee_mud/Items/BasicTech/
com/planet_ink/coffee_mud/Items/CompTech/
com/planet_ink/coffee_mud/Items/MiscMagic/
com/planet_ink/coffee_mud/Items/Weapons/
com/planet_ink/coffee_mud/Items/interfaces/
com/planet_ink/coffee_mud/Libraries/
com/planet_ink/coffee_mud/Libraries/interfaces/
com/planet_ink/coffee_mud/Locales/
com/planet_ink/coffee_mud/MOBS/
com/planet_ink/coffee_mud/Races/
com/planet_ink/coffee_mud/Races/interfaces/
com/planet_ink/coffee_mud/WebMacros/
com/planet_ink/coffee_mud/WebMacros/interfaces/
com/planet_ink/coffee_mud/core/
com/planet_ink/coffee_mud/core/collections/
com/planet_ink/coffee_mud/core/interfaces/
com/planet_ink/coffee_mud/core/intermud/
com/planet_ink/coffee_mud/core/intermud/i3/
com/planet_ink/coffee_web/server/
com/planet_ink/siplet/applet/
lib/
resources/factions/
resources/fakedb/
resources/progs/autoplayer/
resources/quests/holidays/
web/
web/admin.templates/
web/admin/grinder/
web/admin/images/
web/clan.templates/
web/pub.templates/
web/pub/images/mxp/
web/pub/sounds/
web/pub/textedit/
AMPUTATION=\
Ability    : Amputation\n\r\
Parameters : Removed Limb codes\n\r\
Example    : Don't worry about it\n\r\
Description: \n\r\
This ability governs amputated limbs.

BROKENLIMBS=\
Ability    : BrokenLimbs\n\r\
Parameters : Broken Limb codes\n\r\
Example    : Don't worry about it\n\r\
Description: \n\r\
This ability governs broken limbs.

BLEEDING=\
Ability    : Bleeding\n\r\
Parameters : \n\r\
Example    : \n\r\
Description: \n\r\
This ability governs bleeding players.

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

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

COLORS=COLORLIST
COLORLIST=\
Below are a list of the standard color codes for CoffeeMud.\n\r\
\n\r\
^N^^N Normal ^.^N\n\r\
^!^^! Bold ^.^N\n\r\
^H^^H Highlight ^.^N\n\r\
^_^^_ Underline ^.^N\n\r\
^*^^* Blink ^.^N\n\r\
^/^^/ Italics ^.^N\n\r\
^^. Reset (turns off reverse) ^.^N\n\r\
^^^^ Generates an untranslated "^^" character ^.^N\n\r\
^N^^? Restores previous color ^.^N\n\r\
^f^^f You-Fight ^.^N\n\r\
^e^^e Fight-You ^.^N\n\r\
^F^^F Fight ^.^N\n\r\
^S^^S Spell ^.^N\n\r\
^E^^E Emote ^.^N\n\r\
^T^^T Talk ^.^N\n\r\
^Q^^Q Channel Background ^.^N\n\r\
^q^^q Channel Foreground ^.^N\n\r\
^x^^x Important message 1 ^.^N\n\r\
^X^^X Important message 2 ^.^N\n\r\
^Z^^Z Important message 3 ^.^N\n\r\
^O^^O Room Title ^.^N\n\r\
^L^^L Room Description ^.^N\n\r\
^D^^D Direction ^.^N\n\r\
^d^^d Door ^.^N\n\r\
^I^^I Item ^.^N\n\r\
^M^^M MOB ^.^N\n\r\
^w^^w White ^.^N\n\r\
^g^^g Green ^.^N\n\r\
^b^^b Blue ^.^N\n\r\
^r^^r Red ^.^N\n\r\
^y^^y Yellow ^.^N\n\r\
^c^^c Cyan ^.^N\n\r\
^p^^p Purple ^.^N\n\r\
^W^^W Dark White ^.^N\n\r\
^G^^G Dark Green ^.^N\n\r\
^B^^B Dark Blue ^.^N\n\r\
^R^^R Dark Red ^.^N\n\r\
^Y^^Y Dark Yellow ^.^N\n\r\
^C^^C Dark Cyan ^.^N\n\r\
^P^^P Dark Purple^.^N\n\r\
^U^^U Unexplored Direction ^.^N\n\r\
^u^^u Unexplored Door ^.^N\n\r\
^b^~w^^~w White Background ^.^N\n\r\
^w^~g^^~g Green Background ^.^N\n\r\
^w^~b^^~b Blue Background ^.^N\n\r\
^w^~r^^~r Red Background ^.^N\n\r\
^b^~y^^~y Yellow Background ^.^N\n\r\
^b^~c^^~c Cyan Background ^.^N\n\r\
^w^~p^^~p Purple Background^.^N\n\r\
^^#rgb 256 foreground (r=red, g=green, b=blue: 0 to 5 only)^.^N\n\r\
^^##xx 256 foreground (xx = hex number from 00 - ff)^.^N\n\r\
^^|rgb 256 color background (r=red, g=green, b=blue: 0 to 5 only)^.^N\n\r\
^^||xx 256 color background (xx = hex number from 00 - ff)^.^N\n\r\
\n\r* Note: when using background colors, the foreground must always come first.

COLORCODES=The following codes are available for channels definitions:\n\r\
^wWHITE, ^gLIGHTGREEN, ^bLIGHTBLUE, ^rLIGHTRED, ^yYELLOW, ^cLIGHTCYAN, ^pLIGHTPURPLE, ^WGREY, \
^GGREEN, ^BBLUE, ^RRED, ^YBROWN, ^CCYAN, ^PPURPLE, ^kDARKGREY, ^NBLACK, NONE, BOLD, UNDERLINE, \
BLINK, ITALICS, ^b^~wBGWHITE, ^w^~gBGGREEN, ^w^~bBGBLUE, ^w^~rBGRED, ^B^~yBGYELLOW, ^k^~cBGCYAN, \
^w^~pBGPURPLE, ^NBGBLACK, BGDEFAULT

ARCHON_CRECORD=CRECORD
CRECORD=<ABILITY>\
Usage    : CRECORD LIST/START [MINS]/STOP/MINLEVEL [LEVEL]/...\n\r\
Usage    : .../ADD [PLAYER]/DEL [PLAYER]\n\r\
Example  : crecord start 15\n\r\
This tool automatically creates a combat log for a player when \
they gain a level, if they are above a minimum level, and if \
they gained the current level within a minimum number of minutes. \
It will continue to log until the next level is gained.  \
To activate the tool, enter CRECORD START [number of minutes]. \
Players will then start being recorded automatically.  Combat \
recording can also be managed manually using ADD/DEL.  The \
default minimum level is 10, but can be modified with the MINLEVEL \
command.  Logs are kept in the dbfs directory '::/resources/clogs/'.

ANTIDOTE=\
Ability    : ANTIDOTE\n\r\
Parameters : empty, or poison keyword\n\r\
Example    : \n\r\
Example    : bee sting\n\r\
Description: \n\r\
This skill removes the affects of a poison.  If no parameter is given, it removes the \
affects of all poisons.  Otherwise, it removes the affects only of the poison represented \
by the parameters.  Like a Poison, an Antidote, if added to a drink, food, or armor, will \
impart its benefits when drank, eaten, or worn respectively.

DISEASECURE=\
Ability    : DISEASECURE\n\r\
Parameters : empty, or disease keyword\n\r\
Example    : \n\r\
Example    : cold\n\r\
Description: \n\r\
This skill removes the affects of a disease.  If no parameter is given, it removes the \
affects of all diseases.  Otherwise, it removes the affects only of the disease represented \
by the parameters.  Like a Disease, the DiseaseCute, if added to a drink, food, or armor, will \
impart its benefits when drank, eaten, or worn respectively.

DUELER=\
Ability    : Dueler\n\r\
Parameters : \n\r\
Example    : \n\r\
Description: \n\r\
This ability governs two dueling players.

WANDERHOMELATER=\
Ability    : WanderHomeLater\n\r\
Parameters : (AREAOK=true/false) (IGNOREPCS=true/false) (ONCE=true/false)\n\r\
Parameters : (MINTICKS=[TICKS]) (MAXTICKS=[TICKS]) (IGNOREFOLLOW=true/false)\n\r\
Parameters : (RESPECTFOLLOW=true/false)\n\r\
Example    : once=false areaok=true minticks=10 maxticks=20\n\r\
Description: \n\r\
By default, as soon as a mob with this ability finds himself able to move, and no longer in combat, \
and not following anyone, and the room clear of PCs, he will wander back to his start room until he \
finds himself, once again, far from home.\n\r\
\n\r\
The default behavior can be modified with parameters.  AREAOK will allow the mob to wander, so long as \
he stays in his home area, only returning home if he finds himself outside his area.  IGNOREPCS will \
allow the mob to wander home even if other PCs are in the room watching him.  IGNOREFOLLOW will \
allow the mob to wander home even if he is following someone, magically or otherwise.  RESPECTFOLLOW will \
immediately negate this property if the mob is ever following anyone. ONCE will \
make this property work only one time, deleting itself after the mob has gone home. MINTICKS and MAXTICKS \
set a limit on how long the mob can be away from home before considering a return trip; by default, MINTICKS \
and MAXTICKS are 0, meaning the mob is constantly trying to get home.

COMBATSLEEP=\
Ability    : COMBATSLEEP\n\r\
Parameters : \n\r\
Example    : \n\r\
Example    : \n\r\
Description: \n\r\
This skill causes the target to go to sleep, if during combat.  It will end combat if successful.

COMMANDJOURNALS=COMMAND_JOURNALS
COMMAND_JOURNALS=\
Usage      : [JOURNAL_NAME] (REVIEW/TRANSFER) [MSG NUMBER]\n\r\
Example    : list ideas\n\r\
Example    : idea review 10\n\r\
Example    : idea transfer 10 bug\n\r\
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].

ARCHON_MULTIWATCH=MULTIWATCH
MULTIWATCH=\
Ability    : Multiwatch\n\r\
Usage      : MULTIWATCH (AUTO/STOP/ADD [NAME] ... [NAME])\n\r\
Example    : multiwatch add playerone playertwo\n\r\
Example    : multiwatch auto\n\r\
Example    : multiwatch stop\n\r\
Description: \n\r\
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:\n\r\
SYNC - The number of commands entered by more than one member of an IP group \
within a single 4 second period. \n\r\
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.\n\r\
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.\n\r\
CMD - The number of commands entered which are different than the previous \
command entered.\n\r\
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.

ARCHON_WRATH=WRATH
WRATH=<ABILITY>\
Usage    : WRATH [PLAYER NAME] (!)\n\r\
Example  : wrath gunther\n\r\
Example  : wrath gunther !\n\r\
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.

ARCHON_HUSH=HUSH
HUSH=<ABILITY>\
Usage    : HUSH [PLAYER NAME]\n\r\
Example  : hush gunther\n\r\
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.

ARCHON_FREEZE=FREEZE
FREEZE=<ABILITY>\
Usage    : FREEZE [PLAYER NAME]\n\r\
Example  : freeze gunther\n\r\
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.

ARCHON_MARKOOC=MARKOOC
MARK_OOC=MARKOOC
MARKOOC=<ABILITY>\
Usage    : MARKOOC [PLAYER NAME]\n\r\
Example  : MARKOOC gunther\n\r\
From anywhere on the map, the player with this skill can render the target mob/player \
unable to receive any further RolePlay experience.  Use this skill again \
on the same player to release them.

ARCHON_PEACEFULLY=PEACEFULLY
PEACEFULLY=<ABILITY>\
Usage    : PEACEFULLY [COMMAND]\n\r\
Example  : peacefully kill bob\n\r\
Allows the player to issue a command that would start combat, but then immediately end \
combat before things get out of control.  

ARCHON_RECORD=RECORD
RECORD=<ABILITY>\
Usage    : RECORD [PLAYER NAME]\n\r\
Example  : record gunther\n\r\
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.

ARCHON_STINKIFY=STINKIFY
STINKIFY=<ABILITY>\
Usage    : STINKIFY [PLAYER NAME]\n\r\
Example  : stinkify gunther\n\r\
From anywhere on the map, the player with this skill can cause the target to become 1 level \
stinkier than they were before.  

ARCHON_INFECT=INFECT
INFECT=<ABILITY>\
Usage    : INFECT [PLAYER/MOB NAME] [DISEASE NAME]\n\r\
Example  : infect gunther flu\n\r\
The player with this skill can cause the target to become infected \
with a given disease.

ARCHON_INJURE=INJURE
INJURE=<ABILITY>\
Usage    : INJURE [PLAYER NAME] [body part]\n\r\
Example  : injure gunther left hand\n\r\
From anywhere on the map, the player with this skill can cause the target to have one of their \
body parts instantly injured by 20%.

ARCHON_ACCUSE=ACCUSE
ACCUSE=<ABILITY>\
Usage    : ACCUSE [PLAYER NAME] [crime description] ([SENTENCE NUM]) (!)\n\r\
Example  : accuse gunther making me mad\n\r\
Example  : accuse joe of being joe 7 !\n\r\
From anywhere on the map, the player with this skill can cause the target player to be accused \
of a crime in either the area they are currently in, their starting area, or the area the \
accuser is in, depending on what's available when the skill is used.  This will cause the \
law in that area to go after the target player.  The default sentence is prison time, but this \
can be lowered or raised by specifying a number from 0 (warning) to 10 (death) at the end.  An \
exclamation mark may be optionally also added to do a worldwide announcement.  

ARCHON_METACRAFT=METACRAFT
METACRAFT=<ABILITY>\
Usage    : METACRAFT (EVERY) [ITEM NAME] ([MATERIAL NAME]) (TO SELF/HERE/FILE [FILENAME])\n\r\
Usage    : METACRAFT ALL [SKILL NAME] ([MATERIAL NAME]) (TO SELF/HERE/FILE [FILENAME])\n\r\
Example  : metacraft wagon oak\n\r\
Example  : metacraft wagon\n\r\
Example  : metacraft "every sword" bronze\n\r\
Example  : metacraft "every sword"\n\r\
Example  : metacraft "every sword" iron to file /items.cmare\n\r\
Example  : metacraft "all carpentry"\n\r\
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.

MPOSSESS=ARCHON_MATRIX_POSSESS
ARCHON_MATRIX_POSSESS=<ABILITY>\
Usage    : MPOSSESS [PLAYER NAME]\n\r\
Example  : mpossess bob\n\r\
This skill will allow you automatically possess a new mob in the same room as the \
target player whenever the target moves to a new room.  Just like possess, use QUIT \
to shut it down.

ARCHON_BANISH=BANISH
BANISH=<ABILITY>\
Usage    : BANISH [PLAYER NAME] ([MAP ROOM]) (RL TIME)\n\r\
Example  : banish gunther\n\r\
Example  : banish gunther Midgaard#3001\n\r\
Example  : banish gunther 3 hours\n\r\
Example  : banish gunther 14 years\n\r\
From anywhere on the map, the player with this skill can send the target mob/player \
to a prison from which they can not escape magically.  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.  It is up to the \
Archon to make sure there are no mundane ways out of the prison; Banish will take \
care of the magical ways of escape.

BURNING=\
Ability    : Burning\n\r\
Parameters : (UNEXTINGUISHABLE) (PERSISTFLAGS) (DESTROY) (NODESTROY)\n\r\
Parameters : (NOSPREAD)\n\r\
Example    : \n\r\
Description: \n\r\
This ability governs burning items.  UNEXTINGUISHABLE makes it unable to \
be put out by weather or mundane means.  PERSISTFLAGS means that, when it \
spreads, its flags go with it.  DESTROY means it consumes the host.  \
NODESTROY means it never consumes the host.  NOSPREAD means the fire it \
creates cannot be spread in a room.

FALLING=\
Ability    : Falling\n\r\
Parameters : REVERSED/NORMAL\n\r\
Example    : normal\n\r\
Description: \n\r\
This affect governs falling items and mobs, in either direction (up or down). \
Normal for up, reversed for down.

SINKING=\
Ability    : Sinking\n\r\
Parameters : REVERSED/NORMAL\n\r\
Example    : normal\n\r\
Description: \n\r\
This affect governs sinking items and mobs, in either direction (up or down). \
Normal for up, reversed for down.

IMMUNITIES=\
Ability    : Immunities\n\r\
Parameters : [LIST OF IMMUNITIES]\n\r\
Example    : FIRE GAS JUSTICE\n\r\
Description: \n\r\
Creates immunities to certain attacks in a mob.  Immunities include: ALL \
ACID, WATER, COLD, DEATH, DISEASE, ELECTRIC, FIRE, GAS, JUSTICE, MIND, \
PARALYZE, POISON, UNDEAD, LEGAL.  List is space delimited. See also Prop_WeaponImmunity.

EXTRADATA=\
Ability    : ExtraData\n\r\
Parameters : [XML Document]\n\r\
Example    : <VARNAME>my value</VARNAME>\n\r\
Description: \n\r\
An internal use property for attaching random keypair data to any Modifiable and Generic object.

MQL=\
MQL Stands for MUD Query Language.  It's purpose is to allow the Archon, or a random quest xml document, \
to select existing objects in the game, or the properties of existing objects.  \n\r\
\n\r\
The structure of MQL is similar to SQL in that all MQL statements are of this structure:\n\r\
\n\r\
SELECT: [property, property, ..] FROM [object set]  WHERE [object comparison, object comparison]\n\r\
* note the colon : after the word SELECT above.\n\r\
\n\r\
The SELECT clause defines the properties you wish to be returned from the MQL statement.\n\r\
The FROM clause defines the set of objects that you might want to return the properties of.\n\r\
The WHERE clause defines the conditions under which any member of the set in the FROM clause may be included in the final results.\n\r\
\n\r\
A FROM clause can be a simple world set term, such as one of the following:\n\r\
\n\r\
    * A CMFS file path to a CMARE file, such as ::/resources/map/plains.cmare\n\r\
    * AREAS to use the set of all world areas\n\r\
    * ROOMS to use the set of all existing world rooms\n\r\
    * MOBS to use the set of all existing world mobs\n\r\
    * ITEMS to use the set of all existing world items\n\r\
    * In case where a qualifying object is implied, AREA can be used to refer to that specific area.\n\r\
    * Another SELECT: statement in parenthesis, such as: SELECT: name from (SELECT * from AREA)\n\r\
\n\r\
The FROM clause can also include narrowing suffixes.  A narrowing suffix comes after the simple term, and is \
separated from it by a backslash \\.   For example, if your from clause looks like SELECT * FROM AREAS\\ROOM  , \
then the ROOM portion is the narrowing suffix of the AREAS term.  You can also continue adding more narrowing \
suffixes as needed.  For example: SELECT * FROM AREAS\\MOBS\\EQUIPMENT  .  Each suffix narrows or alters the term \
immediate before it, and the entire FROM clause will end up reflecting the type of object described by the final \
term, whether it be simple, or a narrowing term.\n\r\
\n\r\
The following are useful narrowing terms:\n\r\
\n\r\
    * AREAS to use the unique set of areas in which the prior term is located\n\r\
    * ROOMS to use the unique set of rooms in which the prior term is located, or which the prior term contains\n\r\
    * MOBS, MOB to use the set of all mobs contained in the prior term\n\r\
    * ITEMS, ITEM to use the set of all items contained in the prior term\n\r\
    * OWNER to use the set of all item owners of the prior term, if it was items\n\r\
    * EQUIPMENT to use the set of all  worn items of the prior term\n\r\
\n\r\
Be careful when using narrowing terms to make sure they make sense for the term prior to them.  For example, if \
importing mobs from a cmare file, AREAS will not likely resolve to anything, since the mobs aren't in the world yet.\n\r\
\n\r\
The SELECT: clause can include one or more comma-delimited properties of  the objects in the from clause, or it can \
be an asterisk *, or a period ., to refer simply to the from objects themselves.  It can also be a string or numeric \
literal, or an XML tag when embedding MQL in a random quest document.    Different kinds of objects have different \
kinds of properties, so it is tricky to define precisely what a legal and illegal object property might be.  Choosing \
incorrectly will usually just result in an empty string "".\n\r\
\n\r\
An example of a legal property might be the property CLASS, since it applies to everything from areas and rooms, to \
mobs, and items.  NAME is also a property that almost all objects have.  Beyond this. using the GMODIFY command might \
be the simplest way to get a list of valid properties for a specific type of world object, or objects imported from cmare files.\n\r\
\n\r\
As mentioned previously, SELECT: clause properties can be separated by commas in order to select more than one.  For \
example: SELECT: class, name FROM areas\\mobs would show the class id and name of every mob in your game.\n\r\
\n\r\
SELECT: clauses can also include an AS qualifier for each property selected.  This has only the effect of \
changing the apparent name of the property for other parts of the system.  For an example using the WHERE \
command to issue MQL: WHERE AREA SELECT: class as classid, name as mob_name FROM areas\\mobs would show the \
same results as the previous example statement, but with different name tags for the class and name properties.  \
This might be important when using an embedded SELECT: statement as your FROM clause, since you can only select \
properties that the embedded clause has returned, by the names they were given.\n\r\
\n\r\
SELECT: clauses, similar to FROM clauses above, can include narrowing terms.  Like FROM clauses, these narrowing terms are separated by backslashes \\.   \
SELECT clauses, at the moment, only support one narrowing term: COUNT.  The purpose of the COUNT term is to report the number of times the value of \
the previous terms appears in the rest of the FROM: clause.  For example, suppose you wanted to know the number of times each mob name is used, \
to do that, you might enter SELECT: name, name\\count FROM areas\\mobs\n\r\
\n\r\
Lastly, SELECT: clause can contain aggregating prefixes before a property term, which will transform the \
final result set in some way by aggregating the rows according to the prefix.  Prefixes, like suffixes, are \
separated from the property term by a backslash \\.  The value aggregating prefixes are:\n\r\
\n\r\
    * MEDIAN to return only the median value of all the property terms in the existing result set\n\r\
    * MEAN to return the mean value of all the property terms in the existing result set\n\r\
    * COUNT to return the count of the number of  items in the result set\n\r\
    * UNIQUE to include only one row where the property is of any given value\n\r\
\n\r\
For example, to quickly count the mobs in your game, you might enter SELECT: COUNT\\* from AREAS\\MOBS\n\r\
\n\r\
The WHERE clause contains one or more conditions, which you can further compare using connectors like AND, \
OR, or parenthesis to group conditions together.  Each condition consists of  two terms separated by a \
comparator.  Value comparitors include = (equal to), <> (not equal to), > (greater than), < (less than), \
>= (greater or equal), <= (less or equal), IN (in a set or object group, or a substring of), or LIKE \
(matching a ZAPPERMASK).\n\r\
\n\r\
A condition consists of two property terms, similar to those described in the SELECT: clause above, \
except that condition terms can not use aggregating prefixes.  Narrowing suffixes, however, are \
permitted.  For example NAME = 'Bob' is checking whether the NAME property of an item in the FROM \
clause is equal to the string literal "BOB".  If it is, when that condition is true.  Putting it \
together then, to show the mobs in your game whose names are EXACTLY "BOB", you might do SELECT: * \
FROM areas\\mobs WHERE name="BOB". This works because NAME is a property of every mob in the AREAS\\MOBS \
from set, and can be compared with the word "BOB".\n\r\
\n\r\
Condition statements are grouped together into conditions using AND or OR.  For example, changing the \
above condition to WHERE name="BOB" OR name="JOE" would expand the number of possible results by one name.



ITEMREJUV=\
Ability    : ItemRejuv\n\r\
Parameters : Don't worry about it\n\r\
Description: \n\r\
This ability governs rejuvenating items

PARALYSIS=\
Ability    : Paralysis\n\r\
Parameters : \n\r\
Example    : \n\r\
Description: \n\r\
The ability to paralyze.

PRESENCEREACTION=\
Ability    : PresenceReaction\n\r\
Parameters : =[MOB/PLAYERNAME]\n\r\
Parameters : (=[MOB/PLAYERNAME]~~)([COMMAND]=[PARMS]~~)[...]\n\r\
Parameters : +[COMMAND]=[PARMS]\n\r\
Example    : =warriorbob~~mood=happy~~aggressive=~~mudchat=elf~~\n\r\
Description: \n\r\
This temporary property governs temporary reactions in the form of behaviors, \
properties, standard commands, or other effects.  These reactions \
persist only so long as the mob/player the property was invoked against \
remains in the same room as the invoker.  Intended as an tool for the faction \
system, this property can be invoked as a skill against the target, or used in \
other ways.  The parameters are a ~~ delimited list of ability, behavior, or \
command names followed by an = sign and any parameters.  If the ability name \
is empty, then it is assumed you are designating the mob or player being \
reacted to.  As it is required to designate a mob being reacted to, this must \
be eventually set either by parameters, or through invoking.\n\r\
\n\r\
This affect automatically removes itself and its subordinate effects whenever \
the reacted to player/mob is not in the same room as the invoking mob.

REGENERATION=\
Ability    : Regeneration\n\r\
Parameters : Classes of weapons which do permanent damage.\n\r\
Example    : +MAGIC +SILVER +LEVEL5\n\r\
Example    : +BASHING +PIERCING\n\r\
Description: \n\r\
Allows the mob to regenerate a few hit points, mana, and movement, \
even during combat.  Hit point damage will remain permanent (not \
regenerate) if the damage is done by a weapon type specified in the \
parameters.  Valid weapon types include the standard weapon types \
(bashing, piercing, slashing, gassing, bursting, etc), magic to refer \
to spells and magical weapons, weapon materials (silver, cotton, etc), \
or a minimum weapon level specifier as shown above.

SINKING=\
Ability    : Sinking\n\r\
Parameters : \n\r\
Example    : \n\r\
Description: \n\r\
This affect governs sinking items and mobs, in either direction (up or down).

WEAKPARALYSIS=\
Ability    : WeakParalysis\n\r\
Parameters : \n\r\
Example    : \n\r\
Description: \n\r\
An attack which, if successful, paralyzes the victim for a few short ticks.

SKILL_ALLBREATHING=<ABILITY>\
Params   : \n\r\
Example  : \n\r\
Desc.    : \n\r\
Allows the mob to breath in any conditions or environments.  Great for golems \
and other non-breathing creatures. 

SKILL_EXPLOSIVE=<ABILITY>\
Params   : \n\r\
Example  : \n\r\
Desc.    : \n\r\
A high-damage skill.

SKILL_TRACK=<ABILITY>\
Parames  : mob name, or rooms separated by ;\n\r\
Example  : Hassan is here\n\r\
Example  : Midgaard#3001;Midgaard#3002;Midgaard#3003\n\r\
Descrip. : \n\r\
Allows the mob track to a particular mob or room.  Unlike the ranger \
track, this skill will force mobs to automatically unlock, open, close \
and lock doors that obstruct them.

SKILL_RESISTANCE=<ABILITY>\
Params   : see Prop_HaveResister\n\r\
Example  : see Prop_HaveResister\n\r\
Desc.    : \n\r\
Gives the mob skill-based resistances and immunities. 

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

SHAME=ARCHON_SHAME
ARCHON_SHAME=<ABILITY>\
Usage    : SHAME [PLAYER NAME] (RL TIME)\n\r\
Example  : shame gunther\n\r\
Example  : shame gunther 3 hours\n\r\
From anywhere on the map, the player with this skill can shame the target mob/player \
making them unable to effectively interact with shopkeepers or to be spoken to or \
about.

TRUCE=\
Ability    : Truce\n\r\
Parameters : Empty, or Name of other party\n\r\
Example    : DECLARETRUCE bob\n\r\
Description: \n\r\
This affect, when applied, prevents combat between the affected mob and one other for a period. \
The period is very brief with automatically applied (from wands, etc), and longer otherwise. \n\r\
\n\r\
When applied as a permanent property with a Name parameter, the truce will exist with mobs of that \
name forever.  When applied as a permanent property with No parameter, the truce will begin the moment \
the affected mob kills any mob, and persist for 30 seconds.

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. 

VFS_FILE=VFS
LOCAL_FILE=CMFS
FILE_SYSTEM=CMFS
FS=CMFS
PVP=PLAYERKILL
PLAYERVERSUSPLAYER=PLAYERKILL

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.

CMFS=CoffeeMud File System\n\r\
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.\n\r\
\n\r\
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. \n\r\
\n\r\
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!\n\r\
\n\r\
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.\n\r\
\n\r\
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.\n\r\
\n\r\
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.\n\r\
\n\r\
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.

MSG_TYPES=MESSAGE_TYPES
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:\n\r\
\n\r\
"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", \
"HUH", "LIFE","BID","CLANEVENT","UNLOAD","DUELCHALLENGE","LEGALWARRANT".\n\r\
\n\r\
And here are some general message code types that may also be used:\n\r\
"TOUCH","MOVE","EYES","MOUTH","SOUND","GENERAL","MAGIC","DELICATE","MALICIOUS","CHANNEL","OPTIMIZE","INTERMSG"

ZAPPERMASKS=<ZAP=disallow>

MATH_EXPRESSION=MATH_FORMULA
EXPRESSION=MATH_FORMULA
FORMULA=MATH_FORMULA
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.\n\r\
\n\r\
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.\n\r\
\n\r\
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.