1999Q2/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] Text Parsing -->
<!--X-From-R13: [nggurj [vunyl <qvnoybNorfg.pbz> -->
<!--X-Date: Wed, 9 Jun 1999 23:14:24 &#45;0700 -->
<!--X-Message-Id: Pine.BSF.4.10.9906092020180.8930&#45;100000#shell9,ba.best.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: E10rv0w&#45;0005hB&#45;00#under,su.varesearch.com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] Text Parsing</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:diablo#best,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="msg00681.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00683.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00659.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00706.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00682">Author</A>
&nbsp;|&nbsp;<A HREF="#00682">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00682">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] Text Parsing</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] Text Parsing </LI>
<LI><em>From</em>: Matthew Mihaly &lt;<A HREF="mailto:diablo#best,com">diablo#best,com</A>&gt;</LI>
<LI><em>Date</em>: Wed, 9 Jun 1999 20:34:12 -0700 (PDT)</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>
On Wed, 9 Jun 1999, J C Lawrence wrote:

&gt; On Wed, 9 Jun 1999 16:21:28 -0700 (PDT) 
&gt; Matthew Mihaly &lt;diablo#best,com&gt; wrote:
&gt; 
&gt; &gt; Actually, on that note generally, I have read some talk on here,
&gt; &gt; in the past, about how some of your servers can handle a LOT of
&gt; &gt; users online at once without having speed problems. 

&gt; 
&gt; &gt; How the heck do you manage that? 
&gt; 
&gt; Careful design mostly.  I know what things cost, how much they cost,
&gt; and how often I absolutely have to do them.  This is one of the few
&gt; areas where all that CS math you (should have) done in grad school
&gt; comes in *really* handy, but is still not really necessary.

Yes, this is definitely a problem for me. 1) I did not go to grad school.
2) My undergrad degree is in political philosophy. 3) Except for some
BASIC in high school, I had never coded a thing before starting Achaea. It
honestly never occurred to me, until about a year ago, that speed would
EVER be a problem in a text game. No graphics I thought? Hell, how much
processing power can that take?? *doh*

&gt; 
&gt; &gt; We use an interpreted engine (which I realize is inherently
&gt; &gt; slower)...
&gt; 
&gt; That's a dangerous and often massively misleading assumption.
&gt; Interpreted languages need not be either slow or performance
&gt; bottlenecks.  LP and BatMUD demonstrate this rather clearly.
&gt; LambdaMOO demonstrates rather clearly that this _can_ be a problem
&gt; given poor design and implementation.  BatMUD shows part of the
&gt; other side: that given good and careful work, the performance hit is
&gt; a strawman.

Yeah, I was a wiz on batmud ages ago. That's what I was thinking of when I
was questioning our player problem (as back when I played them, they'd
have 250 people online, and people lining up to get in. No idea what it's
like now). I just assumed that interpreted languages would be slower I
guess becuase of the extra layer.

&gt; 
&gt; &gt; I suspect that our player routines (mainly movement) tend to be
&gt; &gt; significantly more complicated than most muds (again, mainly
&gt; &gt; movement, due to the enormous number of database searches that
&gt; &gt; need doing to check for all sorts of stuff everytime someone
&gt; &gt; moves)...
&gt; 
&gt; I smell sloppy thinking here.  Yes, there is good reason for having
&gt; motions trigger cascading state checks.  I do it myself, and I
&gt; suspect do it to a far greater degree than you do (I've counted over
&gt; 2,000 state checks resulting from a single most-pessimal move).  No,
&gt; there is no reason for those state checks not to short circuit
&gt; extremely cheaply in the common cases.  A heck of a lot of the time
&gt; you can determine far more cheaply whether or not you need to make a
&gt; variety of checks, than you can do the checks themselves.

Yes, you're probably right about the sloppy thinking. I don't really know
what I'm doing as far as elegant coding goes. Also, I'm not quite sure
what a state check is, but I'm guessing it is checking the state of a
particular piece of data?

One particularly serious problem that I suspect we have are players
following other players around. Right now, a following player goes through
nearly every routine that the leading player goes through, effectively
doubling the time it takes. If you've got 5 players following a single
player, it can get ugly, especially with those blasted speedwalks.

Anyway, thanks for the advice! 
--matt




_______________________________________________
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="00735" HREF="msg00735.html">Re: [MUD-Dev] Text Parsing</A></strong>
<ul compact><li><em>From:</em> J C Lawrence &lt;claw#varesearch,com&gt;</li></ul>
<li><strong><A NAME="00706" HREF="msg00706.html">Re: [MUD-Dev] Text Parsing</A></strong>
<ul compact><li><em>From:</em> Petri Virkkula &lt;pvirkkul#iki,fi&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00659" HREF="msg00659.html">Re: [MUD-Dev] Text Parsing</A></STRONG>
<UL><LI><EM>From:</EM> J C Lawrence &lt;claw#varesearch,com&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00681.html">Re: [MUD-Dev] Game Economies</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00683.html">Re: [MUD-Dev] Text Parsing</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00659.html">Re: [MUD-Dev] Text Parsing</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00706.html">Re: [MUD-Dev] Text Parsing</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00682"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00682"><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] Text Parsing</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00612" HREF="msg00612.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Matthew Mihaly <a href="mailto:diablo#best,com">diablo#best,com</a>, Tue 08 Jun 1999, 22:17 GMT
<UL>
<LI><strong><A NAME="00642" HREF="msg00642.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Greg Miller <a href="mailto:gmiller#classic-games,com">gmiller#classic-games,com</a>, Wed 09 Jun 1999, 22:35 GMT
<LI><strong><A NAME="00652" HREF="msg00652.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Matthew Mihaly <a href="mailto:diablo#best,com">diablo#best,com</a>, Thu 10 Jun 1999, 00:14 GMT
<LI><strong><A NAME="00659" HREF="msg00659.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
J C Lawrence <a href="mailto:claw#varesearch,com">claw#varesearch,com</a>, Thu 10 Jun 1999, 02:56 GMT
<LI><strong><A NAME="00682" HREF="msg00682.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Matthew Mihaly <a href="mailto:diablo#best,com">diablo#best,com</a>, Thu 10 Jun 1999, 06:14 GMT
<LI><strong><A NAME="00706" HREF="msg00706.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Petri Virkkula <a href="mailto:pvirkkul#iki,fi">pvirkkul#iki,fi</a>, Thu 10 Jun 1999, 17:31 GMT
<LI><strong><A NAME="00716" HREF="msg00716.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Matthew Mihaly <a href="mailto:diablo#best,com">diablo#best,com</a>, Thu 10 Jun 1999, 21:58 GMT
<LI><strong><A NAME="00739" HREF="msg00739.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Petri Virkkula <a href="mailto:pvirkkul#iki,fi">pvirkkul#iki,fi</a>, Fri 11 Jun 1999, 03:46 GMT
<LI><strong><A NAME="00763" HREF="msg00763.html">Re: [MUD-Dev] Text Parsing</A></strong>, 
Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Fri 11 Jun 1999, 18:12 GMT
</LI>
</LI>
</LI>
</LI>
</LI>
</LI>
</LI>
</LI>
</UL>
</LI>
</ul>
</ul>
</ul>
</ul>
</ul>
</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>