PennMUSH Community

root/1.8.3/tags/p5rc1/README

Revision 881, 11.3 kB (checked in by shawnw, 2 years ago)

Added new ptab_insert_one(). Added --no-session command-line arg to disable setsid() for easier debugging.

Line 
1 ============================================================================
2                    User's Guide to PennMUSH 1.8.x
3 ============================================================================
4
5 Some of this Guide was written by Amberyl, and is used with permission.
6 Most of it is by Paul/Javelin.  This most recent version has been
7 updated by Alex/Talek and Javelin.
8
9 Installation information can be found in the files INSTALL or
10 UPGRADING, depending on whether it's a new install or an upgrade.
11 The file I18N discusses internationalization.
12
13 I.    Introduction and history
14 II.   Getting Help, Reporting Bugs
15 III.  Getting a .pennmush.org hostname and mailing lists
16 IV.   Miscellaneous
17 V.    Comments
18
19 You may also want to take a look at Javelin's Guide for PennMUSH Gods,
20 at http://pennmush.org/~alansz/guide.html
21 or by ftp from pennmush.org, /pub/PennMUSH/Guide
22 ============================================================================
23
24 I. Introduction and history
25
26 PennMUSH uses a version-numbering system that includes version
27 numbers (like 1.7.2) and patchlevels (like p32), usually written
28 together (1.7.2p32).
29
30 Starting with 1.7.2, version numbers that are even (like 1.7.2) are
31 stable releases - patchlevels on the latest stable release will only be
32 issued to fix serious bugs. Version numbers that are odd (like 1.7.3)
33 are development releases - patchlevels on the latest development release
34 may include new features as well as bugfixes, and development releases
35 may not be as stable as stable releases. On the other hand, some new
36 features may *increase* stability without fixing bugs per se, and it's
37 quite likely that later patchlevels on the development version will be
38 more stable than those on the "stable" version.
39
40 PennMUSH is a TinyMUD derivative, and one of the branches along the MUSH
41 line. "Vanilla" TinyMUSH, which added the "v" registers and functions to
42 the basic TinyMUD building commands, was written by Larry Foard. The code
43 was later expanded by Jin, of MicroMUSH. In January of 1991, MicroMUSH
44 changed its name to MicroMUSE, and the code there continued to develop
45 under the MUSE name. At that same point in time, Moonchilde took the
46 last public release of that code and began a series of improvements
47 and extensions.
48
49 That code was released as PernMUSH, named for the MUSH that Moonchilde
50 was running. The last released version of that code was version 1.15,
51 at the end of November 1991. PernMUSH itself had switched over to
52 TinyMUSH 2.0, which Moonchilde had co-written with Glenn Crocker
53 (Wizard of TinyCWRU); there was no longer a reason for Moonchilde to
54 maintain this code.
55
56 In January of 1992, Amberyl began working on the PernMUSH 1.15 code
57 release, for TinyKrynn. She took over the code, which no one was
58 supporting, and is continuing to work on extending this code, as well
59 as improving its compatibility with TinyMUSH 2.0.  She changed the name
60 to PennMUSH (named for her school, the University of Pennsylvania), to
61 avoid the confusion that resulted from PernMUSH actually running
62 TinyMUSH 2.0.
63
64 In January of 1995, Amberyl passed on her mantle to Javelin (aka
65 Paul@Dune, Alan Schwartz), who continuted as the maintainer of the
66 primary public distribution in development. He released two patchlevels
67 numbered "dune-1" and "dune-2" before releasing PennMUSH 1.50 pl11 and
68 later distributions. The numbering scheme changed again with PennMUSH
69 1.6.0 (see CHANGES.OLD).
70
71 Gradually during the early part of 1995, Alan formed the PennMUSH
72 development team with T. Alexander Popiel (Talek) and Ralph Melton.
73 The development process became more formalized, with official patches,
74 a dedicated bug reporting email address, and better tracking of
75 outstanding issues and history.
76
77 In August of 1997, Ralph Melton left the PennMUSH development team,
78 and Thorvald Natvig joined as a new member.  Many thanks go to Ralph
79 who contributed much time, code, and good cheer to PennMUSH.
80 Since that time, the development team has gained and lost members.
81 The current membership is usually listed at the top of the
82 latest CHANGES.<version> file.
83
84 In November 2002, with the release of PennMUSH 1.7.6, PennMUSH
85 began using the Artistic License (see the COPYRITE file),
86 an open source/free software license. This license was
87 simultaneously adopted by TinyMUSH (2.2.5, 3.x) and TinyMUX to
88 facilitate code sharing and widen use.
89
90 In July 2006, Javelin retired from the role of Maintainer, passing the
91 mantle of lead developer to Raevnos and that of release management to
92 Ervin Hearn (Noltar). Many thanks go to Javelin whose contributions and
93 guidance of PennMUSH have shaped it into the codebase that it is today.
94
95 A MUSH manual should be available at ftp.digex.net, ftp.math.okstate.edu,
96 primerd.prime.com, or from wherever you got this code from. The manual
97 should be numbered version 2.007 or higher.
98
99 If you are planning on modifying the source code to PennMUSH, you'll
100 probably want Javelin's Guide for PennMUSH Gods, which should be
101 available where you got this code, or, in hypertext, as
102 http://pennmush.org/~alansz/guide.html. More recent versions
103 may be available at http://community.pennmush.org.
104
105       Enjoy!
106
107 ============================================================================
108
109 II.  Getting Help, Reporting Bugs
110
111 Here are some guidelines about where and how to report bugs or problems
112 or generally look for help.
113
114 There are three places one could get help with a problem:
115
116 1. pennmush@pennmush.org is the PennMUSH mailing list.
117    To subscribe, visit http://www.pennmush.org/mailman/listinfo/pennmush
118
119    The PennMUSH mailing list should only be used for problems,
120    bugs, suggestions, ideas, discussion, etc. that are OF GENERAL INTEREST.
121    It's often hard to say what's of general interest, but a good
122    rule of thumb is:
123
124      Anything that occurs before the MUSH process is running is
125      *not* of general interest
126
127    That is, don't report problems with downloading PennMUSH, compilation,
128    installation, restarts, or database corruption to the mailing list.
129    These are often system specific.
130
131    (If you don't want to hear these discussions, but do want to be
132    informed of new patches, subscribe to pennmush-announce instead,
133    at http://www.pennmush.org/mailman/listinfo/pennmush-announce)
134
135 2. The PennMUSH bug-tracking site is http://dev.pennmush.org/
136    To file a new report, click on the 'New Ticket' link. If
137    you want to get emails about updates to the bug report, put your
138    email address in the appropriate field. For 'type', please select
139    the most appropriate category: Bug, suggested feature, documetation
140    issue, build/compliation problems, etc. Be sure to include what version
141    of PennMUSH you found the problem on.
142
143    If the problem resulted in a crash and a core dump, a stack trace of
144    the core dump (see the section above) should also be included.
145
146    If we need additional stuff (like a log of the Configure or make), we'll
147    ask for it, but if you know that it's relevant, you can send it along,
148    too.
149
150    You can also search to see if anyone else has already reported the issue,'
151    see what issues have been fixed for upcoming releases, and much more at
152    the site.
153
154    The old way of emailing pennmush-bugs@pennmush.org still works, but using
155    the web interface allows you to specifically give an issue type when
156    reporting something.
157
158 ============================================================================
159
160 III. Getting a .pennmush.org hostname and mailing lists
161
162 Thanks to donations from the PennMUSH community, Javelin was able to
163 register the pennmush.org domain name, and, if you're running a PennMUSH,
164 you can have yourmush.pennmush.org assigned as a hostname for your MUSH,
165 so players don't need to telnet to obscuresite.obscuredomain.com!
166
167 NOTE: A hostname is not the same thing as a site. We don't have accounts
168 for you to run your MUSH from. You must already have your MUSH
169 running at someplace.edu or whatever -- we just provide a nice hostname
170 that will resolve into your current site's IP address.
171
172 How do you get a pennmush.org hostname? Go to
173 http://services.pennmush.org/, and follow the instructions.
174 It may take a day or two before the hostname will work.
175
176 Thovald also has volunteered to host mailing lists for MUSHes in
177 the pennmush.org domain. Details are on the same web page.
178
179 ============================================================================
180
181 IV. Miscellaneous
182
183 IV.a Announcing when a mush is down
184
185 If your mush is no longer running on a given port or server and
186 you want to and are able to leave a programming running listening
187 on that port, you can tell people about a new location or other news.
188
189 Run:
190
191 % make portmsg
192
193 Then start the port announcer with:
194
195 % ./src/portmsg message.txt port#
196
197 Any connections to the given port will see the contents of the message
198 file and then be disconnected after a few seconds.
199
200 IV.b Running under gdb
201
202 If you start the game through gdb (As opposed to attaching to a
203 running process) pass the --no-session argument to netmush/netmud to
204 avoid detaching from the controlling terminal (Done via fork() and
205 setsid()). If you don't know what gdb is, don't worry about this.
206
207 V. Comments
208
209 V.a. Amberyl's Comments
210
211 These are in the first person.  :)
212
213 I've been working with this code for a year and a quarter now.  I can't
214 claim that it's particularly elegant or inspired; all I can say is that
215 it works (most of the time), and that I've had fun writing it.  I'm
216 also hoping that it's quite readable; the sections I've added or
217 revised tend to be quite heavily commented.
218
219 A number of people have been contributed a lot, directly and
220 indirectly, to PennMUSH; many of them are credited in copyright.h.
221 Read the file and embarrass them the next time you see them.  ;)
222
223 PennMUSH 1.50 patchlevel 3 contains the promised parser rewrite.  A
224 great deal of the code is derived or directly taken from the TinyMUSH
225 2.0 parser; credit goes to JT Traub (Moonchilde) and Glenn Crocker
226 (Wizard) for writing the thing in the first place. In most cases, the
227 1.50 parser should now be functionally identical to the parser in
228 TinyMUSH 2.0.9; see the news file for a brief summary of the changes.
229 Major differences between the 1.50 and 2.0 parsers are almost certainly
230 bugs, and should be reported to me.
231
232 I do have a life, though, and academics/job/social stuff take priority.
233 Thus, don't get too upset if it takes me a while to add your pet hack.
234 :)  I'm generally happy to discuss code and life in general, though, so
235 if you see me on a MUSH, feel free to say hi.
236
237     Enjoy your MUSH.
238
239           --  Lydia Leong  (lwl@digex.net)
240           "Amberyl" just about everywhere
241
242 V.b. Paul/Javelin's Comments
243
244 And let me recognize T. Alexander Popiel, Shawn Wagner, Nick Gammon,
245 Dan Williams, Ervin Hearn III, Ralph Melton, David Cheatham, and Thorvald
246 Natvig, other past and present members of the PennMUSH development or
247 porting team.  Working with them is a real pleasure.
248
249 I am trying to keep extending the functionality of the server, while
250 optimizing and rewriting things wherever possible. I'm always
251 interested in improvements or ideas for the code, as well as anything
252 you might have done to get it to compile and run on unusual systems.
253
254
255         -- Alan Schwartz (dunemush@pennmush.org)
256            Javelin at most places
257
258
259 V.c. Alex/Talek's Comments
260
261 I would like to thank Ralph, Amberyl, Moonchilde, and all the others
262 who went either with us or before us.
263
264 PennMUSH is the embodiment of many years of hard work by many people.
265 May it never stagnate.
266
267         -- Alex (talek@pennmush.org)
268
Note: See TracBrowser for help on using the browser.