<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: [MUD-Dev] Room-based vs. coordinate-based --> <!--X-From-R13: pynjerapNphc.uc.pbz --> <!--X-Date: from stimpy.globecomm.net [207.51.48.4] by in4.ibm.net id 865443919.49952-1 Wed Jun 4 17:05:19 1997 CUT --> <!--X-Message-Id: 199706041703.KAA29427#xsvr3,cup.hp.com --> <!--X-Content-Type: text/plain --> <!--X-Reference: 9706031521.83rl@ami-cg.GraySage.Edmonton.AB.CA --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: [MUD-Dev] Room-based vs. coordinate-based</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:clawrenc#cup,hp.com"> </head> <body background="/backgrounds/paperback.gif" bgcolor="#ffffff" text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000"> <font size="+4" color="#804040"> <strong><em>MUD-Dev<br>mailing list archive</em></strong> </font> <br> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg01151.html">Previous</a> | <a href="msg01153.html">Next</a> ] Thread: [ <a href="msg01098.html">Previous</a> | <a href="msg01330.html">Next</a> ] Index: [ <A HREF="author.html#01152">Author</A> | <A HREF="#01152">Date</A> | <A HREF="thread.html#01152">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: [MUD-Dev] Room-based vs. coordinate-based</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A></LI> <LI><em>Subject</em>: Re: [MUD-Dev] Room-based vs. coordinate-based</LI> <LI><em>From</em>: <A HREF="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</A></LI> <LI><em>Date</em>: Wed, 04 Jun 97 09:24:48 -0700</LI> <LI><em>Reply-to</em>: <A HREF="mailto:claw#null,net">claw#null,net</A></LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> In <<A HREF="msg01098.html">9706031521.83rl#ami-cg,GraySage.Edmonton.AB.CA</A>>, on 06/03/97 at 08:35 AM, cg#ami-cg,GraySage.Edmonton.AB.CA (Chris Gray) said: >My surface thinking on this has been that a given set of co-ordinates >will define a room, and that within that room things are room-based. >The coords could also define a building of several rooms, etc. This >is sort of a cop-out on my part, but it seems to be a way to get some >of the advantages of both systems. If I can get some of the >advantages of the coord system without having to do all of the >proximity stuff for all of the commands, I'll take that cheat! The approach which I'm currently moving towards is somewhat related to this: 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 building). 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 key. 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. eg +------------------------------------------+ | Global coordinate system | | +-----------+ +-----------+ | | | Domain #1 | | Domain #1 | | | | Lump #1 | | Lump #2 | | | | | | | | | | Origin | | | | | |/ X| |Y | | | +-----------+ +-----------+ | +------------------------------------------+ \ Origin 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 avilable in parched deserts). Conservation of energy laws *were* observed BTW. -- J C Lawrence Internet: claw#null,net (Contractor) Internet: coder#ibm,net ---------------(*) Internet: clawrenc#cup,hp.com ...Honorary Member Clan McFUD -- Teamer's Avenging Monolith... </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="01098" HREF="msg01098.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></STRONG> <UL><LI><EM>From:</EM> cg#ami-cg,GraySage.Edmonton.AB.CA (Chris Gray)</LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg01151.html">Re: [MUD-Dev] The Lessons of Lucasfilm's Habitat</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg01153.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg01098.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg01330.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#01152"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#01152"><STRONG>Thread</STRONG></A></LI> </UL> </LI> </UL> <!--X-BotPNI-End--> <!--X-User-Footer--> <!--X-User-Footer-End--> <ul><li>Thread context: <BLOCKQUOTE><UL> <LI><strong><A NAME="01172" HREF="msg01172.html">Re: (fwd) DESIGN: The Physics of Magic</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Thu 05 Jun 1997, 11:36 GMT <LI><strong><A NAME="01151" HREF="msg01151.html">Re: [MUD-Dev] The Lessons of Lucasfilm's Habitat</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Wed 04 Jun 1997, 21:47 GMT <UL> <LI><strong><A NAME="01241" HREF="msg01241.html">Re: [MUD-Dev] The Lessons of Lucasfilm's Habitat</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Sat 07 Jun 1997, 04:25 GMT </LI> </UL> </LI> <LI><strong><A NAME="01098" HREF="msg01098.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Tue 03 Jun 1997, 21:39 GMT <UL> <LI><strong><A NAME="01152" HREF="msg01152.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Thu 05 Jun 1997, 00:05 GMT </LI> </UL> <UL> <li><Possible follow-up(s)><br> <LI><strong><A NAME="01330" HREF="msg01330.html">Re: [MUD-Dev] Room-based vs. coordinate-based</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Mon 16 Jun 1997, 21:48 GMT </LI> </UL> </LI> <LI><strong><A NAME="01085" HREF="msg01085.html">Re: [MUD-Dev] The reality of constant combat??</A></strong>, Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Tue 03 Jun 1997, 13:37 GMT <UL> <li><Possible follow-up(s)><br> <LI><strong><A NAME="01106" HREF="msg01106.html">Re: [MUD-Dev] The reality of constant combat??</A></strong>, Jeff Kesselman <a href="mailto:jeffk#tenetwork,com">jeffk#tenetwork,com</a>, Wed 04 Jun 1997, 01:30 GMT </LI> <LI><strong><A NAME="01128" HREF="msg01128.html">Re: [MUD-Dev] The reality of constant combat??</A></strong>, Jeff Kesselman <a href="mailto:jeffk#tenetwork,com">jeffk#tenetwork,com</a>, Wed 04 Jun 1997, 10:41 GMT </LI> </UL> </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>