Creating Rooms and Areas (cont'd)
Creating and Propping Exits:
To avoid leaving floating rooms lying about, it's a good idea to create the
exits linking rooms immediately after @digging the rooms. As
discussed in Section 2.3, exit names can include
aliases: alternate names, separated by semi-colons, that can be used in place
of the full name. The first alias is the one that will be shown by
obvious-exits programs. A common and worthwhile convention is to set the first
alias as a combination of the full name and a notation indicating valid
abbreviated aliases.
And, since putting message props on exits is the kind of niggling detail
that's easy to forget if you leave it to later, it's also a good idea to set
the message props immediately after @opening the exits.
====================================
> @open West Wing <W>;west wing;west;w = #4804
Exit opened with number 4805.
Trying to link...
Linked to Amberside Inn: West Wing(#4804R)
> @desc w = A sturdy wooden door leading to rooms on the west wing.
Description set.
> @succ w = You pull open the door to the West Wing hallway...
Message set.
> @osucc w = goes into the West Wing.
Message set.
> @odrop w = comes in from the Tavern.
Message set.
====================================
Exits are one way: in order to create a `door' between rooms, you need two
exits, one leading in each direction. So, we complete the door between the
Tavern and the West Wing by going to the West Wing and making another exit
leading back to the Tavern. We gave the Tavern the registered name `ai', so it
will be easy to link back to. But, if we had not done this, and the room's
dbref had scrolled off the screen, we could determine it with the
@find command.
====================================
> w
You pull open the door to the West Wing hallway...
Amberside Inn: West Wing(#4804R)
> @find tavern
Amberside Inn: Tavern(#4802R)
***End of List***
1 objects found.
> @open Tavern ;tavern;t;east;e = #4802
Exit opened with number 4806.
Trying to link...
Linked to Amberside Inn: Tavern(#4802R)
> @desc t = A strong wooden door.
Description set.
> @succ t = You open the door into the inn's tavern.
Message set.
> @osucc t = goes into the Tavern.
Message set.
> @odrop t = comes out of the west hallway.
Message set.
> t
You open the door into the inn's tavern.
Amberside Inn: Tavern(#4802R)
====================================
We gave the exits user-friendly aliases, but the exits are not showing up
at all when we look at the room. The server `look' command, and
most user-created look programs as well, do not show obvious exit
lists by default. In order to have such a list appended to our rooms'
descriptions, we will need to set the @succ message on the rooms
to trigger an obvious-exit programs. You will probably need to page a wizard
or helpstaff member to determine the dbref or registered name of such a
program. As discussed in Section 2.1.4, the dbref
or regname of MUF programs triggered by message props need to be
prefaced by an @ at-mark.
====================================
> l
Amberside Inn: Tavern(#4802R)
> p jessy = Hiya... Can you tell me the dbref or regname of the
obvious exits program?
You page, "Hiya... Can you tell me the dbref or regname of the
obvious exits program?" to Jessy.
Jessy pages, "It's dbref #183... reg name $obvex."
> p = OK, thanks.
You page, "OK, thanks." to Jessy.
> @succ here = @$obvex
Message set.
> l
Amberside Inn: Tavern(#4802R)
Obvious Exits:
West Wing <W>
====================================
We will need to set this @succ message on all rooms in the
area for which we want obvious-exit lists.
prev|
toc|
top|
next
|