2000Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] Object and class heirarchies &#45;&#45; are they really necessary? -->
<!--X-From-R13: Yriva Zvggyrwbua <qnevhfNpbaarpg.pbz.nh> -->
<!--X-Date: Mon, 27 Mar 2000 17:06:15 &#45;0800 -->
<!--X-Message-Id: 20000328004851.ECA7941825#koro,off.connect.com.au -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: Pine.LNX.4.05.10003271216010.18002&#45;100000#builder,ourplace.org -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] Object and class heirarchies -- are they really </title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:darius#connect,com.au">
</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>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00747.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00749.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00743.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00754.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00748">Author</A>
&nbsp;|&nbsp;<A HREF="#00748">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00748">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</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] Object and class heirarchies -- are they really necessary? </LI>
<LI><em>From</em>: Kevin Littlejohn &lt;<A HREF="mailto:darius#connect,com.au">darius#connect,com.au</A>&gt;</LI>
<LI><em>Date</em>: Tue, 28 Mar 2000 10:48:50 +1000</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>

&gt;&gt;&gt; Lazarus wrote
&gt; This is where I wound up.  My latest design concluded with a base class of
&gt; 'mud_thing' from which everything else was derived.  I thought it was cute
&gt; to pick up my test character (could be used for trouble makers as well)
&gt; and put him in my pocket.

This approach, I've got to say, seemed completely natural - it was a first
principle in the very first design docs for Moebius.  I'm somewhat
surprised anyone builds these days in systems where objects _are_
fundamentally different.  An object is an object is an object.

However ;)  I've got to ask - what goes on in the middle of the tree?  All
well and good to say "things start from a common ancestor, fan out, then
come back together", but what does that actually lead to in practice?

I've posted on this subject before - Moebius is fast approaching a common
inheritance line, then various smaller building blocks for various groups
of characteristics - want a wooden object, inherit from wood, want creature
stats, inherit from creature, that sort of thing - is this the approach
that the above leads to, or are there other ways to organise the class
hierarchy that work better?  Skotos people?  Others?  Before I commit
myself to a potentially flawed design? ;)

&gt; &gt; When your entire inheritance tree (from an object's perspective) is
&gt; &gt; that you all descend from the same super-class -- how do you handle
&gt; &gt; multi-user security and access controls for editing the consituent
&gt; &gt; components of that super-class?
&gt; &gt; 
&gt; 
&gt; What is your question?  You handle security of any instantiation the same
&gt; independant of whether it is multiply derived from multiple base classes
&gt; or derived from a single super class.  Or, are you proposing online
&gt; editing of the base class definition?  Now that would be one heck of a can
&gt; of worms.

We already do it - introduce new attributes, and remove old ones, in the
base class and have the changes reflect immediately (give or take
potentially dodgy cacheing ;).  That runs smack into "don't give access to
change these to anyone you can't drive over to and thump" territory - once
you can enforce access restrictions between objects at the mud level, you
then have to make social/political/people decisions about who is trusted
and who isn't - you can't fully protect the mud from the ravages of an
insane creator with access to the base object.

It is _very_ handy for being able to change the world physics without
restarts - introduce new concepts (like weight, size, etc) on-line, tinker
with them, remove them again, without actually disturbing
players/builders/visitors.  At least in the small scale, and I'm hoping to
keep a 'sandbox' ability somehow so changes can be modelled online in a
safe environment, then switched through to the rest of the mud, once it
grows.

KevinL



_______________________________________________
MUD-Dev mailing list
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>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00765" HREF="msg00765.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>
<ul compact><li><em>From:</em> Phillip Lenhardt &lt;philen#funky,monkey.org&gt;</li></ul>
<li><strong><A NAME="00754" HREF="msg00754.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>
<ul compact><li><em>From:</em> Marian Griffith &lt;gryphon#iaehv,nl&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00743" HREF="msg00743.html">Re: [MUD-Dev] Object and class heirarchies -- are they reallynecessary?</A></STRONG>
<UL><LI><EM>From:</EM> Lazarus &lt;lazarus#ourplace,org&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00747.html">Re: [MUD-Dev] Online Justice Systems (response to J C)</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00749.html">[MUD-Dev] Meta: Questions about the MudDev FAQ</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00743.html">Re: [MUD-Dev] Object and class heirarchies -- are they reallynecessary?</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00754.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00748"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00748"><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] Object and class heirarchies -- are they really necessary?</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00706" HREF="msg00706.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Phillip Lenhardt <a href="mailto:philen#funky,monkey.org">philen#funky,monkey.org</a>, Thu 23 Mar 2000, 06:14 GMT
</LI>
</ul>
</ul>
</ul>
<LI><strong><A NAME="00681" HREF="msg00681.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Kevin Littlejohn <a href="mailto:darius#connect,com.au">darius#connect,com.au</a>, Wed 22 Mar 2000, 00:25 GMT
</LI>
</ul>
<LI><strong><A NAME="00683" HREF="msg00683.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Chris Jones <a href="mailto:cjones#v-wave,com">cjones#v-wave,com</a>, Wed 22 Mar 2000, 00:49 GMT
</LI>
<LI><strong><A NAME="00743" HREF="msg00743.html">Re: [MUD-Dev] Object and class heirarchies -- are they reallynecessary?</A></strong>, 
Lazarus <a href="mailto:lazarus#ourplace,org">lazarus#ourplace,org</a>, Mon 27 Mar 2000, 21:19 GMT
<UL>
<LI><strong><A NAME="00748" HREF="msg00748.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Kevin Littlejohn <a href="mailto:darius#connect,com.au">darius#connect,com.au</a>, Tue 28 Mar 2000, 01:06 GMT
<UL>
<LI><strong><A NAME="00754" HREF="msg00754.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Marian Griffith <a href="mailto:gryphon#iaehv,nl">gryphon#iaehv,nl</a>, Tue 28 Mar 2000, 19:36 GMT
<UL>
<LI><strong><A NAME="00773" HREF="msg00773.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Kevin Littlejohn <a href="mailto:darius#connect,com.au">darius#connect,com.au</a>, Wed 29 Mar 2000, 00:35 GMT
<UL>
<LI><strong><A NAME="00777" HREF="msg00777.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
J C Lawrence <a href="mailto:claw#cp,net">claw#cp,net</a>, Wed 29 Mar 2000, 01:31 GMT
<UL>
<LI><strong><A NAME="00783" HREF="msg00783.html">Re: [MUD-Dev] Object and class heirarchies -- are they really necessary?</A></strong>, 
Par Winzell <a href="mailto:zell#alyx,com">zell#alyx,com</a>, Wed 29 Mar 2000, 02:48 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>