Making Exits & Doors |
(direction) DIG (vnum) : - this creates a room with the vnum specified, and
links it in a two-way exit in that direction.
(direction) ROOM (vnum) : - this makes a one-way exit to the room with the
vnum specified..however the room needs to be
created already.
(direction) LINK (vnum) : - this makes a two-way exit to the room with the
vnum specified.. Only IF the room is already created.
(direction) DELETE : - deletes this exit (not the room)
MAKING DOORS:
(In this order)
(direction) FLAG DOOR: - makes this exit have a door.
(direction) NAME (string) : - sets the name of the door. If you want the door to be
closed upon reset/crash/reboot, make the NAME of the
door something besides "door"
(direction) (flags) : - sets the door flags, type ? EXIT for a list of
flags. These can be: closed, open, etc.
Door Flags
![]()
door closed locked pickproof
secret nopass easy hard
infuriating noclose nolock key
EXAMPLE:
of building a room with doors, exits, extended descriptions
![]()
edit room create 20323 - This creates room 20323 and takes me to it
name {mEntrance to the Mines{x - This sets the name of the room
heal 100 - Automatically set to 100
mana 100 - Automatically set to 100
safe no_recall newbies_only - This makes the room safe (you cannot
attack in this room), no recall, and only
lets in players under level 5 (inclusive)
air - Makes the room sector AIR, which means
PC's need to fly to enter
desc - enters the description editor
A boring boring room. - sets the first line of the description editor
NOTE
There is a maximum oh how much you can type without hitting enter, somewhere between 3 and 4 lines. You may enter anywhere (don’t enter in the middle of a word) and use .f to format the whole description.
.f - formats the description
.s - shows me what the description is so far
.r "room" "room with a single mirror and a desk" - replaces the text
.f - formats the description
@ - takes me from the desc editor into
the room editor
ed add mirror - makes a keyword "mirror" and takes me into
the ED DESC editor
This mirror is broken. - sets the first line of the ED desc
@ - takes me back into the room editor
NORTH DIG 20324 - makes a two way exit north to room 20324
NORTH FLAG DOOR - makes the north exit a door
NORTH FLAG CLOSED - makes the gate closed
NORTH NAME gate - makes the exit keyword "gate"
NORTH KEY 20324 - makes the key to the door object vnum 20324 use or create
any key, just reference the vnum)
EDIT ROOM create 20325 - creates room 20325 and takes you to it
GOTO 20323 - takes you to the first room
EAST ROOM 20325 - makes a one way link east to room 20325
EAST name desk - makes "desk" the name of the exit.
asave area - saves the changes to this area.
done - exits editor into regular gameplay
EXIT DIRECTIONS ETC
![]()
Set up your exits to logically travel along straight north-south, east-west, and up-down paths.
You also have the option to randomize the exits of a room, or a series of rooms every time the area upsets. You presently have an option of two types of random areas: a 2D (n,s,w,e) random area, and a 3D (n,s,w,e,u,d) random area. The basic recipe is as follows:
(1) Lay out your rooms on a piece of paper and connect them such that all of the exit paths are straight (n-s, w-e, u-d)
Say you have room “A” exiting south to room “B”. If room “B” has a north exit (IE the reverse exit), it MUST go back to room “A” (IE it must reverse). If “B” exits north to a different room, you get a crash.
For a complex random area, creating the grid is not as trivial as it may seem. I found it best to work under a wrap-around principal.
Consider:
E----F
A----B E----F |\ |\ U N
| | | | | \ | \ \|
| | | | G----H \ W--+--E
C----D G----H \ A-\--B |\
\ | \ | S D
Level1 Level2 \| \|
C----D
Where ABCD is level 1 and EFGH is level 2 in a 3D random area. To make it more complex, I would have A exit west to B, and from B back east to A. Then from A north to C, and from C back south to A. This is a ‘wraparound’ within the plane of the level. The same is done to the second level:
,---------. ,--.
| | | | N
`--A---B--' | A---B |
| | | | | W--+--E
C---D | C---D |
| | S
`--'
Between levels, A goes up to E, and E goes down to A. The between levels wraparound would be: E goes up to A, and A goes down to E:
_
/ \
\ E--F U
\ \ \ \
\ A--B W--+--E
\ \ \
\_/ D
Now lets say you want to connect into the above zone. Lets say room X is not random and you want it to connect to room C. If X connected north to C, you would need C to go back south to X. Now here is the hitch. Because A wraps north to C, stupid merc wants C to reverse south to A, not X. So you would have to connect X to another room, or eliminate the north-south wrap exit from A to C. (boy all those diagrams for nothing?) So the point is, lay out your exits carefully.
(2) Declare your exits random with the random set for the room. Remember a 2D maze will have a random 3 reset (since exits N,E,S,W are numbers 0-3), and a 3D maze will have a random 5 reset (since N,E,S,W,U,D are numbers 0-5)
NOTE: For random exits, use in a small area such as a maze.
