<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: [MUD-Dev] Next gen MUD wishlist --> <!--X-From-R13: Pehpr <oehprNcherzntvp.pbz> --> <!--X-Date: Sat, 26 Feb 2000 13:19:07 -0800 --> <!--X-Message-Id: 38B9C600.7C8DBEC7#cubik,org --> <!--X-Content-Type: text/plain --> <!--X-Reference: Pine.LNX.4.10.10002221806460.18555-100000#aeowyn,treyarch.com --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: [MUD-Dev] Next gen MUD wishlist</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:bruce#puremagic,com"> </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="msg00479.html">Previous</a> | <a href="msg00482.html">Next</a> ] Thread: [ <a href="msg00461.html">Previous</a> | <a href="msg00369.html">Next</a> ] Index: [ <A HREF="author.html#00480">Author</A> | <A HREF="#00480">Date</A> | <A HREF="thread.html#00480">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: [MUD-Dev] Next gen MUD wishlist</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>: Re: [MUD-Dev] Next gen MUD wishlist</LI> <LI><em>From</em>: Bruce <<A HREF="mailto:bruce#puremagic,com">bruce#puremagic,com</A>></LI> <LI><em>Date</em>: Sun, 27 Feb 2000 16:49:04 -0800</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#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> adam#treyarch,com wrote: > On Sat, 19 Feb 2000, Bruce wrote: > > If all of this is to be the 'Next generation' of MUDs, then we (the mud > > world) are largely already there. MOO and Cold have been here at this > > level for some time, or had the capabilities of being at this level at > > the core architecture level. They've had graphical clients. Some of > > them have had coordinate based systems. They've been able to handle > > 100-500 users. That said, I've moved on from those systems for reasons > > explained in the list archives. > > > > Isn't it time to really move on to the next generation? > > Which begs the question, of course: what really IS the next generation? Since I like questions so much, I'd have to wonder if we really have an idea of what the current generation is? :) From my perspective having worked with Cold, the current generation of servers provides, from the developer's point of view, the following: * Easy to use networking primitives. * Automatic memory management. * Automatic persistence. * Simple datatypes like lists, dictionaries, strings, buffers. * An interpreted language for doing all development work. * The language is dynamicly typed, which makes for rapid development, but no compile-time type checking. * Highly dynamic object model. MOO provides much the same. The current generation has some issues though: * Persistence is often not extensible and the ability to modify how persistence works isn't provided by the driver. * Datatypes are nice as provided, but aren't easily extensible. * Sometimes, you just need that native code performance. * No access to threads or other ways to take advantage of SMP. * Poor documentation (not an architecture issue, but a problem all the same). Some of the 'next generation' projects starting up today don't seem to have a solid idea of where things stand in terms of history, or what the issues are with the existing systems. But that's where things stood 2 years ago as well. Given that, maybe it is interesting to look at why these servers provide what they do at the programming level? I think it is fairly safe to say that one of the goals of Cold at least is to provide services to programmers to make it easier for them to get their work done. Automatic persistence and memory management work towards this by removing work from the developer. Having a dynamic object model allows things to change at runtime in an interactive style of development without rebooting the server. This can also be useful for allowing fixes to server code on the fly, without requiring a reboot or any downtime. The standard datatypes fulfill a role similar to that of the STL in C++. Being that the server is fully interpreted, it is also much less likely to crash. Nearly all of these features are aimed directly at allowing developers to work faster and more effectively. Addressing some of the things that I listed as issues with the current generation would serve to help make it easier to write code: extensible persistence and datatypes. Adding threads would make it harder to program, but _might_ provide some assistance with scalability depending on the server design. So, I'd look at next generation systems as taking much of what we have today in the more advanced systems and making it more extensible and easier, providing a framework for server development that is easy to use, but doesn't limit the developers using it to those datatypes that the original server developers bothered to write support for. Also, I'd look at the varying types of people doing development. There are 3 categories that I can see easily: * Server gurus. They design and implement the architecture. * Programmers. They sit between the builders and the server gurus and write a lot of higher level code implementing game logic within the architecture defined by the gurus. * Builders. They build the world and customize the objects to flesh out the experience of being within the world. Each of these groups of people has a differing set of needs, capabilities and interests. The toolset used for world development should take this into account and provide the appropriate tools for the developers. Of course, I've completely ignored game design and game-oriented issues here. > Is it simply more scalability, so that instead of 500 people online we go > to 500,000? > > Is it more immersive worlds via graphics and sound? > > Is it more malleable worlds, with more 'realistic' entity interactions, and > especially more complex player<->world interactions? > > Is it better tools for organizing societies within the mud world, so that > players can better interact with each other? > > Is it enhanced building/scripting tools so that huge, complex, dynamic > worlds can be created without requiring thousands of work-hours of > effort? I think it is all of this. All of this is possible at the technology level we currently have today, except for the scalability. What does it take to do these things? At a minimum, it requires the appropriate programming tools that are easy for the developers to work with! - Bruce _______________________________________________ MUD-Dev maillist - MUD-Dev#kanga,nu <A HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A> </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00458" HREF="msg00458.html">Re: [MUD-Dev] Next gen MUD wishlist</A></STRONG> <UL><LI><EM>From:</EM> <adam#treyarch,com></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00479.html">RE: [MUD-Dev] [Off-topic] GDC-2000</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00482.html">Re: [MUD-Dev] [Off-topic] GDC-2000</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00461.html">Re: [MUD-Dev] Next gen MUD wishlist</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00369.html">RE: [MUD-DEV] a shrinking pool of players?</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00480"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00480"><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>Re: [MUD-Dev] Next gen MUD wishlist</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <ul compact> <ul compact> <ul compact> <ul compact> <LI><strong><A NAME="00430" HREF="msg00430.html">Re: [MUD-Dev] Next gen MUD wishlist</A></strong>, J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sat 19 Feb 2000, 06:56 GMT <UL> <LI><strong><A NAME="00431" HREF="msg00431.html">Re: [MUD-Dev] Next gen MUD wishlist</A></strong>, Chris Jones <a href="mailto:cjones#v-wave,com">cjones#v-wave,com</a>, Sat 19 Feb 2000, 17:36 GMT </LI> </UL> </LI> </ul> </ul> <LI><strong><A NAME="00458" HREF="msg00458.html">Re: [MUD-Dev] Next gen MUD wishlist</A></strong>, adam <a href="mailto:adam#treyarch,com">adam#treyarch,com</a>, Wed 23 Feb 2000, 02:09 GMT <UL> <LI><strong><A NAME="00461" HREF="msg00461.html">Re: [MUD-Dev] Next gen MUD wishlist</A></strong>, Bryce Harrington <a href="mailto:bryce#neptune,net">bryce#neptune,net</a>, Thu 24 Feb 2000, 03:45 GMT </LI> <LI><strong><A NAME="00480" HREF="msg00480.html">Re: [MUD-Dev] Next gen MUD wishlist</A></strong>, Bruce <a href="mailto:bruce#puremagic,com">bruce#puremagic,com</a>, Sat 26 Feb 2000, 21:19 GMT </LI> </UL> </LI> </ul> </ul> </ul> <LI><strong><A NAME="00369" HREF="msg00369.html">RE: [MUD-DEV] a shrinking pool of players?</A></strong>, Sellers, Michael <a href="mailto:MSellers#maxis,com">MSellers#maxis,com</a>, Wed 16 Feb 2000, 17:51 GMT </LI> <LI><strong><A NAME="00367" HREF="msg00367.html">RE: [MUD-DEV] a shrinking pool of players?</A></strong>, Sellers, Michael <a href="mailto:MSellers#maxis,com">MSellers#maxis,com</a>, Wed 16 Feb 2000, 17:51 GMT </LI> <LI><strong><A NAME="00372" HREF="msg00372.html">RE: [MUD-DEV] a shrinking pool of players?</A></strong>, Koster, Raph <a href="mailto:rkoster#origin,ea.com">rkoster#origin,ea.com</a>, Wed 16 Feb 2000, 18:04 GMT </LI> <LI><strong><A NAME="00390" HREF="msg00390.html">RE: [MUD-DEV] a shrinking pool of players?</A></strong>, Koster, Raph <a href="mailto:rkoster#origin,ea.com">rkoster#origin,ea.com</a>, Thu 17 Feb 2000, 20:47 GMT </LI> </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>