"...you are in a twisty maze of passageways, all alike"
In 1972, William Crowther, an avid spelunker and D&D player, programmed a game to emulate his caving experiences on a Digital Equipment Corporation PDP-10 computer. The very first 'Adventure' (also known as Colossal Cave) was written in FORTRAN. In 1976, the code was ported to C for UNIX by Jim Gillogly at the Rand Corporation. With the help of Walt Bilofsky, Gillogly again ported the game to run on desktop PCs, with the game being released as 'The Original Adventure' in 1981.
...into the Dungeons of Doom...
In the early 1980s, a U.C. Berkeley student named Ken Arnold were writing libraries to allow "cursor addressing." Michael Toy, Glenn Wichman, and Glenn R. Wichman used the C libraries to write an early version of Rogue. The game was composed of ASCII characters, with each letter or symbol representing something. '@' was your character, while a '?' represented a scroll that you could pick up. In this early stage, though, it didn't have all the features it eventually would (like armor.)
After getting this far, Toy met up with Arnold at Berkeley. BSD UNIX 4.2 included Rogue in the distribution and the game took off. Unlike Adventure, Rogue wasn't a canned adventure. The game was different each and every time you played it, which made it highly addictive. After a Mac version was ported, they decided to team up with Epyx games to be able to market it better.
...The Dungeons of Moria ...
Moria was written by Robert Alan Koeneke in 1983 in VMS PASCAL. Angband was a code fork that happened around 1991.
...Amulet of Yendor...
In 1985, Jay Fenlason, Jon Payne, Mike Thome, and Kenny Woodland created Hack, which introduced a lot of new features to Rogue. Mike Stephenson was responsible for branching off into the NetHack version.
Like Rogue and Moria, each time a character went through the game it was different. There were 'intelligent' monsters that would follow you through the game. While this and other games of this variety were fun, they were missing the multiplayer aspect.
1979-1989 (MUD is born):
The very first MUD (Multi-user Dungeon or Multi-user Dimension) was written by Roy Trubshaw in machine code in 1979 on a DEC-10. It was a very primitive form of what you can find today, but you could move from room to room and chat with other players. Bugs were found in early versions of the code (one example being if two people were in a dark room, one with a light source and the other without, the light source only worked for the one holding it.)
Also around that time Public Caves was written in BASIC (goto 1964.) In Public Caves, though, you could just move from room to room, writing messages on the walls (I imagine there were trolls on this first game too.) Interesting to note that one of the players on Public Caves was none other than Ken Arnold, who helped create Rogue.
Despite the problems, the code moved forward, with Richard Bartle inheriting it. The first players were primarily other students at Essex University. After leaving the University, Bartle made the MUD a commercial enterprise, with people having to pay to play. The games were getting interesting, though, as the people designing a MUD began to have more and more control over what their creatures (known as Mobiles or MOBs for short) were capable of doing.
From this starting point, the code forked, and forked, and forked. One of the many deriviatives of the original MUD was VAXMUD, which was written in FORTRAN for VAX/VMS systems around 1987. This version was sent out precompiled, though, and the source code wasn't made available at first, which might have caused it to lose popularity.
The early to mid 80s were when MUDs began to hit the mainstream (or at least the geek/gamer mainstream) as evidenced by the many articles written around that period. In 1989, TinyMud was released to the world, it forked late that year to spawn DragonMud.
In 1990, Stephen White released the first version of MOO (MUD, Object Oriented.) TinyMUSH was also born around this time. Although not really meant to stand for anything when created, the code writers eventually stated it stood for "Multi-User Shared Hallucination." Another code fork that was based on TinyMUD was TinyMUCK 1.0, which gains popularity over TinyMUD because it's easier to 'Muck' around with the code and came with an interpreted programming language, TinyMUF (Multi-User Forth) which as the name applies is basically Forth with some special libraries added on.
Taking up where TinyMUD and AberMUD left off, Lars Pensj created LPmud, making the code easy to change. Valhalla, a MUD using the LPMud codebase, started charging players for access in 1992. Also that year, The MUD Institute (TMI) was formed to further innovation with LPMud (MudOS came out of this.) Finally, 1992 also saw the spawning of Nightmare Mudlib from LPMud, which was released to the world in early 1993.
The first virtual rape took place in 1993. The Village Voice wrote about the incident. A character in a LambdaMOO game gained control of a voodoo doll that allowed him to 'control the actions' of other characters in the virtual environemnt. Nothing physical happened, but it still raised the issue of whether it was wrong even if it just happened in a virtual world with text only.
The 1990s also saw other forks of the code, bringing it further and further than the original MUD code written so many years before.
Even with EverQuest and other graphical online role-playing games, MUDs continue to flourish in the 21st century. With new MUDs opening and closing all the time, it's nice that the Internet offers current MUD information. From Adult-Oriented MUDs to those based on the X-Files, MUDConnector offers a one-stop shop for those interested or curious about MUDs. Other sites, like MudWorld, also offer a lot of information on the current MUD scene.
While I have undoubtedly left out several of the variations and forks of the code (most likely *your* favorite version), I wanted to collect some links together to make it easier for you, the reader, to find out more about MUDs (as much or as little as you would like.)