Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Bug? Mechanic jobs are not getting done (solved!)  (Read 584 times)

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Bug? Mechanic jobs are not getting done (solved!)
« on: November 01, 2016, 07:54:00 pm »

This happens usually after a siege, that my dorfs just won't do any jobs that require Mechanics (maybe other jobs but I haven't noticed). The don't cancel the jobs, but even if they are idle (yellow no job) they won't try to do them.
Sometimes I can fix that by burrowing and unburrowing, but I'm not sure if they are related.

« Last Edit: November 02, 2016, 07:08:30 pm by Libash_Thunderhead »
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #1 on: November 01, 2016, 08:59:53 pm »

Try cancelling the job, waiting a few game ticks of normal play, then issuing again.
Logged

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #2 on: November 01, 2016, 09:42:29 pm »

No, they don't take the job. I just want to remove some traps.
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #3 on: November 01, 2016, 10:01:43 pm »

I mean if the mechanics get hung up from a race condition, removing all jobs from the pool will force them to idle correctly, allowing them to accept a nonhung job, so they can do it.

Compare to the beekeeper bug of yore; multiple keepers try to harvest the same wild hive. Naturally, only one can succeed. After that hive is gone, the job still tries to task that hive, and the beekeeper stands around on a perpetual smoke break.

Removing the job completely at the hive forced a re-eval of available hives, and would unstick the keeper.

If something similar is happening here, completely removing the job then letting it reissue may unstick your mechanics.
Logged

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #4 on: November 01, 2016, 10:10:35 pm »

Well, I did. I only has one removal job now, but no one tries to do it.
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #5 on: November 01, 2016, 10:19:22 pm »

Hmm..  Could try toggling the labor on and off again I guess.
Logged

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #6 on: November 01, 2016, 11:35:05 pm »

OK, I fixed it.

I created a new 3x3 small burrow and let all dwarves in, after a while I released them and they began their jobs.
Logged

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #7 on: November 01, 2016, 11:46:17 pm »

Ah, it is broken again. Do I have to burrow them every time I want the mechanics to do something.
 ::)
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #8 on: November 02, 2016, 02:50:59 am »

Are you using any DFHack work managing plug-ins? A year and a half ago I had large problems with "forgotten" jobs that was probably cause by such a plugin (building of walls that were never done, a half built paved road that remained in that state for years, and any and all kinds of jobs that just showed up in the jobs list, but were never taken up/resumed). Since then I'm staying away from such utilities.
Logged

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #9 on: November 02, 2016, 03:36:11 am »

No, I'm playing the 64bit version with graphics pack.
Logged

Sanctume

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #10 on: November 02, 2016, 12:51:19 pm »

Check available empty cages. 
Check available mechanisms. 
Check mechanic labor is enabled. 
Check animal stockpile space, enabled for empty cages. 

Check valid path to job site.
  no raised bridges blocking the way?
  no smoke or magma blocking the way?

Does burrow restriction apply to traps? 
  i.e. stone stockpile only used for stone traps?
  same for mechanism and empty cages burrow for placed cage traps?

Libash_Thunderhead

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done
« Reply #11 on: November 02, 2016, 07:06:53 pm »

Oh, I think I found the problem.
I turned off job cancellation announcement.
They all tried to load cage traps but there's no empty cage! :o
Other mechanics related jobs have lower priority for some reason that they never get done.

Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Bug? Mechanic jobs are not getting done (solved!)
« Reply #12 on: November 03, 2016, 03:38:08 am »

Cancellation spam blocks everything because the cancelled job returns to the "job board" and since it was the top one for the dorf the last time, it's usually still the top one when the dorf looks for a new job after the cancellation. Jobs are selected according to some algorithm where job type and distances (as the dorf digs) are factors, but I don't think there are any weights for cancellations or age, and there's no cooling off for failed jobs either. Plug in the same sets of numbers into the algorithm again and again, and you'd get the same result again and again. There's also a "weeding" effect in that mechanic A get stuck on one cancellation spam job, while mechanic B silently performs two non spamming jobs, until getting stuck on another spammer. Mechanic C still has some job, but then gets stuck on a third spammer... Eventually all of them get caught.
Logged