<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Re: DevMUD: Inheritable modules --> <!--X-From-R13: Dboreg Penql <ejo197Nrpf.fbgba.np.hx> --> <!--X-Date: Mon, 2 Nov 1998 08:38:50 -0800 --> <!--X-Message-Id: Pine.LNX.3.96.981102153430.4002A-100000#snug,ecs.soton.ac.uk --> <!--X-Content-Type: text/plain --> <!--X-Reference: 19981102101731.C15559#thelonious,new.ox.ac.uk --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Re: DevMUD: Inheritable modules</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:rwb197#ecs,soton.ac.uk"> </head> <body background="/backgrounds/paperback.gif" bgcolor="#ffffff" text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000"> <font size="+4" color="#804040"> <strong><em>MUD-Dev<br>mailing list archive</em></strong> </font> <br> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00686.html">Previous</a> | <a href="msg00689.html">Next</a> ] Thread: [ <a href="msg00683.html">Previous</a> | <a href="msg00705.html">Next</a> ] Index: [ <A HREF="author.html#00688">Author</A> | <A HREF="#00688">Date</A> | <A HREF="thread.html#00688">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Re: DevMUD: Inheritable modules</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Subject</em>: [MUD-Dev] Re: DevMUD: Inheritable modules</LI> <LI><em>From</em>: Robert Brady <<A HREF="mailto:rwb197#ecs,soton.ac.uk">rwb197#ecs,soton.ac.uk</A>></LI> <LI><em>Date</em>: Mon, 2 Nov 1998 16:34:30 +0000 (GMT)</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> On Mon, 2 Nov 1998, Jo Dillon wrote: > I believe Robert Brady of this parish has created his own mud using > dlopen'able modules. I don't know the address offhand I'm afraid :) This is correct. My mud has a small (7000 lines of C++) core. In itself, this implements very little functionality, but provides the base for the mud components. (I believe it would be possible to migrate more code from the core to modules, but it's not high on my list of priorities right now). The core accepts telnet connections, but plug-in modules handle things such as authentication and almost all commands. (The commands that handle code loading are implemented in the core for obvious reasons). Currently, the modules contain about 14000 lines of C++. Some modules depend upon other ones. For example, the modules `board' and `mail' which provide boards and mudmail respectively, depend upon the `mailboard' module, which provides a class for dealing with persistant messages stored in a file. The modules can be swapped in and out and reloaded on demand. This enables bugs to be fixed, and features implemented without the mud going down. (Yes, this allows mistakes to be made, and crashes and nasty things to happen : but code is usually tested in a seperate process first, before adding it to the live mud. Even if you're using a language in which you are given more protection from stupid mistakes, like Java, its a bad idea to use untested code in a live server.) For an extension language, I can plug whatever language I like in, as the bindings are quite simple. Currently I'm using S-Lang, [1] and a peculiar but quite nice mud-language which does not have a name (the compiler for this language is approx 8K lines). I have been thinking about moving to Scheme, but that's just an idea right now. The mud (called `The Cryosphere') itself [2] is a mostly-implemented science-fiction quest-based mud. It offers nothing particularly innovative, although I have been told that the building system is fairly nice. It's not officially open, as the world is currently too small, more quests need adding, and many things need fixing. Although the aim is to create a mud, not a codebase, the source code is ``available''. (In that right now there's nowhere to actually download it from, but I'd be happy to make a release if there is interest. It would be GPLed). [1] <A HREF="http://space.mit.edu/~davis/slang.html">http://space.mit.edu/~davis/slang.html</A> [2] <A HREF="telnet://fluffy.ecs.soton.ac.uk:6666">telnet://fluffy.ecs.soton.ac.uk:6666</A> -- Robert Brady </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <ul compact><li><strong>Follow-Ups</strong>: <ul> <li><strong><A NAME="00705" HREF="msg00705.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong> <ul compact><li><em>From:</em> J C Lawrence <claw#kanga,nu></li></ul> </UL></LI></UL> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00683" HREF="msg00683.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></STRONG> <UL><LI><EM>From:</EM> Jo Dillon <emily#thelonious,new.ox.ac.uk></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00686.html">[MUD-Dev] Re: Why modules? (Was: Inheritable modules)</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00689.html">[MUD-Dev] Re: Why modules? (Was: Inheritable modules)</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00683.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00705.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00688"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00688"><STRONG>Thread</STRONG></A></LI> </UL> </LI> </UL> <!--X-BotPNI-End--> <!--X-User-Footer--> <!--X-User-Footer-End--> <ul><li>Thread context: <BLOCKQUOTE><UL> <LI><STRONG>[MUD-Dev] Re: DevMUD: Inheritable modules</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <ul compact> <ul compact> <LI><strong><A NAME="00592" HREF="msg00592.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Niklas Elmqvist <a href="mailto:d97elm#dtek,chalmers.se">d97elm#dtek,chalmers.se</a>, Fri 30 Oct 1998, 13:15 GMT <UL> <LI><strong><A NAME="00596" HREF="msg00596.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Jon Leonard <a href="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</a>, Fri 30 Oct 1998, 17:20 GMT <UL> <LI><strong><A NAME="00605" HREF="msg00605.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Niklas Elmqvist <a href="mailto:d97elm#dtek,chalmers.se">d97elm#dtek,chalmers.se</a>, Sat 31 Oct 1998, 00:05 GMT </LI> <LI><strong><A NAME="00683" HREF="msg00683.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Jo Dillon <a href="mailto:emily#thelonious,new.ox.ac.uk">emily#thelonious,new.ox.ac.uk</a>, Mon 02 Nov 1998, 10:21 GMT <UL> <LI><strong><A NAME="00688" HREF="msg00688.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Robert Brady <a href="mailto:rwb197#ecs,soton.ac.uk">rwb197#ecs,soton.ac.uk</a>, Mon 02 Nov 1998, 16:38 GMT <UL> <LI><strong><A NAME="00705" HREF="msg00705.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Tue 03 Nov 1998, 06:06 GMT </LI> </UL> </LI> </UL> </LI> </UL> </LI> <LI><strong><A NAME="00597" HREF="msg00597.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Darrin Hyrup <a href="mailto:shades#mythicgames,com">shades#mythicgames,com</a>, Fri 30 Oct 1998, 17:25 GMT <UL> <LI><strong><A NAME="00599" HREF="msg00599.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, Adam J. Thornton <a href="mailto:adam#phoenix,Princeton.EDU">adam#phoenix,Princeton.EDU</a>, Fri 30 Oct 1998, 18:47 GMT <UL> <LI><strong><A NAME="00606" HREF="msg00606.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, James Wilson <a href="mailto:jwilson#rochester,rr.com">jwilson#rochester,rr.com</a>, Sat 31 Oct 1998, 00:05 GMT </LI> </UL> </LI> </UL> </LI> </UL> </LI> </ul> </ul> </ul> </ul> </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>