[MUD-Dev] Object Models

Chris Gray cg at ami-cg.GraySage.Edmonton.AB.CA
Mon Nov 27 22:12:25 CET 2000


> From: "Christopher Allen" <ChristopherA at skotos.net>

> One thing that we've found amazingly powerful with the Skotos StoryServer,
> is that all physical objects in the game are actually a single LPC class -
> thing. There are *no* sub-classes of things. Rooms are things, players are
> things, NPCs are things, containers are things, etc. In fact, you can in our
> system +possess (switch your soul object's pointer) from a player object to
> a cat or to even a pillow (The pillow waves its tassles at you.)
>
> Thus any new behavior added to an object, is immediately available to *all*
> objects.
>
> Instead of LPC class inheritance, we do have a separate data inheritance,
> what we call our "ur" system. An 'ur-parent' object is an object of the
> thing LPC class with a number of properties pairs set on it (name-value). If
> a property is requested of an 'ur-child', if that property doesn't exist, it
> will use those of its 'ur-parent'. However, if it the property is changed,
> the changes are only made in the 'ur-child'. This let's us have some
> heirarchical organization of data of similar objects without them actually
> being different LPC classes.

Cool! I'm glad to see someone else has found merit to the concept of
inheriting values rather than inheriting structure. Its a great space
saver, and allows some interesting effects. That's the way my MUD
(still called AmigaMUD, even though the server is now on Linux) has
worked for the last 7 or 8 years.

--
Don't design inefficiency in - it'll happen in the implementation.

Chris Gray     cg at ami-cg.GraySage.Edmonton.AB.CA
               http://www.GraySage.Edmonton.AB.CA/cg/
_______________________________________________
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