[MUD-Dev] Re: Nested coorindate space model

J C Lawrence claw at under.engr.sgi.com
Tue May 26 20:08:41 CEST 1998


On Thu, 21 May 1998 18:03:03 +0100 (BST) 
Ling <K.L.Lo-94 at student.lboro.ac.uk> wrote:

> On Wed, 20 May 1998, J C Lawrence wrote:

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

> Cunning, though for me, it's more of a curiosity than something I'd
> be willing to implement.  Can a builder switch between coord
> systems?  

No, its all 3D cartesian.  

> Say from cartesian to cylindrical?  

You can of course overlay that with a polar presentation and translate
under the covers.

> Or perhaps something even more bizarre, like transformations to a Z
> plane:

>  > l
>  There's a huge building 100m to the right.
>  > turn right
>  There's a huge building 100m infront of you.
>  > walk
>  [pause] There's a huge building 30m to your left.
>  > walk towards building
>  [pause]
>  l
>  There's a huge building 150m to your right.

> A modern day maze.  (eek, bad game design!)

It can certainly do things like the Blue Grass and Mobius Row, which
are not entirely alien to your above concept.  Both are in essence
directionally sensitive mazes and (in this system) reliant on careful
placement of directionally sensitive invisible teleports to arrange
the directional and motion order sensitivity.

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

> Oh, I see...

> Mundane questions coming up...

> How do you define irregular domains?  Lots & lots of coords?

Yup.  To date actually all my domains are cubic, I just internally
bound them with walls and similar to make more interesting forms.

Defining a new coordinate system within the domain has proven
exceptionally useful, tho the translations to the external world can
be awkward.  While I haven't needed to make the definition yet, pretty 
soon I'm going to have decide if:

  Given a domain with specified external dimensions of X (say 1x1x1),
but which defines and internal coordinate system and thus has internal
dimensions of Y (say 100x100x100), what happens at the translation
points between the domains?  Is scaling employed such that objects
effectively "shrink" to 1,000,000'th of their actual size when they
enter the nested domain, or are matched scale "windows" defined which
support the interface translations?

The TARDIS would seem to indicate the latter.

> I presume players can see across domains?

Within a domain, yes, but not typically to higher or lower domains
unless there is a translation device.  

> Can domains be shifted around?  Say, if an earthquake struck an
> area.

Yes.

> How are overlapping domains resolved?

Its transparent and utterly ignorable.  A domain defines a private
coordinate space.  If you don't epxressly define a new coordinate
system it merely defaults to inheriting its parent's.  Overlapping
domains thus don't actually overlap -- they don't overlap in the
coordinate space defined __within__ the domain.  They may however
overlap in their mappings to their parent's domain.

As those mappings are only every of concern for the translation points 
(where the domains can be exited or entered), that *really* doesn't
matter any more.  As long as they're consistent within their internal
system, and as long as the parent system is consistent within it self
(but not counting its child domains), everything works.

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




More information about the mud-dev-archive mailing list