Felix Writes: Not just a retro curiosity: text-based virtual worlds

DigitalThoughts / Not just a retro curiosity: text-based virtual worlds

Intro

Long before graphical MMORPGs, even before the Web, when hackers with long beards ruled the computer labs, people used to gather in virtual realities made of bits and their own imaginations. These were called MUDs[1], and they were good. Good for playing, socializing, even learning; for bits are malleable and imaginations even more so. As of 2010, one would think MUDs extinct. (After all, they appear primitive by modern standards: just text, text, text everywhere you look.) One would be wrong[2].

This is an informal overview of MUDs as they exist today, both from a technical and social standpoint. It turns out there is a connection between the two: each codebase is typically used by a certain community, both for practical and historical reasons. I have been quite selective in my explorations, as MUDs are numerous and diverse, despite being a niche. In particular, I have avoided gaming servers, as I wanted to ask questions and hear stories, not play (though there's lot of fun to be had regardless).

Note: in this document I'm using the term "MUD" in a generic sense. (Old timers prefer the nerdier MU*.) There are several MUD families, each with its own name, and several engines in each family, some of which support multiple function libraries. It's all rather complicated if you dig into it, but you don't need to if you just want to play.

Communities

These are some of the MUD servers I met in my virtual travels around the 'net. They all welcome new members if you care to drop by, but keep in mind that, roleplaying aside, real-world social interaction rules still apply. Think of it this way: a private museum is open to any and all visitors, but it's still somebody's home, so be civil.

If you're new to it, you'll find basic instructions on each MUD's website. See at the end of this document for my own introduction.

Puggy[3] (officially, MPUG) has a long and complicated history, but nowadays it is mainly a hangout for MUD admins (wizards, as they are called). As you might imagine, it is an excellent place to learn about the topic, with no expectations for roleplaying getting in the way of conversation. (Be ready for some very surreal humor, though.)

It was in Puggy that I mastered the art of player building, or 'online creation'[4], as Wikipedia calls it. Yes, that's just what it sounds like: the ability for players logged into a MUD to extend the map on the go, create new objects and write mini-programs that enable new ways to play. And yes, I know, you can do that in e.g. Second Life, but somehow I doubt it is as easy as typing a handful of simple commands at a prompt.

Puggy runs on TinyMUX (see below), a well-maintained engine with lots of built-in functionality.

As the name may suggest, ifMUD[5] is the virtual hangout of the interactive fiction[6] community. If you know text adventures, you'll feel at home. This is where the annual XYZZY Awards[7] ceremony takes place, as well as other, more frequent events. There is also an extensive landscape to explore, and various mini-games.

You can build in ifMUD just fine, but there is no in-game scripting.

This server runs on PerlMUD (see below), a cheap shareware engine that is very easy to set up.

LambdaMOO[8] was the first server based on the engine with the same name (see below), which in turn was the first engine designed specifically for social and educational applications. It is still alive and well today, though finding someone to talk to proved too much for the time and patience I was willing to invest. Also, the LambdaMOO community puts too much emphasis on rules for my taste.

LambdaMOO is a small engine implementing a particularly powerful scripting language. Most of the functionality is scripted and differs from server to server.

OpalMOO[9]: after going through at least half a dozen MOOs and finding them deserted (generally, MUDs tend to stay online and accessible long after the last player has given up logging in), I ended up in OpalMOO. Unlike other places I've been, OpalMOO has a very specific theme and expects builders to adhere to it (also unusual is that you'll need to get an authorization first). There is an emphasis on realism, too, e.g. teleporting around is discouraged. The server population is tiny and mostly inactive, but they're friendly if you can get them to answer. The landscape is interesting and there is plenty of it to see.

SpinDizzy[10]: I saved the best for the end. Spindizzy has a huge map and an active population. It is furry- and roleplaying-friendly, while remaining an eminently social hangout. If you ever went to a costume party wearing cat ears, you'll fit right in. I can't even begin to describe all the things going on in there; it's pretty much a cartoon world, ellaborate, beautiful and full of great people.

I've met individuals online who seem to think furry fans are somehow weird or crazy. This was not my experience at all. On the contrary, furry fans are good, fun, intelligent people. In any event, you are free to be a human on SpinDizzy, and nobody will expect you to roleplay if you don't want to.

SpinDizzy runs on an engine in the MUCK family (see below). As with MOOs, the existence of a powerful scripting engine means much of the functionality is overriden and extended for each particular server, but there is a solid common basis that should be familiar enough for users of other MUDs.

Technology

I won't bore you with a history of MUD codebases. It is long, rich and well-covered elsewhere. For the purposes of this document, I'm dividing them in two categories: those that do allow player building -- many of them derived from or inspired by TinyMUD[11] -- and those that don't. The latter are exclusively used for gaming, as far as I know, therefore I did not look into them.

TinyMUX[12] is one of the most up-to-date engines. It belongs to the large and well-established MUSH[13] family, itself derived from the original TinyMUD. These are large servers with much built-in functionality, and a scripting language just powerful enough to raise security concerns. They are equally suitable for gaming and non-gaming applications.

There is a fairly complete TinyMUX wiki[14] and a dedicated tech support MUSH server called BrazilMUX[15].

Perhaps the greatest advantage of TinyMUX and company is their use of a certified open source license with no special provisions. Perhaps surprisingly, not many MUD servers have that (although e.g. CoffeeMUD[16] is under the Apache License).

FuzzBall MUCK[17] - Much like MUSHes, the various MUCKs are descendants of the original TinyMUD. MUCKs[18] implement not one, but two powerful scripting languages; server security seems to be quite an issue. By historical accident, they are almost exclusively used by the furry community. FuzzBall MUCK is even better maintained that TinyMUX, but can't be used for commercial purposes.

PerlMUD[19] is another exception among common MUD engines, in that it is shareware. But the price is low, the terms are friendly, and the software itself has definite qualities. First, as per the name, it is written in Perl, no compilation required. Second, it is tiny and ridiculously easy to set up. Third, the absence of in-game scripting means you won't need to worry about security as much as with other engines. As a downside, if you need more functionality, the only option is to extend the source code itself.

PerlMUD is declaredly inspired by TinyMUD, the ancestor of MUSHes and MUCKs, so the default command set should be very familiar for users of other MUDs, with the possible exception of LambdaMOO.

Now, LambdaMOO[20] is not your average MUD server. First, it is smaller than most (except for PerlMUD above), but that's only because most of the functionality is implemented in its extremely powerful scripting language. It is so powerful, one can serve a website from inside the MOO, and many do just that.

MOOs were originally designed for social and educational applications, but gaming servers do exist.

While LambdaMOO itself hasn't been updated in a long time, the various libraries are current. It is easy enough to set up a server. The feeling is quite different from other MUDs, though. Anyone but a MOO veteran (or a complete newcomer) may not feel at home.

Finally, I think I should mention LpMUD[21]. Now, that one's an odd beast. While it does allow player building, it seems to be used almost exclusively for games (though www.mudstats.com does list a grand total of three social LpMUDs). Also, while other servers have commands as the primary means of building, with uploaded script files supported by add-ons, in LpMUD and its cousins the same is achieved mainly by uploading and running scripts in a virtual file system, with a set of commands as an add-on. I'm mentioning it here for the strangeness factor, but also because it seems quite prominent.

If you want to join in the fun

So, you've decided you like what you hear, and would like to come out and play, but you're not quite sure how. Well, do you happen to know what Telnet is? Never mind, you'll want a dedicated MUD client anyway. These are much like Web browsers, in that any MUD client should work with any MUD, and there are plenty of them. I use TinyFugue[22] under Linux. For other operating systems, you could try the Java-based JamochaMUD[23], or one of the many OS-specific clients. There are lists of them everywhere. Just find one you like.

Next: connecting. How you do that will depend on the client you chose. E.g. in TinyFugue you have to type

	/connect <hostname> <port-number>

at the command prompt. Did I mention the command promt? That's how you interact with a MUD. But DON'T PANIC. It's all very easy.

Now, follow the instructions at the login prompt. Most servers support guest accounts; type one of

	connect guest
	connect guest guest

to go in and take a look before committing. But what can you do once you're there?

Well, for one thing, try 'look' ('l' for short) to see where you are. Items of interest, such as exits, will be listed at the end; type the name of an exit to move to a different location. You can also use 'look <object-name>' to see a description. Many objects have long names, but typing an unique prefix is enough to identify them.

Once you meet someone, you'll want to talk to them. Start your line with a double quote to 'say' it:

	"Hello. Nice to meet you. I was just looking around.

You can also 'pose' or 'emote' by prefixing your line with a colon:

	:extends a hand.

which will show up as "Guest1 extends a hand.", or something like it.

More involved commands differ from server to server. You can 'whisper' to a player in the same location, 'page' to a player anywhere on the server, even '@teleport' arbitrarily if you know the numeric ID of the destination. The one command you absolutely need to know is

	help

which will allow you to browse the (usually extensive) online documentation. There are dozens, if not hundreds of commands once you get down to it, but the above are enough to get you started.

Last but not least, if you like what you see, you'll probably want a permanent account. How to get it varies among MUDs. Some allow you to create one at the login prompt, no confirmation required. Others have more involved procedures, ranging from an '@request' once you're in as a guest, to e-mailing to a wizard. Just make sure to read any initial instructions you receive. Asking someone and/or visiting the MUD's website is also a good idea. Enjoy!

What about running a MUD yourself?

First of all, think again. And then again. Are you suuure? Okay...

What kind of MUD do you want to run?

If it's a gaming/roleplaying one, keep in mind that it will be long and difficult to set up, and you'll have quite a bit of competition, especially for such a small niche. Do look around for existing MUDs with the same or a similar theme. If you don't like them, maybe you could contact the wizards and suggest improvements, instead of competing with them for the sake of it? Unless, of course, you want to make money (no, it's not impossible). In which case, good luck, you're going to need tons.

If it's a social one, well, aren't you in it for socializing? Then why not join an existing social MUD. Or several. That's where the fun is. The alternative is to try and draw people away from an already small community, which will hurt both your new MUD and the existing ones.

If you're thinking of a more practical application, such as a virtual school or virtual conference center, better get ahold of a focus group first. Will they be interested and comfortable in a text-based environment? You may have a pleasant surprise, but it's not very likely. Don't jump in head-first; you risk much disappointment.

In conclusion

MUDs offer a unique combinations of features. Wikis share some of their traits; text adventures share others. Graphical MMO games can trace their lineage back to them. None of these offer the same combination of freedom to create, immediate feedback and real-time human interaction.

I didn't really intend to get into MUDs. It sort of happened, and it stuck. Now I could not imagine my life without them anymore. MUDs are not for everyone. But they are here, and not going away. And they are still good, even though the bearded hackers no longer rule.

2010-02-07

References

[1]: http://en.wikipedia.org/wiki/MUD
[2]: http://www.mudconnect.com/

[3]: http://puggy.mushpark.com/
[4]: http://en.wikipedia.org/wiki/Online_creation
[5]: http://ifmud.port4000.com/
[6]: http://en.wikipedia.org/wiki/Interactive_fiction
[7]: http://en.wikipedia.org/wiki/Xyzzy_Awards
[8]: http://www.lambdamoo.info/ (LambdaMOO itself)
[9]: telnet:moo.opal.org:7878
[10]: http:
www.spindizzy.org/

[11]: http://en.wikipedia.org/wiki/TinyMUD

[12]: http://www.tinymux.org/
[13]: http://en.wikipedia.org/wiki/MUSH
[14]: http://www.tinymux.org/wiki/index.php/Main_Page
[15]: telnet://brazilmux.tinymux.org:2860

[16]: http://www.zimmers.net/home/mud/index.html (CoffeeMUD)

[17]: http://www.belfry.com/fuzzball/
[18]: http://en.wikipedia.org/wiki/MUCK

[19]: http://www.boutell.com/perlmud/

[20]: http://www.moo.mud.org/ (the LambdaMOO software)

[21]: http://lpmuds.net/

[22]: http://tinyfugue.sourceforge.net/
[23]: http://www.jamochamud.org/