mirror of
https://github.com/tbamud/tbamud.git
synced 2025-09-21 21:40:49 +02:00
Update admin.txt
Formatting and typo.
This commit is contained in:
parent
b1b7864eb0
commit
3cf5d6dce0
1 changed files with 120 additions and 118 deletions
236
doc/admin.txt
236
doc/admin.txt
|
@ -1,7 +1,7 @@
|
||||||
If you have any additions, corrections, ideas, or bug reports please stop by the
|
If you have any additions, corrections, ideas, or bug reports please stop by the
|
||||||
Builder Academy at telnet://tbamud.com:9091 or email rumble@tbamud.com -- Rumble
|
Builder Academy at telnet://tbamud.com:9091 or email rumble@tbamud.com -- Rumble
|
||||||
|
|
||||||
The tbaMUD Administrator’s Manual
|
The tbaMUD Administrator’s Manual
|
||||||
Originally by Jeremy Elson
|
Originally by Jeremy Elson
|
||||||
|
|
||||||
This document describes how to configure tbaMUD and how to compile it for the
|
This document describes how to configure tbaMUD and how to compile it for the
|
||||||
|
@ -19,7 +19,7 @@ Contents
|
||||||
|
|
||||||
1.1 Background and Introduction
|
1.1 Background and Introduction
|
||||||
1.2 Are you a Player or an Administrator?
|
1.2 Are you a Player or an Administrator?
|
||||||
1.3 So, you’re sure you want to run your own MUD?
|
1.3 So, you’re sure you want to run your own MUD?
|
||||||
1.4 Giving Credit Where Credit is Due
|
1.4 Giving Credit Where Credit is Due
|
||||||
|
|
||||||
2 Getting Started
|
2 Getting Started
|
||||||
|
@ -55,13 +55,13 @@ Contents
|
||||||
tbaMUD is a derivative of DikuMud, the Multi-User Dungeon developed at DIKU,
|
tbaMUD is a derivative of DikuMud, the Multi-User Dungeon developed at DIKU,
|
||||||
the Department of Computer Science at the University of Copenhagen. The original
|
the Department of Computer Science at the University of Copenhagen. The original
|
||||||
circleMUD, version 1.0, was run by Jeremy Elson at the Johns Hopkins
|
circleMUD, version 1.0, was run by Jeremy Elson at the Johns Hopkins
|
||||||
University’s Department of Computer Science with moderate popularity from
|
University’s Department of Computer Science with moderate popularity from
|
||||||
January until September of 1992. The version 1.0 code, which was never released
|
January until September of 1992. The version 1.0 code, which was never released
|
||||||
to the public, was archived and remained inactive for several months after the
|
to the public, was archived and remained inactive for several months after the
|
||||||
death of the original CircleMUD. In the summer of 1993, it was taken out of
|
death of the original CircleMUD. In the summer of 1993, it was taken out of
|
||||||
storage and cleaned up with the intention of making it a public code base that
|
storage and cleaned up with the intention of making it a public code base that
|
||||||
anyone could freely download and use to start a MUD. Version 2.0, the first
|
anyone could freely download and use to start a MUD. Version 2.0, the first
|
||||||
publically available version, was released in June of 1993. CircleMUD was
|
publicly available version, was released in June of 1993. CircleMUD was
|
||||||
maintained as a public code base until 2002 with the final release of CircleMUD
|
maintained as a public code base until 2002 with the final release of CircleMUD
|
||||||
3.1. After development stagnated for 3 years The Builder Academy offered to
|
3.1. After development stagnated for 3 years The Builder Academy offered to
|
||||||
take over development. After a 4th year of no continued development The Builder
|
take over development. After a 4th year of no continued development The Builder
|
||||||
|
@ -71,11 +71,11 @@ agreed and the codebase is now known as tbaMUD. The Builder Academy is open to
|
||||||
anyone willing to learn how to build or start their own MUD.
|
anyone willing to learn how to build or start their own MUD.
|
||||||
|
|
||||||
Thousands of carefully spent hours have gone into the development of this
|
Thousands of carefully spent hours have gone into the development of this
|
||||||
codebase, but it is not a finished product – it is only a beginning. It has
|
codebase, but it is not a finished product – it is only a beginning. It has
|
||||||
only a small number of spells and skills, and only the 4 original DikuMud
|
only a small number of spells and skills, and only the 4 original DikuMud
|
||||||
classes. From a gamer’s point of view, it pales in comparison to other MUDs
|
classes. From a gamer’s point of view, it pales in comparison to other MUDs
|
||||||
which have dozens of spells spread over a dozen classes, and a rich palette of
|
which have dozens of spells spread over a dozen classes, and a rich palette of
|
||||||
skills. Yet from a programmer’s point of view, tbaMUD is very highly developed.
|
skills. Yet from a programmer’s point of view, tbaMUD is very highly developed.
|
||||||
While the look and feel of the original DikuMud has been maintained, most of
|
While the look and feel of the original DikuMud has been maintained, most of
|
||||||
the underlying code and many of the structures have been optimized, reworked,
|
the underlying code and many of the structures have been optimized, reworked,
|
||||||
or completely redesigned to be efficient, compact, and easily changeable and
|
or completely redesigned to be efficient, compact, and easily changeable and
|
||||||
|
@ -84,58 +84,59 @@ world over the past few years, although they were not part of the original
|
||||||
DikuMud release, were added to tbaMUD as well.
|
DikuMud release, were added to tbaMUD as well.
|
||||||
|
|
||||||
The result is that tbaMUD is a launching pad for your own MUD ideas. Our hope
|
The result is that tbaMUD is a launching pad for your own MUD ideas. Our hope
|
||||||
in releasing it is that it will free potential MUD implementors from having to worry about dealing with bug-ridden code or wasting time reinventing the wheel
|
in releasing it is that it will free potential MUD implementors from having to
|
||||||
|
worry about dealing with bug-ridden code or wasting time reinventing the wheel
|
||||||
by re-coding standard MUD features, allowing them to devote more effort towards
|
by re-coding standard MUD features, allowing them to devote more effort towards
|
||||||
creatively shaping tbaMUD into their own unique vision of how a MUD should look
|
creatively shaping tbaMUD into their own unique vision of how a MUD should look
|
||||||
and feel. The reason why tbaMUD has so few specialized spells, skills, classes,
|
and feel. The reason why tbaMUD has so few specialized spells, skills, classes,
|
||||||
and races is to encourage implementors just like you to create your own
|
and races is to encourage implementors just like you to create your own
|
||||||
unique system instead of just another stock MUD that everyone has seen before.
|
unique system instead of just another stock MUD that everyone has seen before.
|
||||||
|
|
||||||
So, it is with this message that we inflict our code on the world: don’t just
|
So, it is with this message that we inflict our code on the world: don’t just
|
||||||
put another generic MUD on the Net – give us something new and exciting, and
|
put another generic MUD on the Net – give us something new and exciting, and
|
||||||
have as much fun as possible in the process!
|
have as much fun as possible in the process!
|
||||||
|
|
||||||
1.2 Are you a Player or an Administrator?
|
1.2 Are you a Player or an Administrator?
|
||||||
If you’ve never played a MUD before, jumping right in and trying to run one of
|
If you’ve never played a MUD before, jumping right in and trying to run one of
|
||||||
your own will probably just get you hopelessly confused. Instead of trying to
|
your own will probably just get you hopelessly confused. Instead of trying to
|
||||||
compile and run the tbaMUD package yourself (which is presumably what you’re
|
compile and run the tbaMUD package yourself (which is presumably what you’re
|
||||||
trying to do if you’re reading this document), you should play someone else’s
|
trying to do if you’re reading this document), you should play someone else’s
|
||||||
copy of tbaMUD first to become familiar with the codebase.
|
copy of tbaMUD first to become familiar with the codebase.
|
||||||
|
|
||||||
1.3 So, you’re sure you want to run your own MUD?
|
1.3 So, you’re sure you want to run your own MUD?
|
||||||
If you’re already an old hand at playing MUDs and you’ve decided you want to
|
If you’re already an old hand at playing MUDs and you’ve decided you want to
|
||||||
start one of your own, here is our advice: sleep on it, try several other MUDs
|
start one of your own, here is our advice: sleep on it, try several other MUDs
|
||||||
first. Work your way up to an admin position and see what running a MUD is
|
first. Work your way up to an admin position and see what running a MUD is
|
||||||
really about. It is not all fun and games. You actually have to deal with
|
really about. It is not all fun and games. You actually have to deal with
|
||||||
people, you have to babysit the players, and be constantly nagged about things
|
people, you have to babysit the players, and be constantly nagged about things
|
||||||
you need to do or change. Running a MUD is extremely time consuming if you do
|
you need to do or change. Running a MUD is extremely time consuming if you do
|
||||||
it well, if you are not going to do it well then don't bother. Just playing
|
it well, if you are not going to do it well then don't bother. Just playing
|
||||||
MUDs is masochistic enough, isn’t it? Or are you trying to shave that extra
|
MUDs is masochistic enough, isn’t it? Or are you trying to shave that extra
|
||||||
point off your GPA, jump down that one last notch on your next job evaluation,
|
point off your GPA, jump down that one last notch on your next job evaluation,
|
||||||
or get rid of that pesky Significant Other for good? If you think silly
|
or get rid of that pesky Significant Other for good? If you think silly
|
||||||
distractions like having friends and seeing daylight are preventing you from
|
distractions like having friends and seeing daylight are preventing you from
|
||||||
realizing your full potential in the MUD world, being a MUD Administrator is
|
realizing your full potential in the MUD world, being a MUD Administrator is
|
||||||
the job for you.
|
the job for you.
|
||||||
|
|
||||||
Don’t get me wrong: running a production MUD can be great fun. It can also be
|
Don’t get me wrong: running a production MUD can be great fun. It can also be
|
||||||
overburdened by politics and plagued by spiteful players devoted to making your
|
overburdened by politics and plagued by spiteful players devoted to making your
|
||||||
life difficult, and otherwise be a highly frustrating endeavour. That’s why I
|
life difficult, and otherwise be a highly frustrating endeavour. That’s why I
|
||||||
started The Builder Academy and develop the tbaMUD codebase. The enjoyment of
|
started The Builder Academy and develop the tbaMUD codebase. The enjoyment of
|
||||||
MUDding without the pesky players!
|
MUDding without the pesky players!
|
||||||
|
|
||||||
1.4 Giving Credit Where Credit is Due
|
1.4 Giving Credit Where Credit is Due
|
||||||
If I haven’t scared you away yet, and you’re still sure you want to use tbaMUD,
|
If I haven’t scared you away yet, and you’re still sure you want to use tbaMUD,
|
||||||
please stop for a moment and look at the license in the file license.txt. It
|
please stop for a moment and look at the license in the file license.txt. It
|
||||||
outlines the terms under which you must use tbaMUD.
|
outlines the terms under which you must use tbaMUD.
|
||||||
|
|
||||||
The license is simple. It boils down to the message, “Don’t rip off other
|
The license is simple. It boils down to the message, “Don’t rip off other
|
||||||
people’s work.” Unfortunately, this simple message ended up becoming somewhat
|
people’s work.” Unfortunately, this simple message ended up becoming somewhat
|
||||||
long-winded because I am trying to prevent people from abusing DikuMud in the
|
long-winded because I am trying to prevent people from abusing DikuMud in the
|
||||||
future as they have in the past.
|
future as they have in the past.
|
||||||
|
|
||||||
Also, out of courtesy if nothing else, please keep the credits file intact. You
|
Also, out of courtesy if nothing else, please keep the credits file intact. You
|
||||||
can add your own credits on top of the existing file, but I’d appreciate it if
|
can add your own credits on top of the existing file, but I’d appreciate it if
|
||||||
you would not simply remove it and all references to the word “Circle”
|
you would not simply remove it and all references to the word “Circle”
|
||||||
everywhere in the MUD. How would you feel if someone took your code and then
|
everywhere in the MUD. How would you feel if someone took your code and then
|
||||||
took credit for it?
|
took credit for it?
|
||||||
|
|
||||||
|
@ -150,9 +151,9 @@ itself (using GNU autoconf) and compile under most versions of UNIX, both BSD
|
||||||
and System V derivatives, including Mac OS X. With minor adjustments
|
and System V derivatives, including Mac OS X. With minor adjustments
|
||||||
(documented below), the same source should compile under Microsoft Windows, IBM
|
(documented below), the same source should compile under Microsoft Windows, IBM
|
||||||
OS/2, and the Amiga. Users have also reported getting tbaMUD to compile and run
|
OS/2, and the Amiga. Users have also reported getting tbaMUD to compile and run
|
||||||
under MkLinux, the port of Linux to the Power Macintosh. tbaMUD will not work under DOS, Windows 3.x, Windows for Workgroups 3.x, or Mac System.
|
under MkLinux, the port of Linux to the Power Macintosh. tbaMUD will not work
|
||||||
Specifically, the following variants of UNIX have been tested and are known to
|
under DOS, Windows 3.x, Windows for Workgroups 3.x, or Mac System. Specifically,
|
||||||
work with tbaMUD:
|
the following variants of UNIX have been tested and are known to work with tbaMUD:
|
||||||
|
|
||||||
SunOS 4.1.4
|
SunOS 4.1.4
|
||||||
Solaris 2.3 and above
|
Solaris 2.3 and above
|
||||||
|
@ -164,7 +165,7 @@ Linux 1.x, 2.x
|
||||||
BSD/OS 2.1
|
BSD/OS 2.1
|
||||||
Mac OS X (10.0 and above)
|
Mac OS X (10.0 and above)
|
||||||
|
|
||||||
If your system is not listed, don’t despair; because of the autoconf program,
|
If your system is not listed, don’t despair; because of the autoconf program,
|
||||||
tbaMUD will compile under most versions of UNIX on its own. A large effort was
|
tbaMUD will compile under most versions of UNIX on its own. A large effort was
|
||||||
made to make tbaMUD more portable by converting many of its system calls over
|
made to make tbaMUD more portable by converting many of its system calls over
|
||||||
to POSIX compliance. Converting tbaMUD to POSIX vastly helps portability on
|
to POSIX compliance. Converting tbaMUD to POSIX vastly helps portability on
|
||||||
|
@ -173,7 +174,7 @@ on some older systems that are not (such as NextSTEP 2.x), it may be more
|
||||||
difficult to compile than it was to compile earlier versions of the code.
|
difficult to compile than it was to compile earlier versions of the code.
|
||||||
(POSIX stands for Portable Operating System Interface for UNIX and is an effort
|
(POSIX stands for Portable Operating System Interface for UNIX and is an effort
|
||||||
to standardize the way UNIX programs talk to the operating system. For more
|
to standardize the way UNIX programs talk to the operating system. For more
|
||||||
information, see Stevens’ excellent book, Advanced Programming in the UNIX
|
information, see Stevens’ excellent book, Advanced Programming in the UNIX
|
||||||
Environment.)
|
Environment.)
|
||||||
|
|
||||||
For a small, private MUD, or a MUD used only for testing and development, about
|
For a small, private MUD, or a MUD used only for testing and development, about
|
||||||
|
@ -184,7 +185,7 @@ tbaMUD uses virtually no CPU time.
|
||||||
|
|
||||||
Historically, tbaMUD has always been developed under different variants of UNIX.
|
Historically, tbaMUD has always been developed under different variants of UNIX.
|
||||||
The original CircleMUD was run on a DECstation 3100 running Ultrix 4.0, which
|
The original CircleMUD was run on a DECstation 3100 running Ultrix 4.0, which
|
||||||
remained Circle’s development platform until v2.0. Starting with v2.0, Circle
|
remained Circle’s development platform until v2.0. Starting with v2.0, Circle
|
||||||
was developed under various versions of Linux and Solaris over the years
|
was developed under various versions of Linux and Solaris over the years
|
||||||
ranging from Linux 0.99.11 through the current Linux 2.2.x and including
|
ranging from Linux 0.99.11 through the current Linux 2.2.x and including
|
||||||
Solaris x86 5.6.
|
Solaris x86 5.6.
|
||||||
|
@ -192,10 +193,10 @@ Solaris x86 5.6.
|
||||||
2.2 Downloading and Unpacking the Source
|
2.2 Downloading and Unpacking the Source
|
||||||
The first step in setting up tbaMUD is to make sure you have the most recent
|
The first step in setting up tbaMUD is to make sure you have the most recent
|
||||||
version of the source. You can always find the most recent version of the
|
version of the source. You can always find the most recent version of the
|
||||||
source at tbaMUD’s official website http://tbamud.com.
|
source at tbaMUD’s official website http://tbamud.com.
|
||||||
|
|
||||||
Next, unpack the archive. If you have the .tar.gz version, unpack it using gzip
|
Next, unpack the archive. If you have the .tar.gz version, unpack it using gzip
|
||||||
(GNU unzip) and the tar archiver. If you don’t already have them, both of these
|
(GNU unzip) and the tar archiver. If you don’t already have them, both of these
|
||||||
utilities can be downloaded from the GNU FTP site <ftp://ftp.gnu.org/pub/gnu/>.
|
utilities can be downloaded from the GNU FTP site <ftp://ftp.gnu.org/pub/gnu/>.
|
||||||
To unpack the archive on a UNIX system, type:
|
To unpack the archive on a UNIX system, type:
|
||||||
|
|
||||||
|
@ -210,27 +211,27 @@ available for the Windows platform, which allow users to use Unix tools on that
|
||||||
operating system.
|
operating system.
|
||||||
|
|
||||||
2.3 Configuring tbaMUD
|
2.3 Configuring tbaMUD
|
||||||
Note: This section applies only to UNIX users. If you’re using Windows, OS/2, or
|
Note: This section applies only to UNIX users. If you’re using Windows, OS/2, or
|
||||||
the Amiga, read README.WIN, README.OS2 or README.AMIGA instead.
|
the Amiga, read README.WIN, README.OS2 or README.AMIGA instead.
|
||||||
|
|
||||||
tbaMUD must be configured using the configure program which attempts to guess
|
tbaMUD must be configured using the configure program which attempts to guess
|
||||||
correct values for various system-dependent variables used during compilation.
|
correct values for various system-dependent variables used during compilation.
|
||||||
It uses those values to create Makefiles and a header file called conf.h.
|
It uses those values to create Makefiles and a header file called conf.h.
|
||||||
|
|
||||||
From tbaMUD’s root directory, simply type
|
From tbaMUD’s root directory, simply type
|
||||||
|
|
||||||
./configure
|
./configure
|
||||||
|
|
||||||
If you’re using csh, it may not execute “configure” properly, giving you an
|
If you’re using csh, it may not execute “configure” properly, giving you an
|
||||||
error message like “Permission denied”. If this occurs, try “sh ./configure”
|
error message like “Permission denied”. If this occurs, try “sh ./configure”
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
configure can take several minutes to run if you’re using a slow computer. It
|
configure can take several minutes to run if you’re using a slow computer. It
|
||||||
will print out various status messages while it works, telling you what
|
will print out various status messages while it works, telling you what
|
||||||
characteristics of your computer it has found. It should create two Makefiles
|
characteristics of your computer it has found. It should create two Makefiles
|
||||||
(src/Makefile and src/util/Makefile) and one header file (src/conf.h).
|
(src/Makefile and src/util/Makefile) and one header file (src/conf.h).
|
||||||
|
|
||||||
You should only need to run configure once – right after you unpack tbaMUD from
|
You should only need to run configure once – right after you unpack tbaMUD from
|
||||||
its archive. You will probably compile the source dozens of times as you add
|
its archive. You will probably compile the source dozens of times as you add
|
||||||
new features, but configure only needs to be run before the first time you
|
new features, but configure only needs to be run before the first time you
|
||||||
compile. Please note that there is one exception to this rule: if you move your
|
compile. Please note that there is one exception to this rule: if you move your
|
||||||
|
@ -239,26 +240,26 @@ recompile the source code. To rerun configure after moving the source, make
|
||||||
sure to delete the file called config.cache and then run configure again.
|
sure to delete the file called config.cache and then run configure again.
|
||||||
|
|
||||||
2.4 Compiling tbaMUD
|
2.4 Compiling tbaMUD
|
||||||
Note: This section applies only to UNIX or Cygwin users. If you’re using
|
Note: This section applies only to UNIX or Cygwin users. If you’re using
|
||||||
windows, OS/2, or the Amiga, read README.WIN, README.OS2, or README.AMIGA instead.
|
windows, OS/2, or the Amiga, read README.WIN, README.OS2, or README.AMIGA instead.
|
||||||
|
|
||||||
The src directory contains the source code for the main MUD server; src/util has
|
The src directory contains the source code for the main MUD server; src/util has
|
||||||
the source for a dozen or so MUD maintenance utilities. There are two Makefiles,
|
the source for a dozen or so MUD maintenance utilities. There are two Makefiles,
|
||||||
one in each source directory, but all compiling is normally performed from the
|
one in each source directory, but all compiling is normally performed from the
|
||||||
src directory only. To compile the only tbaMUD server itself, type “make”.
|
src directory only. To compile the only tbaMUD server itself, type “make”.
|
||||||
Use “make utils” to compile the utilities, or “make all” to compile both the
|
Use “make utils” to compile the utilities, or “make all” to compile both the
|
||||||
server and the utilities. It is also possible to compile individual
|
server and the utilities. It is also possible to compile individual
|
||||||
utilities from the src/util directory: from src/util, type “make
|
utilities from the src/util directory: from src/util, type “make
|
||||||
[utility-name]”. All compiled binaries go to the bin directory.
|
[utility-name]”. All compiled binaries go to the bin directory.
|
||||||
|
|
||||||
The stock (unmodified) tbaMUD code should compile with no warnings or errors.
|
The stock (unmodified) tbaMUD code should compile with no warnings or errors.
|
||||||
|
|
||||||
Despite my best efforts there’s a chance that you’ll have problems compiling
|
Despite my best efforts there’s a chance that you’ll have problems compiling
|
||||||
tbaMUD if you’re using some version of UNIX that I’ve never seen before. It’s
|
tbaMUD if you’re using some version of UNIX that I’ve never seen before. It’s
|
||||||
impossible to give general advice on how to port software, except to say that
|
impossible to give general advice on how to port software, except to say that
|
||||||
you should ask a friend who knows a lot about both UNIX and C to help you.
|
you should ask a friend who knows a lot about both UNIX and C to help you.
|
||||||
Also, if you have problems, you should definitely look at the tbaMUD FAQ
|
Also, if you have problems, you should definitely look at the tbaMUD FAQ
|
||||||
(Frequently Asked Questions list with Answers), which you’ll find in tbaMUD’s
|
(Frequently Asked Questions list with Answers), which you’ll find in tbaMUD’s
|
||||||
/doc directory.
|
/doc directory.
|
||||||
|
|
||||||
If you do port tbaMUD to some other platform successfully, please share your
|
If you do port tbaMUD to some other platform successfully, please share your
|
||||||
|
@ -268,37 +269,37 @@ specific name of your operating system and hardware. Full details on porting to
|
||||||
a new system can be found in Porting.txt.
|
a new system can be found in Porting.txt.
|
||||||
|
|
||||||
The Makefile directs all compiled programs to the /bin directory. Although not
|
The Makefile directs all compiled programs to the /bin directory. Although not
|
||||||
recommended, you may want to put tbaMUD’s /bin directory in your $PATH. The
|
recommended, you may want to put tbaMUD’s /bin directory in your $PATH. The
|
||||||
reason that this is not recommended is that most of the resources are
|
reason that this is not recommended is that most of the resources are
|
||||||
referenced using relative paths, and thus require that you run the programs
|
referenced using relative paths, and thus require that you run the programs
|
||||||
from the base tbaMUD directory.
|
from the base tbaMUD directory.
|
||||||
|
|
||||||
3 Running tbaMUD
|
3 Running tbaMUD
|
||||||
Note: This section applies only to UNIX or Cygwin users. If you’re using
|
Note: This section applies only to UNIX or Cygwin users. If you’re using
|
||||||
Windows, OS/2, or the Amiga, read README.WIN, README.OS2, or EADME.AMIGA
|
Windows, OS/2, or the Amiga, read README.WIN, README.OS2, or EADME.AMIGA
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
3.1 Execution and autorun
|
3.1 Execution and autorun
|
||||||
1. type ’autorun &’
|
1. type ’autorun &’
|
||||||
2. Wait a few moments for the server to boot.
|
2. Wait a few moments for the server to boot.
|
||||||
3. type: telnet localhost 4000
|
3. type: telnet localhost 4000
|
||||||
tbaMUD should always be run from tbaMUD’s “root” directory, not the /bin
|
tbaMUD should always be run from tbaMUD’s “root” directory, not the /bin
|
||||||
directory. You can run it manually by typing bin/circle (useful for testing and
|
directory. You can run it manually by typing bin/circle (useful for testing and
|
||||||
debugging). For running the game “for real,” it is better to use the autorun
|
debugging). For running the game “for real,” it is better to use the autorun
|
||||||
shell script provided in tbaMUD’s root directory.
|
shell script provided in tbaMUD’s root directory.
|
||||||
|
|
||||||
Autorun lets tbaMUD run itself for long periods of time. It continuously runs
|
Autorun lets tbaMUD run itself for long periods of time. It continuously runs
|
||||||
the game as well as removing old system logs, moving newer system logs to the
|
the game as well as removing old system logs, moving newer system logs to the
|
||||||
log directory, and saving certain log entries to permanent files.
|
log directory, and saving certain log entries to permanent files.
|
||||||
|
|
||||||
Autorun can be controlled by creating files with certain names. You can use the
|
Autorun can be controlled by creating files with certain names. You can use the
|
||||||
’touch’ command to create a file, and, of course, the ’rm’ command to remove a
|
’touch’ command to create a file, and, of course, the ’rm’ command to remove a
|
||||||
file. If a file called ’.fastboot’ exists, the tbaMUD will reboot immediately
|
file. If a file called ’.fastboot’ exists, the tbaMUD will reboot immediately
|
||||||
if it crashes or is shut down instead of waiting 40 seconds as it normally does.
|
if it crashes or is shut down instead of waiting 40 seconds as it normally does.
|
||||||
A file called ’.killscript’ will cause the script to terminate itself; i.e. if
|
A file called ’.killscript’ will cause the script to terminate itself; i.e. if
|
||||||
you want to bring the game down. If you want to temporarily prevent the MUD
|
you want to bring the game down. If you want to temporarily prevent the MUD
|
||||||
from rebooting, create a file called “pause”; the script will go into a wait
|
from rebooting, create a file called “pause”; the script will go into a wait
|
||||||
loop until ’pause’ is removed.
|
loop until ’pause’ is removed.
|
||||||
|
|
||||||
Although you can create these files manually, the shutdown command from within
|
Although you can create these files manually, the shutdown command from within
|
||||||
the MUD has several options which will create these files for you. See the
|
the MUD has several options which will create these files for you. See the
|
||||||
|
@ -343,7 +344,7 @@ keep one or more sets of game data in addition to the standard set, and choose
|
||||||
which set is to be used at runtime. For example, you may wish to make a copy of
|
which set is to be used at runtime. For example, you may wish to make a copy of
|
||||||
the entire world in a separate directory, so that you can test additions to the
|
the entire world in a separate directory, so that you can test additions to the
|
||||||
world files without subjecting players to unnecessary hazards. The default data
|
world files without subjecting players to unnecessary hazards. The default data
|
||||||
directory is ’lib.’ Any core dumps (may they never happen to you!) will take
|
directory is ’lib.’ Any core dumps (may they never happen to you!) will take
|
||||||
place in the selected data directory.
|
place in the selected data directory.
|
||||||
|
|
||||||
-p Port Selection. Allows you to choose on which port the game is to listen
|
-p Port Selection. Allows you to choose on which port the game is to listen
|
||||||
|
@ -355,8 +356,8 @@ precedence over the port specified in CEDIT or config.c.
|
||||||
|
|
||||||
3.3 Creating an Implementor Character
|
3.3 Creating an Implementor Character
|
||||||
The first character to log in to the MUD will be made the maximum (Implementor)
|
The first character to log in to the MUD will be made the maximum (Implementor)
|
||||||
level. If you log in and aren’t made an implementor, then the playerfile
|
level. If you log in and aren’t made an implementor, then the playerfile
|
||||||
probably is not empty – take the MUD down, delete the index at
|
probably is not empty – take the MUD down, delete the index at
|
||||||
tbamud\lib\plrfiles, and start the MUD again. You should fix your stats using
|
tbamud\lib\plrfiles, and start the MUD again. You should fix your stats using
|
||||||
the RESTORE command when you first create the character (i.e. type "RESTORE
|
the RESTORE command when you first create the character (i.e. type "RESTORE
|
||||||
<your-name>".
|
<your-name>".
|
||||||
|
@ -383,34 +384,34 @@ CEDIT info is saved and takes precedence over settings in config.c
|
||||||
4.2 TEDIT and Text Files
|
4.2 TEDIT and Text Files
|
||||||
The lib/text directory contains all of the text files read by players. All of
|
The lib/text directory contains all of the text files read by players. All of
|
||||||
these files can be edited online by using the text editor TEDIT. The most
|
these files can be edited online by using the text editor TEDIT. The most
|
||||||
visible file is “motd”, (Message Of The Day), which is the message that mortals
|
visible file is “motd”, (Message Of The Day), which is the message that mortals
|
||||||
see (though not necessarily read!) when they log in. Similarly, the “imotd”
|
see (though not necessarily read!) when they log in. Similarly, the “imotd”
|
||||||
(Immortal MOTD) is seen by immortals when they log in. Other interesting
|
(Immortal MOTD) is seen by immortals when they log in. Other interesting
|
||||||
files are “news” (for the NEWS command), “help” (for the HELP command with no
|
files are “news” (for the NEWS command), “help” (for the HELP command with no
|
||||||
arguments), and others.
|
arguments), and others.
|
||||||
|
|
||||||
One file is particularly important: “policy”. Despite what anyone tells you,
|
One file is particularly important: “policy”. Despite what anyone tells you,
|
||||||
and your best efforts to the contrary, your MUD will have political problems.
|
and your best efforts to the contrary, your MUD will have political problems.
|
||||||
If anyone tells you that you can run a MUD without politics, they’re wrong. If
|
If anyone tells you that you can run a MUD without politics, they’re wrong. If
|
||||||
you tell your players that you’re going to run a revolutionary MUD that doesn’t
|
you tell your players that you’re going to run a revolutionary MUD that doesn’t
|
||||||
have any politics, you’re lying. Every MUD has political problems sooner or
|
have any politics, you’re lying. Every MUD has political problems sooner or
|
||||||
later. Unfortunately, this usually occurs “sooner”. There are various ways to
|
later. Unfortunately, this usually occurs “sooner”. There are various ways to
|
||||||
make political problems easier to handle, but the best way is to decide on some
|
make political problems easier to handle, but the best way is to decide on some
|
||||||
ground rules from the very beginning, and then set those decisions down in
|
ground rules from the very beginning, and then set those decisions down in
|
||||||
writing. That’s what the “policy” file is for. You probably know what kind of
|
writing. That’s what the “policy” file is for. You probably know what kind of
|
||||||
political problems MUDs have (you are not trying to run a MUD without ever
|
political problems MUDs have (you are not trying to run a MUD without ever
|
||||||
having played one, are you!?) – stuff like playerkilling, thieving, kill
|
having played one, are you!?) – stuff like playerkilling, thieving, kill
|
||||||
stealing, client use, multiplaying, reimbursements, etc. Decide on your
|
stealing, client use, multiplaying, reimbursements, etc. Decide on your
|
||||||
policies early and make sure your characters know what those policies are.
|
policies early and make sure your characters know what those policies are.
|
||||||
|
|
||||||
It is also important to write down a set of rules dictating what immortals are
|
It is also important to write down a set of rules dictating what immortals are
|
||||||
allowed to do and not allowed to do. That’s what the “handbook” (Immortal
|
allowed to do and not allowed to do. That’s what the “handbook” (Immortal
|
||||||
handbook) is for. Immortals will always try to bend you as far as they can, so
|
handbook) is for. Immortals will always try to bend you as far as they can, so
|
||||||
it’s important for you to decide on answers to questions before those questions
|
it’s important for you to decide on answers to questions before those questions
|
||||||
come up. Can immortals assist players? What about giving a single ’cure light’
|
come up. Can immortals assist players? What about giving a single ’cure light’
|
||||||
for a player about to die? Can immortals kill mobiles for their own enjoyment?
|
for a player about to die? Can immortals kill mobiles for their own enjoyment?
|
||||||
Can they kill players for the same reason? Are they allowed to make policy?
|
Can they kill players for the same reason? Are they allowed to make policy?
|
||||||
Break policy? Moderate disputes? Turn over each others’ decisions?
|
Break policy? Moderate disputes? Turn over each others’ decisions?
|
||||||
|
|
||||||
4.3 World Files
|
4.3 World Files
|
||||||
The root of the area hierarchy is lib/world/. lib/world/ has 6 subdirectories:
|
The root of the area hierarchy is lib/world/. lib/world/ has 6 subdirectories:
|
||||||
|
@ -418,17 +419,17 @@ wld, mob, obj, shp, trg, and zon, which is where the world, mobile, object,
|
||||||
shop, trigger, and zone files go, respectively.
|
shop, trigger, and zone files go, respectively.
|
||||||
|
|
||||||
Each directory has a set of world files in it with the appropriate extension
|
Each directory has a set of world files in it with the appropriate extension
|
||||||
(i.e. the obj subdir will have a bunch of files ending with “.obj”, such as
|
(i.e. the obj subdir will have a bunch of files ending with “.obj”, such as
|
||||||
30.obj, 31.obj, etc.) plus two special files called “index” and “index.mini”.
|
30.obj, 31.obj, etc.) plus two special files called “index” and “index.mini”.
|
||||||
“index” is a list of which world files are to be loaded by tbaMUD. New zones
|
“index” is a list of which world files are to be loaded by tbaMUD. New zones
|
||||||
can be added in game with the "zedit new" command. “index.mini” controls which
|
can be added in game with the "zedit new" command. “index.mini” controls which
|
||||||
(smaller) set of world files should be loaded in the debugging mode (Mini-Mud
|
(smaller) set of world files should be loaded in the debugging mode (Mini-Mud
|
||||||
Mode, explained below.)
|
Mode, explained below.)
|
||||||
|
|
||||||
5 System Logs
|
5 System Logs
|
||||||
tbaMUD writes a wide variety of information to standard output and standard
|
tbaMUD writes a wide variety of information to standard output and standard
|
||||||
error. If you’re using the autorun script, the boot messages are put into a
|
error. If you’re using the autorun script, the boot messages are put into a
|
||||||
file called “syslog”. During tbaMUD’s boot sequence, the system log keeps a
|
file called “syslog”. During tbaMUD’s boot sequence, the system log keeps a
|
||||||
record of everything the MUD is doing to initialize itself; this can be useful
|
record of everything the MUD is doing to initialize itself; this can be useful
|
||||||
to determine what the problem is if the MUD dies while it is booting. Once the
|
to determine what the problem is if the MUD dies while it is booting. Once the
|
||||||
game is up and running, the syslog contains player information, recording when
|
game is up and running, the syslog contains player information, recording when
|
||||||
|
@ -437,13 +438,13 @@ game also records status information about itself, falling generally into two
|
||||||
categories: usage information and errors.
|
categories: usage information and errors.
|
||||||
|
|
||||||
5.1 Player Information
|
5.1 Player Information
|
||||||
The player information recorded by tbaMUD’s system logs will serve you very well
|
The player information recorded by tbaMUD’s system logs will serve you very well
|
||||||
as your players start to make wild claims about strange bugs resulting in them
|
as your players start to make wild claims about strange bugs resulting in them
|
||||||
losing equipment or points. Many mudders prey on the insecurities of a new mud
|
losing equipment or points. Many mudders prey on the insecurities of a new mud
|
||||||
administrator who is terrified that his or her MUD is riddled with bugs and
|
administrator who is terrified that his or her MUD is riddled with bugs and
|
||||||
will do anything to satisfy grumpy players – don’t let yourself fall into that
|
will do anything to satisfy grumpy players – don’t let yourself fall into that
|
||||||
trap! tbaMUD is bound to contain bugs, but most of the core systems have been
|
trap! tbaMUD is bound to contain bugs, but most of the core systems have been
|
||||||
well tested, so you should take claims such as “I magically lost all my stuff!”
|
well tested, so you should take claims such as “I magically lost all my stuff!”
|
||||||
with a grain of salt and check your system logs.
|
with a grain of salt and check your system logs.
|
||||||
|
|
||||||
If a player ever asks you for reimbursement of equipment, money, gold,
|
If a player ever asks you for reimbursement of equipment, money, gold,
|
||||||
|
@ -453,33 +454,34 @@ check the logs first.
|
||||||
As a sidebar, let me point out that the value of system logs is twofold: 1)
|
As a sidebar, let me point out that the value of system logs is twofold: 1)
|
||||||
they actually provide you with valuable information, and 2) they make your
|
they actually provide you with valuable information, and 2) they make your
|
||||||
players paranoid. When I first started mudding and I heard about this
|
players paranoid. When I first started mudding and I heard about this
|
||||||
mysterious “system log”, it made me incredibly paranoid. Now that I’ve done a
|
mysterious “system log”, it made me incredibly paranoid. Now that I’ve done a
|
||||||
good deal of MUD administration, I’ve seen the same paranoia in many other
|
good deal of MUD administration, I’ve seen the same paranoia in many other
|
||||||
players.
|
players.
|
||||||
|
|
||||||
That paranoia is a very good thing. The system logs become an abstract and
|
That paranoia is a very good thing. The system logs become an abstract and
|
||||||
shapeless but omnipresent force on the MUD. Players hear about “the System Log”
|
shapeless but omnipresent force on the MUD. Players hear about “the System Log”
|
||||||
and then get paranoid that everything they do is being recorded, so they tend
|
and then get paranoid that everything they do is being recorded, so they tend
|
||||||
to behave, lest the evil System Log betray their wrongdoings to the Gods.
|
to behave, lest the evil System Log betray their wrongdoings to the Gods.
|
||||||
|
|
||||||
For this reason, when you go to check your logs, it’s a good idea to say something like “Hold on... let me go check the system logs, OK?” because it
|
For this reason, when you go to check your logs, it’s a good idea to say something
|
||||||
reinforces the syslog’s presence in the collective psyche of your players.
|
like “Hold on... let me go check the system logs, OK?” because it reinforces the
|
||||||
|
syslog’s presence in the collective psyche of your players.
|
||||||
|
|
||||||
Back to the point. When someone claims that they’ve been wronged by the evil
|
Back to the point. When someone claims that they’ve been wronged by the evil
|
||||||
system, always check the logs. The logs give you power to say things like “What
|
system, always check the logs. The logs give you power to say things like “What
|
||||||
do you mean your items disappeared in rent? It says right here in the logs
|
do you mean your items disappeared in rent? It says right here in the logs
|
||||||
‘Rasmussen has quit the game.’ You did not rent at all, you just quit!”
|
‘Rasmussen has quit the game.’ You did not rent at all, you just quit!”
|
||||||
|
|
||||||
To diffuse disputes such as, “The game dumped my stuff, but I had enough
|
To diffuse disputes such as, “The game dumped my stuff, but I had enough
|
||||||
money!!” or “I logged in and my stuff was gone, there must be a bug!!”, two
|
money!!” or “I logged in and my stuff was gone, there must be a bug!!”, two
|
||||||
types of log entries are written. First, every time a character rents, the log
|
types of log entries are written. First, every time a character rents, the log
|
||||||
records the character’s per diem rent rate as well as the total amount of money
|
records the character’s per diem rent rate as well as the total amount of money
|
||||||
on hand and in the bank. Second, the log records makes a record of all
|
on hand and in the bank. Second, the log records makes a record of all
|
||||||
characters’ equipment dumped due to insufficient funds.
|
characters’ equipment dumped due to insufficient funds.
|
||||||
|
|
||||||
Remember, rent is specified as a daily rate but is amortized on a per-second
|
Remember, rent is specified as a daily rate but is amortized on a per-second
|
||||||
basis! In other words, if you rent at the rate of 100 coins per day and come
|
basis! In other words, if you rent at the rate of 100 coins per day and come
|
||||||
back 36 hours later, you’ll be charged 150 coins. Or you can be nice and leave
|
back 36 hours later, you’ll be charged 150 coins. Or you can be nice and leave
|
||||||
rent disabled.
|
rent disabled.
|
||||||
|
|
||||||
The autorunscript saves 6 levels of raw system logs. In addition, it greps the
|
The autorunscript saves 6 levels of raw system logs. In addition, it greps the
|
||||||
|
@ -495,10 +497,10 @@ The usage information currently logged by tbaMUD is, as you can see, somewhat
|
||||||
sparse; local MUD admins are encouraged to add to this code as is appropriate
|
sparse; local MUD admins are encouraged to add to this code as is appropriate
|
||||||
for their particular site.
|
for their particular site.
|
||||||
|
|
||||||
Usage information isn’t critical, but it is interesting to look at the usage
|
Usage information isn’t critical, but it is interesting to look at the usage
|
||||||
patterns to determine when your peak playing hours are. If you’re good at using
|
patterns to determine when your peak playing hours are. If you’re good at using
|
||||||
‘cut’ and other Unix utilities, you can even dazzle your friends by graphing
|
‘cut’ and other Unix utilities, you can even dazzle your friends by graphing
|
||||||
your MUD’s system usage.
|
your MUD’s system usage.
|
||||||
|
|
||||||
Note: friends not included with the tbaMUD distribution.
|
Note: friends not included with the tbaMUD distribution.
|
||||||
|
|
||||||
|
@ -507,7 +509,7 @@ Just as your first gut instinct should be to look at the logs if a player starts
|
||||||
begging you for something, your first gut instinct in the event of a crash or
|
begging you for something, your first gut instinct in the event of a crash or
|
||||||
unexpected shutdown should also be to look at the system logs.
|
unexpected shutdown should also be to look at the system logs.
|
||||||
|
|
||||||
A Unix utility called ‘tail’ is used to look at the last few lines of a text
|
A Unix utility called ‘tail’ is used to look at the last few lines of a text
|
||||||
file; it is very useful for looking at the last entries in the system log to
|
file; it is very useful for looking at the last entries in the system log to
|
||||||
see the last thing that happened before the shutdown. This can be done in game
|
see the last thing that happened before the shutdown. This can be done in game
|
||||||
with the "file" command by using the "file crash" option. Often, tbaMUD will
|
with the "file" command by using the "file crash" option. Often, tbaMUD will
|
||||||
|
@ -520,38 +522,38 @@ directory, the game probably detected an internal error and killed itself. Such
|
||||||
shutdowns are always preceded by entries in the system log describing the error.
|
shutdowns are always preceded by entries in the system log describing the error.
|
||||||
|
|
||||||
If there is no error message at the end of the log, then there probably IS a
|
If there is no error message at the end of the log, then there probably IS a
|
||||||
core dump, so you can use ‘gdb’ to examine the core dump and determine the
|
core dump, so you can use ‘gdb’ to examine the core dump and determine the
|
||||||
reason for the crash. The file hacker.txt, generously provided by Furey of MERC
|
reason for the crash. The file hacker.txt, generously provided by Furey of MERC
|
||||||
Industries, offers useful insight into the art and science of debugging – you’d
|
Industries, offers useful insight into the art and science of debugging – you’d
|
||||||
be well advised to give it a look-see.
|
be well advised to give it a look-see.
|
||||||
|
|
||||||
tbaMUD sometimes encounters a serious but non-fatal error; in this case, the
|
tbaMUD sometimes encounters a serious but non-fatal error; in this case, the
|
||||||
error will be written to the system log with the prefix SYSERR, but the MUD
|
error will be written to the system log with the prefix SYSERR, but the MUD
|
||||||
will not shut itself down. You should always be aware of any SYSERRs which occur
|
will not shut itself down. You should always be aware of any SYSERRs which occur
|
||||||
– they are often useful for foreseeing imminent danger or averting problems
|
– they are often useful for foreseeing imminent danger or averting problems
|
||||||
before they become critical. If a SYSERR does occur, try to determine if a
|
before they become critical. If a SYSERR does occur, try to determine if a
|
||||||
change you’ve made recently has caused it. Ignoring SYSERRs is like ignoring
|
change you’ve made recently has caused it. Ignoring SYSERRs is like ignoring
|
||||||
compiler warnings: you can be tempted to ignore them because the game keeps
|
compiler warnings: you can be tempted to ignore them because the game keeps
|
||||||
going even if they exist, but you can easily get yourself into trouble by not
|
going even if they exist, but you can easily get yourself into trouble by not
|
||||||
listening. The autorun script saves all SYSERRs to the file log/errors.
|
listening. The autorun script saves all SYSERRs to the file log/errors.
|
||||||
|
|
||||||
6 MUD Maintenance
|
6 MUD Maintenance
|
||||||
6.1 Technical Maintenance
|
6.1 Technical Maintenance
|
||||||
Once you get the MUD up and running, you will surely want to modify it – adding
|
Once you get the MUD up and running, you will surely want to modify it – adding
|
||||||
new areas, new features, new code, and new ideas, however these topics are
|
new areas, new features, new code, and new ideas, however these topics are
|
||||||
beyond the scope of this document. See coding.txt, building.txt, and other
|
beyond the scope of this document. See coding.txt, building.txt, and other
|
||||||
documents in the /doc directory and online at http://tbamud.com. This section
|
documents in the /doc directory and online at http://tbamud.com. This section
|
||||||
focuses on some of the simple maintenance that’ll be necessary to keep your MUD
|
focuses on some of the simple maintenance that’ll be necessary to keep your MUD
|
||||||
running smoothly. Make sure not to get so caught up in being a God that you
|
running smoothly. Make sure not to get so caught up in being a God that you
|
||||||
forgot you’re also supposed to be acting as a software engineer!
|
forgot you’re also supposed to be acting as a software engineer!
|
||||||
|
|
||||||
First, you should look at the log/errors file regularly to make sure there are
|
First, you should look at the log/errors file regularly to make sure there are
|
||||||
no recurring problems, particularly problems that may have been caused by code
|
no recurring problems, particularly problems that may have been caused by code
|
||||||
you’ve added. If the MUD crashes, it will usually generate what is called a
|
you’ve added. If the MUD crashes, it will usually generate what is called a
|
||||||
“core dump” – a big file called “core.#” in your lib directory, created by the
|
“core dump” – a big file called “core.#” in your lib directory, created by the
|
||||||
operating system to record the state the game was in the moment before it
|
operating system to record the state the game was in the moment before it
|
||||||
crashed. You should look at the core dump using a debugger such as “gdb” to
|
crashed. You should look at the core dump using a debugger such as “gdb” to
|
||||||
determine why the MUD crashed. See the file “hacker.txt” for more information
|
determine why the MUD crashed. See the file “hacker.txt” for more information
|
||||||
about debugging.
|
about debugging.
|
||||||
|
|
||||||
6.2 Diplomatic Maintenance
|
6.2 Diplomatic Maintenance
|
||||||
|
@ -562,15 +564,15 @@ Well, technically, right. tbaMUD requires very little day-to-day attention in
|
||||||
order to keep the program itself running smoothly. But the MUD itself is just a
|
order to keep the program itself running smoothly. But the MUD itself is just a
|
||||||
series of instructions running on a computer, processing data. Never lose sight
|
series of instructions running on a computer, processing data. Never lose sight
|
||||||
of the fact that there will be dozens, hundreds, or maybe even thousands of
|
of the fact that there will be dozens, hundreds, or maybe even thousands of
|
||||||
people connecting to your MUD – and they are not programs. They are people!
|
people connecting to your MUD – and they are not programs. They are people!
|
||||||
|
|
||||||
From the technical side, there are relatively few things you have to do to keep
|
From the technical side, there are relatively few things you have to do to keep
|
||||||
the game running. But you cannot just dump a MUD on the Internet and then ignore
|
the game running. But you cannot just dump a MUD on the Internet and then ignore
|
||||||
it! Spend time on your MUD. Try to keep up with the boards, and make an effort
|
it! Spend time on your MUD. Try to keep up with the boards, and make an effort
|
||||||
to respond to the complaints. Take a look at the ‘bug’, ‘typo’, and ‘idea’ files
|
to respond to the complaints. Take a look at the ‘bug’, ‘typo’, and ‘idea’ files
|
||||||
from time to time – and respond to some of the ideas using Mudmail. Try to
|
from time to time – and respond to some of the ideas using Mudmail. Try to
|
||||||
respond to Mudmail you receive from players in a timely manner. Make sure that
|
respond to Mudmail you receive from players in a timely manner. Make sure that
|
||||||
your ‘news’, ‘policy’ and other text files are up-to date and suit the political
|
your ‘news’, ‘policy’ and other text files are up-to date and suit the political
|
||||||
climate on your MUD.
|
climate on your MUD.
|
||||||
|
|
||||||
If you cannot or just do not want to deal with the player politics, make sure
|
If you cannot or just do not want to deal with the player politics, make sure
|
||||||
|
@ -582,11 +584,11 @@ Try to remember that running a MUD should be fun. It can sometimes be easy to
|
||||||
lose sight of the ultimate goal of personal enjoyment that MUDs are supposed to
|
lose sight of the ultimate goal of personal enjoyment that MUDs are supposed to
|
||||||
provide, particularly when MUDs start to get crushed under the weight of their
|
provide, particularly when MUDs start to get crushed under the weight of their
|
||||||
own politics or the egos of the administrators. If you find that your MUD is
|
own politics or the egos of the administrators. If you find that your MUD is
|
||||||
more of a source of frustration than enjoyment, don’t be afraid to close it.
|
more of a source of frustration than enjoyment, don’t be afraid to close it.
|
||||||
|
|
||||||
Good luck with your MUD! Always feel free to email or stop by The Builder
|
Good luck with your MUD! Always feel free to email or stop by The Builder
|
||||||
Academy and let us know what you think of the MUD, and the interesting things
|
Academy and let us know what you think of the MUD, and the interesting things
|
||||||
you’ve done with it. We cannot promise a timely response, but we love hearing
|
you’ve done with it. We cannot promise a timely response, but we love hearing
|
||||||
from people who are using our code.
|
from people who are using our code.
|
||||||
|
|
||||||
For further information and updates check out http://tbamud.com.
|
For further information and updates check out http://tbamud.com.
|
Loading…
Add table
Add a link
Reference in a new issue