1998Q3/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: clients anyone?... -->
<!--X-From-R13: Oaqerj Ivyfba <naqerjNnnnnnnnn.qrzba.pb.hx> -->
<!--X-Date: Wed, 12 Aug 1998 10:41:00 &#45;0700 -->
<!--X-Message-Id: 199808121742.SAA05967#aaaaaaaa,demon.co.uk -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 19980811150534.F26005#flagstaff,Princeton.EDU -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: clients anyone?...</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:andrew#aaaaaaaa,demon.co.uk">
</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="msg00688.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00690.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00665.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00690.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00689">Author</A>
&nbsp;|&nbsp;<A HREF="#00689">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00689">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: clients anyone?...</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>: [MUD-Dev] Re: clients anyone?...</LI>
<LI><em>From</em>: Andrew Wilson &lt;<A HREF="mailto:andrew#aaaaaaaa,demon.co.uk">andrew#aaaaaaaa,demon.co.uk</A>&gt;</LI>
<LI><em>Date</em>: Wed, 12 Aug 1998 18:42:51 +0100 (BST)</LI>
<LI><em>Cc</em>: <A HREF="mailto:andrew#aaaaaaaa,demon.co.uk">andrew#aaaaaaaa,demon.co.uk</A> (Andrew Wilson)</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#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>
Adam J. Thornton:
&gt; Cool.  This is stuff that I will be addressing once I get my server design
&gt; sort of working.  One thing I'm working towards is a communications
&gt; protocol that lets the client negotiate the options it supports, so that
&gt; low-bandwidth clients can say "don't choke me with lots of expensive tile
&gt; data, since this is an 8-bit display" or "I can't handle music so don't
&gt; bother sending it."
&gt; 
&gt; Weirdly, the protocol I've been slowly creating looks a lot like NNTP.
&gt; 
&gt; In an ideal world, I'd support everything from a text-based Pilot interface
&gt; to 32-bit high-resolution tons-of-tiles lots-of-sounds-and-music interface,
&gt; based on what the client could support.  Dunno how flexible I will end up
&gt; being.

The MCP protocol sends messages in plaintext.  It was developed on
MOO systems which are 7-bit places.  A few unicoded 8bit places
exist for kanji and cyrillic text, but they're rare.  But anyway,
the protocol itself assumes only 7-bit messages.  So this means
that you can't send raw binary over MCP unless you base64 encode
it.

If you wanted to send gazillion megabyte images from server to
client then MCP would be useful to send a message like:

	#$#image url: "<A  HREF="http://xxxx/foo.gif">http://xxxx/foo.gif</A>"

Meaning, "here's a reference to an image, go get it".  Of course
a client containing some HTTP logic would grab the GIF from the
given webserver.  The point being that you wouldn't think of sending
large images or audio over MCP.

MCP's logic is pretty simple.  The protocol doesn't demand a VM or
anything fancy, it's really an agreed way to encode and decode
lines of text.  I've got a complete MCP parser/encoder in 500 or
so lines of TCL including the package negotiation logic, and I took
no special care to keep it small.  I'm not aware of any publically
available MCP libraries in C++, though a couple of different Java
implementations are being used successfully.

Pilot would be a nice platform to get this running on.  That
processor has more than enough juice to handle the extra load of
MCP messages combined with the normal flow of text.  If the thing
can run ICQ (as was recently announced) then it'll have no problems
MCP.

All said and done, MCP is just a way to shovel data from one end
of the wire to the other.  You *can* keep all your game/presentation
logic in the server and use plain text to control it but if you're
interested in making more of the client (consider every one of your
users running a P200 that is 99% idle...) then a technique that is
sensitive to different clients' capabilities (MCP's negotiation
phase) is a godsend.

I wouldn't last too long on a Pilot RPG though:

    The mighty troll slashes you with the rusty blade.
    [pen down, up, right, up, down (command not recognised)]
    The mighty troll leaps high and stomps donw on your head.
    [pen down, left, up, right, down (command not recognised)]
    The mighty troll grabs your arm and swings you into the tree.
    [pen down, up, down, left, up (command not recognised)]
    You die!  The troll eats your leg.
    [pilot dropped on floor, stamp, stamp, stamp, *crack*, go out
    for pizza...]

&gt; Adam

Cheers,
Ay.

Andrew.Wilson#cm,cf.ac.uk <A  HREF="http://www.cm.cf.ac.uk/User/Andrew.Wilson/">http://www.cm.cf.ac.uk/User/Andrew.Wilson/</A>
Voice/Fax: +44 (0) 1865 513 091


</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="00663" HREF="msg00663.html">[MUD-Dev] Re: clients anyone?...</A></STRONG>
<UL><LI><EM>From:</EM> "Adam J. Thornton" &lt;adam#phoenix,Princeton.EDU&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00688.html">[MUD-Dev] JASSS: The Journal of Artificial Societies and Social Simulation</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00690.html">[MUD-Dev] Re: clients anyone?...</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00665.html">[MUD-Dev] Re: clients anyone?...</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00690.html">[MUD-Dev] Re: clients anyone?...</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00689"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00689"><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><A NAME="00664" HREF="msg00664.html">[MUD-Dev] Amoeba: Distributed OS release</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Tue 11 Aug 1998, 20:17 GMT
<LI><strong><A NAME="00662" HREF="msg00662.html">[MUD-Dev] clients anyone?...</A></strong>, 
Andrew Wilson <a href="mailto:andrew#aaaaaaaa,demon.co.uk">andrew#aaaaaaaa,demon.co.uk</a>, Tue 11 Aug 1998, 18:05 GMT
<UL>
<LI><strong><A NAME="00663" HREF="msg00663.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Adam J. Thornton <a href="mailto:adam#phoenix,Princeton.EDU">adam#phoenix,Princeton.EDU</a>, Tue 11 Aug 1998, 20:03 GMT
<UL>
<LI><strong><A NAME="00665" HREF="msg00665.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Andrew Wilson <a href="mailto:andrew#aaaaaaaa,demon.co.uk">andrew#aaaaaaaa,demon.co.uk</a>, Tue 11 Aug 1998, 21:56 GMT
</LI>
<LI><strong><A NAME="00689" HREF="msg00689.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Andrew Wilson <a href="mailto:andrew#aaaaaaaa,demon.co.uk">andrew#aaaaaaaa,demon.co.uk</a>, Wed 12 Aug 1998, 17:41 GMT
</LI>
<LI><strong><A NAME="00690" HREF="msg00690.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Hans-Henrik Staerfeldt <a href="mailto:hhs#cbs,dtu.dk">hhs#cbs,dtu.dk</a>, Wed 12 Aug 1998, 18:08 GMT
<UL>
<LI><strong><A NAME="00692" HREF="msg00692.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Adam J. Thornton <a href="mailto:adam#phoenix,Princeton.EDU">adam#phoenix,Princeton.EDU</a>, Wed 12 Aug 1998, 18:37 GMT
<UL>
<LI><EM>Message not available</EM><UL>
<LI><strong><A NAME="00697" HREF="msg00697.html">[MUD-Dev] Re: LinuxThreads and SIGUSR1 (Ref: [MUD-Dev])</A></strong>, 
Adam J. Thornton <a href="mailto:adam#phoenix,Princeton.EDU">adam#phoenix,Princeton.EDU</a>, Wed 12 Aug 1998, 23:09 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="00790" HREF="msg00790.html">[MUD-Dev] Re: clients anyone?...</A></strong>, 
Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Thu 20 Aug 1998, 18:25 GMT
</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>