    Dead Souls FAQ, v2.4

    Written by Cratylus @ Frontiers, October 2005
    Updated June 2006

    1 What is Dead Souls?

    2 What is it for?

    3 What is a MUD?

    4 What's a mudlib?

    5 When I configure Dead Souls, it says it is a MUD.
    If it is really a mudlib, why would that be?

    6 Is Dead Souls really Nightmare in disguise?

    7 What is Nightmare?

    8 What is the relationship between Nightmare and Dead Souls?

    9 How close?

    10 Why mess with Dead Souls, then?

    11 Fine, but what's so special about Nightmare/Dead Souls? Why are you
    making such a big deal of wanting people to use it? It isn't
    better than everything else, surely. [insert mudlib name here]
    is newer and has [insert feature here] and [other feature]!

    12 What's LPC?

    13 How do I get started?

    14 Anything else?

    What is Dead Souls?

    	Dead Souls is a "mudlib".

    	Dead Souls 1 was a public domain release of a mudlib
    called "Nightmare". It was difficult to use, and buggy.

    	Dead Souls 2 is a re-release that fixes the bugs and
    makes it super easy to use for both beginners and advanced admins.

    	There is also a Dead Souls MUD, but this is not what people
    usually mean when they refer to Dead Souls as a game.

    What is it for?

    	It's for building a game. If what you want to do
    is play a game, you're looking for something else.

    What is a MUD?

    	A MUD is a computer program that uses text (very rarely do MUDs
    use graphics or sound) to describe virtual environments you can manipulate.
    You enter a command, the program tells you how the virtual world responds
    around you. Typically there are other people connected to the same program
    over the Internet, and you can interact with them as well. A MUD can be mostly
    social, or mostly game oriented, with quests and puzzles to solve or
    villains to defeat. The name MUD is an acronym that originally stood for
    "Multi-User Dungeon", in accord with the "Dungeons and Dragons" style of
    many early MUDs. Now it stands for different things to different people,
    but the basic concept of operation is the same, whether the game is set
    on the moon, in Manhattan, or in Middle Earth.

    See also:
    http://www.catb.org/~esr/jargon/html/M/MUD.html

    What's a mudlib?

    	There are many different types of MUD programs. Some are
    executable programs, with all of their virtual worlds
    defined in one big file. Others are entirely interpreted,
    such as java muds, which are composed of thick forests
    of folders containing java files.

    	LP MUDs are something between the two.

    	Generally there are two main parts to an LP MUD
    program. First is the "driver". This is an executable program
    file (in Windows, you'd see the driver has an .EXE extension)
    that enables the input and output of data, accepts network
    connections, performs basic calculations, etc. The other part
    is the mudlib, or, more properly, MUD object library. This is
    usually a large set of files in plain text that the driver
    reads and uses as a basis for the game. Some files provide
    information about rooms and environments, some files provide
    information about objects or creatures, etc. When players
    connect, the driver provides them the world that these
    files describe.

    When I configure Dead Souls, it says it is a MUD.
    If it is really a mudlib, why would that be?

    	Dead Souls is not intended to be a fully-developed
    MUD when you install it. Instead it provides you with
    the basic framework you need to make a MUD of your own.
    After you set up Dead Souls, you should rename it, and
    customize the lib (that is, library) files to create your
    own world. When you first run Dead Souls, you will
    have some rooms available to explore. This is not your mud.
    It is just a set of sample places and objects to help
    you understand how to build a MUD of your own. So in a
    way, Dead Souls provides you a kind of "starter" MUD,
    but since it's just examples, you can't really
    consider it a MUD until you change it to suit
    your creative vision.

    Is Dead Souls really Nightmare in disguise?

    	Let's break this question down into its components:

    What is Nightmare?

    	Nightmare was a mud. It was part of a branching of mud development
    that occurred early in the days of popularized mudding. Some folks
    decided to take MUD library development in a particular direction,
    and eventually made available what is now known as the Nightmare mudlib.
    Nightmare went through a few major changes, most notably from version 3
    to version IV. By that time, the development of Nightmare was solely
    managed by a coder who called himself Descartes.

    What is the relationship between Nightmare and Dead Souls?

    	It appears that Dead Souls began as a "development" MUD. This means
    that while Descartes ran his own MUD, he also worked on improving that MUD's
    lib. It is unwise to make major changes to a MUD that people are playing on,
    so the Dead Souls development MUD was one which served as a platform to
    develop, extend, and improve the Nightmare lib without risking harm to active players.
    Sometime after the release of the Nightmare IV mudlib, Descartes decided to
    withdraw it from distribution. Based on their interpretation of copyright
    law, people now do not distribute the Nightmare mudlib on Internet servers.
    However, somewhat inexplicably, Descartes released the mudlib for his
    development mud, Dead Souls, into the public domain. This meant that the
    Dead Souls mudlib was completely free to be used by anyone in any way they
    chose, be it distribution, modification, spindling or folding. Because Dead
    Souls was the development mud for Nightmare Mud, which was the base of the
    Nightmare mudlib, the relationship between the two is a very close one.

    How close?

    	The similarity between Nightmare and Dead Souls can
    now best be described as close cousins, rather than twins.

    	At one time it was almost identical. A close comparison of the
    Dead Souls lib that Descartes released (version 1.1pre) against the
    last released Nightmare lib (IVr6) reveals that they are very
    nearly the same thing, file for file.

    The main differences between the two are:

    * A small number of Nightmare library files aren't on Dead Souls.
    * Dead Souls doesn't come with the driver or install script the Nightmare had.
    * All documentation files were removed from Dead Souls.
    * "Nightmare" in file headers was changed to say "Dead Souls"

    This might sound like a lot of difference, but consider this: not counting
    documentation, Nightmare IVr6 lib contained 1064 files and directories, and
    the Dead Souls 1.1pre lib contains 1082. Dead Souls 1.1pre actually had more
    lib material in it than the last release of Nightmare.

    Why mess with Dead Souls, then?

    	The main problem was that Dead Souls was a bear to set up. Because
    driver development had not stopped (the driver is a separate software project),
    but lib development had, incompatibilities grew in number over time. Using
    the original driver from 1997 created a MUD that lacked important features
    of modern muds, and risked instability. Using a modern driver required a
    modification of fundamental lib systems that required some expertise to
    perform. People stopped using Nightmare because they couldn't get it, and
    they didn't use Dead Souls because the damn thing didn't work right. My own
    Nightmare lib MUD, Frontiers, continued to chug along, quietly fading into
    obscurity along with all other Nightmare IV based MUDs, while scrappy young
    newcomers like CoffeeMud lib started elbowing their way into the MUD community.

    	Then a funny thing happened. I really got into lib coding. I mean, full-on
    lib obsession. I can't really explain it, other than to say that when I was
    younger it seemed hard and impenetrable, but now that I've been working in a
    technical field for years, I have the mental tools (and patience) required to
    disassemble  and understand complex systems. I got turned on by analyzing and
    understanding stuff that I'd considered over my head in years past.
    	But I was living in the past. I couldn't share my exciting lib ideas
    and discoveries with anyone else, because the Nightmare LPC community was
    in the very last stages of extinction.

    	I decided to do something about it. Maybe I'd be whistling into the wind,
    tilting at windmills, or even worse, just talking to myself. But I decided
    I'd make Dead Souls a viable lib for people to use, because it would be fun,
    and because it might be nice to have other people to bounce ideas off of and
    steal code from. At worst, I'd be doing nothing more pathetic than, say,
    building model ships in my basement. At best, I might revive a once-thriving
    MUD development community. Either way, it sounded like an enjoyable project,
    so I proceeded.

    Fine, but what's so special about Nightmare/Dead Souls? Why are you
    making such a big deal of wanting people to use it? It isn't
    better than everything else, surely. [insert mudlib name here]
    is newer and has [insert feature here] and [other feature]!

    	Yes, that may be. My experience with other libs is limited, and I'm sure
    that Dead Souls pales in comparison to others in one feature or another. My only
    answer to that is, go ahead and use the lib you're comfortable with. I make no
    claims of superiority. Hell, I'll be the first to admit there are still things
    to fix and systems to implement. But if you are not sure which lib to pick,
    Dead Souls is an excellent choice as a solid, stable, flexible and powerful platform
    to build your MUD. You can do anything in a MUD with LPC, and I mean anything.
    If you happen to have Nightmare experience, Dead Souls will be a homecoming...
    like an old comfortable shoe, but without the holes or the stink.

    What's LPC?

    	LPC is a kind of programming language. Dead Souls lib files don't
    just contain descriptions of places and things: they have a format that describes
    their relationships to the driver and permits you to do fancy stuff...pretty much
    any text MUD thing you can think of, you can do in LPC.

    How do I get started?

    	Download the latest version from http://dead-souls.net/
    and install it.
    	There is only one distribution file, which includes both the
    Windows and UNIX versions. Read the installation FAQ for details.

    	Once you log in, read the Players Handbook and the Creators Manual.

    Anything else?

    Read the Dead Souls Admin FAQ.

    Read the Dead Souls Creator's FAQ.

    Read the Dead Souls Installation FAQ.

    Read the Quick Creation System Example Page.

    Read the Debugging Guide.

    Read the Editor Tutorial.

The end.
Dead Souls Homepage