Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Zones, Zonesets, and procedural site generation.  (Read 907 times)

A_Curious_Cat

  • Bay Watcher
    • View Profile
Zones, Zonesets, and procedural site generation.
« on: April 28, 2020, 12:00:01 pm »

Hello, everyone!

I am a long time lurker and very occasional Dwarf Fortress player who just made the effort to get an account on the forums.

I'm currently planning to play DF more than I used to (read:  after several years my Linux distribution has finally included the necessary libraries to compile Dwarf Therapist).

Anyways, onto the suggestion...

Zones:  Everything is a zone.

We all know that Toady One is planning on moving in the direction of replacing workshops with activity zones.  I think that he should go one step further and make other things (for example: bedrooms ) zones too. 

Let's take a moment and talk about what activity zones are (or at least my personal vision for what they should be):

An activity zone is, as it's name suggests, an area where a certain activity (e.g. sleeping) takes place.  With this in mind it should be clear that a lot of things that are currently in the game could be replaced with activity zones (workshops and bedrooms are just two examples).  I believe that all zones should be defined in the raws. The definition of each activity zone should include (at least) a name, minimum dimensions, a list of needed furniture (e.g. a bed), a list of needed containers (e.g. a table --a table is just a box with it's contents stored on it's upper surface  ;) ), a list of needed tools for each container, and a list of jobs to be performed in the activity zone (e.g. sleep).  This brings us to the second part of my suggestion.

Zonesets:  Organizing zones.

A zoneset is a container (in the programming sense).

A zoneset can contain two things:  Activity zones, and other zonesets.

Zonesets should be defined in the raws and contain:  a name, a list of included zones and/or zonesets, whether the zones and/or zonesets it contains should be placed indoors or outdoors. whether they should be separated from each other and what they should be separated with (Empty floor space? A wall? A fence?), whether the zoneset requires a roof or ceiling overhead, and a list of permissible building materials for all of the aforementioned items. As a special note, I should mention that I have given zonesets the ability to contain other zonesets so that they may set up in a hierarchical fashion. As an example, a bedroom zone could be part of a residence zone (which in turn could be part of a larger housing zone, etc.).

I believe that, with this information available, Dwarf Fortress should be able to create realistic and organic sites via procedural generation.

I'm sorry if this has been proposed before, and I look forward to seeing what everyone else has to say about my idea.

Thank You.

Logged
Really hoping somebody puts this in their signature.

Azerty

  • Bay Watcher
    • View Profile
Re: Zones, Zonesets, and procedural site generation.
« Reply #1 on: April 28, 2020, 03:38:11 pm »

Excellent idea.

It might effectively flesh out architecture and architectural generation.

For exemple, we could define a residential complex for a ruler position in raws, with a bedroom, a throne room and other rooms fit for a ruler.

Speakinf of which, criterium for an activity zone might include wealth value and quality.
Logged
"Just tell me about the bits with the forest-defending part, the sociopath part is pretty normal dwarf behavior."

Uthimienure

  • Bay Watcher
  • O frabjous day!!
    • View Profile
Re: Zones, Zonesets, and procedural site generation.
« Reply #2 on: June 24, 2020, 06:57:48 am »

Some or all of this was mentioned before:

1. Make zones 3D so they can span multiple z-levels.

2. A zone-painter for easy creation of odd-shaped zones (similar to the burrow tool).

3. Linking a new zone to an existing zone so that they become functionally one zone.

4. Reshaping existing zones without losing functionality or having to recreate the zones.

5. Zones with multiple uses, i.e., a single zone that has many zone functions.

Yes, to a degree some of this stuff already exists.
Logged
FPS in Gravearmor (925+ dwarves) is 2-5 (v0.47.05 lives on).
"I've never really had issues with the old DF interface (I mean, I loved even 'umkh'!)" ... brewer bob
As we say in France: "ah, l'amour toujours l'amour"... François D.