[486] in Coldmud discussion meeting

root meeting help first previous next last

[ColdMud FAQ] Version 0.0.2

daemon@ATHENA.MIT.EDU (Sun Oct 30 14:34:03 1994 )

From: image@expert.cc.purdue.edu (Jeff T.P.)
To: coldstuff@MIT.EDU
Date: Sun, 30 Oct 94 14:30:44 EST

Here's a minor (read: pathetic) update to the FAQ.  I just don't have
the information to do much, I'm going to attempt to add some more basic
information into the FAQ for the next release (at the end of next

                           COLDMUD FAQ VERSION 0.0.2
0. Table of Contents

     * 1. Introduction
          + 1.1. Introduction to ColdMud
               o 1.1.1. ColdMud Server Development
                    # ColdMud's History
                    # ColdMud's Present
                    # ColdMud's Future
               o 1.1.2. ColdMud Core Development
                    # ColdMud Cores' Past
                    # ColdMud Cores' Present
                    # ColdMud Cores' Future
               o 1.1.3. ColdMud Servers Online
                    # Robert de Forest's FrozenApples ColdMud
          + 1.2. Where to get ColdMud Servers & Cores
               o 1.2.1. ColdMud Servers*!*
               o 1.2.2. ColdMud Cores
     * 2. Answers to Frequently Asked Questions
          + 2.1. What advantages are there to the yet unimplemented
            "private methods?"
     * 3. ColdMud FAQ Credits & Contact Addresses
          + 3.1. ColdMud FAQ Credits
          + 3.2. ColdMud FAQ Contacts
     * 4. History
1. Introduction

   New/Changed Items are marked with "*!*".
    1.1.1. ColdMud Server Development
  ColdMud's History [RdF]
   Versions through 0.11.0 were written by Greg Hudson. Version 0.10 was
   his last official release, and the last documented server. Patches
   were once available to fix several bugs and add a function for testing
   method tick usage. Version 0.11.0 had more internal than external
   changes. The external changes were a change in the return of
   traceback() to a list of lists instead of a list of strings (so
   traceback formatting could be performed in-db), the removal of
   error_str() and error_arg() (because they are included in
   traceback()), and the removal of the functions dict_add_elem() and
   dict_del_elem() because they are easily implemented in-db with
   dict_add(), dict_del(), dict_contains(), setadd() and setremove().
   Greg didn't quite finish 0.11.0, but Colin McCormack kindly finished
   it for him. I applied the patches for version 10 to this source,
   resulting in what has been passed around as 0.11.4. This version is
   "stable" except that its binary-db storage seems to be broken and it
   may hang at random on Linux boxes.
 ColdMud's Present [RdF]
   Jordan Baker took my copy of 0.11.4 and added suspend(), resume(),
   tasks(), cancel(), and callers() to it, resulting in a VERY-BETA
   0.12.0. He also changed the message_op function to make (x).foo()
   syntactically equivalent to get_name(type(x)).foo(x) for all
   non-obj/non-frob x. This means that [1,2].reverse() => [2,1] if
   $list.reverse() does what its name implies.
 ColdMud's Future [RdF]
   Colin McCormack has been publicly secretive about what his plans are.
   They seem to be re-writing the server from the ground up in C++, but
   being textdump compatible with 0.11.0. He has also hinted at
   multi-threading, and has shown interest in supporting distributed dbs.
   Jordan Baker continues to do server hacking. He and others are trying
   to find and squash the bug which is causing the server to hang on
   linux machines. He also plans to add floating-point support. There has
   been talk of adding more attributes to methods besides
   "disallow_overrides", specifically "private" and "instance_only". The
   first has been successfully added to 0.12.0, but was removed because
   Jordan didn't trust the changes bug-wise. He also isn't yet convinced
   that it is a Good Thing (tm).
   Private methods are "invisible" to other calling objects. They have
   the same accessiblity as object parameters. In the test
   implementation, ".foo();" caused only the object defining the current
   method to be searched for a method named 'foo. If found, foo() would
   be executed, otherwise the server would throw a ~methodnf error. If
   another object tried to access the method it would not be there, and
   the method search would continue at the next parent.
   I believe Jordan has plans of re-writting in C++ and/or adding
   threading to the server some time after the next official release.
    1.1.2. ColdMud Core Development
  ColdMud Cores' Past [RdF] [JTP]*!*
   Worlds 0.1 through 0.6 were available with various releases of the
   server. World-0.6 will not run under 0.11.0 without changes, but the
   changes are simple and obvious with the manual and the above info in
   hand. None were very complete by most people's standards, as they do
   not support a help system, mail, editors, aliases, pronoun
   substitution, or a bunch of other features considered to be necessary
   in any MUD core. They do however provide the platform from which all
   cores that I know of developed.
   The Cold Dark was perhaps the best known ColdMud core to hit the 'net
   so far. It was a core based on World-0.6 with many features necessary
   for normal VR Server operation. The Cold Dark server is no longer
   publicly accessible.
   AbsoluteZero was a core being developed by Jordan Baker and some
   associates of his, until he lost net access. It has a help system of
   sorts, pronoun substitution, and some other bells and whistles, but is
   a very incomplete attempt due to being a work in progress interrupted
 ColdMud Cores' Present [RdF] [JTP]*!*
   FrozenApples is the core Robert de Forest has been working on since he
   left tCD. It provides little functionality over world-0.6, but
   includes a re-written I/O object system, and @d command, and many
   general cleanup/util writing. It is anything but done.
   TheColdDark is still being developed by Brandon Gillespie. It is, at
   this time, not ready for distribution.
   AbsoluteZero is available, but not in a distributable state.
 ColdMud Cores' Future [RdF] [JTP]*!*
   FrozenApples is on hold until I finish a project with Jordan. When we
   are done with that, we will start a serious effort which should result
   in a top-notch core within a month of starting. User-command level
   functionality will not be significantly increased, but the structure
   and design of the core will be as complete as they come, and will
   include pronoun substitution, better IO handling, an events system,
   and many other components sorely lacking in world-0.6.
   Abs0 is being incorporated into FrozenApples.
   tCD is not dead. No release date has been mentioned, but Brandon has
   assured me that there will be a release sometime in the future.
   RyouKold, a core being developed by Jeff T.P., has been on the
   programmer's table for a few months now. It's programmed from the
   ground up, borrowing ideas, but not code from World 0.6. RyouKold is
   still in it's infancy, but with many bells and whistles (which is
   slowing down the development, of course). Release date is expected to
   be Spring of 1995.
    1.1.3. ColdMud Servers Online
  Robert de Forest's FrozenApples ColdMud [RdF]
     "I am running a version of FrozenApples on 0.12.0 of the server that
     has a HUGE security hole. There are also many disgusting, sloppy,
     irritating, and otherwise stupid bugs in it. However, if you need a
     site to go to to research cold, you may come to sequoia.picosof.com
     / 6666. I make no guarantee of any kind. Save your work locally if
     you value it."
    1.2.1. ColdMud Servers [RdF]*!*
   ColdMud Server Version 0.10.x is available at:
   ColdMud Server Version 0.12 [WARNING: VERY BETA!] is available at:
    1.2.2. ColdMud Cores [RdF]
   World-0.6 is available at:
   FrozenApples is available at:
2. Answers to Common Questions

   Private methods have two advantages. The first is that the lookup for
   a private method call only searches one object, as opposed to
   potentially all the ancestors of this(). The second advantage is that
   it provides a programmer with a way to be sure that "sender() ==
   this() && caller() == definer()" because obj:foo() is a syntax error.
   This is a common perms check in any method which is shared by multiple
   interface methods, for example. That is, the private flag on methods
   provides a simple and efficient tool for enforcing an object's
3. ColdMud FAQ Credits & Contact Addresses

   This FAQ was originally prepared as a rather Impromptu FAQ by Robert
   de Forest. Jeff T.P. took over the FAQ after that first version.
     * [RdF] Robert de Forest
     * [JTP] Jeff T.P.
4. History

     * Version 0.0.0 - Written by [RdF]. September 15, 1994.
     * Version 0.0.1 - Maintained by [JTP]. September 16, 1994.
     * Version 0.0.2 - Minor Update & Spelling Corrections [JTP]. October
       23, 1994.
Life in the So Called Information Age. . .
              . . .One Man's Garbage is Another Man's Treasure (I Guess).

World Wide Web -=> http://chiba.picosof.com:7777/users/Empedicles