[MUD-Dev] Parser engines

Travis Casey efindel at earthlink.net
Sat Apr 3 19:49:26 CEST 2004


On Friday 26 March 2004 14:51, Helps Family wrote:
> Brian Hook wrote:

>> Then I realized that at some point complexity is unavoidable,
>> specifically with disambiguation (which sword?  which key?).  I'm

>> really not fond of unintuitive (to non MUD players) forms like:

>>  > get 2 sword
>>  > get 2.sword

>> That just strikes me as...messy.

> I've got an amusing contradictory anecdote for this. I wrote my
> MUD parser to properly handle

>   > get second sword

> and

>   > get the 59th sword and the 61st sword.

> However, it did NOT handle get 2.sword -- I'd never used it
> before, so didn't think to implement it. Most of our active
> players are first-time MUDders, and they found the second/2nd form
> intuitive. However, one of our players had MUDded before, and
> expected it to work:

My experience is that "#.object" is mostly a Diku (and derivatives)
thing.  I've mostly worked on LPs, and the equivalent on the ones I
worked on was:

  > get sword 2

To me, this seems to make more sense.  Part of that is probably
because I'm more used to it, but there are a few reasons that spring
to mind:

  - It approximates expressions that English speakers actually use:

     "Do you want to pick door one, door two, or door three?"

is something that one might actually hear said, and "door two" would
be a natural response.  Changing from spelling out the number to
using numerals makes intuitive sense as well.

  - With a sophisticated parser, one may want to support things like:

    "get 2 swords"

for a character to pick up two swords when there's more than two
present.  "get 2 sword" is only one key-slip away from that; IMHO,
it's better if minor key slips result in errors, instead of a
different valid command.  Note as well that this gets more fun when
dealing with things that do not change in the plural form; e.g.,
"get 2 deer".

  - adding in the . helps differentiate, but there's still the
  potential problem of "2.deer" being only a keyslip from "2 deer".

  - One common objection I've seen to "second sword" or "2nd sword"
  is that "2.sword" is faster to type... but "sword 2" is just as
  fast to type as "2.sword".

>   http://simud.org/forums/thread/1480#4367 (or see end of post for a
>   copy)

> So even if it strikes you as "messy," you may find that players
> will expect it to work anyway, proper English or not. When I
> responded that the player should try "second tree" instead of
> "2.tree". She said she hadn't thought of that, and would try it.

> Perhaps this goes some way to answering the original question --
> MUD parsers are written the way they are because players expect
> them to be written the way they always have been.

Note that many mudders seem to stick with whatever sort of mud they
started with.  Idioms that are common on, say, Dikus, are not
necessarily common on other sorts of muds, and vice-versa.

--
       |\      _,,,---,,_     Travis S. Casey  <efindel at earthlink.net>
 ZZzz  /,`.-'`'    -.  ;-;;,_   No one agrees with me.  Not even me.
      |,4-  ) )-,_..;\ (  `'-'
     '---''(_/--'  `-'\_)
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list