1998Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] Net protocols for MUDing (was: Moore's Law sucks) -->
<!--X-From-R13: Oqnz Ivttvaf <avtugsnyyNhfre2.vasvpnq.pbz> -->
<!--X-Date: Mon, 23 Mar 1998 07:41:35 +0000 -->
<!--X-Message-Id: 199803230743.AAA01104#user2,inficad.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 199803200006.QAA35466#under,engr.sgi.com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:nightfall#user2,inficad.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="msg00836.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00838.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00775.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00666.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00837">Author</A>
&nbsp;|&nbsp;<A HREF="#00837">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00837">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</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] Net protocols for MUDing (was: Moore's Law sucks)</LI>
<LI><em>From</em>: Adam Wiggins &lt;<A HREF="mailto:nightfall#user2,inficad.com">nightfall#user2,inficad.com</A>&gt;</LI>
<LI><em>Date</em>: Mon, 23 Mar 1998 00:43:00 -0700 (MST)</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:nightfall#inficad,com">nightfall#inficad,com</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
Been in the process of moving to CA and my internet connection has been mostly
unavailible, so I'll be catching up on old messages for a while...

[J C Lawrence:]
&gt; Adam Wiggins&lt;nightfall#user1,inficad.com&gt; wrote:
&gt; &gt; So here's a question to you, Chris, and all those that have remained
&gt; &gt; silent on this thus far: which do you prefer - a client whose speed
&gt; &gt; is directly proportional to the speed of your internet connection so
&gt; &gt; that you can rely on every client always being 100% "correct", or
&gt; &gt; one which runs at its own framerate (hopefully 30fps or better)
&gt; &gt; attempting to display what data it has about the world as best it
&gt; &gt; can, resulting in some inconsistencies (or perhaps many if your
&gt; &gt; connection is very unstable)?  
&gt; &gt; I know which one I'd choose, but I
&gt; &gt; wonder how many people feel the same?  Or perhaps there should be
&gt; &gt; some sort of consistency sliders in the options screen which change
&gt; &gt; how much prediction it does on its own, and how much it relies on
&gt; &gt; the server for?
&gt; 
&gt; Possible, but rather expensive to implement...

The idea I had was this.  The entire system is event based.  Everything, from
something obvious like an explosion, to something simple like an object moving
from point A to point B, is an event.  All event types are assigned a "severity"
level.  A sample might be:

Event Type            Severity
----------            --------
Movement                 1
Projectile Fired         5
Object Collision         10

If your slider bar was down at 0, the client would wait for ALL events to be
confirmed by the server, thus slowing your client down to the speed of your
internet connection.  Objects moving across your field of vision would jerk as
their positions were updated very slowly (~1 time per second in most cases).
Move the bar up to 3, and now movements are smooth as the client projects
where objects are headed based on former velocities, but things like shots
being fired by NPCs aren't shown until confirmation from the server is
recieved, nor are collisions reported (although the user may witness two
objects seeming to pass through each other for a moment before the collision
event is received).  Move the slider bar up to 7 and now NPC ships fire
projectiles when your client predicts they will, but collisions still wait for
confirmation.  Move the bar all the way to 10 and now all events are predicted
by the client.  This means that two objects colliding will immediately begin
their destruction animations (probably a big explosion).  If the server
reports that there was a change in heading of one of the objects just prior to
the collision, the client has to suddenly "snap" the objets out of their
explosion and put them in their new positions, ending the destruction
animation quite suddenly.

That was my thought.  As long as all actions are carefully encoded into the
event system (probably with container events containing many sub events), this
bar should be quite easy to implement, and will give users a large amount of
control as to the level of prediction (accuracy versus update speed).


</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="00775" HREF="msg00775.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></STRONG>
<UL><LI><EM>From:</EM> J C Lawrence &lt;claw#under,engr.sgi.com&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00836.html">Re: [MUD-Dev]	World Persistence, flat files v/s DB v/s ??</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00838.html">Re: [MUD-Dev] Balancing Addicts -&gt; soft vs. hard enforcement</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00775.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00666.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00837"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00837"><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] Net protocols for MUDing</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00793" HREF="msg00793.html">Re: [MUD-Dev] Net protocols for MUDing</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 20 Mar 1998, 17:58 GMT
<UL>
<LI><strong><A NAME="00795" HREF="msg00795.html">Re: [MUD-Dev] Net protocols for MUDing</A></strong>, 
Shawn Halpenny <a href="mailto:malachai#iname,com">malachai#iname,com</a>, Fri 20 Mar 1998, 18:57 GMT
<UL>
<LI><strong><A NAME="00862" HREF="msg00862.html">Re: [MUD-Dev] Net protocols for MUDing</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Mon 23 Mar 1998, 20:53 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
<LI><strong><A NAME="00775" HREF="msg00775.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 20 Mar 1998, 00:06 GMT
<UL>
<LI><strong><A NAME="00837" HREF="msg00837.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
Adam Wiggins <a href="mailto:nightfall#user2,inficad.com">nightfall#user2,inficad.com</a>, Mon 23 Mar 1998, 07:41 GMT
</LI>
</UL>
</LI>
</ul>
</ul>
<LI><strong><A NAME="00666" HREF="msg00666.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Mon 02 Mar 1998, 09:28 GMT
</LI>
<LI><strong><A NAME="00790" HREF="msg00790.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Fri 20 Mar 1998, 16:36 GMT
<UL>
<LI><strong><A NAME="00792" HREF="msg00792.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
Joel Dillon <a href="mailto:emily#cornholio,new.ox.ac.uk">emily#cornholio,new.ox.ac.uk</a>, Fri 20 Mar 1998, 17:05 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00802" HREF="msg00802.html">Re: [MUD-Dev] Net protocols for MUDing (was: Moore's Law sucks)</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sat 21 Mar 1998, 02:29 GMT
</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>