1999Q4/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] Collecting ideas for a MUD server... (fwd) -->
<!--X-From-R13: Dnuhy Evaun <efvaunNtyhr.hzq.rqh> -->
<!--X-Date: Wed, 22 Dec 1999 21:36:34 &#45;0800 -->
<!--X-Message-Id: Pine.LNX.4.10.9912222145420.11208&#45;100000@localhost.localdomain -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: E120xFy&#45;0001aQ&#45;00@under.eng.cp.net -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:rsinha@glue.umd.edu">
</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="msg00751.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00752.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00746.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00756.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00750">Author</A>
&nbsp;|&nbsp;<A HREF="#00750">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00750">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</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] Collecting ideas for a MUD server... (fwd) </LI>
<LI><em>From</em>: Rahul Sinha &lt;<A HREF="mailto:rsinha#glue,umd.edu">rsinha#glue,umd.edu</A>&gt;</LI>
<LI><em>Date</em>: Wed, 22 Dec 1999 21:54:37 -0500 (EST)</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>

ready for a me-too email ;-)
basically I agree with JCL here, a few things I wanted to elaborate on...

On Wed, 22 Dec 1999, J C Lawrence wrote:

&gt; On Wed, 22 Dec 1999 13:54:23 -0800 
&gt; Justin Rogers &lt;justin#mlstoday,com&gt; wrote:
&gt; 
&gt; &gt; [Rahul Sinha]
&gt; &gt;&gt; ??? multithreaded USERS?
&gt; 
&gt; &gt; Each user has his own thread that he runs in.  Works for up to
&gt; &gt; about 20 users.  
&gt; 
&gt; Ouch.  Let alone the performance problems with large numbers of
&gt; threads on almost all current systems (and in particular the current
&gt; Windows* base IIRC), this (as you note) scales horribly.

hear hear! keep in mind, multiple threads ought not seperate themselves on
seperate cpus due to cache coherency issues (depends on your OS if they
do) and either way, the only reason to have threads is to eliminate wait
for blocking operations. (iow, you should be able to work while waiting
for something)  If you have one thread-per-zone, each thread can iterate
across the actions provided by the users, and any blocking that needs be
done (eg database access hits, which are fast, but if you want your ticks
to be under a second, should be considered blocking operations) does not
stop the entire program, the cpu can go work on another zone.

blocking is an issue for the network code, but there we just use separate
processes... ;-)

&gt; 
&gt; &gt; I modified this later though.  Each area runs in its own thread,
&gt; &gt; and large groups of NPCs have their own threads.  All in all about
&gt; &gt; 50 threads get spawned during an uprun.
&gt; 
&gt; And how do you handle users visavis your thread model?

data coherency important, many threads accessing one datapoint bad.
one-thread-per-zone handles that in a decent fashion, as most of the data
involved is organized that way anwyay, and the db can keep the general mud
data structure clean

&gt; 
&gt; &gt;     No not at all.  It isn't quite like that.  I do keep a global
&gt; &gt; player up.  But they are still playing the game.  Users transfer
&gt; &gt; their information around to others as they are playing.  So if you
&gt; &gt; log into the system and your user profile doesn't match the user
&gt; &gt; profile that everyone else has of you then you get kicked.

ummm why not just have a server app? peer-to-peer is only employed when
the overhead of a server makes it not worthwile, but here that is not the
case (it is worthwile)

you gain completely trustworthy data
you gain a shallow client (a good thing, not everyone has a kick ass
computer, let them render graphices, you do everything else)


	Rahul Sinha
Computer Science/ Government,
University Of Maryland College Park
AIM: qui dire	ICQ: 9738191	(301)935-5542





_______________________________________________
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>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00764" HREF="msg00764.html">[MUD-Dev] Two threads forced to one CPU? (was: Collecting ideas for a MUD server...)</A></strong>
<ul compact><li><em>From:</em> "Wesley W. Terpstra" &lt;terpstra@iota.dhs.org&gt;</li></ul>
<li><strong><A NAME="00757" HREF="msg00757.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>
<ul compact><li><em>From:</em> J C Lawrence &lt;claw@kanga.nu&gt;</li></ul>
<li><strong><A NAME="00756" HREF="msg00756.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>
<ul compact><li><em>From:</em> Christopher Kohnert &lt;cjkohner@brain.uccs.edu&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00746" HREF="msg00746.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></STRONG>
<UL><LI><EM>From:</EM> J C Lawrence &lt;claw@cp.net&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00751.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00752.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00746.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00756.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00750"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00750"><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] Collecting ideas for a MUD server... (fwd)</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00780" HREF="msg00780.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
Greg Miller <a href="mailto:gmiller@classic-games.com">gmiller@classic-games.com</a>, Fri 24 Dec 1999, 07:47 GMT
</LI>
</ul>
</ul>
<LI><strong><A NAME="00762" HREF="msg00762.html">[MUD-Dev] PGP confusions hopefully resolved (was: collecting ideas ...)</A></strong>, 
Wesley W. Terpstra <a href="mailto:terpstra@iota.dhs.org">terpstra@iota.dhs.org</a>, Thu 23 Dec 1999, 17:00 GMT
</LI>
</ul>
</ul>
<LI><strong><A NAME="00732" HREF="msg00732.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
Justin Rogers <a href="mailto:justin@mlstoday.com">justin@mlstoday.com</a>, Wed 22 Dec 1999, 21:58 GMT
<UL>
<LI><strong><A NAME="00746" HREF="msg00746.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
J C Lawrence <a href="mailto:claw@cp.net">claw@cp.net</a>, Thu 23 Dec 1999, 01:41 GMT
<UL>
<LI><strong><A NAME="00750" HREF="msg00750.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
Rahul Sinha <a href="mailto:rsinha@glue.umd.edu">rsinha@glue.umd.edu</a>, Thu 23 Dec 1999, 05:36 GMT
<UL>
<LI><strong><A NAME="00756" HREF="msg00756.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
Christopher Kohnert <a href="mailto:cjkohner@brain.uccs.edu">cjkohner@brain.uccs.edu</a>, Thu 23 Dec 1999, 07:34 GMT
</LI>
<LI><strong><A NAME="00757" HREF="msg00757.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
J C Lawrence <a href="mailto:claw@kanga.nu">claw@kanga.nu</a>, Thu 23 Dec 1999, 07:38 GMT
<UL>
<LI><strong><A NAME="00763" HREF="msg00763.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
Rahul Sinha <a href="mailto:rsinha@glue.umd.edu">rsinha@glue.umd.edu</a>, Thu 23 Dec 1999, 17:00 GMT
<UL>
<LI><strong><A NAME="00772" HREF="msg00772.html">Re: [MUD-Dev] Collecting ideas for a MUD server... (fwd)</A></strong>, 
J C Lawrence <a href="mailto:claw@kanga.nu">claw@kanga.nu</a>, Thu 23 Dec 1999, 17:48 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</ul>
</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>