- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
Talk:Need
The info in the new edit under diversity concerning distraction value increase is incorrect.[edit]
A dwarf with need level 1 roughly needs to fullfill the need every two years, with need level 2 every year, with need level 5 every six months and with need level 10 every 3 months (except alcohol) otherwise the need will be displayed in yellow in the overview screen (and have a distraction value of -10000 reached). The need fullfillment drops happen every x ticks (and happens multiple times a day) after the need was last fullfilled. The drop is 1,2,4 and 8 points, the interval at which the drop happens might depend on the current distraction value for that need. For the need "be with friends" the verification is straightforward as the distraction value (for that need) and the current tick of the current year only needs to be compared with the last meet values (last meet year and tick) in hf_visual_relationships of all friends of that dwarf - at least if the dwarf was formerly a "void dwarf" or at least does not have any friendships created during world gen. That verification will also refute the current contents on the wiki page concerning the 13 point drop per day and roughly 800 days for level 1 and 400 days for level 2 to reach distraction value of -10000 (starting from 400).87.143.64.207 11:02, 18 June 2026 (UTC)
- Thanks for flagging this. The information added was based on observations of long-term unmet needs in an early game fortress (rather than a dedicated test game), using Dwarf Fortress 53.14 and Dwarf Therapist 42.1.8 (with updated memory layouts). Upon embark, all dwarves start with a distraction value of 0 for all needs. So by waiting a fixed time period then pausing the game, it should be possible to work out the long-term rate at which this distraction value declines. Unfortunately, I made two significant errors: embarrassingly, I misread the dwarven calendar, thinking I'd paused after 4 months when it was really 3 months, and I also assumed that the rate of decline would be linear, rather than varying based on the current distraction value as you've suggested. Having collected a bit more data on friends and family needs, as well as starting to collect data on crafting needs (which I hadn't looked at previously as they need to be tracked more frequently), here's the simplest model I can come up with that explains all my observations:
- Needs’ distraction value drops by 52/3 points per day when they are > 0, and (52/3) x [need weight] points per day when they are ≤ 0
- So any unmet need, starting at +400, should take 400/(52/3) = 23.08 days to drop to 0
- For crafting needs (and possibly others), the rate of decrease appears to be halved for dwarves in the middle of satisfying that need
- Hence a need with weight 1 will need to be satisfied every 10400/(52/3) = 600 days ~ 21.4 months to not drop below -10000
- Hence a need with weight 2 will need to be satisfied every 5400/(52/3) = 311.54 days ~ 11.1 months to not drop below -10000
- Hence a need with weight 5 will need to be satisfied every 2400/(52/3) = 138.46 days ~ 4.95 months to not drop below -10000
- Hence a need with weight 10 will need to be satisfied every 1400/(52/3) = 80.77 days ~ 2.88 months to not drop below -10000
- Lastly, the need to drink alcohol, starting at +400, should take 300/(52/3) = 17.31 days to drop to +100, the threshold that triggers dwarves to drink again. This implies that dwarves should drink 336/(300/(52/3)) ~ 19.4 times a year, or slightly less after accounting for the fact that dwarves don’t instantaneously satisfy their need to drink.
- However, I'm loath to dump all that into the wiki, particularly given I've already made mistakes with the previous formula. Instead, I'll just copy over the rough estimates you gave (which are exactly what I was looking for when I started this), as well as pinging User:Putnam3145 just in case she might have anything to add. (Sorry Putnam, I know you aren't around here that often, and there's no obligation to answer, but if you already know the formula used to calculate the distraction value of needs it would be very helpful to be able to add to the wiki.) Thanks again, Quinquennial (talk) 09:50, 20 June 2026 (UTC)
- When I see numbers like 52/3, I suspect a misinterpretation of the results, so I dug into a disassembly of version 52.05 to try and find the actual logic responsible for this. This is what I found:
- Every need has a "level" and a "severity" (known to DFHack as "focus_level" and "need_level")
- When needs are advanced, ones with a positive level are decremented by 1, otherwise they are decremented by the severity (to a minimum of -200000)
- Distraction is calculated as a numerator and a denominator (known to DFHack as "current_focus" and "undistracted_focus")
- Needs are grouped by "level" to determine their effect on distraction: [-200000 to -100000, -99999 to -10000, -9999 to -1000, +100 to +199, +200 to +299, +300 and up] yielding adjustments of [-3, -2, -1, +1, +2, +3] respectively
- If the sum of adjustments is positive, the distraction numerator is set to
((N * 3 - SUM) * (N * 4) + (N * 6) * SUM) / (N * 3)and the denominator is set to(N * 4) - If the sum of adjustments is zero, the distraction numerator and denominator are both set to 1
- If the sum of adjustments is negative, the distraction numerator is set to
((N * 3 + SUM) * (N * 4) - (N * 2) * SUM) / (N * 3)and the denominator is set to(N * 4) - In the above, "SUM" is the sum of distractions, and "N" is the number of needs the dwarf has
- Not sure exactly how that compares to what you found above. --Quietust (talk) 12:49, 20 June 2026 (UTC)
- When I see numbers like 52/3, I suspect a misinterpretation of the results, so I dug into a disassembly of version 52.05 to try and find the actual logic responsible for this. This is what I found: