[MUD-Dev] Neighborhoods (was room-based v coord-based)

Brandon J. Rickman ashes at pc4.zennet.com
Wed Jun 25 21:18:16 New Zealand Standard Time 1997


Someone named Greg (S001GMU at nova.wright.edu) wrote:
>hmm.  I've been thinking about this quite a bit and I have changed my tune.
>well, modified it a bit.  I agree that the scale of the being in question
>is probably a faulty way of dividing neighborhoods.  Might it be better to
>divide into neighborhoods based on the scale of the beings perception?  For
>example, I am controlling a mouse.  As a _normal_ mouse I have fairly
>limited sight (say 4 feet to be arbitrary).  Now, manfred the magician
>comes along and straps some mouse-sized goggles of farsight onto my peepers
>and suddenly I can see 40 feet.  As a result of the change in the scale of
>my perception, I should be shifted into a different neighborhood that recieves
>messages for beings with similar scale perceptive prowes.  Add this to the
>dividing by physical location and I think it adds quite a bit to the model.

I feel like I have neglected this thread, but I was out of town for a few
days and have a few things to do before I leave again for an extended
holiday (anyone going to be at the CAiiA conference?) in Europe.

The proposed way of dividing objects into neighborhoods (based on relative
proximity between groups of objects, organized in some kind of tree 
structure with some maximum number of objects per node, with as-of-yet
undefined geographical (walls, doors) objects used to place these
neighborhoods within a less abstract coordinate system) (whew!) was
designed to solve certain server-centric problems: avoiding n^2 collision
checks, flexible event generation - two high-minded issues - and dynamic
"room" creation - a more immediate problem for builders.  Character
perception is very much a player/client problem.  Let me see if I can 
demonstrate a neighborhood-friendly way of dealing with your goggled
mouse.

A mouse, a chuck of cheese, a magician (Manfred), and a giant are standing
in a vast barren plain.  Put the mouse, Manfred, and the giant in a
neighborhood, and the cheese sufficiently distant in its own neighborhood.

The mouse, for whatever psycho-physiological reason, is aware of Manfred
(he appears as a very large creature) but the giant is "too big" for the
mouse to recognize.  This is the "client" problem and someone else will
have to figure out how such a thing could work.

The giant can see the magician but the mouse is beyond his notice.

The magician is aware of both the mouse and the giant.  But he can also
see the cheese.  This is because he can see normal sized objects up to
100 feet away, and the neighborhood of the cheese is within that 100 foot
range.  If someone were to pick up the cheese, he would see it.  This is
very different from his being in the same neighborhood as the cheese.
I'll get back to this.

Manfred straps some goggles of farsight onto the mouse.  Now the 
mouse can perceive the cheese.  If Manfred were to walk over and pick up
the cheese, the mouse would see it.  Manfred has to go to the cheese (hmm)
to be a part of that neighborhood.  Being able to perceive something in a
neighborhood doesn't require being a member of that neighborhood because
the event of that object is naturally propagated to nearby objects (and
neighborhoods provide the shortcut to what those nearby objects would be).

Why do we need the cheese to be in a different neighborhood in the first 
place?  What if the cheese was actually a cleverly disguised bomb?  Manfred
picking up the cheese would create an explosion, affecting everything
nearby.  But the mouse and the giant aren't nearby, and though we could
always check their distance from the explosion those are two calculations
we don't have to make.  There are the extra calculations of determining
who will perceive this event, but is the special case of the goggled mouse 
a rare thing?  No, considering the special case of Manfred, or the special
case of the giant.

Basically I see perception as having too many exceptions to the rule for
perception-based neighborhoods to work.  Yes, there should be a way of
accomodating magic mirrors, security cameras, goggles of farsight.  But
one of the original considerations with Shoehorn and the rabbits was that
the amount of noise increases with the number of objects, so even someone
with eagle-eye vision probably won't notice what a mouse 50m away is doing
if a bomb just exploded 5m away.

There are lots of little issues this post doesn't deal with.  Even with
the goggles, would the mouse suddenly comprehend the giant?  That sounds
more like goggles of macrovision.

Enough.

- Brandon Rickman
(too many Brandon's on this list)






More information about the MUD-Dev mailing list