Welcome
This is the DolphinMUD User Manual. It explains (or at least, attempts to explain) all the important aspects of DolphinMUD from the ground up for the new user.
Welcome! If you are new to the game and perhaps even the concept of MUDs in general, proceed to the next page, What is DolphinMUD?. If you are an experienced Telnet user and you have an idea what MUDs are all about, you can connect directly to DolphinMUD using any Telnet client at dolphinmud.net:5999
. Telnet over SSL is available on port 6900; this may change in the future.
Enjoy your stay in the Mansion of DolphinMUD!
— Nua, Archwizard of DolphinMUD
What is DolphinMUD?
DolphinMUD (pronounced, unsurprisingly, "Dolphin Mud") is a Multi-User Dimension, or MUD for short; a text-based multiplayer world. Unlike video games, which are more like movies, a MUD is similar to an interactive book. When you enter the MUD, the game describes your surroundings; for example:
Gate
You stand before a small gate in a stone wall. The wrought iron bars
and curlicues are heavily rusted; the slate pillars and crumbling walls
remain, crowded with lichen and moss and shimmering in the summer sun.
Northward lies the mansion; to the south, long grassy lawns slope away
into the distance.
Exits: north, south
You interact with the same via simple English commands. There are also a special set of commands used to communicate with other players; with these, you can chat and have fun in a text-based world to your heart's content.
DolphinMUD belongs to a special sub-category of MUDs, sometimes called MOOs (short for "MUD, Object Oriented"). In these MUDs, anyone can build their own rooms and change the descriptions of objects they own at will. They also gain a range of other quasi-magical powers: the ability to teleport and the ability to communicate telepathically, to name just two. There is no combat in DolphinMUD, and no health or gold; it is a game entirely based around descriptive writing and chatting. Rather than a "computer game", DolphinMUD might better be describes as a "social space": a place to hang out, have fun, and maybe learn a little programming along the way.
If this sounds like fun to you, read on to see how to join the server and start playing.
Getting Started
DolphinMUD, like most other MUDs, uses the Telnet network protocol. Telnet is a very old protocol, originally developed as a way to control computers remotely; it can do many other things, however (such as host MUDs!)
To connect to a Telnet server like DolphinMUD, you will need a Telnet client. Think of a Telnet client as being similar to a web browser like Firefox, but for text-based programs. Your Telnet client is your gateway to the world of DolphinMUD, just like your web browser is your gateway to websites.
- If you are on a PC running Windows 7 or later, then we provide a Telnet client specifically designed to work with DolphinMUD, called PicoClient. Download and set it up here.
- If you are running Linux, then odds are Telnet already comes preinstalled. If not, use your package manager to install the
telnet
package (sudo apt install telnet
on Debian/Raspbian/Ubuntu/Mint, orsudo yum install telnet
for CentOS/RHEL). Oncetelnet
is installed, run the commandtelnet dolphinmud.net 5999
to connect. - If you are on a device running macOS, you can either install Telnet using Homebrew or (on some devices) Netcat may already be installed; if Netcat is available, use
nc dolphinmud.net 5999
. - If you are running Android, the Termux app includes a Telnet client. Simple open Termux and run this command
telnet dolphinmud.net 5999
. You should now be connected.
Once you have your Telnet client working and connected, you should see DolphinMUD's opening text appear:
----- Welcome to DolphinMUD -----
DolphinMUD is a world made of words by people from anywhere. You may
not always like what you encounter; behave with appropriate caution.
DolphinMUD is a social space, and its people are real people. Treat
them accordingly.
To log in, type "@login". To enter the MUD as a guest, type "@guest".
To acquire an account, please fill out an application at
dolphinmud.net/apply.
Please read and respect the rules at dolphinmud.net/rules.
In no event shall the authors or copyright holders by liable for any
claim, damages, or other liability, whether in an action of contract,
tort or otherwise, arising from, out of, or in connection with this
service ("DolphinMUD") or the use thereof. By accessing this service,
you confirm that you are of the age required by law. The authors and
maintainers of DolphinMUD disclaim all responsibility for the
statements and opinions which may be expressed on the service by the
users of the service.
The lag is approximately 0 milliseconds.
From here, since you do not yet have an account, type @guest
and press Enter. You will immediately be logged in as a guest user. As described in section 2, What is DolphinMUD?, the MUD will display a description of your surroundings:
Gate
You stand before a small gate in a stone wall. The wrought iron bars
and curlicues are heavily rusted; the slate pillars and crumbling walls
remain, crowded with lichen and moss and shimmering in the summer sun.
Northward lies the mansion; to the south, long grassy lawns slope away
into the distance.
Exits: north, south
From here, you can type what you want to do in simple English commands, pressing Enter after each one (called Return on some keyboards). Note that DolphinMUD is just a computer program, and not a particularly sophisticated one at that; its understanding of the English language is rudimentary at best. The most common forms of command in DolphinMUD are one-word commands or simple two-word commands, such as get lamp
, eat donuts
, and so forth. Using articles (like 'a' or 'the') in your command will almost always confuse the parser. When talking with other humans, be descriptive; when talking to the computer, be terse.
You will note, in the room description above, that the room has two exits. You can move in these directions by typing north
or south
. If you move north, DolphinMUD will display the description of your new surroundings:
Courtyard
This is the central courtyard of the Mansion. A dry fountain adorns the
middle here, the marble of which has been partially shattered by the
roots of a majestic oak bursting through the flagstones a little
farther on. The path you are on continues north to the Mansion and
south to the gate; to the west is an elegant herb garden of modest
proportions, while to the east a set of slate steps descends down the
hillside, curving to the north.
Exits: north, south, west
You may see another player. If you do, you can type examine <player's name>
to get a description of them:
You see here: Nua
examine Nua
Nua
You see a pale, tall man, dressed in a dark robe of nondescript blue
which is covered in a faded star pattern. He carries a pointy hat under
one arm, rather awkwardly, as if ashamed to wear it.
You can interact with other players:
Nua: Hello!
Nua waves.
To speak, put an apostrophe ('
) in front of what you want to say:
'Hello Nua.
To perform an action (referred to in MUD-speak as emoting), put a colon (:
) in front of the action you want to do. For example:
:waves
This will display to other users in the same room:
Guest waves.
Note that you can only talk to people who are in the same room.
If you want to leave the server, simply type @quit
.
As a guest, you are limited to walking around, using objects that have already been made by other players, and chatting. If you want to create your own objects or rename yourself. You will need to get an account on DolphinMUD. This is the topic of the next section.
Acquiring an Account
To get your own account on DolphinMUD, you can apply by filling out the form here. Once you have an account, you will be able to make your own places and things in DolphinMUD.
All responses to the form are reviewed manually by real humans, so don't necessarily expect an instantaneous response. As soon as possible, an email will be sent to the provided address; the email will contain your new username and a randomly-generated password.
A few notes about the application form: we do collect your email address and real name. This is done to prevent spambots from making accounts, and to help encourage responsible behavior. We do not sell your address or real name (or anything else, for that matter).
Regarding username: your in-game name does not have to be your real name. In fact, it's best if it is different. Pick something interesting, memorable, and easy to type.
Please do not labor unnecessarily over the "Why do you want to join DolphinMUD?" question; the briefest of sentences - "This looks fun and I have an idea for a room", for example - is completely sufficient. Again, its main purpose is to try to discourage spambots.
Once you have created your account, it's time to log in for the first time. Connect to DolphinMUD as usual, but instead of typing @guest
to enter the game as a guest character, type @login
and press Enter. You will be prompted for your username and password, after which you will enter the world as usual.
The first command you should run after you have logged in is the @password
command to change your login password:
@password <newpassword>
Put your new password in place of <newpassword>
. Be sure to select a secure password. Also, do not reuse a password from another site! If you connect to DolphinMUD without using SSL, your password is transmitted in cleartext over the network; this is one of the unfortunate compromises of the Telnet protocol. If you use SSL, your password will be encrypted, but just in case you ever forget one day and log in via a non-SSL-encrypted connection (and then have a run of magnificently bad luck in which a hacker targets you and takes your password), make sure to only use this password with DolphinMUD.
Using Magic
After you have logged into DolphinMUD with your new account and broken it in a little, so to speak, you will probably want to make some new rooms to live in or change your character's appearance. In DolphinMUD, the commands to do this are grouped under the category of "magic" commands, because they modify the structure of the world.1 Magic commands in DolphinMUD are prefixed with the at sign (@
) to indicate their nature. This chapter describes a few of the most common magic commands and how to use them.
If you examine yourself, using examine me
, you will find yourself to be, well, rather plain:
You see swirling mists of possibility here.
You can fix this by setting the desc
attribute on yourself. Attributes are pieces of text associated with a given object; the desc
attribute of an object is what is shown when it is examine
d (or, if the object is a Room
, the desc
is printed when you enter that room.) To change your desc
attribute, type the following command:
@attr me.desc=New description
Replace New description
with a new description for yourself. This command changes the desc
attribute on me
to the text you typed.
Now that you are looking a bit more definite, how about you create a new room?
@newroom Name of Room
Replace Name of Room
with the name you want to give the room. You will see a message like this:
Created new room: #97.
The #97
is the id of the room. Every item, player, room, and exit in DolphinMUD has its own ID. In any command, you can use the ID of the object instead of its name. For example, suppose you are object #149
. To look at yourself, instead of typing examine self
, you can instead type examine #149
. In fact, you can only refer to an object by name when you are nearby; you can refer to objects by ID from anywhere in the MUD.
This is necessary right now, because when a new room is created, it isn't connected to any other room; the only way to get there is by teleporting. Use the @teleport
command to teleport into your new room:
@teleport #ID
(Replace #ID
with the object ID of the new room, of course). Once you have entered the new room, you will see that the description isn't very interesting:
You see swirling mists of possibility here.
You can change the description using the same command as before:
@attr #ID.desc=New description
Replace #ID
and New description
with the room's ID number and description, respectively. Note that if you are standing in the room, you can use here
as a shorthand for it instead of typing out its ID:
@attr here.desc=New description
Connecting rooms
A room which you can only get into by teleporting is not very interesting. Most of the game's rooms are connected through exits; from the Gate, for example, you can go north to get into the Courtyard, or south to get to the Autumn Hillside. To connect your own rooms, you'll need the @connect
command.
While standing in one of the rooms you want to connect, type the following:
@connect direction=#ID
This will create a new exit from the room you are in according to direction
, leading to room #ID
. For example, say you want to link two rooms #130
and #131
. First, you should stand in room #130
:
@tel #130
Next, you connect the two rooms so that #131
is northeast of #130
:
@connect northeast=#131
Now you can type northeast
in room #130 to go to #131; correspondingly, you can type southwest
in room #131
to go back to #130
.
Ownership
You can only run the @connect
command in rooms you own. If you go to the Gate (#25
) and type @details here
, you will see something like the following:
@details here
ID: #25
Room:
- north => 27 => #22 (Courtyard)
- south => 32 => #31 (Autumn Hillside)
Name: Gate
Aliases: Gate
Contents:
========
Loc: #0
Owner: #1 (Nua)
Parent: #0
Flags: (none)
This room belongs to Nua; consequently, only he can use @connect
from it. You can, however, run connect to a room you don't own while standing in a room you do. This is confusing, but important; without this, there would be no way for two different players to link their rooms together:
If player A stands in a room he owns and @connect
s to a room owned by player B, a one-way exit is created which is Blocked.
Thus, in the example above, suppose that room #131 is not owned by you, but is instead owned by UniqueBob
. When you run the @connect
command, it will succeed; however, if you try to go northeast
, you will encounter the following message:
The way is blocked.
This is because the exit leads to a room that you do not own. If you now teleport to room #131
, you will see that there is no corresponding southwest exit; UniqueBob
will have to add that, by typing @connect southwest=#130
from his room. His exit will also be blocked; because the end goes into a room that you own, only you can unblock it. Each of you must unblock the other's exit. To do this, tell the other person the ID of the exit (it is reported when you run @connect; note that it is different from the ID of the room.) Then, the other person needs to run this command:
@clear #ID=Blocked
This will clear the Blocked flag on the exit with the given ID. The exit will now work as usual.
In general, you are only allowed to modify objects that you own. This prevents others from messing with your objects without your permission. To change the owner of an object, use the @chown
command:
@chown object=player
This will make player
the owner of object
.
Creating Items
To make an item, use @newitem
:
@newitem Item Name
This will create a new item in your inventory. To put it down, use drop <item>
.
This item is an object just like any other, with its own ID, attributes, name, and so forth. You can modify its description using the same @attr
command seen above:
@attr object.desc=New description
Creating Aliases
If you aren't in the same room with an object, you generally can't refer to it by name, only by ID, because it isn't "visible" to you. This gets annoying when you have a lot of objects that you want to keep track of. To help with this, there is an @alias
command. Aliases are personal names for an object - that is, only you can use that name for the object, but you can use it from anywhere, even if the object isn't nearby. Think of it like a nickname; not everyone knows it, but it's a convenient personal shorthand for someone or something.
To create an alias, use the @alias
command like so:
@alias name=object
This will make a new personal alias name
which refers to object
. For example, if you are standing in a room you just created, you can give it the alias home
like this:
@alias home=here
This sets the alias home
to the object you are standing in (here
). Because aliases aren't shared between players, home
can be different for each player. In fact, home
is where you are teleported when you log out of the server, so it is important to set it up right!
Telepathy and Querying
Some of the most useful commands are those which let you interact with other players at a distance. The @msg
command allows you to telepathically send a message to another player; the @who
and @where
commands will tell you a whether or not a player is online and where they are, respectively.
@msg player=some text
This sends some text
to the other player:
Nua (telepathically): some text
It is advised that you be sparing and polite with your use of the @msg
command; people don't appreciate being bothered frequently.
The @who
command will report a player's ID and whether or not they are connect at the moment:
@who Nua
Nua (online) is #1
The @where
command will report the whereabouts of a player:
@where Nua
Object #1 (Nua) is at #25 (Gate)
With these few commands, you should be able to get started building your corner of the world. There are several more commands not covered by this introduction; you should consult the Reference section of this manual for more information about these.
Have fun!
Not all magic changes the world; @teleport
, for example, isn't really different from a move command. It is magic, though.
Command reference
These sections are currently incomplete; we are filling them inas fast as possible. If you have questions, feel free to ask Nua on the server.
@alias
@alias name=object
Assigns a personal alias to an object. This alias is not shared by any other player; two players can each have the name name pointing to a different object. For example, the home
alias for each player points to their home location, where they are teleported automatically when they log out.
Examples
@alias home=here
@alias gate=#25
@attr
@attr object.attribute=value
@attr object.attribute=
Sets the attribute attribute
on object
to value
. If value is not provided, as in the second form of the command, this deletes the attribute with the given name.
See the attribute reference for a list of available attributes and their meanings.
Examples
@attr here.desc=This is a small room.
@attr me.status_b=sitting on couch
@attr me.~home=
@chown
@chown object=player
Set the owner of object
to player
.
Examples
@chown #17=UniqueBob
@chown here=Nua
@clear
@clear object=flag
Clears (removes) a flag from object
. See the flag reference for a complete list of available flags.
Examples
@clear #119=Blocked
@clear me=NoGifts
@clear here=RestrictedTel
@connect
@connect direction=room
This command creates a new exit from the room the player is standing in, going in direction
, which exits into room
. This command is not usable if the player's current location (where they are standing) is not a room that belongs to them.
If the target room is not owned by the player, the exit is still created but is set to Blocked
; only the player who owns the destination can clear this flag.
If both the current room and the target room are owned by the player, and there isn't a previous exit already in the way, then @connect
will create both 'directions' of travel; if room B is north of room A, then room A is south of room B.
The available directions are:
north
east
south
west
northeast
northwest
southeast
southwest
up
down
in
out
Examples
@connect up=#37
@connect southeast=#105
@destroy
@destroy object
Destroys the given object. You must be the owner of this object.
After the object is destroyed, its ID will not be reused.
@details
@details object
Displays some details about an object.
@hollow
@hollow item
This command makes the interior of an item "hollow"; that is, you can go inside the item by typing enter <item>
.
It does not work on items that already have an interior.
Note that when you do this, the item and its interior room are separate objects. Destroying one does not destroy the other.
@msg
@name
@newitem
@newroom
@password
@quit
@set
@teleport
@where
@who
drop
drop object
Drops a held item.
enter
enter object
Enter an enterable object; that is, an object which has an inside which a player can get into. To get back from the object afterwards, use "out".
Examples
enter snowglobe
get
Synonyms: take
get object
Gets a given object and places it in the player's inventory. The object must not be Scenery
or Fixed
for this to work.
give
give object=player
Gives object
to player
. Fails if player
has NoGifts
set.
inventory
inventory
Synonyms: invent
, inv
, i
Lists the objects you are currently holding.
look
Attribute reference
This is a list of attributes you can set on objects and what they mean.
allow-tel.#ID
: When set to any non-empty text, this attribute allows player #ID
to teleport into a room that they would not normally be allowed into, because the room is RestrictedTel
.
fget
: This attribute is the message that is displayed to a player who tries to pick up the object when it is immovable (because it is Fixed
or Scenery
). By default, it displays Your efforts to move it are in vain.
xenter
: Emoted when a player steps into a hollow object. Thus, if the attribute is leaps in
and UniqueBob
enters the object, the other players will see, UniqueBob leaps in.
enter
: Printed when a player enters a hollow object.
desc
: The object's description. Defaults to, You see swirling mists of possibility here
.
status_a
and status_b
These are the "current status" of an object, displayed in parentheses next to its name (e.g. Nua (sleeping)
). If both status_a
and status_b
are set, only status_b
is shown. The only difference between them is that whenever you move, status_b
goes away; status_a
does not.
ltel
: When set on a player, this is emoted right before you teleport somewhere. Defaults to vanishes in a puff of smoke
.
atel
: When set on a player, this is emoted right after you teleport somewhere. Defaults to appears in a puff of smoke
.
wakeup
: This is emoted when you wake up (i.e. log in).
sleep
: This is emoted when you fall asleep (i.e. disconnect from the MUD).
blocked
: When set on an exit, this is displayed to someone who tries to use the exit while it is flagged Blocked
.
Flag reference
Below is a list of the flags you can place on objects using @set
and @clear
. Flags are on/off; unlike attributes such as desc
, you don't set them to a specific piece of text.
You can use @details <object>
to see what flags are set on it.
Available flags:
AnyConnect
: Applies to rooms. When set, anyone can add their own exits and entrances to the room, without consulting the room's owner first.
AnyEdit
: When set, anyone - even players who do not own the object - will be able to make changes to it.
Blocked
: Applies to exits. When set, the exit cannot be traveled through. Blocked can only be set or cleared on an exit by the owner of the exit's destination.
Clean
: Applies to rooms. When set, people aren't allowed to drop things inside.
Fixed
: Applies to items. When set, the item cannot be picked up.
Light
: The item can be teleported at a distance, even by players who don't own it.
NoGifts
: Applies to players. When set on a player, other players won't be able to give that player gifts.
Private
: Applies to players, rooms, and items. When set, players will not be able to see the item "from a distance".
RestrictedTel
: Applies to rooms. When set on a room, only selected players will be able to teleport in.
Scenery
: Applies to items. The item cannot be picked up, and it won't you up in the "You see here:" list when players type look
in the room with the item.
Wizard
: This player is a wizard. You can't set this flag on yourself; it can only be bestowed by another wizard.