When a wizard works on an area he does so in his /wiz directory. When that area has been approved and is going to be put into the game, it is moved into /domains. What this means is that if you use full path names in your rooms/monster files, when we move the area we have to edit every file in order to change the paths. There are 2 solutions to that problem: The first is to use relative path names, and will not be covered in this document. The second is through the use of an 'include' file. This file will define macros that you will use in your area files ( They are very similiar to the 'aliases' you used as a player, when the mud encounters one of these it will replace it with the value its defined as). When we move the area we then only have to change the one include file, and your entire area is portable. Below is a partial include file I used in the plants area on misty. /* differant paths we can use. */ #define MY_DIR "/domains/mists/plants/" #define PLANT_ROOMS MY_DIR "rooms/" #define MY_OBJS MY_DIR "obj/" #define MY_EQ MY_DIR "eq/" #define MY_MONS MY_DIR "monsters/" #define MY_MISC MY_DIR "misc/" #define MY_INHERITS MY_DIR "inherits/" This looks real confusing at first, but lets concentrate on the top part first (starting with MY_DIR, and ending with MY_INHERITS). I start by defining the directory that this include file is in in this case its /domains/mists/plants/paths.h And then I define a bunch of other things for monsters, rooms, etc all using that MY_DIR define as the base. What this means is that every where I use MY_MONS in my area files, /domains/mists/plants/monsters will be put in. Example from a room: #include "../paths.h" /* ../paths.h because this file is in /domains/mists/plants/rooms/room1.c */ /* and that paths.h file is in /domains/mists/plants/paths.h */ inherit ROOM; void setup() { ... other stuff here ... set_objects( ([ MY_MONS "schizo." : 1, /* this exapands to /domains/mists/plants/mons/schizo */ MY_MONS "treant" : 1, /* this exapands to /domains/mists/plants/mons/treant */ ]) ); } Notice the #include as the first line. You must put this in _all_ files that you are creating (depending on how you structure things the value in the "" may change. *** WARNING *** One common thing I have seen happen is that a wizard will create a #define for ROOM,OBJ, MONSTER. This will cause lots of problems with your area as that redefines the 'standard' ROOM/OBJ/MONSTER object. That is why I tend to put a MY_ on the front of everything I define for an area, that way I dont interfere with any of the standard inherits.