/
area/ril/
help/olc/
src/
src/current_project/
src/docs/
src/documents/
#HELPFILEDATA
colourcode `
security 7
END

#HELPENTRIES
keyword DAWNFTP MUDFTP~
title DAWNFTP: What it is and how to get it~
level 92
helpflags mud_should_customize wordwrapped~
category undefined~
text The DawnFTP client allows you to edit outside of the mud's default 
description editor, and on your personal computer.  Once set up, you can 
edit anything from your description to notes to anything done on OLC, in the 
Notepad program by default, or you can set up to edit your favorite word 
program.`+
`+
To set up DawnFTP, You must download first the dawnftp client... you can 
download a windows version of the client for free from 
`#`B`_http://www.dawnoftime.org/dawnftp`x`^`+
`+
Instructions how to setup dawnftp are at the website address quoted above.`+
`+
Some notes on DAWNFTP:`+
Use ``+ for a new line instead of ``1... as ``+ allows easier remote editing.`+
`+
As always, if you are having problems getting the DawnFTP to work properly, 
contact the support council for help.`+
`+
Please note that you may have problems logging in if you have capital 
letters in your password.`+
`+
DawnFtp is based on Mudftp v2 written by Oliver Jowett <icecube@ihug.co.nz>.`+
`+
The Dawn of Time codebase also supports MUDFTP connections.  If mudftp 
support is enabled you can find out the port supporting mudftp connections 
with the gamesettings command.`+
`+

~
END

keyword ZERO-TOLERANCE~
level 92
category undefined~
text What is Zero-Tolerance ?
 
Ban now questions later.
~
END

keyword FAQ~
level 92
category undefined~
text This a list of ideas that have been suggested many times, and that we do 
not intend to implement.
 
- `#`WChanging trains into pracs`^: That will not be done, else there 
would be no meaning in having those two different stats.
~
END

keyword CRANK-IMM CLANRANKS-IMM~
level 92
helpflags wordwrapped~
category command:immortal~
see_also CRANK~
immsee_also CLANLIST~
text `=lSyntax:`=?     crank <clan name>  Lists the ranks within your clan.  If you 
are an immortal crank will take an argument, that being a clan name, so you 
can view the ranks of any clan.  Use the clans short name as listed in help 
clan-list. 
~
END

keyword CLANLIST CLIST~
level 92
helpflags wordwrapped~
category command:immortal~
immsee_also CRANK-IMM~
text `=lSyntax: `=?clanlist`+
`+
This command lists all clans within the game and specific info relating to 
them, including Top Rank, Whoname, and Recall point.`+

~
END

keyword PREFIX~
level 92
helpflags wordwrapped~
category command:immortal~
text `=? `=lSyntax:`=? prefix <argument> `=lSyntax:`=? prefix The PREFIX command will take 
an argument of any legal command and place that argument at your prompt and 
await for addition or execution.  Typing PREFIX without an argument will 
clear your prefix. 
~
END

keyword BREAKTELL~
level 92
helpflags wordwrapped~
category command:immortal~
text `#`=lSyntax:`^  breaktell <playername> `+
    `#`BOr:`^  breaktell all `+
`+
This command enables you to disconnect the reply and retell connections any 
player may have on you.  The all option disconnects this reply and retell 
link for all those that can not see you on the wholist. 
~
END

keyword CASTATLEVEL~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? castatlevel <lvl#> <spellname> <target>`+
`+
This command enables immortals to cast a spell at a level many times higher 
or lower than their natural level.  Your level is unchanged when using this 
command, so there is no chance of being killed if you cast an aggresive 
spell at a low level.`+
`+
The level range is from 1 to about three times your level.`+

~
END

keyword AMAP FULLMAP MAPNUM~
level 92
helpflags wordwrapped~
category command:immortal~
see_also SCALEMAP SCALEMXP AREAMAP~
text `=lSyntax:`=? amap`+
`=lSyntax:`=? fullmap`+
`=lSyntax:`=? mapnum`+
`+
These commands made up the original mapping system which was not line of 
sight based and breaks horribly on non grid perfect areas.  The commands 
were never removed because one day they may be useful for something.`+
`+
Since the development of these commands, scalemap, scalemxp and areamap have 
been written which produce much more attractive results.`+
 
~
END

keyword LASTONSTATS MUDCLIENTSTATS~
level 92
helpflags wordwrapped~
category command:immortal~
see_also RACESTATS CLASSSTATS ALIGNSTAT~
text `=lSyntax:`=? lastonstats`+
`+
Lastonstats displays a number of statistics about the playerbase.  This 
information is generated entirely based on the active players recorded in 
laston.  Active players are players which are over level 5 who have logged 
on in the last week.`+
`+
Subsets of the information displayed in lastonstats are available to the 
players using the racestats, classtats and alignstat commands.`+
`+
`=lSyntax:`=? mudclientstats`+
`+
Mudclientstats displays information about the mud clients used to connect to 
the mud which is also recorded in laston.  This information is obtained by 
clients which identify themselves to dawn using the MXP version facility or 
the telnet suboption terminal type system.`+
 
~
END

keyword ATELL KTELL~
title Immortal Only Tell Commands~
level 92
helpflags wordwrapped~
category command:immortal~
see_also TELL~
immsee_also BREAKTELL~
text `=lSyntax:`=? atell <player> <message>`+
`+
atell is short for annoymous tell.  It is used to send a tell to a player 
even while whovisible.  The player when receiving your tell will see it as 
though it came from 'someone'.  If they reply to the tell and you use retell 
the entire conversation will remain annoymous.  The equivilent of an atell 
can be achieved using the normal tell command if you were to go whoinvis, 
send a single tell, then go whovis.  There is no real in using atell over 
tell if you are already whoinvis.`+
`+
You can use breaktell straight after sending a player an atell to prevent 
them replying to you. `+
`+
`+
`=lSyntax:`=? ktell <player> <message>`+
`+
ktell is short for known tell.  It is effectively the opposite of atell.  It 
can be used to send a tell to a player while whoinvis in such a way that 
your name is known to that player.  The player when receiving your tell will 
see it as though it came from you even though they wont be able to see you 
on the who list.  The equivilent of an ktell can be achieved using the 
normal tell command if you were to go whovis, send a single tell, then go 
whoinvis.  There is no benefit in using ktell over tell if you are already 
whovis.`+
  
~
END

keyword CHECKCOMMANDS CHECKBUG CHECKCLANBANK CHECKCODE CHECKMULTILOG CHECKMOBLOG CHECKNTALK CHECKNEWBIE CHECKNSUP CHECKOOC CHECKTYPOS CHECKLOG CHECKDEAD CHECKIRC~
title Immortal Check Commands~
level 92
helpflags wordwrapped~
category command:immortal~
see_also WIZHELP MOBLOG~
text There are a number of immortal commands starting with the word 'check'.  You 
can see the complete list by typing `=Cwizhelp check`=?.  The general rule for 
these commands is they display the most recent output of a logged file or 
the contents of a directory on the disk.`+
`+
An example of a command which displays the most recently logged information 
from a logfile is `=Ccheckntalk`=?.  This command displays the logged use of the 
ntalk command.  Typing checkntalk by itself will display the last 10 lines 
of text transmitted over the ntalk channel.  You can also specify the number 
of lines back into a log you want to see.  E.g. 'checkntalk 30' would 
display the last 30 said on ntalk.  Obviously this could become overloading, 
as a result, the check commands limit the output to upto 40 lines.  What 
this means is if you attempt to look more than 40 lines back into a log, you 
will see upto 40 lines starting back how far you specify... e.g. if you type 
checkntalk 70... the mud will display lines 70 thru 30 from the end of the 
log file.  Generally you are unable to look back beyond line 20000 in a log 
file (assuming that many lines are logged). `+
`+
`=U  Check commands supporting the number of lines argument:`=?`+
`=lSyntax:`=? checkbug      - look into the bugs log.`+
`=lSyntax:`=? checkclanbank - look at the clanbanking records.`+
`=lSyntax:`=? checkcode     - look into the coding log.`+
`=lSyntax:`=? checkmultilog - look at recorded multilogging events`+
`=lSyntax:`=? checkmoblog   - look at the `=_moblog output`+
`=lSyntax:`=? checkntalk    - look into the ntalk log.`+
`=lSyntax:`=? checknewbie   - look into the newbie channel log.`+
`=lSyntax:`=? checknsup     - look into the newbie support tell log.`+
`=lSyntax:`=? checkooc      - look into the ooc channel log.`+
`=lSyntax:`=? checktypos    - look into the typos log.`+
`+
`=lSyntax:`=? checklog  [player] - look at a logged players logfile.  If you 
don't specify the name checklog lists all player logfiles in date order.`+
`+
`=U  Check commands looking at files on the disk:`=?`+
`=lSyntax:`=? checkdead - list all pfiles stored in the dead directory.`+
`=lSyntax:`=? checkirc - used to read irc logs... not active by default.`+
`+
`=U  Other check commands documented elsewhere:`=?`+
`=_checkbalance, `=_checkban, `=_checkexits`+
`+
Note: Not all checkcommands listed in this help will be available to lower 
level immortals.`+
 
~
END

keyword CWHERE~
level 92
helpflags wordwrapped~
category command:immortal~
see_also MWHERE IWHERE OWHERE~
text `=lSyntax:`=? cwhere`+
`+
Cwhere is short for 'corpse where'... its output displays all player corpses 
in the game.  Depending on the colour of the corpse listed determines its 
status.`+
`gGreen`=? pc corpses are empty.`+
`RRed`=? pc corpses contain objects and is not being carried by anyone.`+
`BBlue`=? pc corpses are being carried by someone (and contain objects).`+
`+
If are corpse is being carried by a player, cwhere will tell you who is 
carrying it.`+
 
~
END

keyword MPDUMP MPSTAT~
level 92
helpflags wordwrapped~
category command:immortal~
see_also MPSHOW MSHOW~
text `=lSyntax:`=? mpdump <mobprog vnum>`+
`=lSyntax:`=? mpstat <mob with mobprog>`+
`+
mpdump is an old command originally used to display a mobprog of a 
particular vnum.  The command has actually been superceeded by the olc 
mpshow command which displays more information.`+
`+
mpstat displays the mobprog status on a given mob.  Most of the information 
shown here can be seen using the olc mshow command.`+

~
END

keyword INOTE PENALTY ANOTE~
level 92
helpflags wordwrapped~
category command:immortal~
see_also NOTES~
text Inote, anote and penalty are immortal/admin only note spools.  The use of 
these commands is exactly like the standard note spools other than the fact 
that they are imm/admin only. 
~
END

keyword TJUNK~
level 92
helpflags wordwrapped~
category command:immortal~
see_also TOKENS MOBHELP~
text `=?Syntax:`=? tjunk <tokennumber> <person>`+
`=?Syntax:`=? tjunk all.<tokennumber> <person>`+
`+
These are immortal versions of the mobprog token junk commands.  They are 
used to purge tokens on players/mobs.`+
`+
Type `=Cmobhelp tjunk`=? for futher information.`+
 
~
END

keyword NPCINFO~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? npcinfo`+
`+
Npcinfo displays statistics on all mobs in the game.  Giving a breakdown of 
the total different races in use and how they are distributed thru the areas 
in the realm.`+

~
END

keyword SEDIT SSHOW SPSKLIST~
level 92
helpflags wordwrapped~
category command:immortal~
see_also -CLASS~
text `=lSyntax:`=? spsklist`+
`+
Displays a list of spells and skills grouped into categories.`+
`+
`=lSyntax:`=? sedit <spell/skill>`+
`=lSyntax:`=? sedit create <spell>`+
`+
sedit is the olc editor used to edit a number of properties stored with 
spells and skills.  Sedit can modify the mana, damage type, lag (4 beats per 
second), realms, spheres, elements & seasons and spell function orientated 
with a spell.   Sedit configures global properties of a spell/skill.  The 
class command can be used to configure the level at which a class can get a 
spell/skill.  See help `=_-class for more on that.`+
`+
Sedit can also be used to create spells which are aliased versions of 
existing c++ spell functions.  This involves using sedit create, then 
setting the spell function accordingly. `+
`+
`=lSyntax:`=? sedit <spell/skill>`+
`+
sshow displays the 'show' screen of the sedit olc editor.`+
 
~
END

keyword TESTYELL~
level 92
helpflags wordwrapped~
category command:immortal~
text `#`=lSyntax:`^ testyell`1This command shows how far a yell will go.`+
`+
Example:  Room vnum = 3000`+
          Yellindex=455`+
          Yell_enteredindir=0`+
          Yell_amplitude=24.116692`+
`+
This command was used during the initial development of the yelling system.`+
`+
For lack of a place to put other testing information, testyell also includes 
testing code relating to MSP, DawnFTP and the colour system.`+
 
~
END

keyword REVERSE~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? reverse <text to say backwards>`+
`+
Reverse was just a language created for fun, it reverses the order of what 
ever you say, making each word spelt backwards.`+

~
END

keyword SEEVNUM~
level 92
helpflags wordwrapped~
category command:immortal~
see_also HOLYVNUM~
text `=lSyntax:`=? seevnum <command>`+
`+
Seevnum has the affect of turning on `=_holyvnum for the duration of the 
command.  Most people prefer to have `=_holyvnum on all the time.  But for the 
few that don't they are able to turn it on temporarily... e.g. `=Cseevnum 
look`=?`+

~
END

keyword SETRACE~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? setrace <racename>`+
`+
The setrace command is used to change your own race quickly in order to test 
mobprogs etc.  You can not change the race of others with this command.`+

~
END

keyword ADDSCRIPT LISTSCRIPT RUNSCRIPT~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? addscript <script> [immortal name]`+
`=lSyntax:`=? listscript`+
`=lSyntax:`=? runscript <script to run>`+
`+
The runscript command is used to execute scripts stored on the file system 
in the scripts directory.  The scripts have to be setup using the addscript 
command.  You can list all scripts that have been setup using the listscript 
command.`+
`+
Example uses of scripts include triggering a script which emails a backup of 
the area files to the head builder without giving them site access.  Another 
script could email a backup of the player files to the imp without requiring 
the imp to go into the shell etc.`+
 
~
END

keyword TELNETGA~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? telnetga`+
`+
TelnetGA is short for telnet Go Ahead.  Telnet Go Ahead is a telnet option 
which is used to instruct a supporting telnet client where the prompt ends.  
The system can be used with telnet clients that remove the prompt and 
display it on a status bar.`+
 
~
END

keyword SCALEMAP SCALEMXP AREAMAP~
level 92
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? scalemap [range]`+
`=lSyntax:`=? scalemxp [range]`+
`=lSyntax:`=? areamap [range]`+
`+
Scalemap scans the rooms surrounding you to generate an ascii art type map 
which represents the land surrounding you.  It is based on an extended form 
of the automapper with extended range.  The mapper does not cross into areas 
where the map scale changes.`+
`+
Scalemxp is an mxp enabled version of the scalemap with a few extra 
features.  Firstly rooms a clickable, right clicking them will display 
information about a selected room.  Secondly if the map is not grid perfect, 
the scalemxp will show rooms which overlap in red.`+
`+
Areamap displays a map containing only rooms in the same area as you are 
in... this command is very useful for determining the boundaries between 
areas.`+
     
~
END

keyword CHECKBALANCE~
level 92
helpflags wordwrapped~
category command:immortal~
see_also CHECKCOMMANDS~
text `=lSyntax:`=? checkbalance obj`+
`+
Checkbalance was written to help test the balance of items created within 
the OLC interfaces of the dawn codebase.  Unfortunately it is uncompleted 
and only currently checks objects.  The rules which it uses to check objects 
are also dated and are generally not appropriate to every muds balance 
guidelines. 
~
END

keyword CHECKBAN BAN-EMAIL-EXAMPLE EMAIL-VERIFICATION~
level 96
helpflags wordwrapped~
category command:immortal~
see_also CHECKCOMMANDS~
text `=lSyntax:`=? checkban <ip/host address of player as shown in sockets/laston>`+
`+
The checkban command is used to show you which if any of the ban matching 
rules will match for a particular host.`+
`+
For example if you had a ban forcing email verification for all players 
coming from aol.com.  If you typed `Ycheckban AC9HCFA4.ipt.aol.com`=? you would 
expect to see something like the following:`+
`+
`S-===========================================================================--
`=?`+
==- CHECK BAN ON: 'AC9HCFA4.ipt.aol.com'`=?`+
- Newbies: `Gallowed`x`+
- Permit/Letgained check: `Gallowed`x`+
- Email check: `Rdenied`x`+
Ban #1`+
`=t-========================== `=TBANEDIT SHOW `=t==========================-`+
`x`=rSitemask:    '`=R*aol.com`+
*msn.com`+
*uunet.com`+
`=r'`+
IntendedPeople: `=R`N Email Verification System`+
`=rEnabled: `=RTrue`+
`=rPermanent: `=RTrue`+
`=rType: `=Remail`+
`=rban created on: `SSat May 25 12:05:00 2002`+
`=rby: `SKalahn`x`+
`=rReason: `=RTo require email verification for users from particular ISPs.`+
`=rCustom disconnect message: `Snone`+
`=rExpire date: `=Rnone`+
`=ralways_allowed_email_masks: `=R`+
exception1@hotmail.com`+
goodplayer@hotmail.com`+
anothergoodplayer@hotmail.com`+
friend@yahoomail.com`+
`=rallowed_email_masks: `=R`+
*@aol.com`+
*@msn.com`+
*@uunet.com`+
`=rdisallowed_email_masks: `=R`+
badperson@aol.com`+
idiot@msn.com`+
`=rnote: disallowed_email_masks have a higher priority than allowed masks, if 
a particular email addy matches the disallowed email mask, it will be denied 
even if it matches the allowed mask also.  The only exception to this is if 
the email address is on the always_allowed_email_masks list for this ban... 
note the always allowed only applies to this particular ban... if the host 
and email match a disallowed on another ban, it will be declined.`x`+
`+
`=rdisallowed_email_masks_message: `=R`+
Access to this site has been denied!  Please contact the MUD Administration 
for inquiries on why access is denied.`+
`x- All: `Gallowed`x`+
`S-===========================================================================--
`=?`+
 
~
END

keyword CHARNOTES EDITCHARNOTE~
level 94
helpflags wordwrapped~
category command:immortal~
see_also PINFO~
text `=lSyntax:`=? charnotes <playername>`+
`=lSyntax:`=? editcharnote <playername>`+
`+
The mud has the ability to store notes on each player that are saved with 
their pfile.  These notes can be viewed by any immortal at any time using 
the charnotes command.  Players with charnotes attached to them have a 
yellow `Y-`=? beside their name in `=_pinfo`+
`+
Charnotes can be edited using the editcharnotes command.  
~
END

keyword CHECKEXITS~
level 94
helpflags wordwrapped~
category command:immortal~
see_also CHECKCOMMANDS OLC-EXITS~
text `=lSyntax:`=? checkexits area`+
`=lSyntax:`=? checkexits all`+
`+
The checkexits command is used to check the linking of room exits with an 
area and over the entire realm.  There are two types of linking errors 
checkexits will detect.`+
`+
The first type of linking error is in the format:`+
 8200:S  ->  8201 has no  N exit, set 1way on  8200:S  or relink.`+
`+
In this particular example, this indicates that walking south from room 8200 
will put you into room 8201.  But upon arriving in room 8201, you are unable 
to walk north to get back to room 8200 since there is no north exit in room 
8200.  If this unusual room linking is intentional (say in a maze area), you 
should set the oneway flag on the exit to remove the error report in 
checkexits.  The oneway flag in the above example would be set by typing 
`=Credit 8200`=? followed by `=Csouth oneway`=? followed by `=Cdone`=?.`+
`+
The second type of linking error checkexits tests for is in the format:`+
 8205:N  ->  8200:S  -> 8201.`+
`+
This example shows that walking north from room 8205 would put you in room 
8200.  Then walking south from there would put you in room 8201 (when you 
would expect to be back in the starting room 8205).`+
`+
For any of the linking errors, they can be fixed by removing the incorrect 
exits then recreating them... see help `=_olc-exits for more on this.`+
 
~
END

keyword IMM-LASTON~
level 92
helpflags wordwrapped~
category command:immortal~
see_also LASTON~
text `=lSyntax:`=? laston [options]`+
`=lSyntax:`=? laston -?`+
`+
The immortal version of laston supports a lot of filtering options.  A list 
of all these options can be displayed by typing "`=Claston -?`=?".`+
`+
The laston filtering options can be stacked, for example:`+
`=Claston -c -r >5 <10 -x -a -f`=?`+
Could be used to filter the laston database to display full (-f) records on 
all (-a) characters between level 5 (>5) and 10 (<10).  Displaying their 
class (-c) and race (-r) while numbering each match (-x).`+

~
END

keyword GAMEEDIT SAVEGAMESET~
title GameEdit - The Game Engine Parameter Editor~
level 100
helpflags wordwrapped~
category command:immortal~
text `=lSyntax:`=? gameedit confirm`+
`+
The gameedit command is used to access the olc editor for all the game 
settings.`+
`+
There are a lot of settings which can be configured in the game editor, most 
of which affect some aspect of the game engine.`+
  `+
Probably the most important setting in the gameeditor is the gamename.  This 
is the name of your mud, and appears in the top of a number of commands 
(e.g. mudstats, laston).  Once in the game editor, type `=Cgamename <your mud 
name>`=? to set your gamename.`+
`+
A lot of dawn's vnums and parameters are not hard coded.  The values and 
vnums which can be changed within gameedit can be viewed using the 
`=Cshowvalues`=? command.  In addition these values can be modified using the 
`=Cvalue`=? gameedit command.`+
`+
At this stage many options configurable within gameedit are undocumented... 
they will most likely be documented in newer releases of the dawn codebase.`+
`+
Unlike all the other olc editors, changes in performed in gameedit do not 
automatically save... they must be manually saved using the`=C savegameset 
`=?command.  This command saves the gamesettings to gameset.txt located in the 
same directory as the dawn executable binary.`+
   
~
END

keyword HOW-DAWN-WORKS~
title How Dawn Works~
level 92
helpflags wordwrapped~
category undefined~
text This is based on a posted originally from the Dawn forums at 
http://forums.dawnoftime.org/ by Kalahn in April 2003.`+
`+
The Dawn Codebase is written in C/C++, and is modular to a certain degree, 
there is the core engine which drives the game, and various subcomponents 
such as spells/skills which are hooked in in various places.`+
`+
Dawn is a very flexible mud codebase, and supports a significant amount of 
customisation without requiring any programming knowledge (for example in 
the olc editors).  If you are wanting major changes which can't be achieved 
within the existing Dawn framework, you will need to modify the C/C++ source 
code.`+
`+
If you are unfamilar with the C or C++ languages, it is very likely you will 
need to do some background reading on the C language to help you get 
orientated.  `+
In order to understand how to hook your own features in, it helps to 
understand how the core engine works (at least at a high level). `+
`+
======core engine======`+
main() is located within comm.cpp, basically it boots up the mud loads in 
the environment (system files, realm etc) then enters game_loop(). `+
`+
The core of game_loop() runs 4 times per second and does the following: `+
- syncronise to a clock (to prevent it running more than 4 times per second) 
`+
- accept new TCP connections (people connecting) `+
- disconnect connections in an network error state `+
- process one queued command per player (unless speed walking, which does 2 
movement commands - enabling speedwalkers to move 8 rooms per second instead 
of 4 if using manual directions) `+
- run update_handler() (more on this shortly) `+
- send all queued output for all connections `+
`+
update_handler() is responsible for a lot of things including (but not 
limited to): ticks, wandering mobs, combat, affects, weather messages, aggie 
mobs, olc autosave and the mob queue system. `+
====================== `+
`+
======user input====== `+
game_loop() processes user input in various ways depending on the type of 
connection and state the connection is in. When a connections state is 
something other than CON_PLAYING (which is the state for logged in players) 
all input is routed through nanny() in nanny.cpp. This handles creation and 
redirects dawnftp transactions. `+
`+
If a player is fully logged, their connection state will be set to 
CON_PLAYING and all input is directed interpret() - the only exception being 
if they are in an olc editor, which means it is first handled by 
run_olc_editor(). `+
`+
interpret() parses the user input using the cmd_table[] table to determine 
which command a player is trying to use (you can see this table in 
interp.cpp starting about 65 lines down). `+
`+
For example the first command in the cmd_table[] is "north"... so interp 
matchs this with the user input and the player has access to that command, 
the command function will be executed - do_north() in this case. A number of 
attributes for entries in cmd_table[] are dynamically populated in at bootup 
and can be edited using "comedit". `+
`+
Nearly all commands run via interpret() are prefixed with "do_"... this is 
part of the coding style, not something that is enforced by a compiler. `+
`+
The "do_" functions are then stored in various files in the source, 
depending on the type of commands... for example the act_*.cpp files, store 
a number of do_ functions, act_obj.cpp typically stores do_ functions that 
manipulate objects. act_wiz*.cpp are generally immortal commands. `+
`+
magic.cpp, contains do_cast() (and its variants) redirect to do_newcast()... 
which is the core of the magic system. do_newcast looks up spells from 
within skill_table[] and runs the spell function a simular was that commands 
are located in cmd_table[]. skill_table[] is dynamically created at bootup 
and can be edited using sedit. `+
`+
An example may make things clearer.. `+
`+
Lets take what is involved to cast the spell acid blast...(contained in the 
function spell_acid_blast(). `+
`+
Lets assume a player is already connected, and logged in and has the spell 
etc. `+
The player types "cast 'acid blast' target", game_loop() recognises that 
there is input waiting from the player connection, it redirects the input to 
interpret() which finds there is a cast command... it then executes the 
function for this command - do_cast(). do_cast() redirects to do_newcast() 
which searchs skill_table[] for a spell called "acid blast", after finding 
it and confirming it has a spell function set, it then executes the spell 
function (Which is called spell_acid_blast() in this case), and that 
function does what it is supposed to do. `+
====================== `+
`+
Some other files in the source, some a pretty obvious: `+
include.h - the main include file for the entire game. `+
macros.h - a LOT of compiler macros used to save time. `+
params.h - a LOT of hard coded limits and parameters are defined in here - 
have a look. `+
structs.h - almost all of the data structures used in the game. `+
prototyp.h - function prototypes `+
chardata.h - the definition of the char_data class. `+
chardata.cpp - the implementation of the char_data class. `+
act_move.cpp - functions to move players around (e.g. do_north()). `+
*edit.cpp - olc editors e.g. aedit.cpp, comedit.cpp. `+
colour.* - the colour system `+
dynamics.* and dyntable.* - the core of code enabling classes and skills to 
stored in text files. `+
fight.cpp, duel.cpp - combat system and related code. `+
ftp.cpp - dawnftp/mudftp implementation `+
gio.cpp - the generic IO system - this is the heart of most of the muds 
input and output. `+
magic*.* contains all the spells `+
global.h - global variables are defined in here using the "EXTERN" macro... 
this macro is rewritten into "extern" in every file within the source code 
other than global.cpp. In global.cpp it is renamed to "" so therefore the 
variable is defined to be 'physically' stored in global.cpp. `+
gsn.h - global skill/spell numbers `+
handler.cpp - a heap of utility functions `+
hreboot.* - the hotreboot system `+
intro.* - the introduction system `+
language.* - the language system `+
mob_*.* - the mobprog engine and systems. `+
msp.* - core msp libraries `+
websvr.cpp - the integrated webserver implementation `+
mud2web.cpp - support functions bridging websvr.cpp into the mud `+
mob_q.cpp - the mobprog queuing system. `+
mount.cpp - horse riding anyone? `+
mxp.*- mxp library functions `+
namegen.* the name generated accessed in creation `+
nanny.cpp - handles non playing connections `+
network.cpp - operating system specific low level network code `+
noble.cpp - the noble system `+
note.cpp - the notes system `+
offmoot.cpp - offline mooting `+
pipe.cpp - popen() and system() based commands. e.g. checklog, pipe. `+
mem.cpp and recycle.cpp - memory management system `+
resolve.* - dns resolver and ident related code `+
save.cpp - this file saves pfiles `+
socials.cpp - the socials system `+
special.* - mob specials `+
support.* - commands originally used by the dawn support council `+
tables.* - a LOT of lookup tables - have a look. `+
textsrch.* - the text search system `+
tokens.* - the token system used by mobprogs `+
track.* - the tracking system `+
trap.* - traps perhaps? `+
update.cpp - update_handler() and many functions it calls `+
who.cpp - the core of the who engine `+
whofmt.cpp - various display formats for different muds. `+
wizlist.cpp - dynamic wizlist. `+
`+
In terms of starting out, I suggest adding a spell or two... that is 
probably the easiest thing to start with. Work with little things, get them 
reliable, then get more involved. `+
`+
- Kal, April 2003`+
 
~
END

keyword IMMORTAL-RULES IMMRULES~
level 93
category undefined~
text `xListed herein are the "Immortal Rules of Conduct" that `rmust`x be adhered to
at all times. Failure to do so will result in punishments as decided by the
punishing Admin and may include `rdeletion`x. You have been warned and were
asked to read this file when you became an Immortal here on Athens. As such
ignorance is not an excuse. Ever.
 
`R***`CAbuse of your Immortal Powers in any way will result in probation and
then deletion. Consider this your first, last, and only warning. Abuse of Power
is defined by the punishing Admin. Appeals can be made to The `cOwner`x.`R***
 
`YRule 1 - `xYou are expected to log on at least once a week to keep up to date
with the notes and your duties. Failure to do so will result in `rdeletion`x.
 
`YRule 2 - `xInactive/Ineffective Immortals will be deleted/replaced at the
discretion of the `cAdmin`x and `cOwner`x. Builders are the domain of the
`cHead Builder`x and if you are a Builder you should also read `YHELP BUILDER`x
for specific rules to your trade.
 
`YRule 3 - `xRespect the player base at ALL times. We understand that they can
rude and ignorant but that doesn't give you the right to be.
 
`YRule 4 - `xNo Immortal may use his/her powers to give any player an advantage
of any sort. This includes setting stats, giving out of equipment, turning
auto-quests on repeatedly, as well as restoring individual characters or groups
of characters. Do this and be `RDELETED`x.
 
`YRule 5 - `xCommon sense is the name of the game. If you THINK you shouldn't do
it, ASK an `cAdmin`x or the `cOwner`x first.
 
`YRule 6 - `xThese rules are subject to change without notice and it is up to you
(the Immortal) to keep up to date with this file. You were asked to read these
simple rules when you joined the staff here and ignorance is not an excuse. Ever.
 
Punishment is at the discretion of the punishing `cAdmin`x and any reasonable
punishment is considered fair. You do have the right to appeal to the `cOwner`x
if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at
hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Hera~
last_editdate 1111572797
assigned_editor 9
END

keyword NEWBIE-SUPPORT-RULES NEWBIE-SUPPORT-TEAM-RULES NST-RULES~
level 15
category undefined~
text . 
`xListed herein are the "Newbie Support Rules of Conduct" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdismissal`x. You have been warned and were asked to read this file when you became a member of the Newbie Support Team here on Athens. As such ignorance is not an excuse. Ever. You need to be a minimum of level 15 to hold this position.
 
`Y1 - `xYou are required to ensure that all newbies are equipped, shown where to get food and drink, as well as granting any other reasonable aide that is required. Not all newbies will need this help and as such your duties should be fairly light.
 
`Y2 - `xIf you find you are unable to enjoy playing the game due to a heavy work load please note the `cHead Newbie Support Admin `x(`cHead NSA`x) and `cHead Admin`x so that additional Newbie Support Personnel can be hired and trained to assist you.
 
`Y3 - `xIf you find you are unable to preform your job due to not being trained or inadequate training please note the `cNewbie Support Admins (NSA)`x, `cHead NSA`x, and `cHead Admin`x requesting training as soon as possible.
 
`Y4 - `cThe NSA`x and `cHead NSA`x are here to over see and support you as you assist the newbies. They are Immortals of Athens and deserve respect as such. Disprespect for these people will not be tolerated. If you have an issue with a member of the `cNSA team`x please note the `cHead NSA`x. If you have a problem with the `cHead NSA`x please note the `cHead Admin`x. It is only by our being aware of your problems can we correct them.
 
`Y5 - `xAs the player accounts here must go through an approval process, each and every newbie is approvted by the `cHead Admin`x or `cOwner`x prior to account creation. As such any newbie who is disrespectful or problematic should be brought to the attention of the `cNSA Team`x, `cHead NSA`x, and `cHead Admin`x ASAP.
 
Punishment is at the discretion of `cThe Head NSA`x or Admin and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097373477
END

keyword NEWBIE-SUPPORT-ADMIN-RULES NSA-RULES~
level 93
category undefined~
text . 
`xListed herein are the "Newbie Support Admin (NSA) Rules of Conduct" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became a Newbie Support Admin here on Athens. As such ignorance is not an excuse. Ever.
 
`Y1 - `xIt is your responsibility to over see the actions of all Newbie Support Players. At any time that they are out of line it is your duty to punish them as needed including `cprobation`x/`cdeletion`x as you feel required.For these punishments you must notify the `cHead NSA`x, `cHead Admin`x AND `cOwner`x. If you need help with an investigation note the `cHead NSA`x, and `cHead Admin`x or `cOwner`x asking them to assign a Junior Admin to the case or if one is available, ask them to investigate it.
 
`Y2 - `xAddress any and all issues brought to your attention by the `cHead NSA`x, `cHead Admin`x or `cOwner`x in a timely fashion and inform them when and how the situation is resolved.
 
`Y3 -`xTrain any and all Newbie Support Players that have been hired by the `cHead NSA`x as required.
 
`Y4- `xMake recommendations for advancement of Newbie Support Players to a position on the `cNSA Team`x when openings exist. Recommend dismisal of Newbie Support Players for inactivity/inadequate work and recogniction for outstanding working.
 
Punishment is at the discretion of `cThe Head NSA`x or Admin and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097373384
END

keyword BUILDER-RULES~
level 93
category undefined~
text `xListed herein are the "Builder Rules of Conduct" that `rmust`x be adhered to
at all times. Failure to do so will result in punishments as decided by the
punishing Admin and may include `rdeletion`x. You have been warned and were
asked to read this file when you became a Builder here on Athens. As such
ignorance is not an excuse. Ever.
 
 `YRule 1 - `xWhen you are building you should be olcinvis, wizinvis,
whoinvis, and have MODE BUILD turned on, to prevent mortal interruption and to
alert other immortals that you are working (i.e. coders who may need to
hotreboot). You should only use OLCINVIS when actively building.
   
`YRule 2 - `xYou are to under no circumstances use another builder's vnums, or
set an object or mobile to reset into an area beside the area that it was
created in. As this can lead to `rinstability`x in the game this will be dealt
with harshly.
 
`YRule 3 - `xUnder no circumstances should you build special equipment for your
mortal alt or for any mortal character. Violators of this rule will have their
character `rdeleted`x no questions asked.
  
 `YRule 4 - `xBuilding of areas that could result in lawsuits for copyright
infringements is NOT a good idea and will result in long term probationary
status or out right deletion.
  
`YRule 5 - `xOnce assigned a group of vnums for an area you `rmust`x complete
construction of that area, and it must be implemented by the `cOwner`x,
`cHead Builder`x, or designated `cAdmin`x before you will receive a new block
of vnums for work.
 
`YRule 6 - `x"Frequent visible changes" need to be made on your area/project
proving "forward progress" in its construction.
 
"Frequent visible changes" and "forward progress" is as defined by the Head
Builder on a case by case basis.
  
`YRule 7 -  `xThese rules are subject to change with or without notice and
it is the duty of you (the builder) to check this help file and keep up to
date. Remember, ignorance is not an excuse. Ever.
 
 Punishment is at the discretion of the punishing Admin or `cThe Head Builder`x,
and any reasonable punishment is considered fair. You do have the right to
appeal to the `cOwner`x if you do not agree with your punishment.
 
hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Hera~
last_editdate 1113070047
END

keyword CODER-RULES~
level 93
category undefined~
text `xListed herein are the "Coder Rules of Conduct" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became a Coder here on Athens. As such ignorance is not an excuse. Ever.
 
`YRule 1 - `xYou are expected to keep the Shell Username and Password confidential, any breech in this and you will be `rdeleted`x without hesitation or question. Period. No questions asked.
 
`YRule 2 - `xBefore making ANY changes to the code you are expected to submit your idea to the `cHead Coder`x for approval. This is to avoid duplicate commands/features etc. (Bug Busting does not fall under this rule).
 
`YRule 3 - `xBefore attempting to correct any bug you are required to alert the `cHead Coder`x of your attempts. This is to avoid multiple people attempting to correct a single issue.
 
`YRule 4 - `xYou are required to complete in advance of your project(s) any and all work assigned to you by the `cHead Coder`x, `cHead Admin`x, or `cOwner`x. This work will be infrequent as we feel that people are best able to work on their own ideas and visions. As such this work will also consist mainly of cleaning up after other Coders who have been dismissed/left and fixing critical bugs.
 
`YRule 5 - `xIf you are having trouble coding something and need assistance with something ask a fellow Coder. If none are available or they can't help you, then ask the `cHead Coder`x, `cHead Admin`x, and the `cOwner`x (in that order for help).
 
`YRule 6 - `xIf you need training you are to consult the `cHead Coder`x, the `cHead Admin`x and the `cOwner`x (in that order). One of these three people will then assign you a trainer from among the staff of trained coders.
 
`YRule 7 - `xAll code is the property of Athens, and you may not borrow or steal it without permission of the `cOwner`x. If we find our code is being used on another MU* without permission you will be `rdeleted`x. Existing stock code from DOT and other MU*'s excluded.
 
Punishment is at the discretion of `cThe Head Coder`x, or Admin and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097373623
END

keyword JR-ADMIN-RULES JR-ADMIN-DUTIES~
level 93
category undefined~
text . 
 
`xListed herein are the "Admin Rules of Conduct and Duties" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became an Admin here on Athens. As such ignorance is not an excuse. Ever.
 
These Rules and duties apply to `CALL`x Admin, and primarily to the Junior Admin.
 
`Y1 - `xYou are required to be the utmost example of courtesy and roleplay when interacting with Mortals.
 
`Y2 - `xWhile any Immortal may run a roleplay quest or contest, this is primarly your domain. You are to enforce the Roleplay policies of Athens and to run Roleplay events/contests for the Mortals. Other Immortals do NOT need to seek the permission of a Junior or Senior Admin to run a roleplay event/contest.
 
`Y3 - `xIt is your job to enforce the rules and policies of Athens among the mortals. Any incidents should be in an impartial and timely fashion. You are given a broad scope in the punishments you can hand out. However, in all cases where `rdeletion`x is the required/recommended punishment you must note the `cHead Admin`x and `cOwner`x with the broken rule(s) and why you recommend `rdeletion`x.
 
`Y4 - `xYou are to address all cases assigned to you by the `cHead Admin`x or `cOwner`x in an impartial and timely fashion as these are often major incidents that need immediate investigation and resolution. As these two positions often have the heaviest work load you will often be assisting them with these situations.
 
`Y5 - `xWhenever possible a MINIMUM of one Junior Admin is to be visible at all times. IF you are the `CONLY`x Junior Admin`x online, then you are required to be visible only so long as you are not busy with another situation.
 
`Y6 - `xIf you are new to this position or have a question about how to address a situation contact any `cSenior Admin`x, the `cHead Admin`x or `cOwner`x for help. Those needing training should note the `cHead Admin`x and you will be assigned a trainer from among the Senior Admin staff.
 
`Y7 - `xNote the `cHead Admin`x with any case in which you can not preform a fair or timely investigation due to bias, workload, or time constraints. You do not need to go into details, just the name(s) of the parties involved and a brief description of what happened. Also include why are you are unable to invistigate this case.
 
`Y8 - `xNote the `cHead Admin`x and `cOwner`x informing them punishments handed out and what rule(s) were broken causing the punishments.
 
Punishment is at the discretion of the punishing Admin or `cThe Head Admin`x and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097373747
END

keyword SR-ADMIN-RULES SR-ADMIN-DUTIES~
level 93
category undefined~
text . 
`xListed herein are the "Admin Rules of Conduct and Duties" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became an Admin here on Athens. As such ignorance is not an excuse. Ever.
 
Your are also responsible for the rules and duties contained in JR-ADMIN-RULES so know them. These rules and duties pertain `cONLY`x to Senior Admin.
 
`Y1 - `xTrain any and all Junior Admin as assigned by the `cHead Admin`x or `cOwner`x.
 
`Y2 - `xInvestigate any and all complaints by Mortals or Immortals against another Immortal in a fair and timely manner. You are given a broad range of punishments that you can hand out. If you feel that `rdeletion`x  or `rprobation`x is required you must send to a note the `cHead Admin`x AND `cOwner`x with the reasoning. They will then issue the punishment and send out the appropriate email.
 
`Y3 - `xAssist Junior Admins with situations in which they are not certain how to proceed and send a note to the `cHead Admin`x about what happened so that additional training can be preformed if needed.
 
`Y4 - `xYou are to address all cases assigned to you by the `cHead Admin`x or `cOwner`x in an impartial and timely fashion as these are often major incidents that need immediate investigation and resolution. As these two positions often have the heaviest work load you will often be assisting them with these situations.
 
`Y5 - `xNote the `cHead Admin`x with any case in which you can not preform a fair or timely investigation due to bias, workload, or time constraints. You do not need to go into details, just the name(s) of the parties involved and a brief description of what happened. Also include why are you are unable to invistigate this case.
 
`Y6 - `xYou are NOT supervisors or in charge of the Junior Admins so don't try to act like you are. You are their big brothers and sisters who help them out when stuck and give advice when asked for or needed.
 
`Y7 - `xWhen you see another Senior Admin or Junior Admin in violation of the rules you are to bring the situation to the attention of the `cHead Admin`x for investigation. He or she will then assign the case to you or another Senior Admin as required.
 
`Y8 - `xNote the `cHead Admin`x and `cOwner`x informing them punishments handed out and what rule(s) were broken causing the punishments. If the punished Immortal was a Newbie Support Admin, Builder or Coder you should also note the `cHead Newbie Support Admin`x, `cHead Builder`x or `cHead Coder`x so that they are aware of what is going on with their staff.
 
Punishment is at the discretion of The `cHead Admin`x and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097373771
END

keyword HEAD-BUILDER~
level 93
category undefined~
text . 
 
`xListed herein are the "Head Builder Rules of Conduct and Duties" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became The Head Builder here on Athens. As such ignorance is not an excuse. Ever.
 
`R***`CBy viture of your Department Head Status you have a seat on the Council of Heads. This Council only grants seats to the Head NSA, Head Builder, Head Coder, Head Admin, and Owner.`R***`x
 
`Y1 - `xYou are responsible for the continued expansion of the game world. To this end you have almost unlimited control over the hiring and firing of Builders, as well as punishing them. The `cHead Admin`x and `cOwner`x reserve the right to hire or dismiss any Builder(s) as we see fit. You `CWILL`x be notified of any changes made to the Building Staff.
 
`Y2 - `xIn any case in which `rprobation`x or `rdeletion`x is required a note MUST be sent to The `cHead Admin`x AND `cOwner`x so that the appropriate email can be sent to the person notifying them of their fate before the punishment is delivered. Dismissal is simply lowering the person's level to that of a mortal and is not included in this rule.
 
`Y3 - `xAny time you hire or dismiss a Builder a note MUST be sent to the `cHead Coder`x, `cHead Admin`x, `cHead NSA`x, and `cOwner`x notifying them of the new staff member and their position or who was dismissed. Failure will result in a loss of anonymity, probation, or else being reduced in rank to that of a Builder.
 
`Y4 - `xIt is your responsibility to over see the actions of all Builders. At any time that they are out of line it is your duty to punish them as needed including `probation`x/`cdeletion`x as you feel required. Again for these punishments you must notify the `cHead Admin`x or `cOwner`x. If you need help with an investigation note the `cHead Admin`x or `cOwner`x asking them to assign a Senior Admin to the case or if one is available, ask them to investigate it. They don't work for you so they do have the right to refuse. If you find this to be a consistent problem note the `cHead Admin`x so that he or she can take corrective measures.
 
`Y5 - `xWhile ou do not have authority over the Newbie Support Admins, Coders, or Admins you are at a higher level so a certain amount of respect is required. If they fail to do this or if you suspect them of violation of the Immortal, Newbie Support Admin, Coder, or Admin Rules note the `cHead Admin`x AND appropriate Department Head so that it can be investigated.
 
`Y6 - `xAt any time you are to keep track of the projects that each Builder is working on, as well as assign Builders to correct any typos, balance issues, or bugs in completed areas.
 
`Y7 - `CAny and all changes`x to the rules by which Builders operate (HELP BUILDING-RULES) must be approved by the `cHead Admin`x in advance to its being implemented.
 
`Y8 - `xAddress any and all issues brought to your attention by the `cHead Admin`x or `cOwner`x in a timely fashion and inform them when and how the situation is resolved.
 
`Y9 - `xYou are NOT to advance Immortals to ANY position besides that of Builder. If you are caught advancing people to Newbie Support Admin, Coder, Admin, or Department Head level you will be IMMEDIATLY stripped of the advance command.
 
Punishment is at the discretion of the `cHead Admin`x and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097374036
END

keyword HEAD-NEWBIE-SUPPORT-ADMIN HEAD-NSA~
level 93
category undefined~
text . 
`xListed herein are the "Head Newbie Support Admin Rules (NSA) of Conduct" and duties. These `rmust`x be adhered to at all times. Failure to do so will result in probationary status and or deletion. You have been warned and were asked to read this file when you became an Immortal here on Athens. As such ignorance is not an excuse. Ever.
 
`R***`CBy viture of your Department Head Status you have a seat on the Council of Heads. This Council only grants seats to the Head NSA, Head Builder, Head Coder, Head Admin, and Owner.`R***`x
 
`Y1 - `xYou are responsible for all newbies on the game. It is your duty to ensure that all newbies are equiped with gear, shown where to find food and water and other such resonable aide as is needed. To this end you have almost unlimited control over the hiring and firing of Newbie Support Admin and Newbie Support Players, as well as punishing them. The `cHead Admin`x and `cOwner`x reserve the right to hire or dismiss any Newbie Support Admin or Newbie Support Player(s) as we see fit. You `CWILL`x be notified of any changes made to the Newbie Support Admin or Newbie Support Player Staff.
 
`Y2 - `xAny case in which `rprobation`x or `rdeletion`x is required a note MUST be sent to The `cHead Admin`x AND `cOwner`x so that the appropriate email can be sent to the person notifying them of their fate before the punishment is delivered. Dismissal is simply lowering the person's level to that of a mortal and is not included in this rule.
 
`Y3 - `xAny time you hire or dismiss a Newbie Support Admin or Newbie Support Player a note MUST be sent to the `cHead Builder`x, `cHead Coder`x, `Head Admin`x and `cOwner`x notifying them of the new staff member and their position or who was dismissed. Failure will result in a loss of anonymity, probation, or else being reduced in rank to that of a Newbie Support Admin.
 
 
`Y4 - `xIt is your responsibility to over see the actions of all Newbie Support Personnel. At any time that they are out of line it is your duty to punish them as needed including `probation`x/`cdeletion`x as you feel required. Again for these punishments you must notify the `cHead Admin`x AND `cOwner`x. If you need help with an investigation note the `cHead Admin`x or `cOwner`x asking them to assign a Senior Admin to the case or if one is available, ask them to investigate it. They don't work for you so they do have the right to refuse. If you find this to be a consistent problem note the `cHead Admin`x so that he or she can take corrective measures.
 
`Y5 - `xWhile ou do not have authority over the Builders, Coders, or Admin you are at a higher level so a certain amount of respect is required. If they fail to do this or if you suspect them of violation of the Immortal Rules, Builder Rules, Coder Rules, or Admin Rules note the `cHead Admin`x AND Department Head so that it can be investigated..
 
`Y7 - `CAny and all changes`x to the rules by which Newbie Support Personnel operate (HELP NEWBIE-SUPPORT-RULES, and HELP NEWBIE-SUPPORT-ADMIN-RULES) must be approved by the `cHead Admin`x in advance to its being implemented.
 
`Y8 - `xYou are NOT to advance Immortals to ANY position besides that of Newbie Support Admin. If you are caught advancing people to Builder, Coder, or Department Head level you will be IMMEDIATLY stripped of the advance command.
 
`Y9 - `xAddress any and all issues brought to your attention by the `cHead Admin`x or `cOwner`x in a timely fashion and inform them when and how the situation is resolved.
 
Punishment is at the discretion of The `cHead Admin`x and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097370707
END

keyword HEAD-ADMIN~
level 93
category undefined~
text . 
`xListed herein are the "Head Admin Rules of Conduct and Duties" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became The Head Admin here on Athens. As such ignorance is not an excuse. Ever.
 
`R***`CBy viture of your Department Head Status you have a seat on the Council of Heads. This Council only grants seats to the Head NSA, Head Builder, Head Coder, Head Admin, and Owner.`R***`x
 
`xThe position of `cHead Admin`x is one of great responsibility, power, and trust. The `cHead Admin`x is responsible for the day to day running of Athens as well as all but the most critical situations that arise. The `cHead Admin`x reports directly to The `cOwner`x and as such any complaints about The `cHead Admin`x's actions should be directly reported to The `cOwner`x.
 
`Y1 - `xYou are responsible for the day to day managment of the Department Heads ensuring that their work is accomplished. That code side bugs, typos, and balance issues are fixed as well as improvments made. Additionally you are to ensure that building side typos, bugs, and balance issues are fixed as well as new areas built, that all Newbie Support Players and Player Support Admins are trained.
 
`Y2 - `xYou are responsible for making sure that all Junior and Senior Admins are properly trained on their duties and to ensure that their jobs are preformed in a fair and inpartial manner.
 
`Y3 - `xEnsure that all Departments have a Department Head and ensure that they are properly trained.
 
`Y4 - `xAddress any and all issues brought to your attention by the `cOwner`x in a timely fashion and inform her when and how the situation is resolved.
 
`Y5 - `xYou are additionally responsibile for any special projects as requested by the `cOwner`x.
 
Punishment is at the discretion of The `cOwner`x and any reasonable punishment is considered fair.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com.
~
last_editor Zeus~
last_editdate 1097374106
END

keyword HEAD-CODER~
level 93
category undefined~
text . 
`xListed herein are the "Head Coder Rules of Conduct and Duties" that `rmust`x be adhered to at all times. Failure to do so will result in punishments as decided by the punishing Admin and may include `rdeletion`x. You have been warned and were asked to read this file when you became The Head Coder here on Athens. As such ignorance is not an excuse. Ever.
 
`R***`CBy viture of your Department Head Status you have a seat on the Council of Heads. This Council only grants seats to the Head NSA, Head Builder, Head Coder, Head Admin, and Owner.`R***`x
 
`Y1 - `xYou are responsible for the continued expansion and improvment of the code. It is your duty to ensure that frequent code side improvments are made to the game. To this end you have almost unlimited control over the hiring and firing of Coders, as well as punishing them. The `cHead Admin`x and `cOwner`x reserve the right to hire or dismiss any Coder(s) as we see fit. You `CWILL`x be notified of any changes made to the Coding Staff.
 
`Y2 - `xAny case in which `rprobation`x or `rdeletion`x is required a note MUST be sent to The `cHead Admin`x AND `cOwner`x so that the appropriate email can be sent to the person notifying them of their fate before the punishment is delivered. Dismissal is simply lowering the person's level to that of a mortal and is not included in this rule.
 
`Y3 - `xAny time you hire or dismiss a Coder a note MUST be sent to the `cHead Builder`x, `cHead Admin`x, `cHead NSA`x and `cOwner`x notifying them of the new staff member and their position or who was dismissed. Failure will result in a loss of anonymity, probation, or else being reduced in rank to that of a Coder.
 
`Y4 - `xIt is your responsibility to over see the actions of all Coders. At any time that they are out of line it is your duty to punish them as needed including `probation`x/`cdeletion`x as you feel required. Again for these punishments you must notify the `cHead Admin`x or `cOwner`x. If you need help with an investigation note the `cHead Admin`x or `cOwner`x asking them to assign a Senior Admin to the case or if one is available, ask them to investigate it. They don't work for you so they do have the right to refuse. If you find this to be a consistent problem note the `cHead Admin`x so that he or she can take corrective measures.
 
`Y5 - `xWhile you do not have authority over the Newbie Support Admins, Builders, or Admins you are at a higher level so a certain amount of respect is required. If they fail to do this or if you suspect them of violation of the Immortal Rules, Newbie Support Admin Rules, Builder Rules, or Admin Rules note the `cHead Admin`x AND appropriate Department Head so that it can be investigated.
 
`Y6 - `xAt any time you are to keep track of the projects that each Coder is working on, as well as assign Coders to correct any code side typos, balance issues, or bugs.
 
`Y7 - `CAny and all changes`x to the rules by which Coders operate (HELP CODER-RULES) must be approved by the `cHead Admin`x in advance to its being implemented.
 
`Y8 - `xYou are NOT to advance Immortals to ANY position besides that of Coder. If you are caught advancing people to Newbie Support Admin, Builder, Admin, or Department Head level you will be IMMEDIATLY stripped of the advance command.
 
Punishment is at the discretion of The `cHead Admin`x and any reasonable punishment is considered fair. You do have the right to appeal to the `cOwner`x if you do not agree with your punishment.
 
If you have any questions, comments, or suggestions please contact Hera at hera_of_athens@yahoo.com or Zeus at zeus.of.athens@adelphia.net
~
last_editor Zeus~
last_editdate 1097374095
END

keyword NOTE-GROUPS~
level 92
helpflags wordwrapped~
category notes~
text There are different groups that are available with the notes system, they 
are as follows:`+
`+
`Y Title - Received by:`=? `+
All - Everyone `+
imm - All immortals `+
admin - The admin as per wizlist `+
noble - All nobles, mortal and immortal.  `+
build - Those with an olc security of 1 or higher.  `+
olc - Those with an olc security of 5 or higher.  `+
hero - Those who have reached level 91 `+
nsupport- all newbie support characters.  `+
allclans - all the clans in the game `+
quester - all players with their quester flag on`+
nonquester - all players that aren't questers`+
 
~
END

keyword OLC-LRANGE OLCAEDIT-LCOMMENT~
level 92
category olc:aedit~
see_also OLC OLC-COMMANDS~
text LRange - OLC redit command:
Lrange <lower> <higher> sets the recommended player levels for the area, as
appears on the area list.

As an example it would simply be set to 'lrange 10 25' to recommend the
area for players of level 10 to 25.

LComment - OLC aedit command:
Lcomment is for when you want something besides recommended levels to appear
on the area list.
It will override any lrange entered, and needs to be 7 characters wide,
with the first and last being brackets [].

For example, the areas showing [ test] on the area list were set that way
by simply entering 'lcomment [ test]'

If you want the area to remain mysterious, or if its a storage area etc,
you can clear the lcomment ('lcomment clear') and have a lrange of -1 -1.

~
END

keyword OLCAEDIT-LOCK~
level 92
helpflags builder wordwrapped~
category olc:aedit~
see_also OLCAEDIT-USE-BUILDRESTRICTS OLCAEDIT-RESTRICT~
text `=lSyntax: `=CLock`+
`=lSecurity: `=?9`+
`+
`=?This command is a security 9 command when in olc. It can be used with in 
AEDIT. What it does is it locks an area completely from being modified. If 
for example the area is set to security 6 then everyone with security 6 and 
under even if on the builder's list cannot modify the area in any shape, 
size, or form.`+

~
END

keyword OLCAEDIT-USE-BUILDRESTRICTS~
level 92
helpflags wordwrapped~
category olc:aedit~
text `=lSyntax: `=Cuse-buildrestricts`+
`=lSecurity: `=?9`+
`+
 This option can be used while in AEDIT mode in OLC. What it does is when 
its enabled it sets the build-restricts on the area. Whomever is set on the 
Build-restricts will have access to the certain area they are listed under 
in builder restricts. If someone is listed under the Builder restricts even 
if they have security 1 they can access the field they are assigned too. 
Unless a Lock is put on the area and the security parameters is higher than 
the person listed in the Builder restricts files.`+

~
END

keyword OLCAEDIT-RESTRICT~
level 92
category undefined~
see_also OLCAEDIT-USE-BUILDRESTRICTS OLCAEDIT-LOCK~
text .. 
`=lSyntax: `cRestrict
`=lSecurity: `c9
 
When use_build is activated this parameter of settings activate as well. Fairly simple to understand the restrict fields allow builders in only certain fields of the area. When setting the use_build. Below is a list of the Restrict Options and a short definition of what they do.
 
`CALL: `cGives Player/players/all access to every section in the area.
`CAREA: `cGives Player/players/all access to area file.
`CExits: `cGives Player/players/all access to linking rooms.
`CMobprogs: `cGives Player/players/all access to creating/adding mprogs.
`CMobs: `cGives Player/players/all access to creating mobiles.
`CObjects: `cGives Player/players/all access to creating objects.
`CResets: `cGives Player/players/all access to adding and removing resets.
`CRooms: `cGives Player/players/all access to rooms.
`COther: `cGives Player/players/all access to extra options. Ie: saving.
 
~
END

keyword OLC-ITEM-TOKEN~
title OBJECT TYPE: Token - Flags~
level 92
helpflags builder~
category olc:oedit:item~
text Flags Available:
 
`#`WDropdeath `^- `y(what it suggests) :p`^
`#`WQuitdeath `^- `yToken will disappear when character quits.`^
`#`y            Tokens will remain across hotreboots however.`^
~
END

keyword OLC-ITEM-LIGHT~
title OBJECT TYPE: Light - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    unused
   value 1    unused
   value 2    hours of light available, 0 is dead, -1 or 999 is infinite
   value 3    unused
   value 4    unused
~
END

keyword OLC-ITEM-STAFF-WAND~
title OBJECT TYPE: Staff/Wand - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    level
   value 1    max charges
   value 2    current charges
   value 3    spell name
   value 4    unused
 
 
An up-to-date list of spells can be obtained by typing:
? SPELLS [ignore/attack/defend/self/object/all]
~
END

keyword OLC-ITEM-SCROLL-POTION-PILL~
title OBJECT TYPE: Scroll/Potion/Pill - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    level
   value 1    spell name 1
   value 2    spell name 2
   value 3    spell name 3
   value 4    spell name 4
 
An up-to-date list of spells can be obtained by typing:
? SPELLS [ignore/attack/defend/self/object/all]
~
END

keyword OLC-ITEM-ARMOR OLC-ITEM-ARMOUR~
title OBJECT TYPE: Armour - Values~
level 92
helpflags builder~
category olc:oedit:item~
see_also OLC-ARMS-AND-ARMOUR OLCBALANCE-ACVALUE~
text .   value 0    ac pierce
   value 1    ac bash
   value 2    ac slash
   value 3    ac exotic (magic)
   value 4    unused
~
END

keyword OLC-ITEM-WEAPON~
title OBJECT TYPE: Weapon - Values~
level 92
helpflags builder~
category olc:oedit:item~
see_also OLC-ARMS-AND-ARMOUR OLC-SPECIAL-DAM~
text .   value 0    weapon class.
   value 1    number of dice to roll.
   value 2    type of dice to roll.
   value 3    weapon type.
   value 4    special weapon type.
 
An up-to-date list of values can be obtained by typing
? WCLASS
help WEAPON_DICE
? WEAPON
? WTYPE
 
The table for weapon damage per level is on `rhelp `=_OLCBALANCE-WDAMAGE
The guidelines for weapon modifiers are at `rhelp `=_OLCBALANCE-WMODIFY
 
~
END

keyword OLC-ITEM-CONTAINER~
title OBJECT TYPE: Container - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    max weight
   value 1    flags: closeable, pickproof, closed, locked, puton           
   value 2    key vnum
   value 3    capacity
   value 4    weight multiplier
 
Notes: v0 = is the maximum weight the container can hold... that is obtained 
by adding all objects in the containers true weights together.
v3 = is the maximum weight any single object can be to be able to be put 
inside the container
 
An up-to-date list of flags can be obtained by typing
? CONTAINER
~
END

keyword OLC-ITEM-DRINK~
title OBJECT TYPE: Drink - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    capacity
   value 1    current quantity
   value 2    liquid type
   value 3    poisoned?
   value 4    unused
 
An up-to-date list of liquid types can be obtained by typing
? LIQUID
~
END

keyword OLC-ITEM-FOOD~
title OBJECT TYPE: Food - Values~
level 92
category olc:oedit:item~
text .   value 0    hours of food value
   value 1    unused
   value 2    unused
   value 3    poisoned?
   value 4    unused
~
END

keyword OLC-ITEM-MONEY~
title OBJECT TYPE: Money - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .   value 0    value in silver pieces
   value 1    value in gold pieces
   value 2    unused
   value 3    unused
   value 4    unused
~
END

keyword OLC-ITEM-POULTICE~
title OBJECT TYPE: Poultice - Values~
level 92
category olc:oedit:item~
text .   value 0    spell level
   value 1    total number of applications
   value 2    current number of applications
   value 3    spell name
   value 4    unused
 
 
An up-to-date list of spells can be obtained by typing:
? SPELLS [ignore/attack/defend/self/object/all]
~
END

keyword OLC-ITEM-FURNITURE~
title OBJECT TYPE: Furniture - Values~
level 92
helpflags builder~
category olc:oedit:item~
text .  `=Cv`=?alue `=C0`=?   max people (suggested range 1 to 1000). 
  `=Cv`=?alue `=C1`=?   max weight (typically v1 * 20). 
  `=Cv`=?alue `=C2`=?   furniture flags, these include:
stand_at           stand_on           stand_in           stand_under        
sit_at             sit_on             sit_in             sit_under          
rest_at            rest_on            rest_in            rest_under         
sleep_at           sleep_on           sleep_in           sleep_under        
put_at             put_on             put_in             put_inside         
put_under          kneel_at           kneel_on           kneel_in           
kneel_under 
 
  `=Cv`=?alue `=C3`=?   healing bonus as a % increase or decrease 
            (modifies a players hp regeneration rate when they are "on it".
            item requires sit, sleep, or something like that in v2). 
 
  `=Cv`=?alue `=C4`=?   mana bonus as a % increase or decrease
           (modifies a players mana regeneration rate when they are "on it". 
            item requires sit, sleep, or something like that in v2). 
  
An up-to-date list of furniture flags can be obtained by typing: `=C? furniture`=?
~
END

keyword OLCPOLICY-BALANCE-CHECK~
level 92
category undefined~
text .   All the object must be checked by the Balance Council before entering
in the game! And from time to time the balance will take a look on player's 
items and immortal's items to be sure there is no unbalanced equipment. 
`+
Remember that immortal equipment must be at least level 92! The balance
will check the objects that players can get using the mix command too.
   If the balance finds any overpowered item it will be removed from
the game without any warning! So, please, if you want include any obejct
in the game ask the balance to check it to avoid misunderstandings. 
   To ask the balance check your item, please, make a new line 
on the `#`Rbalance-list`^ help file, and write:
 
`#`Ryour name`^ (for whom we will write any note when necessary);
`#`Rvnum of the object`^;
`#`Rname of the player`^ who will receive the object;
`#`Rkind of object`^: (`#`Btrash, normal, quest `^or`#`B artfact`^)
`#`Robject's type`^;
 
and how hard will be the quest for the player get this object:
`#`Reasy`^ (`#`Be`^)`#`b.......`^: only solve a puzzle;
`#`Rmedium`^ `#`B(m`^)`#`b.....`^: solve a puzzle in a dangerous situation, but will 
                       not get killed, mob below player's level;
`#`Rhard`^ (`#`Bh`^)`#`b.......`^: solve a puzzle in a dangerous situation probably 
                       will get be killed, mob above player's level;
`#`Rvery hard`^ (`#`Bvh`^)`#`b.`^: solve a puzzle and will get killed to get the object.
 
And your request `#`Rrequest`^ on the stats.
 
The balance will edit this file after checking your object, so the stats will
change to:
 
`#`Gok`^              : means it was checked and approved
`#`Ychange`^          : means that it must be changed, you will receive a inote
                        about what is wrong with the object.
 
~
END

keyword NOTE-COPYTO~
level 92
category undefined~
text `=lSyntax: `=?<board> copyto <#> <newboard>`+
`+
Copyto allows you to transfer a message from one board to another board, 
i.e. note->inote,  change->news, etc.  `+
`+
Board is idea, note, etc, # if the number of the note, and newboard is where 
you want it copied to.   
~
END

keyword ALIGNMENT-CHANGE-POLICY~
level 92
category undefined~
text These are the guidelines for alignment changes.  If a character requests an 
alignment change and has a valid IC reason for doing so, there will be an xp 
deduction of 50xp per point of change.  If the character does not have a 
valid reason or if the alignment change is deemed necessary by the 
imms/nobles because of the alignment being played improperly, there will be 
an xp deduction of 100xp per point.  In the case that the character is not 
playing their alignment properly, they have the choice of attempting to 
correct the problem or taking the alignment change.  If a reasonable amount 
of time passes and they still are not playing the alignment properly, a 
change will be necessary.  For example, if a character has an alignment of 
+3/+3 and request it to be changed to +1/+2 due to a valid IC reason 
(something happened to their char, etc.)  , they would receive a 150xp 
deduction for the alignment change.  The xp reduction is the same regardless 
of level.  A high level person has held their beliefs longer therefore the 
effect on them is far more severe.  It is the `#`MROLEPLAYING`^ counsils 
responsibility to approve and initiate any alignment change and experience 
deduction.  
~
END

keyword COMPONENTS~
level 92
category undefined~
text The component section has been divided into nine categories.  Not all of the 
components listed in these categories are in the game at the moment.  I went 
through and thought up as many components possible and alternative names so 
in the future, these will never have to be added into the component charts 
and the code of what to register.  My idea is that the code will register 
the group of what the spell will use.  Example: barkskin would use category 
(wood) component: all So the code would register every material thats in the 
wood category and any object's material that is in the wood category would 
work with barkskin.  Other spells will be more specific.  Example: 
fireshield uses categories rock and earth component: coal, ash Another 
problem that could occur would be if someone set material on an object for 
example to ashes, so when these words are put into the categories the word 
ash would have to have: ash, ashes, another example: leaf, leaves 
-=========================================================================- 
Categories Materials/Components 
-=========================================================================- 
Metals: adamantium, brass, bronze, copper, iron, obsidian, platinum silver, 
gold, steel, metal, ore, titanium, adamantite, 
 
Jewels: amber, bloodstone, crystal, jade, diamond, emerald, onyx, opal
pearl, quartz, sapphire, gem, turquoise, ruby, jet, ameythst
 
Flesh: blood, bone, hair, flesh, shell, ivory, dragonscale, feather
fur, wool, horn, skull, skin, hide, scale, beak, claw, eye,
finger, toe, leg, arm, head, guts, heart, tail, tongue, wing
 
Alchemy: ink, wax, ether, mercury, sulfur, slime, spiderweb, water,
alcohol, acid, venom, sap, honey, honeycomb, saltwater,
 
Rock: lead, marble, rock, sand, glass, coal, stone, pebble, gravel,
brimstone, limestone,
 
Wood: ash-wood, wood, bamboo, oak, wood, bark, tree, paper,
parchment, branch, limb, twig, stick, pine, cedar, redwood,
redoak, water oak,
 
Earth: clay, mud, dust, ash, dirt, grime, sludge, tar, muck, gunk,
 
Plant: flower, hay, moss, fungus, mushroom, straw, vine, root, leaf
pine needle, grass, rose, dandelion, tulip, carnelion, pedal
seed, weed, sumac, poison ivy, blossom, shrub,
 
Herb/Spice: herb, fireroot, cinnamin, sage, paprika, garlic, salt
pepper, oregano, spice, parsley, thyme, basil, ginger
sugar, aloe, soapwart, marjoram, tarragon, wormwood
savory, sassafras, rosemary, mint, saffron, mustard
witch hazel, barberry, chives, bay, catnip, bloodroot
ephreda, flax, jimsonweed, comfrey, periwinkle
peppermint, mistletoe, pennyroyal, elderberry, hawthorn
mugwort, fennel, cloves, geranium, hemlock, rue, birch
serpentwood, hellebore, snakeroot, betony, eucalyptus
 
~
END

keyword PLUS-TO-SKILLS~
level 92
category undefined~
see_also SKBAL-CHART~
text `c======================== `RPLUS-TO-SKILLS-SECTION `c========================`X `1`1This is the helpfile on the systematics of the plus-to-skills syst This 
works on objects, and will increase the variety in objects throughout the 
realm.  The plus-to-skills system, In my opinion should not be given to 
mortals.  Reasons being the way the system is works and the fact of just 
what these items do I think that only one item of each skill should be 
available in the game thus no multiple items of pluses to backstab for 
example that would be way out of balance.  Leaving this to only immortals 
areas, it would be alot easier for us to do, rather than having to send a 
list to every builder everytime a new plus-to-skills item is imped and 
cannot be used.  `1`1The way the system works is, first off no objects under level 20 ( can have 
these skills added to them.  In `RHELP SKBAL-CHART`X you can see the required 
level an item must be to get certain skills.  Refering to the `RSKBAL-CHART`X 
you will notice that the skill backstab is towards the bottom at the 75-79 
range what this means is that the item you create with backstab skill added 
to it has to be at least level 75 and at level 75 then it can have +1% added 
to backstab notice is says 75-79 so at level 76 that would be plus 2% and so 
on to level 79 where it would be at 5%.  All items have a 1-91 global 
percentage of 10%.  What this means is that, for example, the language 
skills is set under the levels 20-24, meaning its max percentage would be at 
level 24 at 5%, its global percentage would be 10%.  The guidelines for 
making an item above its 5% max percentage are as follows using the language 
skills for example: `1`1`gskill(s) `=?= `rlanguages`X `1`glevel requirement `=?= `r20-24`X `1`gglobal requirement `=?= `r20-91`X `1`gmax level percent `=?= `r5%`X `1`gmax global percent `=?= `r10%`X `1`gmax global level req `=?= `r49-91`X `1`gglobal system `=?= `r+1% every 5 levels.  `X `1`1One thing that can be done I suppose is if one item is made with 5 another 
can be made with 5%.  Or so on with one as 1% 9 more can be made with 1% 
etc.  Realm would keep track of the items their vnums, and what they do, 
would then be put into a helpfile for fast access on what is in and what is 
already to its realm limits.  I think this about covers it, knowing me I 
probably forgot a few more things, I'd like for All of Realm and Balance to 
check this systematics chart in `RHELP SKBAL-CHART`X and tell me if everything 
looks good, or if you feel that the level ranges on some of the skills need 
to be upped or lowered.
~
END

keyword IMMHELP~
title `#`GImmortal Help Files`^~
level 92
category undefined~
text The following files may be helpful for an immortal in Athens: 

- `Yhelp`^ `=_rules-for-immortals
- `Yhelp`^ `=_commands-for-immortals
- `Yhelp`^ `=_olc-help
~
last_editor Eris~
last_editdate 1107784205
END

keyword NSUPPORT-COMMANDS~
level 15
helpflags nsupport~
category undefined~
see_also SEND CHARDESC~
text Newbie support personnel have access to several comamnds to help them 
accomplish their duties.  Most useful is the `#`Ctell`^ command, which will allow 
you to talk to a newbie no matter where they are on the mud. The `Cchardesc`^ 
will allow you to help a newbie with their long description, and `Csend`^ allows 
you to email a copy of the newbie document to them.  Check the helps for 
more information and syntax. `+
`+
~
END

keyword SCHEDULE~
title Schedule of Automated Events~
level 92
category undefined~
text . 0a Double Xp
 4a load pig
 6a Athens and Megara invade each other
 8a Apples Start
 10a Boon
12p Apples End 
 4p laurel
 6p Knossos invades Athens and Megara
 10p Boon
~
last_editor Hera~
last_editdate 1114774688
END

EOF~
#$