The Book of Exits is here to help the new builder understand what exits are, what they can and can't do, and a little about some tricks you can do with exits that aren't in the 'help' docs. Since this book can't hope to be comprehensive, a lot of the references here will refer you to these docs, which are invoked by the typing of 'help [command]' where [command] is replaced with the name of the command you are hoping to find help on. For instance, if you would like help on the command to open an exit, which is called '@open', you would type 'help @open' on a line by itself. Refer to Ginger's Book Of Idiosyncrasies for help on exactly how to interpret my examples. :)
@open [name of exit]
@open east;e;bathroom;b;bath
Of course, @open just creates your exit leading into a brick wall. You'll need to @link it somewhere before people can go through it!
@open east;e;bathroom;bath;b (see 'help @open')
Now you have the door. To knock down that brick wall, and connect it to your
bathroom (so you can get in!) you type:
@link east=#2345 (see 'help @link')
1. @open west;w;bedroom;b;bed (makes that door going back!)
2. @link west=#1234 (links the door to your bedroom!)
@open east;e;bathroom;b;bath=#2345 (opens the door *and* links it!)
@open west;w;bedroom;bed;b=#1234 (an exit back to the bedroom!)
Now you have a door that works both ways, and you can get from your bedroom into your bathroom, and vice versa!
@backlink east;e;bathroom;b;bath=#2345,west;w;bedroom;bed;b
(@backlink [ 'in' exit ] =[ db# ] , [ 'out' exit ] )
Voila'! You've now opened two exits, and you can get back and forth between your bedroom and bathroom without problems. Handy, isn't it?
These names are NOT case-sensitive. That is, for the 'east;e;bathroom' exit described above, players can also type 'E', 'EAST', 'BATHroom', or 'B' to go through the exit. Whether the name is typed in capitals or not doesn't matter.
If you use Obvious Exits ('@succ here=@1393') to show all the exits in a room in its description, only the FIRST name of the exit will show up. If you're using Obvious Exits in your bedroom, for instance, your 'east;e;bathroom' exit will only show in the description as 'east'. If you wanted to fancy up the name (since Obvious Exits only shows the first name of an exit (the stuff before the first semicolon), you can make the first name very fancy to make your room description look different), you could name it '(E)ast;e;east;bathroom;bath;b' or anything else. People could still type just 'e' to get through, but the name "looks better".
@act gaze=Transporter Ring (this opens an exit *attached* to the
ring ('help @action').)
@link gaze=me (connects the opened exit to *you*)
Now, anyone holding the ring can type 'gaze', and they will be transported
directly to your location (the room you're in). They won't appear inside
you, or in your inventory. You could also @link 'gaze' to your bedroom, and
they would appear there.You can also make "fake actions" in your rooms so that people can 'sit' on things, or 'climb' into your bed, even if you don't have a bed object that's actually sitting somewhere in the room.
If you'd like to have people be able to sit down in your room, even if there isn't an object called 'chair' there, stand in your room and type:
@open sit=here (this opens an exit called 'sit' and links it
to the room you're in, so you don't go anywhere
when you use the exit)
@lock sit=me&!me (allows the @fail message to be seen)
@fail sit=[a message, like "You sit down on the chair."]
@ofail sit=[another message, like "sits down on the chair."]
The @fail and @ofail commands govern the messages people see when they try to 'sit' down. The @ofail is prepended with the sitter's name; if Bob typed 'sit' in the room with the action, he would see 'You sit down on the chair.', and everyone else in the room would see 'Bob sits down on the chair.' For more help on this, type 'help bogus'.
You can also make exits retrieve items for you. Let's look at the Transporter Ring from the First Page of "Special Tricks": if you'd given that to Ralph, and wanted it back, you couldn't get it out of his inventory without some fiddling. However, you can @link an exit to the ring, and, whenever you typed the name of the exit, the ring would jump into your inventory, no matter where it had been before. To make an exit called 'getring' that would always call your Transporter Ring into your inventory, you would type:
@act getring=me (creates an exit called 'getring',
attached to you)
@link getring=Transporter Ring (links 'getring' to
the Transporter)
Now, whenever you type 'getring', your ring will appear in your possession, as if by magic. To see your inventory, type 'i'.