View Issue Details

IDProjectCategoryView StatusLast Update
0000184Dwarf FortressDwarf Mode -- Jobs, Animal Handlingpublic2018-10-07 13:44
ReporterZared Assigned Touser1294 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
Summary0000184: After milking/shearing, dwarf cancels next task with "Handling dangerous creature"
DescriptionWhen milking completes, and the milking dwarf moves to a new task, that new task is immediately canceled with the message "Handling dangerous creature".
Steps To ReproduceHave a task waiting for the milking dwarf, such that no other dwarves have the appropriate task enabled (so it will still be waiting when the dwarf finishes milking).
Tagsjobs, labors, pet

Relationships

has duplicate 0006688 resolveduser11 After Milking/Shearing an animal, dwarf attempts to both Haul and take on next job at workshop leading to cancellation 
related to 0004219 new Sheriff cancels X: Handling dangerous creature 
related to 0009722 acknowledgeduser1294 Dwarf received new job while handling animal to be shorn, cancels cancels second job (Handling dangerous creature) 

Activities

DoctorZuber

2010-04-02 15:57

reporter   ~0000312

what creature are you milking?

Zared

2010-04-02 16:01

reporter   ~0000313

Just cows and horses.

Zombie

2010-04-18 19:00

reporter   ~0004156

I've noticed this, too. However, the dwarf in question tends to then do the job anyway. I've experienced this with a repeating milk task followed by a repeating make cheese task. The dwarf milks the cow, then cancels the job because the cow is apparently "dangerous" even though it's tame. Then he does the job anyway! He doesn't even drop the bucket of milk.

paladin_of_light

2010-06-11 18:11

reporter   ~0008167

If it's a construction task that the dwarf moves to, he'll suspend the job instead of canceling it. The job actually does suspend, he doesn't go do it.

ChickenLips

2010-07-09 12:58

reporter   ~0009839

In addition to canceling or suspending the job being moved to, the milker seems to leave the animal in place in the farmer's workshop, or release it, instead of putting it back in the cage.

starclaws

2010-07-26 09:35

reporter   ~0011082

Last edited: 2010-07-26 09:35

I do milk-cheese-milk-cheese and it cancels the cheese hauling with that dangerous animal note.

Does it have to do with walking by the animal? What if the path the dwarf takes goes the opposite direction?

smjjames

2010-07-28 13:31

reporter   ~0011198

Regarding the message itself, I've gotten it before in 40D when I had a pit zone cleared in the middle of an animal pitting job and when using it as a lazy way to get merchant animals out of cages by marking them for slaughter and then cancelling it when the dwarves take said tame merchant animal out. Same for transferring animals between cages sometimes I think.

It can be pretty funny when its cancelled because of a tamed wild animal.

This bug might be related to that cancel message from 40D.

hyndis

2010-07-28 16:29

reporter   ~0011206

Seen this as well in 31.08. Alternating milk animal and make cheese in the workshop would continue on the cheese production seamlessly, but those cancel job notices would still pop up.

The animals being milked were mundane domestic creatures like cows.

smjjames

2010-07-28 16:48

reporter   ~0011209

Last edited: 2010-07-28 16:53

Hrm, I have a thought. Since before, in 40D, the messages came up when they needed to let go of an animal due to the job being cancelled or changed (I think it didn't always come up), so, maybe its just a bit of leftover code working as its suppoused to, but is not even needed.

The logic could go like this:

(40D)
*dragging animal to pit zone/cage/restraint*
*the job gets cancelled due to the job changing or zone no longer existing*
*dwarf goes 'I need to let go of the animal!', so the cancel message comes up.
*dwarf does whatever else*

(Now)
(I haven't actually done any milking, so the specifics might be off)
*drags cow to milking workshop*
*starts milking*
*finishes milking*
*moves the animal to the side*
*now holding the animal in one hand and the milk bucket in one hand, the dwarf goes 'I need to let go of the animal to do the next step'* Here the message appears.
*make cheese*
*rinse and repeat*

So, we could just be seeing a portion of how the whole proccess works since evidently the dwarf has to grab the animal and move it over, or something. Its just more visible now since the job gets repeated instead of a one off cancel like it would have been for 40D.

RiderofDark

2011-01-04 20:58

reporter   ~0014789

Last edited: 2011-01-04 20:59

NOTE: somewhat related to bug 0000410.
What I think is specifically happening (after quite a bit of testing):

0) Dwarf 2 looking for task
1) Milker goes to cage
2) Milker releases assigned animal
3) Milker looks for assignment for animal
3.1) While milker is looking, Dwarf 2 finds loose animal
3.2) Dwarf 2 tasked with returning animal
3.3) Milker tasked with milking animal
NOTE: Two dwarves are now assigned the same animal
4) Milker leads animal to workshop
4.1) IF Dwarf 2 reaches animal before workshop
4.1.1) Dwarf 2 takes animal
4.1.2) Dwarf 2 returns animal to cage
5) Milker reaches workshop
5.1) IF Milker has animal
5.1.1) Milker processes animal
5.1.2) Milker looks for task
5.1.2.1) IF Milker finds task before Dwarf 2 arrives
5.1.2.1.1) IF Milker task isn't animal handling-related
5.1.2.1.1) Cancel Task: handling dangerous creature
5.1.2.3) IF Milker task is animal handling-related
5.1.2.3.1) Milker does task normally
5.1.3) Dwarf 2 arrives after animal processing
5.1.3.1) Dwarf 2 takes animal back to cage
5.2) IF Milker has no animal
5.2.1) GO TO 1)

(Hope I got that right)

Note that Dwarf 2 can prevent the Cancel message when the job process is at 5.1.3, as the animal is being handled by another dwarf.

After some extensive testing, I think that the creature has a [IS_BEING_HANDLED][BY_<MILKER>] tag and the milker has a [HANDLE_CREATURE][TARGET_CREATURE] that continues to exist until the milker is given an assignment that is not animal related OR another dwarf is assigned to handle that creature. That could explain bug 0000410 as well.

I had all of my animals released (no cage/restraints, totally free-roaming) and animal hauling labors disabled on everyone. The milker milked four or five animals before switching to a stockpile task, at which point the cancel message popped up. I've also spent time watching milkers with all creatures in cages to observe both bugs.

user11

2011-03-23 21:30

  ~0016505

Are we still seeing this or did it get fixed with related changes in 31.20?

Infiltrator

2011-03-24 03:58

reporter   ~0016508

I'm not seeing it in the same fort that I was seeing it in before, so I would say that it is fixed.

JimiD

2011-03-24 04:19

reporter   ~0016509

I have seen the "Cancel Task, handling dangerous creature" in 31.21. It occurs when a dwarf finishes a Kitchen Workshop related task. Not sure if milking or shearing, I will try to determine which or both.

The tug of war over animals being taken to Kitchen Workshop and returned to pasture seems to be fixed though.

Infiltrator

2011-03-24 06:35

reporter   ~0016510

JimiD: What jobs do you have them doing? I've got milking and shearing on repeat and I'm not seeing that bug anymore. One farmer's workshop for each.

user11

2011-03-26 01:39

  ~0016616

Last edited: 2011-03-26 04:25

I verified it in 31.22. A farmer's workshop with shear and spin queued will generated the message.

EDIT: this was a single workshop and only one available farmer that would attempt both jobs.

Infiltrator

2011-03-26 03:17

reporter   ~0016625

Interesting. I have four workshops with only one job of each of shear, spin, milk, and cheese, on repeat and I do not see that message.

Altaree

2011-04-05 06:13

reporter   ~0017078

Still exists in 31.25

RiderofDark

2011-04-11 14:41

reporter   ~0017306

I think it happens if the dwarf handling the animal gets assigned a task that does not involve the animal *before* any dwarf is assigned to return the animal to wherever it's supposed to go.

etherflan

2012-02-16 00:39

reporter   ~0019751

Still exists in 0.34.01

Snaake

2012-06-13 11:13

reporter   ~0022979

Still happening in 34.07, up to at least 34.10 (haven't paid attention in 34.11).

AchooBlessYou

2012-08-11 10:56

reporter   ~0023440

I've had this happen in 34.11

Scandinavian

2012-08-13 05:22

reporter   ~0023450

Still happens in 34.11 and also happens with shearing.

And it's not because the animal generates a handle animal job either, because I've seen it even with no milkable or shearable animals assigned to pastures.

zanzammar

2014-07-11 17:08

reporter   ~0025881

Last edited: 2014-07-11 17:20

This is still happening in 40.02 with queued Spin Thread jobs. The workshop has Spin Thread, Make Cheese, Milk Animal, all queued and on repeat; the dwarf cancels the job with a "cancels Spin Thread: Handling Dangerous Creature" log entry.

Edit: Added a save file, in case this is helpful in any way. http://dffd.wimbli.com/file.php?id=8888. The save has 2 instances in the log and shortly has a 3rd on a Make Cheese job (at least it did when I continued after copying the save).

pidjipi

2014-07-15 07:10

reporter   ~0026464

A turnaround is to design Pasture zone overlapping the farm workshop.
When milking/shearing is done, the animal is already in its Pasture, so no walking needed, therefore the tasks can be chained.

You can have 4 zone with a corner including the same farm workshop.

Loci

2018-10-07 13:44

viewer   ~0038853

Tested in v0.44.12. No "dangerous creature" cancellations after milking and shearing an alpaca. The new job-assignment logic which delays subsequent jobs (0008809) probably allows the dwarf time to release the animal before starting a new task. The cancellations could reappear if that bug is fixed, however.

Add Note

Note

Issue History

Date Modified Username Field Change
2010-04-02 14:51 Zared New Issue
2010-04-02 15:57 DoctorZuber Note Added: 0000312
2010-04-02 16:01 Zared Note Added: 0000313
2010-04-02 18:37 Felblood Tag Attached: jobs
2010-04-02 18:38 Felblood Tag Attached: pet
2010-04-02 18:38 Felblood Tag Attached: labors
2010-04-18 19:00 Zombie Note Added: 0004156
2010-04-29 13:38 user6 Category General => Dwarf Mode -- Jobs, Animal Handling
2010-06-11 18:11 paladin_of_light Note Added: 0008167
2010-07-09 12:58 ChickenLips Note Added: 0009839
2010-07-26 09:35 starclaws Note Added: 0011082
2010-07-26 09:35 starclaws Note Edited: 0011082
2010-07-26 12:59 user6 Summary Cancelation after milking => After milking, milker cancels next task with "Handling dangerous creature"
2010-07-28 13:31 smjjames Note Added: 0011198
2010-07-28 16:29 hyndis Note Added: 0011206
2010-07-28 16:48 smjjames Note Added: 0011209
2010-07-28 16:49 smjjames Note Edited: 0011209
2010-07-28 16:53 smjjames Note Edited: 0011209
2011-01-04 20:58 RiderofDark Note Added: 0014789
2011-01-04 20:58 RiderofDark Note Edited: 0014789
2011-01-04 20:59 RiderofDark Note Edited: 0014789
2011-03-23 21:30 user11 Note Added: 0016505
2011-03-23 21:30 user11 Tag Attached: AWAITING UPDATE
2011-03-24 03:58 Infiltrator Note Added: 0016508
2011-03-24 04:19 JimiD Note Added: 0016509
2011-03-24 06:35 Infiltrator Note Added: 0016510
2011-03-26 01:39 user11 Note Added: 0016616
2011-03-26 01:39 user11 Tag Detached: AWAITING UPDATE
2011-03-26 03:17 Infiltrator Note Added: 0016625
2011-03-26 04:25 user11 Note Edited: 0016616
2011-04-05 06:13 Altaree Note Added: 0017078
2011-04-11 14:41 RiderofDark Note Added: 0017306
2012-02-16 00:39 etherflan Note Added: 0019751
2012-04-11 12:07 user6 Relationship added related to 0004219
2012-06-13 11:13 Snaake Note Added: 0022979
2012-08-11 10:56 AchooBlessYou Note Added: 0023440
2012-08-13 05:22 Scandinavian Note Added: 0023450
2014-07-08 11:54 user11 Relationship added has duplicate 0006688
2014-07-11 17:08 zanzammar Note Added: 0025881
2014-07-11 17:20 zanzammar Note Edited: 0025881
2014-07-15 07:10 pidjipi Note Added: 0026464
2016-05-05 05:44 user1294 Relationship added has duplicate 0009722
2016-05-05 05:45 user1294 Assigned To => user1294
2016-05-05 05:45 user1294 Status new => acknowledged
2016-05-05 05:46 user1294 Summary After milking, milker cancels next task with "Handling dangerous creature" => After milking/shearing, dwarf cancels next task with "Handling dangerous creature"
2016-05-06 14:38 user1294 Relationship replaced related to 0009722
2018-10-07 13:44 Loci Note Added: 0038853