[MUD-Dev] Room-based vs. Coordinate based[Was semi-graphical muds]

J C Lawrence claw at kanga.nu
Sun Feb 18 18:39:49 CET 2001


On Sun, 18 Feb 2001 05:55:31 -0800 
Ryan Rhodes <ryanshaerhodes at hotmail.com> wrote:

> J C Lawrence wrote:

>> I do both, simultaneously, for the same locations.  First, there
>> are rooms, much as typical, except that each room is in itself a
>> coordinate space (internally and externally), and each room lies
>> within a coordinate space which positions it with other rooms to
>> which is is related in some fashion, and there are any number of
>> those coordinate space groups (ie clusters of related rooms)
>> within the world.

>> This is done deliberately to be able to model non-einsteinian,
>> non-linear, and directionally sensitive spaces among other
>> things, and yes, I play with many of the possibilities.

> Do you organize your rooms into an area-like hirearchy in storage
> for easy building?  

I have various logical concepts of containment, so that objects
(rooms are just a special case of normal objects) can be treated as
inside a group for whatever reason, but that's about it.

> If so, how do you handle areas with rooms with overlapping
> coordinates.  

It doesn't happen.  I don't really have a global coordinate space,
though I'm moving toward one.  What I have right now is a set of
tagged coordiante spaces, with every object defining itself as being
within a named coordinate space, and every cooredinate space also
having a list of the objects within it (the two do NOT have to
agree).  

> By that I mean two rooms in two different areas with the same
> coordinates.  

That can't happen.  If they are in different areas they are in
different coordinate spaces.  The fact that the numeric values of
their locations within those coordinate spaces may overlap is
irrelevant -- they are different spaces; essentially, they are in
different universes.  The accidental coincidence of numbers has
absolutely zero meaning.

I just DON'T have a concept of a global coordinate space.

But, I'm moving in that direction.  Sort of.  What I'm moving toward
is a global coordinate space in which all other coordinate spaces
are contained.  Each child space (which may be a child of either the
global space or any other child space (they are named), then defines
what ranges of the coordinate space it occupies and the mappings.

> Do you allow more recently refreshed areas to override rooms
> already loaded, or do you not allow rooms referencing the same
> coordinates to get stored in the first place, reguardless of their
> area.

Perhaps I should repeat: There is no global coordinate space, and
there are no collisions of coordinate sets.  Coordinate spaces are
uniwue and entirely self-referential.  They do not refer, in any
manner, to any other space in any manner.  Even in the new system,
the only external representation of a coordinate space is in
defining the presence, size, and location of interfaces between
coordinate space, not their relativity.

> I would hate to have 50000 rooms like medievia without some kind
> of partitioning, but partitioning areas into big square or cubic
> blobs to avoid overlapping isn't very flexable either.

Which is why I don't have a global coordinate space.  At that level
for me its all just a directed graph.  Things link, usually in
impossible to justify fashions (consider the Blue Grass Path) and
its up to the players to just play Alice in Wonderland.

--
J C Lawrence                                       claw at kanga.nu
---------(*)                          http://www.kanga.nu/~claw/
--=| A man is as sane as he is dangerous to his environment |=--
_______________________________________________
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