Creating Rooms and Areas (cont'd)
Creating an Environment Room:
If you are building an area, as opposed to one or a few rooms for personal
use, it's a good idea to parent the area to an environment room. Doing so will
allow you to create commands that can be used throughout the area, and will
let you do a backup of your work with a single @archive command.
As discussed in Section 2.2, rooms by default have
the same parent room (or environment room) as the room from which they are are
created. A room can be reparented by @teleporting it to a new
environment room. A reasonable approach to building an area is to
@dig an environment room, @dig the first room in the
area with the just-created environment room as its parent, and move to the new
room before creating additional rooms in the area. This way, standard
@dig commands will cause the additional rooms to be parented to
the area's environment room.
====================================
> @dig Amberside Environment Room (create the environment room)
Amberside Environment Room created with room number 4801.
> @register #4801 = aer (give it a registered name for easy access)
Now registered as _reg/aer:Amberside Environment Room(#4801) on
Shadowkat(#1131PBJ)
> @set $aer = A (set env room Abode, so it will show up in @trace)
Flag set.
> @dig Amberside Inn: Tavern = $aer
Amberside Inn: Tavern created with room number 4802.
Trying to parent...
Parent set to Amberside Environment Room(#4801RA).
> @register #4802 = ai (register this too, since we'll be going there)
Now registered as _reg/ai:Amberside Inn: Tavern(#4802) on
Shadowkat(#1131PBJ)
> @tel me = $ai (go there)
You feel a wrenching sensation...
Amberside Inn: Tavern(#4802R)
Teleported.
====================================
If system parameters on your MUCK are set such that you cannot
teleport to your new room, it will be worthwhile to create a personal exit
that takes you there, for use while you are building the area. After the area
is built and linked to the rest of the MUCK, you can recycle
it.
====================================
> @act ai = me
Action created with number 4803 and attached.
> @link ai = $ai
Linked to Amberside Inn: Tavern(#4802)
> ai
Amberside Inn: Tavern(#4802R)
> @trace here
Amberside Inn: Tavern(#4802R)
Amberside Environment Room(#4801RA)
Environment: Lowlands(#285RA)
Rainforest Parent Room(#121RWA)
Rainforest: Main Parent(#118RA)
Master Environment(#101RA)
**Missing**
====================================
The Amberside Environment Room is parented to Environment:
Lowlands(#285RA) , because we were under it when we issued the first
@dig command. This may be where we want it when the area is
finished, or there may be some other area of the MUCK that is
more suitable. After the area is finished, you would contact the
MUCK's builder wiz and discuss where to put the area. For now,
the current location should be fine. Additional rooms that we
@dig while under The Amberside Environment
Room(#4801RA) will automatically be parented to there.
====================================
> @dig Amberside Inn: West Wing
Amberside Inn: West Wing created with room number 4804.
> @trace #4804
Amberside Inn: West Wing(#4804R)
Amberside Environment Room(#4801RA)
Environment: Lowlands(#285RA)
Rainforest Parent Room(#121RWA)
Rainforest: Main Parent(#118RA)
Master Environment(#101RA)
**Missing**
====================================
One way we could make use of the enivonment room is to provide a command
available throughout the area we are building, and only in that area. If we
make an action called map;look map;loo map;lo map;l map ,
attaching it to the environment room, and setting its @succ
to display a list with and ASCII map of the area, users will be able to
view a map of the area from anywhere within it.
====================================
> @act map;look map;loo map;lo map;l map = $ae
Action created with number 4805 and attached.
> @link map = $nothing
Linked to do-nothing.muf(#97)
> @succ map = {list:the_map,this}
Message set.
> lsedit map = the_map
( insert map )
====================================
prev |
toc |
top |
next
|