Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Burrow improvements  (Read 1951 times)

Dorfimedes

  • Bay Watcher
  • The Human Baby is caught in a burst of flames!
    • View Profile
Burrow improvements
« on: May 26, 2012, 02:07:18 pm »

Burrows are fantastic, but they're missing some functionality that would make them even greater. Here's a couple ideas. If you have other ideas for how to improve them then this is the thread for it.

Forbidden burrows
You should be able to exclude dwarves from a burrow without having to assign every dwarf in the fort that isn't using it to a burrow that doesn't include that area. This is especially annoying when making personal work areas for a single dwarf. I think there should be three separate settings for dwarves regarding burrows: Forbidden, Access, and Assigned. If a dwarf is forbidden in a burrow, they can't do any jobs inside it. If they have access, they may. If they're assigned to it, they're confined to the burrow, basically the way they already work. Pressing the enter key would toggle dwarves between access and assigned like the current functionality, pressing ctrl-enter would forbid them from entering it. Another key could be pressed to toggle the forbidden status of every dwarf that isn't currently assigned to it for easy, exclusive burrows.

Personal meeting halls
Meeting halls should have similar functionality when placed in burrows. This would be a good way, for instance, to get your legendary mason to stay near his workshop, or your nobles to only converse with each other and gain social skills in the Forbidden Palace to prevent tantrum spirals when they die. There should be an option to toggle whether meeting halls are used for all dwarves with access, or only those assigned to the burrow. Basically, an exclusive idle zone.
Logged
"It seems that perfection is reached not when there is nothing left to add, but when there is nothing left to take away." -Someone who has never played DF.

The Human Baby has died in the heat.

Waparius

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #1 on: May 26, 2012, 04:17:53 pm »

Forbidden burrows have been suggested before, but that doesn't matter so much to me. Not sure how Access is different from just having dwarves not assigned to a burrow, though. Do you mean that Assigned Burrows only allow dwarves who are assigned to them? Because that I would totally agree with.

Another thing I'd like to see is some more automation in assigning dwarves to burrows. Maybe a mini-noble in the form of a Councillor, Administrator or District Mayor, available once the fort's turned into a Barony. Assign them to the burrow, give them an office, and they'll wander around recruiting dwarves to live and work there.
Logged

Doodooist

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #2 on: May 26, 2012, 05:19:26 pm »

Quote
Personal meeting halls
This is kinda oxymoron.

Instead of personal meeting halls dwarves should hang out in their quarters (and I thought it's already works this way)
Logged

UHaulDwarf

  • Bay Watcher
  • kiwisbybeat.com/minus
    • View Profile
Re: Burrow improvements
« Reply #3 on: May 26, 2012, 08:04:37 pm »

Personal meeting halls
Meeting halls should have similar functionality when placed in burrows. This would be a good way, for instance, to get your legendary mason to stay near his workshop, or your nobles to only converse with each other and gain social skills in the Forbidden Palace to prevent tantrum spirals when they die. There should be an option to toggle whether meeting halls are used for all dwarves with access, or only those assigned to the burrow. Basically, an exclusive idle zone.
Another name for personal meeting hall could be an office/throne room?
Logged
"Only two things are infinite, the universe and human dwarven stupidity, and I'm not sure about the former." Albert Einstein Urist McStein

Dorfimedes

  • Bay Watcher
  • The Human Baby is caught in a burst of flames!
    • View Profile
Re: Burrow improvements
« Reply #4 on: May 26, 2012, 09:06:44 pm »

Quote
Personal meeting halls
This is kinda oxymoron.

Instead of personal meeting halls dwarves should hang out in their quarters (and I thought it's already works this way)
Nomenclature doesn't bother me, it's just a place for dwarves to do... Whatever it is they do when they're not working. I already give my dwarves personal quarters to get them to stay near an area, but. We already have this in a small way unless I'm mistaken, if you put a meeting hall in a burrow the dwarves using it will go there, the problem is when other dwarves use it and you don't want them to. Reading over it, it's probably redundant if the burrow decides who can access it, but I think it was worth pointing out how being able to forbid burrows would make managing meeting halls much easier.

Forbidden burrows have been suggested before, but that doesn't matter so much to me. Not sure how Access is different from just having dwarves not assigned to a burrow, though. Do you mean that Assigned Burrows only allow dwarves who are assigned to them? Because that I would totally agree with.

Another thing I'd like to see is some more automation in assigning dwarves to burrows. Maybe a mini-noble in the form of a Councillor, Administrator or District Mayor, available once the fort's turned into a Barony. Assign them to the burrow, give them an office, and they'll wander around recruiting dwarves to live and work there.
Access isn't any different, actually, since it's the default. I was just contrasting it with forbidden I suppose. I *sort of* meant what you're getting at. Assigned is just the ordinary behavior that happens when you add a dwarf to a burrow, but I think it would be good if there was a toggle switch you could press to forbid/unforbid every dwarf that isn't assigned to it. This may have come up before, but I think it bears bringing it up again because burrows could be so much more powerful!

The auto-burrow thing sounds like it would be very handy if/when we're able to retire fortresses, you could set them up to make sure the fort functions about the way you were managing it. It may be useful while you're still playing it but I'm having a hard time envisioning how exactly it would be implemented. There's an arc that's going to be covering things like standing orders, automation and such, I think it would mesh well with that.
Logged
"It seems that perfection is reached not when there is nothing left to add, but when there is nothing left to take away." -Someone who has never played DF.

The Human Baby has died in the heat.

Waparius

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #5 on: May 26, 2012, 09:35:59 pm »

Quote
The auto-burrow thing sounds like it would be very handy if/when we're able to retire fortresses, you could set them up to make sure the fort functions about the way you were managing it. It may be useful while you're still playing it but I'm having a hard time envisioning how exactly it would be implemented.

Actually now I think about it it's pretty similar to one of NW_Kohaku's ideas in their Class Warfare thread - assign an area to a noble for management. Not sure if it was fleshed out in that thread, but IMO, the easiest way to start this one off is, after you've built workshops, assigned quarters et al, the administrator assigns enough dwarves to fill all of your bedrooms. Professions are picked based on what workshops you have, going from most specialised to least (ie, dwarves with all labours enabled would be assigned last).

...

Actually, there should be options for your administrator - assign dwarves by Profession, Religion, Clan/Family (it would be nice to setup a little family woodcarver business in an out-of-the-way corner of the fort, or the sprawling stalactite towers of Clan Raash, all linked up with bridges) or even class to create non-assigned Noble or Legendary Worker districts. If the Guildmaster or High Priest arrives, they may demand to be put in charge of the relevant burrow. In addition there could be an Auto-Assign function, which picks based on workshops and tries to put dwarves of the same religion or clan together as well.

In this case, the Burrow should be more of a, "use the buildings here and nowhere else" zone than a "DO NOT LEAVE, CITIZEN" zone.
Logged

JasonMel

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #6 on: July 10, 2012, 08:02:39 pm »

I, too, get frustrated by the occasional need to create a burrow encompassing the whole world, punch a hole in it, and then assign a hundred-plus dwarves to it, in order to keep all but a few out of the hole.

Since simplicity seems key to a good suggestion, what I propose is to just allow the user to <f>orbid the burrow itself, from the burrow list, the same way you'd forbid an item. A dwarf cannot take jobs from a forbidden burrow unless he or she is assigned to it.

Where a normal and a forbidden burrow overlap, and a dwarf is assigned to the normal but not to the forbidden, the lack of forbidden burrow assignment takes precedence.

A forbidden burrow used as a civilian alert could cause all civilians to leave that burrow.

You could even put curly braces around the burrow name and make it display on the map in lime green by default instead of the usual cyan.

If you need to keep only a few dwarves out of someplace, you'd still have to either add almost everyone to a forbidden burrow, or add those few to a whole-world-minus-some burrow. You could instead allow the user to forbid individual dwarves from a normal burrow, but the ideas are mutually exclusive, since otherwise you could end up with forbidden dwarves in a forbidden burrow, which makes no sense. Although a key to forbid all dwarves at once approximates the forbidden burrow concept, it's hard to see how it would work with the next parts of my proposal:

-----
Another thing that could be done is to merge pastures with burrows, adding animals to a burrow the same way you currently add animals to a pasture, with the <N> list (currently living on the <i> zone screen). Animals would only remember their most recent burrow assignment, while dwarves can be assigned to many. This, combined with forbidding of burrows, will keep animals out of an area but let them roam free elsewhere. Animals should probably not be allowed to be assigned to forbidden burrows, eliminating the potential confusion when animals due to be milked, trained, etc. are assigned to one, but no dwarves. If animals sometimes get too curious about a forbidden burrow, such as occasionally when following an assigned creature in, it creates a job to lead the inquisitive animal back out again. If that's too computationally expensive, make animals respect forbidden burrows at all times, overriding following behavior.

-----
Still another nice change would be to color assigned dwarves and animals the same color as the burrow when highlighting or selecting that burrow from the burrow list, for a visual indication of who is assigned and who isn't. For forbidden burrows, you could highlight all unassigned dwarves and animals in forbid-green, the same color as the forbidden burrow.

-----
Example problem:
Assign one dwarf to dump all battle detritus from an area into a nearby dump zone, rather than having to either wait for as many dwarves to arrive as there are pieces of junk or micromanage job assignments until the whole job is done.
Current solution:
Create a burrow as big as the world, remove the messy area from it, and assign every dwarf but one to it. Optionally, create a second burrow covering only the mess, and assign the cleanup dwarf to it, preventing that dwarf from taking other jobs.
New solution:
Create a burrow, forbid it, and assign that dwarf to it.

Example problem:
Keep animals such as dogs and cats out of the underground tree farm, allowing them to hunt freely outside it but not trample the fragile saplings within.
Current solution:
Create dog/cat "pastures" everywhere you want these animals to be allowed, re-assigning them as necessary for complete coverage.
New solution:
Create a burrow, forbid it, and assign forestry dwarves to it (preferably ones who don't own a lot of animals). Optionally, create a second, whole-world burrow and assign those dwarves to that, too, allowing them to take jobs elsewhere if desired.

Example problem:
Keep nobles from commingling with commoners (which Dorfimedes mentioned above; I don't do this).
Simplest current solution:
Create a whole-world burrow, remove a portion just for commoners, and assign all nobles to it. Then, create a second, overlapping, whole-world burrow, remove a portion just for nobles, and assign all commoners to that.
New solution:
Same as above. Two forbidden burrows, one in the nobles-only and one in the commoners-only area, would be an inferior solution in that it would not allow jobs in the large neutral zone. This is the case for which individually forbidding dwarves would create a more elegant solution.
Logged

crazysheep

  • Bay Watcher
  • [PREFSTRING:fluffy wool]
    • View Profile
Re: Burrow improvements
« Reply #7 on: July 10, 2012, 08:14:59 pm »

Personal meeting halls
Meeting halls should have similar functionality when placed in burrows. This would be a good way, for instance, to get your legendary mason to stay near his workshop, or your nobles to only converse with each other and gain social skills in the Forbidden Palace to prevent tantrum spirals when they die. There should be an option to toggle whether meeting halls are used for all dwarves with access, or only those assigned to the burrow. Basically, an exclusive idle zone.
Personal meeting halls/exclusive idle zones can easily be done with statues - construct statue, make it into a statue garden, and then assign it to a dwarf. This is suggested in the wiki as well.
Logged
"Don't be in such a hurry to grow up, for there's nothing a kid can't do."

Bohandas

  • Bay Watcher
  • Discordia Vobis Com Et Cum Spiritum
    • View Profile
Re: Burrow improvements
« Reply #8 on: July 11, 2012, 08:18:19 am »

As always, I am in favor of forbidden burrows.
Logged
NEW Petition to stop the anti-consumer, anti-worker, Trans-Pacific Partnership agreement
What is TPP
----------------------
Remember, no one can tell you who you are except an emotionally unattached outside observer making quantifiable measurements.
----------------------
Έπαινος Ερις

JasonMel

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #9 on: July 19, 2012, 05:52:22 am »

Also, there should be a screen somewhere showing a list of all burrows a dwarf is assigned to, preferably accessible from unit <v>iew.
Logged

tenshi99

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #10 on: November 15, 2012, 09:35:26 am »

i want have several independent active burrows :'(
good to have add option in "add citizens to burrow" are "ignore" so they maybe included(whatever of alerts), not included(but all included now if burrow active on alerts) and ignore this burrow completly(even if it active on alerts).
this make possible several independent active burrows. now its possible only by adding each personaly without activation on alerts page. its ok when no need to press "emergency" button but otherwise its suck
Logged

Starver

  • Bay Watcher
    • View Profile
Re: Burrow improvements
« Reply #11 on: November 15, 2012, 10:45:45 am »

To add to/refine the OP, I've often wished for an easier way to manage certain situations.  When you have multiple burrows (say one for eating and drinking and one for mining (certain raw materials/expanding a certain excavation/exploring down a particular way)) you might wish to assign a dwarf to the mining one, and also the eating and drinking one.  Which creates problems if you're remove them from one and not the other (ends up confined to the food-hall and no longer capable off doing work, for one example.  Assigned to work and no 'support' areas in the other, which can be problematic although eventually most dwarves will break the restriction due to need).

Currently, I tend to go for "exploratory mining+food+drink+bedrooms" in a single burrow, and other parallel versions that are "<foo>+food+drink" at the very least (unless I'm trying to get an important (shortish) job done without any interruptions), thus anyone assigned to it has all their other needs given.

However, one other way of dealing with this is to have super-burrows, defined in area as being "the area from this burrow (food+drink+stuff) plus the area from this burrow (whatever the work-related restriction is)".  Assigning to the super-burrow alone is necessary.  Also, if any of its sub-burrows are changed, it thus gets changed automatically.  Useful if you have any number of super-burrows referencing the food-storage area, you change (or expand, or move) the food-storage area and only have to change the food-storage burrow, not all the rest of them.  (Either a special type of "burrow group" or just allow each burrow to be defined by painting and/or "whatever is painted by these further named burrows"... At the simplest level there'd be no problem with ultimately circular references, as it's purely additive, in a logical-OR manner, with each member of a given 'cycle' of dependencies ending up being effectively equivalent with the full set of coverage, without any continuing overheads if coded without fuss.)

The other way is to have a "non-exclusive assignment" (needs a better name, but I envisage it as perhaps sort of in place of the "Access" designation, as given above).  Assigning all dwarves to this level for the food/etc burrows means that they aren't actually restricted there, because every burrow they are 'members of' is of this level, and it doesn't count.  But assign any dwarf to a job-specific one, which is explicit and unconditional, and all the non-exclusive areas they also have are also taken into account when creating the effective area of assignment.  Add another full-assignment burrow and it's two definite burrows painted down plus all applicable non-exclusive areas, and remove them from either full-burrow and it's now the other, plus the auxiliary areas.  De-assign from all full-burrows and the "also a member of..." burrows revert to being of no consequence, until you put them in a fuller-one.


They're messy to explain, but simple boolean summation (and perhaps negation, if you have Forbid options in burrows, which might need thought about precedence in the case of same-tile conflicts, and might cause problems with cyclical referencing) insofar as the code is concerned.
Logged