[MUD-Dev] Nested coorindate space model

J C Lawrence claw at under.engr.sgi.com
Wed May 20 11:18:58 New Zealand Standard Time 1998

Somebody asked me easlier about my nested coordinate space model:



The approach which I'm currently moving towards is somewhat related to

The entire world lies within a single coordinate system  (32bit cube).

Domains within that global coordinate system are marked off as being
"units".  A domain is defined as a 3D space as deliniated by a matrix
of coordinates. Typically this means a cuboid space (eg a rectangular

Each domain is associated with a unique key value.

There is no requirement for a domain to consist of only one lump.  A
domain can be two or more seperate "lumps" widely seperated in the
global coordinate system.  Such lumps are linked by having a common
A domain may elect to define a new coordinate system for its contents. 
Again this is a 32bit cube, and a defined point within the boundaries
of the domain is defined as the origin of the new coordinate system.

Given a domain which consists of several distinct lumps, the
coordinate system ignores the "space" between the lumps.  ie the space
between the lumps as defined by the containing coordinate system is
treated as of zero size.


       |    Global coordinate system              |
       |  +-----------+         +-----------+     |
       |  | Domain #1 |         | Domain #1 |     |
       |  | Lump #1   |         | Lump #2   |     |
       |  |           |         |           |     |
       |  | Origin    |         |           |     |
       |  |/         X|         |Y          |     |
       |  +-----------+         +-----------+     |

The points 'X' and 'Y' in the above diagram when viewed by the Domain
#1 coordinate system are considered to be seperated by no space.  This
of course gets more interesting with tessellated shapes.  Consider:

       |  Global coordinate system  |
       |                            |
       |  DDDD             DDDD     |
       |  DDDD             DDDD     |
       |  DDDD             DDDD     |
       |  DDDX             YDDD     |
       |  DDDA DDDDDDDDDD  BDDD     |
       |  DDDD DDDDDDDDDD  DDDD     |
       |  DDDD       DDDD  DDDD     |
       |  DDDDDDDD   DDDD           |
       |  DDDDDDDD   DDDD           |
Where the D's mark of a single domain.  The points 'X' and 'Y' are
immediately adjacent, but the points 'A' and 'B' are seperated by
significant distance due to the intervening lump.

Just to add detail, domains may be nested meaning that they exist
within the coordinate space of their enclosing domain.  I don't allow
the lumps comprising a domain to exist at different nesting levels. 
All the lumps of a domain must be defined within the same coordinate
system, tho I do allow multiple domains to overlap the same space in
the enclosing domain.

Note: A specific requirement of this entire system was to be able to
model the Tardis, the Blue Grass Path, and Vance's Big Planet (* see
note below) as well as more mundane geometric systems.

Typically a single building of many rooms or a similar construction
would define a domain.  Fancy rooms or room aggregates could define a
domain consisting of multiple lumps.  

A room is defined as a space which a "normal" player character can
perceive the entirety of to an adequate level of resolution without
undue action.  

Rooms define their internal size and scope via coordinate points
defined in their domain's coordinate system.  Thus a room may span
multiple lumps of its domain such that an exit at one end of the room
may pop out at one end of the land, and the exit at the other end of
the room, a mere three steps away from the first, may pop out at the
other end.

(*) I'm not sure if I mean Big Planet here.  I'm trying to recall the
SF book in which the native fauna of the planet had mastered the
ability to connect disperate spaces without intervening dimension.  eg
a loop, passing thru which results in being somewhere else totally,
but passing around has no unusual effect.  The neat thing here was
structures such as animals which would have a sessile portion
containing the brain, stomache and other key organs located in a
"safe" place, and the "eating" portions being mobile with spatial
links back to the stomach piece.  Thus the eater half could wander
around in great danger and eat, have sex etc, with all the food
passing back to the hidden stomache miles away.  Plants did the same
thing to gather precious resources far from where they wished to live
(eg liquid water not generally available in parched
deserts). Conservation of energy laws *were* observed BTW.


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

MUD-Dev: Advancing an unrealised future.

More information about the MUD-Dev mailing list