Resets and repops

Furball K.L.Lo-94 at student.lut.ac.uk
Wed Mar 19 00:28:26 CET 1997


On Mon, 17 Mar 1997, Jon A. Lambert wrote:

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

That's what I do for most games I write, I had a simple strategy working
on a server/client basis where each civilisation would only see as much as
the player could see.  The concept being that the game could expand to
cover network use if someone made a daemon to handle input from
other sources.  In effect, this meant the player was actually using a
client to connect to a server.

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

Could you expand on this a bit more please?  So how would the subsystems
cope without a master?  Surely they would simply turn idle?  I had some
idea for the above game which went something like:  You can assign
personalities to rule regions of your empire or command fleets and work
out battle tactics but the computation was still the same.  The server
didn't simplify things though so even the AI would have to cope with the
same complexities.

> program is inherited by the replacement PC or NPC.  I am hoping that
> over time the subsystems continue to evolve according to the
> personality/whims of the players running them.  Should a subsystem be

Sounds like the drones from a Dr. Who book: Subsystem.  They eventually
reflected their masters' personalities.

> This mechanism is not clear yet.  PCs can also create and assign
> subsystems to hirelings such as a shop which they have purchased or a
> steward they have hired to watch over their holdings while they are
> away.

Including NPCs to help in adventuring?  I always liked the idea of having
NPCs who will join up and help out, possibly as a follower.  I reckon that
players might even get attached to their NPCs if they were allowed to
train up or maybe even learn new tricks/commands.  Teach them a few key
words to trigger on or maybe a style of fighting...

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

This sounds really good because if you make a fantasy world, there's no
reason why things like this can't happen given the fact that the people at
the time did actually believe in this.  Magic, for example, is only one
aspect of something which people used to believe in which is implemented
in muds so there's no reason something like the above can't be made too.

With respect to what ChrisG wrote:

I don't know what dikus actually do for repops but in LPMuds, the driver
has random reset time defined at compile time.  Every now and then, it
calls reset() in an object.  This reset() can be for anything.  For
rooms, it's usually some code to restock the location with what should
be there.  For NPCs, reset() is also used to move in a random direction
to give the impression of sme life.

Having said all that, I realise having a loaded area which doesn't do a
lot is a complete waste of resources so maybe it would be better if the
area is filed off to disk when players leave the vicinity.  If a player
enters an adjacent area, the area loads back in and starts populating the
area.  Some areas, like city streets and shops would be better off with
almost random populations with the exception of certain key NPCs or people
(eg: shop owners :).  For that CRPG, I had planned for NPCs walking around
on a pulse, being tile based, they would avoid each other, cross the
street, enter shops, hail a taxi, wave to their friend(s), go home, etc.
I had hoped to include things like guards patrolling would eventually need
to change shift and you could trace them back to their homes (NPCs
have lives too!) then mug them or something.

As for having things like that HQ sending in a replacement for the 23rd,
maybe it's too specific.  Let's say a gang just got wiped out.  Kind of
silly to have them reset and reinstalled in their former glory.  A cheap
option would be to reset them but give them generated names in all the
appropriate places (so all the gang name scrawls on their turf will change
too)....  Oh, and because the gang has been decimated, the new gang should
have a different standing and treasure trove...

Ciao

  |				"Swing it, shake it, move it, make it,
_O_O_  Ling - Freshwater fish	 Who do you think you are?" - Spice Girls






More information about the mud-dev-archive mailing list