Resets and repops

claw at null.net claw at null.net
Tue Mar 18 08:42:39 CET 1997


On 17/03/97 at 12:17 PM, "Jon A. Lambert" <jlsysinc at ix.netcom.com> said:
>I heartily agree with your sentiments.  I am attempting something
>similar. I treat most NPCs identically to characters.  The subsystems
>that NPCs run issue commands to an input buffer.  In like fashion, the
>players' input buffers are written to by the network process. 

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.

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).

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.

>I also agree with the concept that NPC activity continues in areas/zones
>that players are not present in.  There can be significant overhead
>involved with this. 

Hehn.  I took a classic (for me) tack, and decided to ignore the problem
on the  basis that it would invalidate the server both for simulation
work, and because addressing it would cause any unrelated synergy across
the MUD world to dissappear (eg rumours of events in areas not populated
with players would no longer propagate, which would cause remote reactions
to their rumours (cf watchers, spoofs and triggers) to no longer occurr).

>I have attempted to balance this by programming some
>NPCs to be "marshalls" for other NPCs or controllers of city/town
>subsystems.  Thus not all NPC scripts are  active and consuming resources
>all the time.  For instance city guard captains are  programmed to issue
>patrol orders and attack orders to their charges.  An interesting side 
>affect is that by taking out a "marshall" or subsystem controller, a
>great amount of chaos  ensues until a replacement NPC is found.  

Cute.  I like this.

>In a related vein, I was inspired by Nathan's description of his
>implementation of the physical laws of the universe to do something not
>altogether dissimilar in my server.  While Nathan's model seems highly
>appropriate to a real world with real laws of physics, my world's physics
>are entirely subject to the whims of the gods.  I don't believe in
>physics, I believe in divine intervention. (*grin*) It was my original
>intention that all immortals/deities actually be THAT.  They  can be
>player/administrator run and can be used literally as gods. My immortal
>pantheon is very similar to the greek mythos albeit with different names.
>They demand sacrifices, quests and generally participate in mortal
>affairs.  As such they are roleplayed by whomever is granted with the
>responsibility.  With this in mind, I have done away with my solar/lunar
>timer events and have assigned maintenance and execution of these events
>to the Apollo NPC's and Artemis NPC's subsystems. 
> It may be that Apollo might wish to delay the sunrise to allow a favored
>player to gain  advantage in an early morning attack or Artemis decides
>that an eclipse would be  appropriate to auger a significant event.  With
>the NPC always "playing", it is possible for them to respond in an
>automated way to sacrifices, prayers and quests. There are many other
>possibilities, as I decide which dieties' subsystems control which  mud
>events.

cf the original Gods system.  You can find a passable description in
Bartle's original MUD survey.

--
J C Lawrence                              Internet: coder at null.net
----------(*)                              Internet: coder at ibm.net
...Honourary Member of Clan McFud -- Teamer's Avenging Monolith...





More information about the mud-dev-archive mailing list