tmi2_fluffos_v2/
tmi2_fluffos_v2/bin/
tmi2_fluffos_v2/etc/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/ChangeLog.old/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/Win32/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/compat/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/compat/simuls/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/include/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/clone/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/command/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/data/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/etc/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/include/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/inherit/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/inherit/master/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/log/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/single/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/single/tests/compiler/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/single/tests/efuns/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/single/tests/operators/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/testsuite/u/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/tmp/
tmi2_fluffos_v2/fluffos-2.7-ds2.018/windows/
tmi2_fluffos_v2/lib/
tmi2_fluffos_v2/lib/adm/
tmi2_fluffos_v2/lib/adm/daemons/languages/
tmi2_fluffos_v2/lib/adm/daemons/network/I3/
tmi2_fluffos_v2/lib/adm/daemons/virtual/
tmi2_fluffos_v2/lib/adm/daemons/virtual/template/
tmi2_fluffos_v2/lib/adm/news/
tmi2_fluffos_v2/lib/adm/obj/
tmi2_fluffos_v2/lib/adm/obj/master/
tmi2_fluffos_v2/lib/adm/priv/
tmi2_fluffos_v2/lib/adm/shell/
tmi2_fluffos_v2/lib/adm/tmp/
tmi2_fluffos_v2/lib/cmds/
tmi2_fluffos_v2/lib/d/
tmi2_fluffos_v2/lib/d/Conf/
tmi2_fluffos_v2/lib/d/Conf/adm/
tmi2_fluffos_v2/lib/d/Conf/boards/
tmi2_fluffos_v2/lib/d/Conf/cmds/
tmi2_fluffos_v2/lib/d/Conf/data/
tmi2_fluffos_v2/lib/d/Conf/logs/
tmi2_fluffos_v2/lib/d/Conf/obj/
tmi2_fluffos_v2/lib/d/Conf/text/help/
tmi2_fluffos_v2/lib/d/Fooland/adm/
tmi2_fluffos_v2/lib/d/Fooland/data/
tmi2_fluffos_v2/lib/d/Fooland/data/attic/
tmi2_fluffos_v2/lib/d/Fooland/items/
tmi2_fluffos_v2/lib/d/TMI/
tmi2_fluffos_v2/lib/d/TMI/adm/
tmi2_fluffos_v2/lib/d/TMI/boards/
tmi2_fluffos_v2/lib/d/TMI/data/
tmi2_fluffos_v2/lib/d/TMI/rooms/
tmi2_fluffos_v2/lib/d/grid/
tmi2_fluffos_v2/lib/d/grid/adm/
tmi2_fluffos_v2/lib/d/grid/data/
tmi2_fluffos_v2/lib/d/std/
tmi2_fluffos_v2/lib/d/std/adm/
tmi2_fluffos_v2/lib/data/adm/
tmi2_fluffos_v2/lib/data/adm/daemons/
tmi2_fluffos_v2/lib/data/adm/daemons/doc_d/
tmi2_fluffos_v2/lib/data/adm/daemons/emoted/
tmi2_fluffos_v2/lib/data/adm/daemons/network/http/
tmi2_fluffos_v2/lib/data/adm/daemons/network/services/mail_q/
tmi2_fluffos_v2/lib/data/adm/daemons/network/smtp/
tmi2_fluffos_v2/lib/data/adm/daemons/news/archives/
tmi2_fluffos_v2/lib/data/attic/connection/
tmi2_fluffos_v2/lib/data/attic/user/
tmi2_fluffos_v2/lib/data/std/connection/b/
tmi2_fluffos_v2/lib/data/std/connection/l/
tmi2_fluffos_v2/lib/data/std/user/a/
tmi2_fluffos_v2/lib/data/std/user/b/
tmi2_fluffos_v2/lib/data/std/user/d/
tmi2_fluffos_v2/lib/data/std/user/f/
tmi2_fluffos_v2/lib/data/std/user/l/
tmi2_fluffos_v2/lib/data/std/user/x/
tmi2_fluffos_v2/lib/data/u/d/dm/working/doc_d/
tmi2_fluffos_v2/lib/data/u/l/leto/doc_d/
tmi2_fluffos_v2/lib/data/u/l/leto/smtp/
tmi2_fluffos_v2/lib/doc/
tmi2_fluffos_v2/lib/doc/driverdoc/applies/
tmi2_fluffos_v2/lib/doc/driverdoc/applies/interactive/
tmi2_fluffos_v2/lib/doc/driverdoc/concepts/
tmi2_fluffos_v2/lib/doc/driverdoc/driver/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/arrays/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/buffers/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/compile/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/ed/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/filesystem/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/floats/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/functions/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/general/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/mappings/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/numbers/
tmi2_fluffos_v2/lib/doc/driverdoc/efuns/parsing/
tmi2_fluffos_v2/lib/doc/driverdoc/lpc/constructs/
tmi2_fluffos_v2/lib/doc/driverdoc/lpc/preprocessor/
tmi2_fluffos_v2/lib/doc/driverdoc/lpc/types/
tmi2_fluffos_v2/lib/doc/driverdoc/platforms/
tmi2_fluffos_v2/lib/doc/mudlib/
tmi2_fluffos_v2/lib/ftp/
tmi2_fluffos_v2/lib/include/driver/
tmi2_fluffos_v2/lib/log/
tmi2_fluffos_v2/lib/log/driver/
tmi2_fluffos_v2/lib/obj/net/
tmi2_fluffos_v2/lib/obj/shells/
tmi2_fluffos_v2/lib/obj/tools/
tmi2_fluffos_v2/lib/std/adt/
tmi2_fluffos_v2/lib/std/board/
tmi2_fluffos_v2/lib/std/body/
tmi2_fluffos_v2/lib/std/fun/
tmi2_fluffos_v2/lib/std/living/
tmi2_fluffos_v2/lib/std/object/
tmi2_fluffos_v2/lib/std/shop/
tmi2_fluffos_v2/lib/std/socket/
tmi2_fluffos_v2/lib/std/user/
tmi2_fluffos_v2/lib/std/virtual/
tmi2_fluffos_v2/lib/student/
tmi2_fluffos_v2/lib/student/kalypso/
tmi2_fluffos_v2/lib/student/kalypso/armor/
tmi2_fluffos_v2/lib/student/kalypso/rooms/
tmi2_fluffos_v2/lib/student/kalypso/weapons/
tmi2_fluffos_v2/lib/u/l/leto/
tmi2_fluffos_v2/lib/u/l/leto/cmds/
tmi2_fluffos_v2/lib/www/errors/
tmi2_fluffos_v2/lib/www/gateways/
tmi2_fluffos_v2/lib/www/images/
tmi2_fluffos_v2/old/
tmi2_fluffos_v2/win32/
The New Guide to the MudOS Directory Structure

This file is a guide to the mudlib directory structure and hopefully
gives some idea where things can be found. First a brief summary of all
directories is given, then an explanation of the subdirectories of each
directory is given.

There are 13 important directories in the root directory. They are:

/adm: various administrative objects and files.
/attic: Files that are obscure, out of date, need work, or don't really
	fit anywhere else in the structure.
/cmds: the various commands.
/d: Domain objects, such as the basic rooms of the MUD.
/data: Data files saved by game objects.
/doc: Documentation on the mudlib (most available via the help command).
/include: Files that are included at compile time by other objects.
/log: Game logs such as entry, shutdowns, and compile errors.
/obj: Ready-to-clone objects.
/open: Publicly writeable directory used to store things of general interest.
/std: Inheritable mudlib objects such as room, container, monster, plus
      such common objects as player.c
/tmp: Temporary storage to which any object can write.
/u: Wizard directories.

Each of these directories has an internal structure inside it.

/adm contains five important subdirectories. /adm/daemons stores the various
background objects that are called by other mudlib objects, such as the
finger daemon, the soul, the mail server, the virtual object facilities, and
the Intermud daemons. /adm/news contains the news files that are shown to users
when they log in: it also contains the welcome file and the FAQ list.
/adm/obj contains two important objects, the login object to which connections
are made and the master object which runs the game. /adm/simul_efun contains
the code for simulated efuns, which are used to alter the behavior of
driver functions. /adm/etc contains data user by the admin objects: the most
important of these are the configuration file, the groups file, the access
permissions file, and the Intermud addresses file.

/attic has no internal structure. It is the garbage heap of the mudlib:
old, outdated, inaccurate, or other miscellaneous files can be heaped in
here. It comes empty in the standard distribution.

/cmds stores the command daemons. It is subdivided into six directories.
/cmds/std contains the basic player commands. /cmds/ghost contains the
limited commands that can be used by dead players. /cmds/xtra contains the
basic wizard commands. /cmds/file contains the file-handling commands.
/cmds/channels contains the channels commands. /cmds/admin contains
commands related to administering the MUD, and a few commands that can
be used only by admins.
Most players should have access to /cmds/std only. Most wizards should
have access to /cmds/std, /cmds/xtra, /cmds/files, and probably /cmds/channels.

/d stores the basic domain files of the MUD, ie the rooms that connect
the wizard areas together, and the objects that appear in those rooms.
/d/std contains basic rooms such as the void that don't interact with
the main map of the MUD: if you have a wizard's lounge or some s{ch this
is a good place for it. Other subdirectories of /d are the various areas
in the mud. The default mudlib comes with /d/Footown, which stores the
rooms and objects that make up Footown, and /d/grid which stores the rooms
that interact with the virtual room facility to make up the example
wilderness area. You will want to make your own domain directories as you
lay out the land of your MUD.

/data contains three important subdirectories. /data/news list the news
files shown to wizards at login time. /data/mail contains player mail
spools. /data/user{ contains the player save files. /data/users is subdivided
further into 26 subdirectories, one for each letter of the alphabet, and
each player's save file is stored under the first letter of her name. Thus,
the player Janeroe's save file is /data/users/j/janeroe.o.

/doc contains several important subdirectories. /doc/help contains files
which can be accessed by typing "help <filename>". For example, help start
and help topics are stored here. /doc/wizhelp contains similar files that
can be accessed only by wizards. For example, help movement_messages and
help ed are stored here.
/doc/driver and /doc/mudlib contain help files relating to the driver
and the mudlib respectively. /doc/lpc contains the old LPC manual and
other documents relating to the LPC language. /doc/attic stores old
outdated documents, and /doc/etc stores miscellaneous but still up to date
documents. /doc/concepts contains outlines of the main mudlib mechanisms,
such as combat, magic, skills, guilds, security, etc.
Man pages on the various functions are found in /doc/functions.
Help for commands is not stored here, it is stored in each individual
command file.

/include has no internal structure. Files which are commonly included into
other files are stored here, and the compiler will look here for any file
which is to be included in a compile. You should use this directory to
store important information which would otherwise be hardcoded into a 
number of objects. For example, many objects inherit "/std/room". Instead
of having this hardcoded into every room, we have each room include the
file mudlib.h and mudlib.h contains the define ROOM "/std/room". That way,
if you move your standard room file, you only need to change the mudlib.h
file instead of every room in your MUD.

/log has no internal structure. It contains the various log files for events
which are recorded such as player entries, wizard promotions, sponsorings,
shutdowns, and compile errors in mudlib objects.


/obj has no internal structure. It contains common, ready to clone objects
such as a torch, a bag, an orc, a sword, etc. As you add more objects to
this directory, you may find it convenient to create /obj/monster, or similar
subdirectories, but the distribution mudlib does not have any as there are
not enough objects to warrant it.

/open is a publicly writeable directory which any wizard can write to. On
some MUDs the anonymous FTP directory will be linked to /open, so that
files anonymously FTPed to the mud will appear here. On other muds, this
directory may have other uses.

/std contains the commonly inherited objects such as monster.c, living.c,
room.c, and user.c. It has several subdirectories. Most of them contain
the files inherited by the object of the same name: ie, /std/user contains
files inherited by user.c, /std/living contains files inherited by /std/living
etc. The main exception is /object which contains the standard object files
(see /doc/mudlib/objects for explanations of this);

/tmp is publicly writeable space used for short-term storage. It is most
commonly used to write mail messages and bulletin board posts until they
are transferred to bboards or mail spools.

/u contains wizard directories. Like /data/users, it is broken into 26
subdirectories, one for each letter of the alphabet, and each user's files
are stored under the first initial of his name: thus, the home directory
of Joeblow is /u/j/joeblow.

This file written by Mobydick@TMI-2, 11-13-92.