DGD Documentation
Of course, you've already read the DGD documentation which comes in
"dgd/doc" (haven't you?), but just in case I'll do a little
overview.
- Commercial: this file tells you about using DGD commercially. This
is important only if you ever plan to make money off a DGD MUD.
Making money off a DGD
server is involved and requires licensing. However, making money
off most flavors of LPMUD is forbidden entirely by the license, so
this is more generous of Dworkin than you think. The exceptions are
the GPL'd servers, pike and Shattered World. Neither is quite the same
language as DGD, but either could be worth looking into.
- Extensions: this tells you how to modify DGD itself in some
specific, pretty clean ways. Don't do this until you have a good grasp
of everything you'll need for a MUDLib. Even then, you'll want to be
on the mailing list since this stuff isn't guaranteed to work right
and operates very differently than you might think.
- Introduction: an excellent introduction to the interface between
DGD and any given MUDLib. This is an excellent programmer's
introduction to what a driver and an auto object are, and how DGD uses
them. As Par Winzell so eloquently describes this file: Dworkin's
documentation is like a good novel or classical textbooks: they are so
dense with information that even after multiple readings and a high
degree of proficiency with the system, a fresh read-through will yield
new insights.
- Platforms: getting DGD compiled in the first place. You've already
done that, right?
- editor: help on using DGD's built-in editor. You'll eventually
want a better editing solution, but not necessarily coded into DGD or
your MUDLib. In general, getting your editor entirely on the client
side is best, building it into your MUDLib is next-best, and building
it directly into DGD is worst. Feel free to ask Dworkin about this on
the newsgroup, or just read through the archives and discover his
opinions for yourself.
- parser: help on using DGD's built in parse_string facility. It's
neat, it'll do good things, but it's not really relevant to a
just-getting-started MUDLib. It'll let you build fine features later,
but first you'll need to get stuff up and running.
- The kfun directory: up-to-date documentation on DGD's interface
(via the auto object) to your program. This is roughly the same as
documentation on OS system calls. Your MUDLib's auto object can
override any, all or none of them.
- There's an LPC.html file with a very brief summary and no
real information yet. It may be finished some day, but if you see
nothing of use there, it's not a bad download. It's just that the file
contains very little.
Other good places to look are the Kernel Library code for simple
examples and interfaces, and of course this web site. You can read through
existing libraries like Phantasmal and Melville if you need more
examples of how to do things. Note that Phantasmal uses the Kernel,
while Melville does not.
|