Resets and repops
Jon A. Lambert
jlsysinc at ix.netcom.com
Thu Mar 20 00:31:02 CET 1997
[Chris Lawrence said:]
> I don't distinguish between any sort of objects, be they rooms, mobiles,
> dumb objects, or players. They're all the same, all do the same things,
> and outside of the IO going to a connection object for players, all run
> exactly the same code.
I do distinguish living objects as as separate and distinct class from
non-living objects. The class heirachy does not have a common root
object. As such there is some redundancy in code but not as much
as you would suspect. Plant-life happens to fall in the non-living
class for many reasons. My class heirachy is probably much flatter
because of some of these distinctions.
>
> What I don't do is bind player characters or non-player objects to using
> the parsed command line. Any object may directly call any method, with
> any set of arguments, on any other object. Of course it is then up to
the
> receiving object's security criteria as to how and if it accepts the
call
> (stolen straight from COOL). As such the automation code for mobiles
> (that's all a mobile is: a normal object with an event chain that causes
> state changes in the mobile) can directly call the relevant methods to
> affect the subject mobile, or it can lodge command strings to be parsed
> into a direct method call (which in truth is just another method call
with
> the command as an argument).
>
This certainly is an approach which leaves you with the greatest degree of
flexibility. My server is more tightly bound to objects found in rpg's
and
would be of little use in progamming other sorts of simulations. I have
sacrificed this genericity (is that a word?) to the particular games i wish
to simulate.
> Part of the neat aspect of this is that I expect players to augment
> themselves and their character objects with home-grown, purchased,
stolen,
> or otherwise acquired code to implement various neat features. Earlier
> discussion focussed on the Combat Packages aspect of this (more or less
> intelligent user-written combat AI libraries), but I can also see it
> happening with socials, naming cards (objects which
> auto-register/de-register names on teh recipient), mana factories/sinks,
> etc.
>
> BYOC takes a whole new meaning.
This brings up other thoughts which we had briefly touched upon in
earlier Email and maybe others would care to comment.
It is my opinion that many of the players/builders that I wish to attract
are
decidely non-programming types. A language like LPC or ColdC is
significantly beyond their patience/threshold to bother to learn. I am
attempting to make the user-programmed language as close to the actual
command parser as possible. Such a language would inherently reflect the
commands implemented in the mud and would probably be much closer to a
tiny version Tcl/Tk. I prefer a minimalist approach here.
1) Locally implicit variable declaration and assignment (strictly
variant-types like REXX)
2) An IF THEN structure (ELSE optional)
3) A simple conditional looping construct (WHILE (cond) END-WHILE comes to
mind)
or DO with CONTINUE and EXIT/BREAK.
4) Perhaps a GOTO/LABEL mechanism (who says mud players need to
be structured programmers )
5) A minimal operation/function library. (+,-,*,/) Some essential string
functions.
6) Access to object attributes in context only. Those attributes that
would
normally be exposed in game context.
7) The executable meat and potato functions are exposed in in the
same grammar as mud game commands. ( thus the game construct
'drink water from canteen' is present exactly in the same manner in the
language construct)
8) Input to such a program could be driven by standard mud output.
(response to above command would be indicated by read access to a
condition
code structure or the actual output buffer text)
> cf the original Gods system. You can find a passable description in
> Bartle's original MUD survey.
Really! I wasn't aware of this, although I suspected this terminology had
some similar roots in early muddom. Someone had posted a large mud
specification that included this concept about one year ago on r.g.m.a
I cannot remember their name although I do remember they were
associated with Case Western. This is where my concept of this
originates. Couple this with my devotion to Homer and Hesiod it is
a natural interest for me. My chief builder happens to be very fond of
Norse mythology and we have been having lively discussions of how
to integrate control of these differing pantheons of dieties. If Dawn is
held back one hour in Ithaca by Athena's plea, does Dawn occur at the
appointed hour in Beowulf's lands. I think we settled for local control.
Basing this on physics would be a strain on suspension of disbelief. ;-)
More information about the mud-dev-archive
mailing list