Zone nesting/amorphism?

 
Post new topic   Reply to topic    mudlab.org Forum Index -> Design
View previous topic :: View next topic  
Author Message
Traithe



Joined: 13 May 2005
Posts: 50

PostPosted: Sun May 29, 2005 8:40 am    Post subject: Zone nesting/amorphism? Reply with quote

I just finished implementing the groundwork for zones over on Etherea, and true to neurotic form, I immediately got to thinking about how it could be extended.

First, the details on my implementation can be found here.

In addition to wondering if anyone here has experience with using such "nested" zones in practice, I was also curious if anyone had seen or used any other interesting sorts of zone-related implementations.

One thing that comes immediately to mind is amorphism... so, for example, you've got a celestial sphere zone, which in our gameworld is basically like a solar system.

Now, generally, zones are usually only spatial "containers" for rooms, these being smaller discrete units of space or distance. However, in a case like the one above, the zone might very well take over the usual function of rooms - coordinate-based systems like spaceflight probably lend themselves fairly well to this sort of an approach, since you could define spatial parameters to serve as the limit of the sphere zone, and allow coordinate-based spaceflight anywhere within that. You could then specify coordinates for each of the zones contained immediately beneath the sphere zone, and switch to a room-based movement system the moment those coordinates are hit and the sub-zones are entered... etc.

Heck, you could even nest things like objects, usually room-based, directly into the zone itself... that way the descriptions could be dynamically generated in place of your ordinary room description for spaceflight, based on, for example, their relative position to large fixed objects in the vicinity, such as stars, shards, other spacecraft, etc.

Anyway... probably didn't make much sense; 3 am ramblings. That aside - any thoughts, feedback or suggestions?

Much appreciated. Thanks in advance.
Back to top
View user's profile Send private message Visit poster's website
Author Message
Traithe



Joined: 13 May 2005
Posts: 50

PostPosted: Sun May 29, 2005 8:45 am    Post subject: Reply with quote

Oh, and something else I should probably mention: I'm aware that there are entirely coordinate-based MUDs out there. However, I plan on implementing a hybrid between that and the more traditional room-based system, where three-dimensional modes of travel like flight/spaceflight are coordinate-based, and generally two-dimensional modes such as seafaring and regular ground movement are room-based.

So, while I'd definitely be interested in hearing about such things, please bear this in mind if you want to make specific suggestions re: coordinate-based systems as they apply specifically to my project. Smile

Thanks!
Back to top
View user's profile Send private message Visit poster's website
Author Message
Teelf



Joined: 12 May 2005
Posts: 21
Location: Seattle, WA

PostPosted: Mon May 30, 2005 5:53 am    Post subject: Reply with quote

This looks like a subset of hierarchical containment. The basis of which is typically every (or most) objects in the game derive from some base 'Object' class that is itself a container. So zones not only contain rooms and rooms people and people objects, but if you're game needed it, people could have people inside them, or people could go inside an object, etc (and zones contain zones as you mentioned).

I know the future GWII uses this as I recall a paritcularly uncomfortable situation when KaVir picked me up and put me inside him to get me out of some particular area.

As the wiki says, hierarchical containment is a generalization of the room concept. And imho, having any generalized concept built into your mud is better than having a subset of one. Even if you MUD never ends up using more than a zone->room->people containment, at least it's there if you ever need it.

I do not think you need the full hierarchical containment to easily do a hybrid room/coordinate system. You could easily have a regular room whose contents are a coordinate system grid, but I'd still implement this system for other reasons.


Also, in your implementation link, you mentioned zones inheriting properties of thier parent. That relation goes beyond simple containment and is a subject worth of its own thread. Eiz and unifex have a lot of experience in this area and might be willing to comment on the property system of Aetas.
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Author Message
Burr



Joined: 27 May 2005
Posts: 11

PostPosted: Mon May 30, 2005 3:13 pm    Post subject: Generalizing it a bit more... Reply with quote

You could generalize it a bit more by making it a many-to-many relationship. And since you are using a relational database, I don't think that should present any big problems.

A long river zone passes through a mountainous zone and into a rainforest zone. And perhaps there is yet another zone between the mountains and rainforest representing a gradual change between the two ecosystems. This zone "inherits" some qualities of the mountain zone and some of the rainforest zone, while the river inherits directly from each of them as it passes through (which means a division of yet more zones, but all contained by the river zone). Each of these zones may also have qualities completely indepedent of the others.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    mudlab.org Forum Index -> Design All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2001, 2002 phpBB Group
BBTech Template by © 2003-04 MDesign