1998Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] request for comments (was: Mud&#45;Dev FAQ) -->
<!--X-From-R13: XQ Znjerapr <pynjNhaqre.Sat.Eha.QA[> -->
<!--X-Date: Wed, 07 Jan 1998 00:52:36 +0000 -->
<!--X-Message-Id: 199801070052.QAA03967#under,Eng.Sun.COM -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 34B0EEF3.5EC5402C#4cs,com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] request for comments (was: Mud-Dev FAQ)</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:claw#under,Eng.Sun.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>
[&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="msg00077.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00079.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00050.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00223.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00078">Author</A>
&nbsp;|&nbsp;<A HREF="#00078">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00078">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] request for comments (was: Mud-Dev FAQ)</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] request for comments (was: Mud-Dev FAQ) </LI>
<LI><em>From</em>: JC Lawrence &lt;<A HREF="mailto:claw#under,Eng.Sun.COM">claw#under,Eng.Sun.COM</A>&gt;</LI>
<LI><em>Date</em>: Tue, 06 Jan 1998 16:52:23 -0800</LI>
<LI><em>Reply-to</em>: <A HREF="mailto:claw#null,net">claw#null,net</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, 5 Jan 1998 09:10:52 PST8PDT 
Vadim Tkachenko&lt;vadimt#4cs,com&gt; wrote:
&gt; Jon A. Lambert wrote:

&gt;&gt; Variations on event-driven design

&gt; Can you please elaborate on that?

There are a couple base models going about the list.  Jon and I have
some of the more intricate designs.  I'll let Jon describe his.

To describe my system loosely, and briefly:

  The server is heavily multi-threaded (I think the idle-state is over
50 threads currently).

  All events are processed aynchoinously and in parallel.  

  The server is lockless.

  I don't guarantee order of execution of two unrelated events.

  The base design:

    Events are logged with the Dispatchor in the Event List as a tuple
of an object:method call, various arguments, various ownership data,
and either a state time the event is to start execution, or a
percentage chance value that the event will start execution within any
given minute.

  The Dispatchor procresss the Event List, sending ripe events to the
Executor.

  The Executor receives the ripe events from the Dispatchor and stores
them in priority order in teh Event Queue.

  The Excutor processes the events in priority order by handing them
for processing to to the Event Pool, a dynamically sized pool of
threads.

  Events that fail to commit are rescheduled with the Executor at a
different priority.

  Event's have no effect upon the DB or state until and unless they
commit.

More details available on request.

&gt;&gt; Design of Object IDs and Object ID recycling

&gt; ???

Many servers assign some form of unique ObjectID to their objects.
Typically this is done with a long integer or similar.  The problem
enters when that long integer overflows due to ongoing object
creation and destruction.  If old ObjectID's are recycled (ie an old
ObjectID # from a now deleted object is re-used) there is a potential
that an othe existant object may have stored a reference to that
object and may not attmept to reference the new object with the old
ObjectID, expecting it to still be the old object.

Thus the question of the design of ObjectID's and ObjectID recycling.

&gt;&gt; Virtual rooms, virtual objects, virtual mobiles

&gt; ???

Think of them as second class objects, or temporary virtual objects
(ala lambdas or frobs).  Several server designs allow for objects to
be dynamically simulated without ever creating the objects themselves.

-- 
J C Lawrence                               Internet: claw#null,net
                                           Internet: coder#ibm,net
----------(*)                        Internet: jc.lawrence#sun,com
...Honourary Member of Clan McFud -- Teamer's Avenging Monolith...

</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="00223" HREF="msg00223.html">[MUD-Dev] Event Handling</A></strong>
<ul compact><li><em>From:</em> "Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00026" HREF="msg00026.html">Re: [MUD-Dev]  request for comments (was: Mud-Dev FAQ)</A></STRONG>
<UL><LI><EM>From:</EM> Vadim Tkachenko &lt;vadimt#4cs,com&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00077.html">Re: [MUD-Dev] Mud-Dev FAQ</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00079.html">Re: [MUD-Dev] Guilds &amp; Politics [was Affecting the World]</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00050.html">Re: [MUD-Dev]  request for comments (was: Mud-Dev FAQ)</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00223.html">[MUD-Dev] Event Handling</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00078"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00078"><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]  Mud-Dev FAQ</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00021" HREF="msg00021.html">Re: [MUD-Dev]  Mud-Dev FAQ</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Sun 04 Jan 1998, 06:30 GMT
<UL>
<LI><strong><A NAME="00026" HREF="msg00026.html">Re: [MUD-Dev]  request for comments (was: Mud-Dev FAQ)</A></strong>, 
Vadim Tkachenko <a href="mailto:vadimt#4cs,com">vadimt#4cs,com</a>, Mon 05 Jan 1998, 14:34 GMT
<UL>
<LI><strong><A NAME="00033" HREF="msg00033.html">Re: [MUD-Dev]  request for comments (was: Mud-Dev FAQ)</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Mon 05 Jan 1998, 21:05 GMT
</LI>
<LI><strong><A NAME="00050" HREF="msg00050.html">Re: [MUD-Dev]  request for comments (was: Mud-Dev FAQ)</A></strong>, 
coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Tue 06 Jan 1998, 05:32 GMT
</LI>
<LI><strong><A NAME="00078" HREF="msg00078.html">Re: [MUD-Dev] request for comments (was: Mud-Dev FAQ)</A></strong>, 
JC Lawrence <a href="mailto:claw#under,Eng.Sun.COM">claw#under,Eng.Sun.COM</a>, Wed 07 Jan 1998, 00:52 GMT
<UL>
<LI><strong><A NAME="00223" HREF="msg00223.html">[MUD-Dev] Event Handling</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Tue 13 Jan 1998, 03:35 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00117" HREF="msg00117.html">request for comments (was: Mud-Dev FAQ)</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Thu 08 Jan 1998, 16:43 GMT
<UL>
<LI><strong><A NAME="00122" HREF="msg00122.html">Re: [MUD-Dev]  Event handling (was: request for comments)</A></strong>, 
Vadim Tkachenko <a href="mailto:vadimt#4cs,com">vadimt#4cs,com</a>, Thu 08 Jan 1998, 20:13 GMT
<UL>
<LI><strong><A NAME="00141" HREF="msg00141.html">Event handling (was: request for comments)</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Fri 09 Jan 1998, 16:11 GMT
</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>