View Issue Details

IDProjectCategoryView StatusLast Update
0009740Dwarf FortressDwarf Mode -- Jobs, Generalpublic2016-06-13 11:11
ReporterVeroule Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformVirtual Box x86_64OSWindowsOS Version8.1
Product Version0.43.01 
Summary0009740: Conditional work orders only look at existence of items, not availability
DescriptionI created work orders at smelters, kitchen, 2 farmers workshop, and 4 still. Each work order is conditioned on required items.
The kitchen constantly produces a cancellation messages because I have a stack of tallow forbidden. Correction: observe the forbidden state when checking for availability.
The stills regularly produce cancellation messages because pig tails are not allowed to be brewed. Correction: check the cook/brew settings when determining availability.
The smelters produce cancellation messages because the ores are not in the special stockpile that supplies them. Correction: check to make sure that specific workshop can access the item.
A farmers workshop produces cancellation messages when the last pig tail is being processed in the other workshop. Correction: check the tasked flag to determine availability.

There are probably other edge cases I have not yet found.
Additional InformationIt might be fewer clock cycles and simpler to block cancellation messages when an item required by a conditional work order turns out to not be available. With such a method any required item that is not part of the conditions should produce a message. For example I removed the barrel requirement from my brew job conditions; if a cancellation occurred for lack of barrel I would want to be told, but do not want to be told about lack of plants since that is the required condition that I expect the program to handle.
TagsNo tags attached.

Relationships

related to 0009741 new Job Manager - Perpetual orders with conditions never stop 

Activities

Veroule

2016-05-11 00:52

reporter   ~0035129

Last edited: 2016-05-11 00:53

Additionally when a work order has passed the conditional checks and gets set to "active", it will remain active permanently. In other words, after completing a job the work order does not go back to the "checking" state; and after failing and cancelling the work order does not go back to the "checking" state.

user11

2016-05-11 15:14

  ~0035140

I'm relating this to 0009741 for now; if it turns out that it would be more "complete" to wrap this one into that one, let me know.

Bumber

2016-06-09 23:09

reporter   ~0035390

Last edited: 2016-06-09 23:13

Hauling tasks (tasked bins), at least, seem to affect the count. Hospital-stored (in chests, haven't checked in-zone stockpiles) items, too.

Perpetual orders is a different issue. Those never stop because the check is made every time an infinite-sized batch is done.

Bumber

2016-06-13 00:03

reporter   ~0035399

Claimed bolts and tasked items in general also seem to be taken into account.

chaosvolt

2016-06-13 11:11

reporter   ~0035400

Hmm. It seems like suppressing cancellation messages for when required items exist but are unavailable would be a logical improvement for conditional work orders. Only have the messages occur if the previously-available items get used up, forbidden, or tied up in construction?

Granted, unsure how complex that would be to implement.

Add Note

Note

Issue History

Date Modified Username Field Change
2016-05-10 23:38 Veroule New Issue
2016-05-11 00:52 Veroule Note Added: 0035129
2016-05-11 00:53 Veroule Note Edited: 0035129
2016-05-11 15:13 user11 Relationship added related to 0009741
2016-05-11 15:14 user11 Note Added: 0035140
2016-06-09 23:09 Bumber Note Added: 0035390
2016-06-09 23:10 Bumber Note Edited: 0035390
2016-06-09 23:12 Bumber Note Edited: 0035390
2016-06-09 23:13 Bumber Note Edited: 0035390
2016-06-13 00:03 Bumber Note Added: 0035399
2016-06-13 11:11 chaosvolt Note Added: 0035400