 # Mudlib Documentation
 
   File    : /std/*
   Brief   : Directory Structure Explaination
   Date    : 02-JAN-06
   Updated : 02-JAN-06

  INTRODUCTION:
  
All files under the directory '/std/' considered standard objects/
standard inheritables. These are object that contain the basic
functionality of common type objects. This document will describe
how these objects are organized into a file structure.

  BASIC STRUCTURE:
  
Directly under the '/std/' directory should be several different
directories that organize objects into different components.
For exampe, you might see something like the following when you
type 'ls /std/':

 Directory: /std/*
 
 ./                  ../                 area/               object/
 user/
 
In the above example, there is 'area', 'object', and the 'user' component.
Generally, the names of these directories should be relatively self-explainitory
(ie. area is for area type objects, object is for the base object code, and user
is for user object code.)

There should never be files directly under '/std/', only directories. This
is to keep things organized and easy to find. 

  COMPONENT STRUCTURE:
  
Sometimes there may be further sub-directories under the differnet
components but that is not a rule. Sub-directories and components
can be added as nessary though. For example, at the time of writing,
there is only a sub-directory 'rooms' under area (which contains the
standard room inheritable at this time). As the more code is developed
for area type objects, soon their will be sub-directories for mobs/npcs,
food, furniture, weapons, etc. 

  DEPENDENCIES:
  
There are bound to be dependencies between the different components.
For example, most components will inherit the base object in the
object component (/std/object/object.). I recommend that you try to
get your components self-contained but _do not violate oop principles
to accomplish this_! (ie. Do not copy a file to a component to keep it
self-contained, etc.). 

In the future, I plan to develop a tool to auto-compute dependencies.
Until then, make sure to document it.

  DOCUMENTATION:
  
Documentation is MANDATORY for all standard objects. Every single object
under /std/ MUST be documented correctly and in abundence! Ensure that
you document how to use the object, what every function does, options
available, examples, dependencies, etc. This is extreamly important!

Please place your documentation appropraitly in /doc/mudlib/std_objects/
Also ensure to stamp the date everytime you edit the file at the
top of the file.