/
teeny/db/
teeny/dbm/
teeny/docs/
teeny/includes/
teeny/misc/
teeny/news/
teeny/text/
These docs were derived from the TinyMud docs that Chrysalis (now known
as Moira) and Three put together.
					-- Xibo

Dictionary of Commands
----------------------

DROP
drop <object>. Drops <object>. Dropping a thing in the temple sacrifices it
(See SACRIFICING in the encyclopedia). Otherwise, a dropped thing is relocated
to the current room, unless its STICKY flag is set (See STICKY), or the room
has a drop-to (See DROP-TOS). Unlinked exits can only be dropped in rooms you
control. 'throw' is the same as 'drop'.

EXAMINE
examine [object]. Displays all available information about <object>. <object>
can be specified as <name> or #<number>, or as 'me' or 'here'. You must
control the object to examine it. If you do not own the object, you will just
be shown the owner of the object and its description.
Wizards can examine objects in other rooms using #<number> or *<player>.

GET
get <object>. Picks up <object>. <object> can be a thing or an unlinked exit.
'take' is the same as 'get'.

GO
go <direction>; go home. Goes in the specified direction. 'go home' is
a special command that returns you to your starting location. The word 'go'
may be omitted. 'move' is the same as 'go'.

GRIPE
gripe <message>. Sends <message> to the system maintainer.

HELP
help. This displays a short help message.

INVENTORY
inventory. Lists what you are carrying. This can usually be abbreviated to inv.

KILL
kill <player>.  Kills the specified player, sending him home.  
Players cannot be killed in rooms which have been set HAVEN. (see HAVEN)

LOOK
look [object]. Displays the description of <object>, or the room you're in if
you don't specify one. <object> can be a thing, player, exit, or room,
specified as <name> or #<number> or 'me' or 'here'. 'read' is the same as
'look'.
Wizards can look at objects in other rooms using #<number> or *<player>.

MOVE
See GO.

NEWS
news. Displays the current news file for the game. Must be typed in full.

PAGE
page <player> [=<message>]. This tells a player that you are looking for them.
They will get a message telling them your name and location.
If you include the '=<message>', it will tell the player your name and your
message, but not your location.
If a player is set STICKY, you cannot page them, and they will not be notified
that you tried.

QUIT
QUIT. Log out and leave the game. Must be in all capitals.

READ
See LOOK.

SAY
say <message>. Says <message> out loud. You can also use '"<message>'. Another
command is ':<message>'. This is used for actions, ex. if your name was Igor,
and you typed ':falls down.', everyone would see "Igor falls down." See also
WHISPER.

TAKE
See GET.

THROW
See DROP.

WHISPER
whisper <player>=<message>. Whispers the message to the named person, if they
are in the same room as you. No one else can see the message.
Wizards can whisper *<player>=<message> to whisper to players in other rooms.

WHO 
WHO [<player>]. List the name of every player currently logged in, and how
long they have been inactive. If given a player name, it displays only that
name and idle time.

@BOOT
@boot <player>. Disconnects the player from the game. Only Wizards can use
this command.

@CHOWN
@chown <object>=<player>. Changes the ownership of <object> to <player>.
Only wizards may use this command. Players can't be @chowned; they always
own themselves.

@CHOWNALL
@chownall <player1>=<player2>.  Change the ownership of all objects owned
by player1 to the player2.  Only wizards may use this command.

@CREATE
@create <name>. Creates a thing with the specified name.

@DESCRIBE
@describe <object> [=<description>]. <object> can be a thing, player, exit, or
room, specified as <name> or #<number> or 'me' or 'here'. This sets the
description a player sees when they use the command 'look <object>'. Without a
description argument, it clears the message. It can be abbreviated @desc.

@DIG
@dig <name>. Creates a new room with the specified name and displays its
number.

@DROP
@drop <object> [=<message>]. <object can be a thing, player, exit, or room,
specified as <name> or #<number> or 'me' or 'here'.  Sets the drop message
for <object>.  Without a message argument, it clears the message.  On things,
the message is displayed when it is dropped.  On players, the message is
displayed to the killer when the person is killed.  On exits, the message
is displayed before a person enters the room the exit is pointed at, but
after the Success message, if any.  This string is not used in rooms.

@DUMP
@dump. Only wizards may use this command. Saves the database index from
memory to disk. Automatically occurs every hour, and when @shutdown is used.

@EDIT
@edit <object>/<field>=<string1>,<string2>.  This command can be used
to edit any field on an object you control.  Fields are name, desc,
fail, ofail, success, osuccess, drop, and odrop, and may be abbrievated.
Since a comma separates the strings, you have to use \, for commas in
string1.

@FAIL
@fail <object> [=<message>]. <object> can be a thing, exit, or room,
specified as <name> or #<number> or 'me' or 'here'. Sets the fail message for
<object>. The message is displayed when a player fails to use <object>. Without
a message argument, it clears the message. See also @OFAIL.

@FIND
@find [name] [=<type>]. Displays the name and number of every room, thing,
or player that you control whose name matches <name>.  If <type> is specified,
the database searches among objects of only that type, thus to find an
exit you have to do @find name = exit.

@FORCE
@force <player>=<command>. Only wizards may use this command. Forces the game
to act as though <player> had entered <command>.

@GENDER
@gender <player>=<gender>.  Only wizards can set another player's gender.
Everyone should set their own gender.  Valid genders are: male, female,
neuter, it.  Genders affect the pronoun substitution in the ostrings ofail,
osuccess, and odrop.

@LINK
@link <object>=<number>; @link <object>=here; @link <dir>|<room>=home. Links
<object> to room specified by <number>. For things and players, sets the
home room (See HOMES). For rooms, sets the drop-to room (See DROP-TOS). For
exits, sets the target room; exits must be unlinked, and you must control the
target room unless its LINK_OK flag is set.
Wizards can @link objects in other rooms using #<number> or *<player>.

@LOCK
@lock <object>=<key>. Locks <object> to a specific key(s). <object> can be
specified as <name> or #<number>, or as 'me' or 'here'. Boolean expressions are
allowed, using '&' (and), '|' (or), '!' (not), and parentheses ('(' and ')')
for grouping. To lock to a player, prefix their name with '*' (ex. '*Igor').
See the example section at the end of these docs.

@NAME
@name <object>=<new name> [<password>]. Changes the name of <object>. <object>
can be a thing, player, exit, or room, specified as <name> or #<number> or 'me'
or 'here'. For a player, it requires the player's password.

@NEWPASSWORD
@newpassword <player> [=<password>]. Only wizards may use this command. Changes
<player>'s password, informing <player> that you changed it. Must be typed in
full.

@OARRIVE
@oarrive <player> [= <message>] The @oarrive message, prefixed by the
player's name, is shown to others in a room right before the player appears
as a result of a @teleport.

@ODROP
@odrop <object> [=<message>]. The @odrop message, prefixed by the player's
name, is shown to others when the object is dropped, in the case of things.
For exits, it displays in the destination room before a player comes through.
For players, it shows when the player is killed.  For rooms, it is displayed
when something is dropped in the room, with the object being the prefix
instead of the player.  <object> can be specified as <name> or #<number>,
or as 'me' or 'here'.  See also @DROP.

@OFAIL
@ofail <object> [=<message>]. The @ofail message, prefixed by the player's
name, is shown to others when the player fails to use <object>. Without a
message argument, it clears the message. <object> can be specified as <name> or
#<number>, or as 'me' or 'here'. See also @FAIL.

@OLEAVE
@oleave <player> [= <message>] The @oleave message, prefixed by the
player's name, is shown to others in a room right before the player leaves
as a result of a @teleport.

@OPEN
@open <dir>[;<other dir>]* [=<number>]. Creates an exit in the specified
direction(s). If <number> is specified, it is linked to that room. Otherwise,
it is created unlinked. You or anyone else may use the '@link' command to
specify where the unlinked exit leads.  An exit can have several aliases,
using the semi-colon.  Example: '@open w;west;out;exit;leave = #1234'

@OSUCCESS
@osuccess <object> [=<message>]. The @osuccess message, prefixed by the
player's name, is shown to others when the player successfully uses <object>.
Without a message argument, it clears the @osuccess message. It can be
abbreviated @osucc. <object> can be specified as <name> or #<number>, or as
'me' or 'here'. See also @SUCCESS.

@OWNED
@owned [<player>] [=<type>].  This lists everything owned by <player>, if
no player is specified, it lists all things, of <type>, if <type> is
specififed.  <type> can be exit, thing, room, or player.  Only wizards
can use this command.  Players should use @find.

@PASSWORD
@password <old password>=<new password>. This changes your password.

@PCREATE
@pcreate <name> = <password>. Creates a character with the given password.
Only wizards may use this command.

@PURGE
@purge <player>.  Recycles everything owned by <player>.  Only #1
may use this command.

@RECYCLE
@recycle <object>.  Recycles the specified object.  You must control
the object for this to work.  Wizards may recycle anything.  Players
can not be recycled, they must be @toaded first.

@SET
@set <object>=<flag>; @set <object>=!<flag>. Sets (or, with '!', unsets) <flag>
on <object>. See FLAGS in the encyclopedia.

@SEX
See @GENDER.

@SHUTDOWN
@shutdown. Only wizards may use this command. Shuts down the game. Must be
typed in full.

@STATS
@stats [player]. Display the number of objects in the game. For wizards, also
lists a breakdown by object types. Wizards can supply a player name to count
only objects owned by that player.  Wizards will also be displayed the
cache usage of the db.

@SUCCESS
@success <object> [=<message>]. Sets the success message for <object>. The
message is displayed when a player successfully uses <object>. Without a
message argument, it clears the message. It can be abbreviated @succ. <object>
can be specified as <name> or #<number>, or as 'me' or 'here'. See also
@OSUCCESS.

@TELEPORT
@teleport [<object>=] <destination>. Teleports <object> to <destination>.
Object can be a thing, player, or unlinked exit.  If no object is listed,
it is assumed the object is the player.  Destination must be of the
form #<number of a room>.  You can only teleport unlinked exits to either
yourself or rooms you own.  Objects may be teleported if you own them
or they are JUMP_OK, and the destination must either be a room you own,
a JUMP_OK room, or yourself.  You can teleport people, including yourself,
to a room you own, or a JUMP_OK room, provided the room the person is
leaving is either one you own or is JUMP_OK, and the person is either
yourself, or is JUMP_OK.

@TEXTDUMP
@textdump.  This dumps a text version of the db.  Only wizards may
use this command.

@TOAD
@toad <player> [=<newowner>]. Only wizards may use this command. Turns
the player into a slimy toad, destroying their character.  Their posessions
are @purged unless <newowner> is specified.

@UNLINK
@unlink <dir>; @unlink here. Removes the link on the exit in the specified
direction, or removes the drop-to on the room. Unlinked exits may be picked up
and dropped elsewhere. Be careful, anyone can relink an unlinked exit,
becoming its new owner.  See @LINK.

@UNLOCK
@unlock <object>. Removes the lock on <object>. See @LOCK.

@VERSION
@version.  Displays the version of the code running the mud currently.

@WALL
@wall <message>. Only wizards may use this command. Shouts something to every
player connected. Must be typed in full.


Three's Encyclopedia of the TinyWorld
-------------------------------------

BEING KILLED
Getting killed is no big deal. If you are killed, you return to your home, and
all things you carry return to their homes.

BOGUS COMMANDS
Bogus commands can be made using exits. For example, to make a 'sit' command,
one could "@open sit", then "@link sit=here" (because unlinked exits can be
stolen), "@lock sit=me&!me" (impossible to be both at once, therefore always
fails), and "@fail sit=You sit on the chair."; "@ofail sit=sits on the chair.".
Since nobody can go through it, it always fails. The @fail message is displayed
to the player, and the @ofail message (preceded by the player's name) to
everyone else.

CONTROL
There are 3 rules to controlling objects: 1) You control anything you own. 2) A
wizard controls everything. 3) Anybody controls an unlinked exit, even if it is
locked. Builders should beware of 3, lest their exits be linked or stolen.

COSTS
Unlike other tiny-style muds, there are no costs and no pennies in TeenyMud.
You don't need money to do anything, because there is no money.

DESTROYING
Everything can be destroyed. However, everything can be reused. You can give an
object a new name with @name, redescribe it with @describe, and set new success
and fail messages for it. Exits can be @unlink'd and picked up and dropped
elsewhere, so you can pick up an extra exit and use it in another room.
If you want to destroy an object or room, use the @recycle command.  Players
can not be recycled, but toads can.

DROP-TOs
When the @link command is used on a room, it sets a drop-to location. Any
object dropped in the room (if it isn't STICKY) will go to that location. If
the room is STICKY, the drop-to will be delayed until the last person in the
room has left.  Whenever objects are dropped in a room, the @odrop
message is displayed, to everyone in the room.

FAILURE
You fail to use a thing when you cannot take it (because it's lock fails). You
fail to use an exit when you cannot go through it (because it's unlinked or
locked). You fail to use a room when you fail to look around (because it's
locked). See STRINGS, and in the dictionary, @FAIL and @OFAIL.

FLAGS
The flags are displayed as letters following an object's ID number. Flags are
set with the @set command. The flags are: W(izard), S(ticky), L(ink_OK),
D(ark), T(emple), H(aven), A(bode), J(ump_OK), and B(uilder).

WIZARD
If a person is set WIZARD, they are a wizard, unkillable, subject to fewer
restrictions, and able to use wizard commands. It is only meaningful for
players. Only player #1 can set this flag. In general, WIZARDs can do
anything using #<number> or *<player>.

STICKY
If a thing is STICKY, it goes home when dropped (See HOMES). If a room is
STICKY, its drop-to is delayed until the last person leaves (See DROP-TOS).
Only meaningful for things and rooms.  If a player sets his STICKY bit,
all pages to him are not permitted, thus the player is free from noisy
pages, which is useful if someone decides to spam you via page.

LINK_OK
If a room is LINK_OK, anyone can link exits to it (but still not from it).
It has no meaning for people, things, or exits. See @LINK in the dictionary.

DARK
If a room is DARK, then when people besides the owner 'look' there, they only
see things they own. If a thing or player is DARK, then "look" does not list
that object in the room's Contents:. Only wizards can set players or things
dark.

TEMPLE
If a room is TEMPLE, you can sacrifice things by dropping them
there. It has no meaning for things.  Only wizards can set this flag.
On players, this flag (also known as TEMPORAL) allows the player to take
as many actions as he wants without being subject to the time-slice
restrictions, and is typically reserved for robots.  An exit marked TEMPORAL
will not allow a robot to pass through it.

GENDER
@gender me=unassigned|male|female|neuter. Default unassigned. If a player's
gender is set, %-substitutions will use the appropriate pronoun for that
player. Only meaningful for players. See SUBSTITUTIONS.

HAVEN
@set here=haven.  If a room is HAVEN, you cannot kill in that 
room. If a player is set HAVEN, he may not kill.  If an exit is set
HAVEN, players marked HAVEN may not pass through that exit.

ABODE
@set here=abode. If a room is set ABODE, players can set their homes there, 
and can set the homes of objects there. (LINK_OK is now used only for exits,
and ABODE is for players and objects.)

BUILDER
@set here=builder.  This allows other people to @open exits in this room.
Wizards can set the builder flags of players, allowing them to build, if
the mud is set for restricted building.

JUMP_OK
@set me=jump_ok, @set here=jump_ok.  On people, this allows other people
to teleport you.  In rooms, it allows teleportation.  On things, it allows
anyone to teleport the objects.  It has no meaning for exits.  Teleportation
is also allowed in rooms you own.  Teleportation must be allowed in the
destination and in the room you are in, or else it may not be permitted.

GOAL
There is no ultimate goal to this game, except to have fun. There are puzzles
to solve, scenery to visit, and people to meet. There are no winners or losers,
only fellow players. Enjoy.

HERE
The word 'here' refers to the room you are in. For example, to rename the room
you're in (if you control it), you could enter "@name here=<new name>".

HOMES
Every thing or player has a home. This is where things go when sacrificed,
players when they go home, or things with the STICKY flag set go when dropped
(See STICKY). Homes are set with the @link command. A thing's home defaults to
the room where it was created, if you control that room, or your home. You can
link an exit to send players home (with their inventory) by "@link <dir>=home".
Drop-tos can also be set to 'home' (See DROP-TOS). See @LINK.

LINKING
You can link to a room if you control it, or if it is set LINK_OK or ABODE. 
Being able to link means you can set the homes of objects or yourself to that
room if it is set ABODE, and can set the destination of exits to that room if
it is LINK_OK. See LINK_OK and ABODE, and in the dictionary, @LINK.

ME
The word 'me' refers to yourself. Some things to do when starting out: 1) give
yourself a description with "@describe me=<description>", then look at yourself
with "look me". 2) set your gender, if you wish it known, with 
"@gender me=male" or "@gender me=female" (or "@gender me=neuter" to be 
an 'it').

MONEY
There is no money, and no economy in TeenyMud.

SACRIFICING
You sacrifice a thing by dropping it in the temple. Sacrificing an object
sends it to its home.

STRINGS
Objects have 8 strings: 1) a name. 2) a description. 3) a success message (seen
by the player). 4) a fail message (seen by the player). 5) an osuccess message
(seen by others). 6) an ofail message (seen by others). 7) a drop message
(seen by the player). 8) an odrop message (seen by others).

SUBSTITUTIONS
@osuccess, @ofail and @odrop messages may contain %-substitutions, which
evaluate to gender-specific pronouns if the player's gender is set. They
are: %s (subjective) = Name, he, she, it. %o (objective) = Name, him, her, it.
%p (possessive) = Name's, his, her, its. %n (player's name) = Name.
%a (absolute possessive) = Name's, his, hers, its.  %r (reflexive) = Name,
himself, herself, itself.  If you need a '%', use %%. If you want the 
pronoun to be capitalized, use a capital letter for the substitution, like
%S, %P, and so on.  Example: '@ofail teapot=burns %p hand on the hot
teapot.  %S screams in agony.  Hot water spills on %o, and %s he whimpers
to %r that he should be more careful in the future.' See GENDER.

SUCCESS
You successfully use an object when you take it. You use an exit successfully
when you go through it.  You successfully use a room when you look around. See
STRINGS, and in the dictionary, @SUCCESS and @OSUCCESS.

DROPS
Whenever you drop something, that thing's drop message is sent to you,
if it has one.  If it has an odrop, then your name and the odrop message
is sent to others in the room.  If the room has a drop-to, then the room's
odrop will be activated when someone drops an object in the room.  Examples:
'@odrop fish=tosses the fish onto the ground.' and '@odrop here=is whisked
away by a cleaning robot that zips out of the wall.'

LOCKS
Everything can have a lock.  Success or failure depends on how the
lock is set up.  '@lock object=#0' will cause everyone to fail against
the lock.  Locks can be boolean expressions, using parentheses (), and &,
or |, and not !.  Players must be referenced with an asterisk *.  You
can also lock according to gender, sex:male or sex:female.  Example:
'@lock women's restroom=sex:female|*Janitor|(sex:male&key)'  Keys are
things that you can @create.

TYPES OF OBJECTS
There are 4 types of objects: things, players, exits, and rooms. The first
letter following an object's ID number indicates the type: P(layer), E(xit),
R(oom), otherwise, thing. Things are inanimate objects that can be carried.
Players are animate objects that can move and carry. Exits are the means by
which objects move. Rooms are locations that contain objects and linked 
exits.

Examples
--------

Igor is a new player. He sets his description by typing:
   @desc me=Igor is a ferret with an evil glint in his eye.
He has guarded himself from being robbed, and set some fail messages on 
himself that people will see when they try to rob him. He typed:
   @lock me=me

Igor wants to make an object called 'Ferret chow'. He types:
   @create Ferret Chow
   @desc Ferret Chow=This is a big bag full of yummy ferret chow. 
   @succ Ferret Chow=You tear into the end of the bag, stuffing yourself.
   @osucc Ferret Chow=tears into the Ferret Chow bag, eating greedily.
Now Igor decides that he wants to be the only one who can pick up the bag.
   @lock Ferret Chow=me
   @fail Ferret Chow=It's icky Ferret Chow. It would probably taste gross.
   @ofail Ferret Chow=decides Ferret Chow is icky.
If Igor picks up the bag:
   Igor types:   get Ferret Chow 
   Igor sees:    You tear into the end of the bag, stuffing yourself.
   all else see: Igor tears into the Ferret Chow bag, eating greedily.
Igor is now carrying the bag. He must drop it if he wants to see the messages
again.  If Murf picks up the bag:
   Murf types:   get Ferret Chow
   Murf sees:    It's icky Ferret Chow. It would probably taste gross.
   all else see: Murf decides Ferret Chow is icky.
Because the bag was locked to Igor, Murf cannot get the bag.

Igor wants to build a few rooms. He can only build off of a place where he
can get a link. He needs to ask around to find one of these if he is just
starting to build. Murf is going to give Igor a link named 'n;north'. That
means that both 'n' and 'north' activate that exit. Igor digs a room, and
links the exit to it. He types:
   @dig Igor's House
At this point, the program will respond "Igor's House created with room number 
xxxx". We'll pretend it gave the room number as 1234.
   @link n;north=#1234
The program will respond with "Linked." Now Igor sets a few messages on the
exit. He types:
   @desc n=North is Igor's House.
   @succ n=You crawl into Igor's House.
   @osucc n=crawls into Igor's House.
These messages work just the same way they work on object, like the Ferret Chow.
Next, Igor goes in the room, and creates an out exit. Murf has been nice enough
to not only give Igor the n;north exit, but to set his room to L(ink_ok). Murf's
room number is 623.  Igor types 'n' or 'north' to go in the room, then types:
   @open out;back;s;south=#623
The program will respond with "Opened. Trying to link... Linked." Igor now
has a south exit back to Murf's room. Murf can now set his room to !link_ok,
so no one else can link to it. Igor puts some messages on the south link as
well. He decides he wants to describe the room, so he types:
   @desc here=This is Igor's home. It is a small room, lined with paper shreds.
   Over in the corner is a small hole.
Now Igor wants to dig a small room that the hole connects to. He types:
   @dig Igor's Hidden Room
The program tells him that the room is number 1250. He then types:
   @open hole=#1250
   @lock hole=me
   @desc hole=This is a small hole, just the size of Igor.
   @fail hole=You can't fit.
   @ofail hole=can't fit %r through the hole.
(The %r will be substituted with Name, himself, herself, itself, depending
on the gender of the person trying the exit.)
   @succ hole=You slip into the hole.
   @osucc hole=slips into the hole.
This creates and links the exit called 'hole' to Igor's Hidden Room. He locks
the exit to him, so only he can go through the exit. When he uses the exit,
the success and osuccess messages will be displayed. When someone else tries to
use the exit, the fail and ofail messages will be displayed. Since Igor owned
the room that he was linking from, he had to use @open to create the link first.
He now types 'hole' to go in the room, and types '@open out=#1234' to create
and link an exit called 'out' that leads to his House. 
If Igor wants everyone BUT Murf to be able to go 'hole', he types:
   @lock hole=!*murf
This locks the hole against the player Murf. If he wants a person to be able to
go through 'hole' only if they have the bag of Ferret Chow, he types:
   @lock hole=Ferret Chow
If he wants himself to be able to go in the hole, even if he doesn't have the
Ferret Chow, he types:
   @lock hole=Ferret Chow | me
If he wants to lock everyone out except for himself and Murf if Murf has the bag
of Ferret Chow, he types:
   @lock hole=(*murf & Ferret Chow) | me
You can get more and more complicated with locks this way.
Igor is done building his home, and wants to set his home to it, so when he
types 'home' he will go there instead of Limbo(#0RDLA). He goes in his house,
and types:
   @link me=here
The program will respond with "Home set." Now Igor can go 'home', and QUIT
and not worry about his inactive body cluttering up the landscape.

Creating whole houses and adventures can be easy if you understand the way
the @ commands work.
When you build a room, you should have a very thorough description. Every
thing listed in the description should be given a bogus exit (see entry)
to detail the place. For example, here is the description of a room built
by Three.

   Three's flat(#5400)
   Red wall-to-wall carpeting covers the floor. A cushy brown leather
   couch sits across from a wide-screen TV with a VCR and video disc
   player stacked on top.  Escher prints hang on the walls, hilited by
   track lighting. Papers protrude from a roll-top desk to one side,
   adjoining an imposing stereo whose controls rival those of 747 cockpits.
   The kitchen lies north, the foyer south, and the bedroom beyond a
   short passage east.
   Contents:
   Flitterby Award for Comprehensive Building

Now, you noticed the desk in the room. A 'look desk' will show:
   Every drawer and cubby is overflowing with papers, envelopes, flyers,
   leaflets, folders, booklets, binders, quick reference cards, and
   other paper products. A Compaq luggable sits in a small canyon of
   paper. Atop the desk stands a framed photo. Under the desk sits a
   back stool.
Now, since this was done with a exit to create a bogus command, you might
try going through the exit, so you will get the fail message. A 'desk' will
show:
   You rummage thru the desk drawers, finding nothing of interest.
Here is an examine of the bogus command, to show you how it was done (only
the owner or a WIZARD can do an examine and get this output):
   desk(#5395E)
   Owner: Three  Key: Three(#5370PTF)&!Three(#5370PTF) Pennies: 0
   Every drawer and cubby is overflowing with papers, envelopes, flyers,
   leaflets, folders, booklets, binders, quick reference cards, and
   other paper products. A Compaq luggable sits in a small canyon of
   paper. Atop the desk stands a framed photo. Under the desk sits a
   back stool.
   Fail: You rummage thru the desk drawers, finding nothing of interest.
   Ofail: rummages thru the desk drawers.
   Destination: Three's flat(#5400R)

In this way, a highly detailed room can be built, and greatly increase the
atmosphere of the place. Take a walk around and look at the place first, 
before deciding to build. Then sit down and think carefully about what you
want to build. Careful planning has made several very interesting places.