Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2]

Author Topic: [R]epeated jobs and job cancellations  (Read 2157 times)

Kilo24

  • Bay Watcher
    • View Profile
Re: [R]epeated jobs and job cancellations
« Reply #15 on: March 22, 2010, 03:23:52 am »

"(r)epeat" would just repeat until you run out.
"(e)ndless repeat" would repeat forever, without being canceled.
For endless repeat, we'd have paralyzed dwarves just standing there sucking up CPU until the task becomes possible?

I'd like to put a delay in between the endless repeats to mitigate that, myself.  Maybe, if the task was impossible for a good bit of time it would encourage the dwarf to get food or take his break (and not take one later to balance it out.) 
Logged

jfs

  • Bay Watcher
    • View Profile
Re: [R]epeated jobs and job cancellations
« Reply #16 on: March 22, 2010, 06:46:47 am »

"(r)epeat" would just repeat until you run out.
"(e)ndless repeat" would repeat forever, without being canceled.
Endless repeats would still "cancel", but should not generate a cancellation message. After a repetition of an endless job fails, it'd just be put at the back of the queue again.

And yes, I'd love if you could exclude some workshops from taking part in the general work management.
Logged

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: [R]epeated jobs and job cancellations
« Reply #17 on: March 22, 2010, 07:16:44 pm »

"(r)epeat" would just repeat until you run out.
"(e)ndless repeat" would repeat forever, without being canceled.
For endless repeat, we'd have paralyzed dwarves just standing there sucking up CPU until the task becomes possible?

I'd like to put a delay in between the endless repeats to mitigate that, myself.  Maybe, if the task was impossible for a good bit of time it would encourage the dwarf to get food or take his break (and not take one later to balance it out.) 

I meant that an endless repeat would just be thrown to the bottom of the queue if it had no way of completing its task.

Of course, the possibility of a building which has no products to complete any of its tasks certainly exists (especially, say, a carpenter's workshop), so I would have to say that this would probably require a small additional amount of code:

The game would have to check for if it goes through the entire code without successfully constructing anything.  If it can't build anything in its queue, it suspends everything, or otherwise buries its jobs in the job queue, the way that looms set to automatically spin thread into cloth currently do, until one of the materials it needs once again becomes available.

It would basically be the same code as what works the current "auto-spin cloth" code, but made more general.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

Darkond2100

  • Bay Watcher
  • Intrepid Groundhog
    • View Profile
Re: [R]epeated jobs and job cancellations
« Reply #18 on: March 22, 2010, 07:58:17 pm »

There's a problem with the work manager - it doesn't allow you to select what workshops get the job orders.

I set orders for making several glass items, because I knew it would be easily completed, my guys were doing it already, and I just wanted my manager to get more experience, because I wasn't really using the manager for much of anything else at the moment.

Then I started getting job cancelation spam about not being able to make glass because of a lack of fuel.

Turns out that my magma glass furnaces were being overlooked for the regular glass furnaces I set up to collect sand when work orders came down.

Likewise, I can't use those work orders to select what craftsdwarf will make the item, so I'm better off just using a workshop's ability to select who can work there if I want to have something specific, like only a legendary mason making a statue in the workshop near the native platinum stockpile.
I solve this by having the workshops that have the magma option locked up with doors. And I only unlock them when one of my Dwarfs has a strange mood and needs a certain one because they can't use the magma workshops (all this is fixed in the new version. They'll be just as happy to use the magma workshops) The manager won't send any commands to workshops that are not accessible.
Logged
your hoard, your dwarves, and your fortress.
I prefer Hoard, Horde, and Hovel...

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: [R]epeated jobs and job cancellations
« Reply #19 on: March 22, 2010, 08:51:01 pm »

I solve this by having the workshops that have the magma option locked up with doors. And I only unlock them when one of my Dwarfs has a strange mood and needs a certain one because they can't use the magma workshops (all this is fixed in the new version. They'll be just as happy to use the magma workshops) The manager won't send any commands to workshops that are not accessible.

Well, I need that non-magma glass workshop for my sand-gathering needs.  I would rather just pass work orders that I didn't really need to make that just order sand gathering instead of "blow more glass crap that you would make, anyway" orders.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare
Pages: 1 [2]