[MUD-Dev] (fwd) Re: Issues from the digests and Wout's list

Chris Gray cg at ami-cg.GraySage.Edmonton.AB.CA
Sun Apr 27 16:14:08 CEST 1997


[Raz:]
:I've a feeling I may be in the minority of being an English member of the
:list, so the following may not ring many bells to too many people:

I probably don't count as English, but I was born there, and my family
is English, but we moved to Canada when I was 4 years old.

[Command completion example deleted.]

I have a philosophical problem with command completion like that. Doing it
requires storing a state on the character, which affects how input commands
are "understood". This can lead to confusion on the part of the player,
if the player and the computer disagree about the state. Perhaps it is a
minor problem, but it can be an irritating one. An adventure game has a
fixed set of commands, determined when the game is written. In many MUDs,
mine included, objects and even verbs can be added by multiple people,
while the system is running. Ambiguities can arise which were not
anticipated. So, I want the rules for input parsing to be as simple and
stateless as possible. Also, on a MUD, the world can change a lot between
the inputs from a given player. So, the command state saved can be made
invalid. What if someone drops a new green bag between the commands? What
if one is replaced by another? As a player, I'd rather not be surprised
in that way. I want the surprises to be part of the scenario, not part
of the interface!

:I assume we're all aiming at something better in terms of parsers?  =
:Forgive
:me if I've missed a whole discussion - I'm foolishly writing this without
:catching up on the other mails - but its something I've not seen =
:mentioned
:at least during the time I was able to keep up to date with the list.
:
:By something better, I mean such features as the above type of command
:completion (which I *have* seen you discussing =3D)), pronouns, =
:conjunctions,
:support for EXCEPT, etc.  This is the sort of parser my coder friend
:supplied for a very old experimental engine, which would support a =
:sequence
:such as (engine responses snipped):
:  > get all except the green bag
:  > examine bag
:  > get it and put the flask in it
:  > put key in box and put it in the bag

I've thought of doing 'except' type stuff, but it hasn't been high enough
priority. It doesn't seem to add much, unless there are a lot of objects
around. Using 'it' is something on my list to investigate. The last
example normally uses 'then' instead of 'and', since 'and' is used
when listing objects. Although in that case, there is already an indirect
object, so the 'and' after it wouldn't normally be used. (Are there English
sentences in which the indirect object phrase has 'and' in it?) Currently,
the limit in mine is something like:

  Put the steel sword, the rock and big yellow brick into glass trophy case.

Points: 'the'/'a' is optional; Can capitalize as you wish. Can punctuate.
Can accept lists with ',' or 'and'. Can have indirect objects. Can have
arbitrary lists of adjectives.

:It even supported the command that Magnetic Scrolls made such a big deal
:about, namely:
:  > put the pot plant in the plant pot
:
:Though, apparently, there's nothing very complicated about that syntax at
:all =3D)

That's pretty straightforward. My 'putIn' verb just tells you that you
can't put something into itself.

--
Chris Gray   cg at ami-cg.GraySage.Edmonton.AB.CA



More information about the mud-dev-archive mailing list