Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Hire N leatherworkers task / Dwarven HR management  (Read 566 times)

Doren

  • Bay Watcher
  • On closer inspection, that dog is a dwarf
    • View Profile
Hire N leatherworkers task / Dwarven HR management
« on: April 19, 2016, 05:21:38 pm »

Hi.

I've seen some suggestions on improving DF's labor management on this board, but most of them are sort of complicated or involve features that are still disabled (like Guilds or Economy).

Here is just a little suggestion of mine, that will not require much coding, but could improve mid- to late- fortresses' gameplay, when it comes to managing dozens of dwarves and dozens of jobs.
Hopefully, even DT will lose its necessity and become more of a cheat utility rather than crucial part of intreface.

Also it fits the current Toady's development arc very well.


There's what i want to change:

1. Add new option/set of options to the jobs management tab under (j)-(m) key that will regulate fortress'es quantities of active labors
   1.1. "Hire N dwarves for specific labor" task for manager, that will enable designated amount of jobs for idling dwarves. (i.e. "Hire 3 Leatherworkers", "Hire 10 Strand Extractors", "Hire 50 Refuse Haulers");
   1.2. "Fire N laborers". Opposite of previous, obviously. (i.e. "Fire 2 Hunters", "Fire 20 Builders", "Fire 999 Fisherdwarves");
   1.3. "Recruit N peasants". Like above, but instead of enabling labors manager will assign most useless, youngest, last immigrated or just idling dwarves to vacant military positions.
   1.4. "Recruit N warriors". Same, but recruit's combat skills and equipment settings of squad vacancy are taken into account (i.e. "Recruit 9 Hammerdwarves").
   1.5. "Retire N warriors". Dwarves that are severely wounded, eyeless, armless, pregnant, have an infant, or just too old are dismissed up to desiganted amount.

Basically, this first suggestion would be enough for the first update, if all labor designations are executed automatically once they are issued. Here is what i think this could look like:



On other hand, these mechanics could be improved further, so here goes suggestion number two.

2. Change the Urist McManager's hiring behaviour so that new tasks described above become actual jobs to be done by him step by step.
   2.1. When Manager sees new hire/recruit task (i. 1.1 and 1.4), he needs to approve it at his office first. Once it is done, a green mark appears next to this task at manager screen, just like it works right now with ordinary "Make 30 barrels" tasks. The approved vacancy remains untouched for an ingame week or so to gather applicants and to be revisited by Manager later.
   2.2. Every day every idler checks the whole list of labor demands and picks one job he likes the most regarding his skills and traits, maybe preferring joyful jobs (i.e. minecart operating) over disgusting ones (i.e. tanning, lye making or burial), or he picks all of them if he didn't have a job for too long, or doesn't pick any if he is a legendary bummer. Idler should not nominate himself for a job if he already has the respective labor enabled, he should check other vacancies. Also members of militia or guard should ignore pending recruitment, because they are already recruited, obviously.
   2.3. When a week passed, Manager checks if there are enough candidates accumulated for the job. If not, he prolongs the recruitment campaign by another week. There should be a chance for Manager to approve all available applicants immediately, just in case if player asked for too many jobs and there will never be enough applicants, so that applicants will not be waiting forever because of Manager being stuck repeatedly looking for more.
   2.4. But if there is more candidates than vacant positions, the competition phase takes place. Manager attends meeting at his office with all of the candidates one by one. If some candidates didn't come for the meeting for too long, they are denied without examination. After that, Manager makes a decision based on folowing criteria, one by one.
      2.4.1. If the vacant job requires a skill (i.e. clothesmaking) the dwarves that have at least Novice level in this skill are considered first. If there is more skilled dwarves than vacancies left, then all unskilled dwarves are denied. After that suitable ones are ordered by level or their skill and the least skilled dwarves are also denied. (i.e. I need 3 more clothesmakers, and i have 1 legendary. 2 competent, 1 novice and 10 dabbling clothesmakers idling in the tavern. In this case Manager will ignore 10 dabbling ones, compare 4 skilled dwarves and approve 1 legendary and 2 competent, because their skill is higher). Otherwise all skilled applicants are approved and if there are still vacancies left for unskilled dwarves, or job doesn't require skill at all, Manager does next test.
      2.4.2. Applicants with no skills higher than Proficient considered first. The dwarves with least total skill levels are most preferred. Others are either denied or tested further.
      2.4.3. If there are militia members applying, Manager denies them. It is better if they stay training at barracks, and don't waste time doing civilian stuff. If there is still more vacancies than civilians, then all of civilians are approved and militia tested further, otherwise all of militia are denied and civilians are tested.
      2.4.4. Manager looks if there are his spouse, children, parents, siblings, other relatives or friends in the remaining list, and approves them.
      2.4.5. When all of previous tests failed, remainder of candidates is arranged younger to older and youngest ones win the left over jobs.

3. Firing and retiring might be overhauled in a similar way, but i haven't thought it out yet.


Is my suggestion reasonable or at least understandable? Maybe it has some flaws, and if it does, let me know, please.

Oh, and by the way, eternal voting link is broken. Is there still such page or it is gone forever?

Dozebôm Lolumzalìs

  • Bay Watcher
  • what even is truth
    • View Profile
    • test
Re: Hire N leatherworkers task / Dwarven HR management
« Reply #1 on: April 20, 2016, 11:27:25 pm »

Seems to be a good suggestion, though the method of assigning workers could be improved (2.4.stuff).

To go to the eternal voting thing go here.

(In general, most old links are broken. bay12games.com/forum/stuff -> bay12forums.com/smf/stuff to fix them.)
Logged
Quote from: King James Programming
...Simplification leaves us with the black extra-cosmic gulfs it throws open before our frenzied eyes...
Quote from: Salvané Descocrates
The only difference between me and a fool is that I know that I know only that I think, therefore I am.
Sigtext!