[MUD-Dev] Python script as stand alone MUD server...

Alistair Riddoch alriddoch at zepler.org
Thu Jan 29 23:35:58 CET 2004

On Thu, Jan 29, 2004 at 11:16:58AM -0700, Kwon J. Ekstrom wrote:

> I'm interested in knowing what types of algorithms you used to
> solve this performance issue.

> Just from the short bit of information given, I'm guessing that
> you were searching the local space for each "object" to pick up
> events.

The event system in the early pure python stage was very naive.
Essentially all events were broadcast globally. An initial attempt
at doing the maths required to restrict events to a local area in
Python resulted in a massive slow down. One workable approach we
could have tried at this point would have been to write a compiled
code module to handle the maths, or use one those already available.

The current code restricts broadcasts to a constent square area
around the location of the event. I plan to replace this with a
system where the ability of a perceptive entity to perceive an event
depends both on the significance of the event, and the sensitivity
of the observer.

> Personally I'd have maintained a local cache of objects.  When an
> event occured, I would then build a list of those "potentially" in
> range, then do the spatial search to verify.

I have considered such an approach, and was concerned that it would
result in undesirable zoning artefacts. It was far from clear to me
how to divide the world up into cached areas, and I was concerned
about referrential integrity of the caches.

Alistair Riddoch
alriddoch at zepler.org
MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the mud-dev-archive mailing list