<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: mud grammar --> <!--X-From-R13: Oqnz Ivttvaf <avtugsnyyNvasvpnq.pbz> --> <!--X-Date: from major.globecomm.net [207.51.48.5] by mx01.ca.us.ibm.net id 858141971.32874-1 Wed Mar 12 04:46:11 1997 --> <!--X-Message-Id: Pine.BSI.3.95.970311213938.6961D-100000#user2,inficad.com --> <!--X-Content-Type: text/plain --> <!--X-Reference: 199703120253.CAA22301#out2,ibm.net --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: mud grammar</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:nightfall#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> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00090.html">Previous</a> | <a href="msg00092.html">Next</a> ] Thread: [ <a href="msg00087.html">Previous</a> | <a href="msg00092.html">Next</a> ] Index: [ <A HREF="author.html#00091">Author</A> | <A HREF="#00091">Date</A> | <A HREF="thread.html#00091">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: mud grammar</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: Multiple Recipients of MUD Design Mailing List <<A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A>></LI> <LI><em>Subject</em>: Re: mud grammar </LI> <LI><em>From</em>: Adam Wiggins <<A HREF="mailto:nightfall#inficad,com">nightfall#inficad,com</A>></LI> <LI><em>Date</em>: Tue, 11 Mar 1997 21:48:12 -0700 (MST)</LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> > I agree that some commands should not be useful in all parts of the mud. It > seems unfair to the player to have the mud simply refuse to recognize your > news command when not in the post office. For a consistant interface with > the player shouldn't the mud recognize the syntax of the command as valid, > but simply deny the command's execution (tell them that the command doesn't > work here as opposed to pretending the command doesn't exist). A agree Yup. Of course, the reason this works like this is for two reasons I can think of right offhand. First is that frequently these specialty verbs come from scripts attached to objects which you may have on your person or whatever. The mud (of course) doesn't want to search every object in the game for that script in order to figure out if it's valid, it only checks the 'normal' verbs. But I've already expressed why I don't think objects should have this kind of freedom. The other one is that usually if you don't have the proper permissions for a command (ie, a player typing "system.shutdown") you don't say, "You can't do that", you pretend it doesn't exist. This is fine...but one mud I played had the god command "stat" for stating objects, and the mortal command "stats" for getting your statistics. Thus typing "sta" brought up the stats screen as well as "stats", but "stat" reported "Huh?" due to no fall-through on the permissions checking. > wholeheartedly with the lament about whether to use "push" or "press" for > the damned button (that may or may not respond to the keyword "button", but > that's another issue entirely). It is the grammar that is context free; Is it? That's still mud consistency. I don't allow builders to specify keywords, because I got so fed up with people making "a jade-hilted katan" which answers to "green" and "sword." Gimmie a break. We just assume every token in the short description is a possible keyword. > The point about using a natural language processor is also well taken, but > I don't think that's what you've implemented there. If you allowed natural > language, I should be able to use any synonym of shoot and purple > dinosaur... > > Let's consider when the user tries: > > "use gun on purple dinosaur" > > This is an example of context sensitive grammar. What does "use" mean? > Shoot the dinosaur? Whack him over the head with it? Scratch his tummy with > the butt of the rifle? It's ambiguous. Natural language processors try to > do the "right thing" in these situations (is the dinosaur friend or foe? Is > the rifle loaded? Are you a decent shot? Does his tummy itch?). > If, however, you allow exactly one meaning for "use" (let's say it means > "shoot") then the sentence is unambiguous and the grammar context free. Nod...I don't mind the system assuming some things, for instance if I just fired three shots at the dinosaur and I type "shoot" it will fire at the dinosaur again. But I like systems which are obvious in their workings; the user is never left guessing as to what is going to happen when she types a given command, knowing the context. For which I think the "<verb> <object0> ... <objectn>" works pretty well. Only rarely do I even find use for connecting verbs, one of those cases being "look helm on joe"; otherwise you can usually infer from the type of object what the connecting verb should be. "get sword bag" is the same as "get the sword from the bag", and "put sword table" is the same as "put the sword on the table". </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00090.html">Re: Just a bit of musing</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00092.html">Re: mud grammar</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00087.html">Re: mud grammar</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00092.html">Re: mud grammar</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00091"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00091"><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: Room coding</STRONG>, <EM>(continued)</EM> <ul compact> <LI><strong><A NAME="00119" HREF="msg00119.html">Re: Room coding</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sun 16 Mar 1997, 04:14 GMT </LI> </ul> </LI> <LI><strong><A NAME="00093" HREF="msg00093.html">Re: Just a bit of musing (VRML)</A></strong>, Dmitri Kondratiev <a href="mailto:dima#paragraph,com">dima#paragraph,com</a>, Wed 12 Mar 1997, 17:22 GMT <UL> <li><Possible follow-up(s)><br> <LI><strong><A NAME="00128" HREF="msg00128.html">Re: Just a bit of musing (VRML)</A></strong>, claw <a href="mailto:claw#null,net">claw#null,net</a>, Tue 18 Mar 1997, 01:49 GMT </LI> </UL> </LI> <LI><strong><A NAME="00087" HREF="msg00087.html">Re: mud grammar</A></strong>, Carter T Shock <a href="mailto:ctso#umiacs,umd.edu">ctso#umiacs,umd.edu</a>, Tue 11 Mar 1997, 17:39 GMT <UL> <li><Possible follow-up(s)><br> <LI><strong><A NAME="00091" HREF="msg00091.html">Re: mud grammar</A></strong>, Adam Wiggins <a href="mailto:nightfall#inficad,com">nightfall#inficad,com</a>, Wed 12 Mar 1997, 12:46 GMT </LI> <LI><strong><A NAME="00092" HREF="msg00092.html">Re: mud grammar</A></strong>, Nathan Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Wed 12 Mar 1997, 13:23 GMT </LI> <LI><strong><A NAME="00094" HREF="msg00094.html">Re: mud grammar</A></strong>, Alex Oren <a href="mailto:alexo#europa,com">alexo#europa,com</a>, Wed 12 Mar 1997, 23:42 GMT </LI> <LI><strong><A NAME="00095" HREF="msg00095.html">Re: mud grammar</A></strong>, Nathan Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Thu 13 Mar 1997, 03:10 GMT </LI> <LI><strong><A NAME="00096" HREF="msg00096.html">Re: mud grammar</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Thu 13 Mar 1997, 10:11 GMT </LI> </UL> </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>