Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: What's the best way to have dwarves fulfill crafting needs?  (Read 7105 times)

Conor891

  • Bay Watcher
    • View Profile

I'm trying to figure out what the best way to do this is without extreme constant micromanagement.

For example, my hunter started getting unhappy thoughts from being unable to practice a craft, so I switched on one of his crafting labors so he can fulfill that need. He doesn't return to hunting though and instead just continues to help fulfill the work orders we have.

I just want him to only to craft something every now and then so he can be happy, but having to turn labors on and off for dwarves constantly in order to have them return to their main assigned labor just doesn't seem at all practical.

Is there anything I can do to make this better?
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #1 on: July 23, 2018, 04:23:59 pm »

It's a fair bit of micro management, but you can set up workshop profiles such that the "real" workshops only accept the "real" craftdwarves (by name or min skill level) and "fulfillment" workshops by a max skill level (or by name). In the extreme case you can have one shop per dorf. You'd then place orders only in the appropriate shops (which means you can't use the manager for production orders).
Logged

Ninjabread

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #2 on: July 23, 2018, 04:42:28 pm »

3 possible solutions that I can think of:

1) Assign them a crafting labour that your fort does not produce the materials for. Settled away from clay? make them a potter. No sand? Make them a glassworker. When appropriate caravans arrive, purchase the materials you need for the labour, and make some work orders for the labour. You should now have seasonal (excluding winter) crafting need satisfaction for as many unfulfilled dwarves as you have appropriate workshops/materials, whichever number is lower.

2) If you have a manager doing their thing, you should be able to set work orders to repeat upon completion/daily/monthly/seasonally/yearly, and you should be able to set other conditions that need to be met before the work order is active (e.g. you have a surplus of the appropriate ingredients, you don't have a ridiculous amount of the end product, e.c.t.). Do this and crafting will just be a thing people go do now and then when needed, rather than something that consumes their entire lives, meaning they should have more time to do other tasks. Give them a labour that you need doing regularly, but not frequently, e.g. make enough clothes to cover your pop cap at the start of every year to replace the worn stuff.

3) Assign them to a crafting labour that gets it's materials from their non-crafting labour. For your hunter, maybe make them a tanner?
Logged

Rafatio

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #3 on: July 23, 2018, 04:50:35 pm »

I'm currently trying the idea to kick them out of the workshop with different skills. I fill the queue with repeat jobs, each using a different skill than the previous one, make a wax craft, quire, bone thing, wood thing... and making sure the hobby crafters each only have one of these skills enabled. This way the dwarf is forced to find something else to do after his one crafting, and I hope they're busy next time "their" job comes up so that multiple i.e. bonecrafters can use the same shop.

Thats the theory anyway, still early days so I can't say how it works, can think of a few things that can go wrong. Mostly a dwarf being busy too often when his speciality comes up, worst case I need a profiled workshop for each set of crafts. Still better than one per person for the price of more item spam.
Logged

Miles_Umbrae

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #4 on: July 23, 2018, 05:43:09 pm »

You could set up a crafting-workshop allowing one named dorf of each crafting skill, for that particular workshop you then set a seasonal order for at least one craft from each crafting skill.
This way a stone-crafter, a wood-crafter, a bone-crafter, and a leather-crafter can all share the same workshop.
Set up multiple such workshops with connected orders for larger needy populations.
(Adjust amount of crafts, material, and how often orders get repeated as needed)
« Last Edit: July 23, 2018, 05:45:21 pm by Miles_Umbrae »
Logged

Rafatio

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #5 on: July 24, 2018, 08:40:54 am »

Has any science been done which tasks fulfill "something creative" vs. "practicing a craft"? There is considerable but not total overlap.
Logged

feelotraveller

  • Bay Watcher
  • (y-sqrt{|x|})^2+x^2=1
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #6 on: July 25, 2018, 07:29:10 am »

From the Talk page on DFwiki (http://dwarffortresswiki.org/index.php/DF2014_Talk:Need)

Quote
(r) = reaction in raws

Satisfied by cooking, gem cutting, dyeing, constructing animal trap, weaving thread into cloth, assembling instrument from parts, making rock blocks, making wooden blocks, making clay bricks (r), making steel (r), milling seeds/nuts to paste.

Unsatisfied by plant collecting, sowing seeds, smoothing, engraving, web collection, smelting ores, the 'Mill plants' job.

Note -- smelting an ore does not satisfy, but making steel does. Any reaction in the raws seems to count, even if it's missing reagents, products, or an associated skill.

Could definitely do with 'scientific' confirmation, completion and copying over to the Need page proper.  Any volunteers?  :D
Logged

Fleeting Frames

  • Bay Watcher
  • Spooky cart at distance
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #7 on: July 25, 2018, 08:04:45 am »

Hm, noticed somebody had added that one cannot fulfil wander on 1x1. Definitely not true, just gathered plants and sent need into unfettered after a single pick in 43.03. E: Hm, seems not so in 44.12. When did it change, hm...E2: I'm silly. Those dwarves didn't need to wander. Importing the 43.03 save, has gathering plant fulfil the need alright on 1x1. Alright, managed to fulfil it with fresh save too.

That said, I don't believe there is a complete list of all jobs possible in-game anywhere.
« Last Edit: July 25, 2018, 08:56:30 am by Fleeting Frames »
Logged

billw

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #8 on: July 31, 2018, 07:16:24 am »

You could set up a crafting-workshop allowing one named dorf of each crafting skill, for that particular workshop you then set a seasonal order for at least one craft from each crafting skill.
This way a stone-crafter, a wood-crafter, a bone-crafter, and a leather-crafter can all share the same workshop.
Set up multiple such workshops with connected orders for larger needy populations.
(Adjust amount of crafts, material, and how often orders get repeated as needed)

I did this but even simpler, just one crafting workshop for each dwarf that was complaining a lot (the new needs view in DT being very helpful here), set to not accept general orders and have one order to craft a single stone craft once per season. The main crafting workshops are set to only allow good crafters so I can enable stone crafting on everyone without them all making junk. I am considering instead just having a bunch of workshops set up to generate one order per season, with an inverted limit on the skill level (i.e. only <professional or whatever, where my main workshops will be >= professional), then let them sort themselves out. Hopefully it would get enough coverage that most dwarves would be happy?
This really needs a dfhack script I think, I might read the docs now.

/ edit
Had a quick look. What I am thinking is: user creates a crafting workshop (or many), and gives it a name that the script can pick up on, then every x amount of time the script will assign one dwarf (who has the need) to the workshop, enable their crafting labor, and create a workshop job for them. Once it is complete it will reset their crafting labor and remove them from the workshop.
« Last Edit: July 31, 2018, 08:01:41 am by billw »
Logged

Fleeting Frames

  • Bay Watcher
  • Spooky cart at distance
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #9 on: July 31, 2018, 08:31:03 am »

The one I've been pondering has been auto-assign buildings, workshops, etc. to dwarf when they're in their private bedroom - so you could do that "workshop for each dwarf" or "haul a craft for acquiring things need", but with less micro.

Alas, limiting a plant gathering zone to 1 dwarf doesn't prevent others from picking plants there.

Also, you can disable the labour right after they pick up the job - autolabor uses this. Using this, you can also skip the part of creating job in workshop (as long as you restrict your skilled dwarves out of it) by using a repeating job.

Miles_Umbrae

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #10 on: July 31, 2018, 04:44:40 pm »

Haven't looked into needs/desires at all myself, but I was of the belief that it was usually connected to the individuals preferred material or some such??
Logged

Fleeting Frames

  • Bay Watcher
  • Spooky cart at distance
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #11 on: August 01, 2018, 03:12:35 am »

Not material, but values and personality (and available religions). Since dwarf civs have no variance in values (unlike human ones) and since people only slightly deviate from their civ on that front it means needs are relatively uniform, i.e. nearly everyone wants to stay occupied, have a bit of excitement, help somebody and to slightly lesser extent craft something, party, etc. while it is much rarer a dwarf who needs to wander, make romance, see animals or great beasts, examine themselves, hear eloquence or uphold tradition.

Thus, if you have everyone craft a craft twice per year, only few of those jobs were not needed, which means paying attention to dwarves personality isn't....needed.
« Last Edit: August 01, 2018, 03:15:13 am by Fleeting Frames »
Logged

billw

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #12 on: August 01, 2018, 07:59:32 am »

I made a first pass at a script to automatically enable a labor based on needs and focus thresholds.
It would need to be set using the repeat command to run every day or something like that to update the labors.
It allows you to ignore certain dwarves based on if they have a specific labor enabled (e.g. you could use alchemy or waxworking or some other useless labor as a flag).

Command looks like this:
craft-need -need_threshold <need_threshold> -focus_threshold <focus threshold> -need <need id> -labor <labor id> [-ignore_labor <ignore labor>] [-debug]
e.g.:
craft-need -need_threshold 2 -focus_threshold \-200 -need 5 -labor 1 -debug -ignore_labor 72

If you just type in craft-need without any params it will show you the ids for needs and labors, and you can use Dwarf Therapist to work out the correct thresholds.

https://gist.github.com/billw2012/ba94cf9ee8a55bddea3b6c4c26800116

I will improve this as I use it, e.g. allowing a less intrusive way to flag who to ignore, etc. If anyone has any ideas of improvements let me know.
Logged

Rafatio

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #13 on: August 02, 2018, 07:59:06 am »

Not crafting, but I just noticed almost my whole fort being green for (currently no) fighting need. A flock of bluejay people caused some cancellations while everyone was swarming outside to haul stuff and despite not generating a single combat report it must have counted as fighting. Occassionally spooking people with wild creatures should be easy enough to engineer and would avoid sending crappy need fulfilment squads into actual fights.
Logged

billw

  • Bay Watcher
    • View Profile
Re: What's the best way to have dwarves fulfill crafting needs?
« Reply #14 on: August 02, 2018, 10:59:03 am »

I'm imagining a chained beast of some kind in the middle of the dining room surrounded by bridges and a timer to occasionally lower them, sending poetry readings into chaos.
Logged