View Issue Details

IDProjectCategoryView StatusLast Update
0004366Dwarf FortressDwarf Mode -- Petspublic2014-11-25 16:18
ReporterDoktorV Assigned ToToady One  
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
OSWindows XPOS VersionSP3 
Product Version0.31.23 
Fixed in Version0.40.19 
Summary0004366: Animals in large pastures fight despite abundance of space
DescriptionI have 33 mixed animals on a 9x18 pasture (approximately 5 tiles per animal) and several have accumulated injuries from fighting with other tame animals on the pasture. Additionally, the six dogs I embarked with have also been attacking dwarves in the 9x5 meeting hall.
Steps To ReproduceEmbark with numerous beasties, pasture, and wait for combat reports. Faster-breeding beasties are more likely to create the problem sooner.
Additional Information31.23 with pre-installed Phoebus graphics pack. Manually installed Dwarven Higher Learning mod, which shouldn't affect anything regarding livestock.
Tagspasture

Relationships

related to 0004367 resolvedToady One Animals all try to graze from pasture's top left corner, starvation ensues 
related to 0007554 resolvedToady One Crowded animals are too docile 
parent of 0009246 acknowledgeduser11 Animals only move very rarely when brought to a pasture 
related to 0004402 resolveduser11 Tame animals in pastures attack each other 
Not all the children of this issue are yet resolved or closed.

Activities

Kogut

2011-03-27 23:43

reporter   ~0016703

Last edited: 2011-03-27 23:44

I suggest to upload save

Kumquat

2011-03-28 01:03

reporter   ~0016705

I was about to report this same bug in .22, and this seems to be happening in .24 too.

All I had was 5 yaks in a 20x20 pasture.

I haven't noticed pigs or sheep fighting yet.

danaris

2011-03-28 04:42

reporter   ~0016713

I had a similar problem with a water buffalo bull, a reindeer calf, and a horse in a 10x10 pasture in .22 (I think, might have been .21). I had to move the water buffalo bull to its own pasture separated from the others.

Granite26

2011-03-28 08:44

reporter   ~0016718

Is the problem that they are all being dropped off at the same point and not spreading out?

DoktorV

2011-03-31 04:37

reporter   ~0016845

Last edited: 2011-03-31 05:17

Livestock fighting if kept in excessively close confinement is intended behavior, but I have observed that they start fighting immediately if several animals are herded to the same pasture at the same time. Even though the pasture may be quite large, they start fighting within seconds.

I now have a save where I designated pasturing immediately upon arrival. The combat reports show animals fighting the same in-game day.
http://dffd.wimbli.com/file.php?id=4090

I suspect that something like this is occurring: If several animals are herded to the same pasture at about the same time, they are all dropped off on the same tile, and the animal aggression code is triggering too fast. Additionally, I think that grazing animals probably don't move until they have eaten all the grass on the tile they're standing on, which aggravates the problem. I don't know what sort of movement routine is operating on the poultry.

dieffenbachj

2011-03-31 05:23

reporter   ~0016846

I've had severe problems where I have a massive pasture, only 3 or 4 animals in it... but since they INSIST on grazing in the same area, I'll glance over and I'll always see two of them either adjacent to each other, or in the same tile.

And inevitably, even with only a couple animals on a huge pasture, there will be deaths and missing limbs and broken spines and all manner of nasty business.

I think animals in a pen need to have code for spreading out. It's not just enough to have them drift apart on their own--I think they need to actively try to keep space between them (and then, if too many animals are put into one pen / the grass is only edible on one side, THEN they'll get closer and start dying...)

It's not even a problem with being dropped off and not spreading out, since this behavior will be maintained for years. There's no point in keeping animals for milk or cloth, just slaughter them as soon as possible lest they cripple or kill each other because you put two in the same huge pen and they decided to sit on each other's faces...

danaris

2011-03-31 10:17

reporter   ~0016862

Oh, I think I should also note:

I have noticed some of my animals seeming to "follow" each other, with a horse and a mule in a single square, then when one moves, the other moves immediately after to the same square.

I have not observed these "stacked" animals fighting; however, I can't be sure that they don't eventually.

~ TGC

Kumquat

2011-03-31 10:25

reporter   ~0016863

The problem is that animals browse on pastures in "typewriter order".

Every hungry animal ends up packed onto the same tile and start fighting.

Larger animals are worse with this, since they eat more. Sheep manage fairly well, yaks and water buffaloes are nearly impossible, can't have more than one or two on a pasture of any size. They are pretty much always hungry.

Kogut

2012-04-01 07:38

reporter   ~0021983

34.07 save: http://dffd.wimbli.com/submit.php?action=message&fid=6058

King Mir

2014-07-21 23:33

reporter   ~0027184

Last edited: 2014-07-21 23:35

According to bug 7554(http://www.bay12games.com/dwarves/mantisbt/view.php?id=7554), in 0.40 the pendulum swung the other way, and animals don't fight much at all. So this should probably be closed. The typewriter problem still exists however.

clanl

2014-10-19 06:29

reporter   ~0030671

Can this be marked as resolved?
It seems this should be fixed with 0004367

Tristan Alkai

2014-11-22 14:30

reporter   ~0031128

@clanl: Not so fast.

This bug and 0004367 refer to different things: respectively, an effect and a cause of overcrowding. With 0004367 fixed, this one will manifest less frequently, but animals grazing in typewriter order is not the only thing that can lead to crowding despite a suitably large pasture (the easiest example is breeding poultry and packing their next boxes too close together). That fix is neither necessary nor sufficient to call this bug resolved.

That said, I agree with King Mir that 0007554 may be an undocumented fix of this one. Apologies if this makes the previous comments come across as overly pedantic.

On the other hand, the code (requested by DoktorV) for an animal to perceive itself as crowded and attempt to spread out would have other benefits.
1. Multiple animals on the same tile are more difficult for the player to count.
2. Attempting to avoid crowds could help keep multiple grazers from targeting the same patch of grass.
3. Attempting to maintain space between animals could help pastured livestock avoid presenting a roadblock to pathing dwarves (assuming, of course, that the pasture itself is big enough).

Toady One

2014-11-25 13:25

administrator   ~0031183

I haven't worked on any spreading-out code, but with the typewriter fix from before and timer balance (for 0.40.19) this'll be closed enough. We can revisit further behavior off the tracker (unless something goes wrong).

Issue History

Date Modified Username Field Change
2011-03-27 20:23 DoktorV New Issue
2011-03-27 22:42 DoktorV Tag Attached: pasture
2011-03-27 23:43 Kogut Note Added: 0016703
2011-03-27 23:44 Kogut Note Edited: 0016703
2011-03-28 01:03 Kumquat Note Added: 0016705
2011-03-28 04:42 danaris Note Added: 0016713
2011-03-28 08:44 Granite26 Note Added: 0016718
2011-03-31 03:16 user11 Relationship added related to 0004402
2011-03-31 04:37 DoktorV Note Added: 0016845
2011-03-31 04:57 DoktorV Note Edited: 0016845
2011-03-31 05:17 DoktorV Note Edited: 0016845
2011-03-31 05:23 dieffenbachj Note Added: 0016846
2011-03-31 10:17 danaris Note Added: 0016862
2011-03-31 10:25 Kumquat Note Added: 0016863
2011-04-02 13:50 user6 Relationship added related to 0004367
2012-04-01 07:38 Kogut Note Added: 0021983
2014-07-21 23:33 King Mir Note Added: 0027184
2014-07-21 23:34 King Mir Note Edited: 0027184
2014-07-21 23:35 King Mir Note Edited: 0027184
2014-07-21 23:35 King Mir Note Edited: 0027184
2014-10-19 06:29 clanl Note Added: 0030671
2014-11-22 14:30 Tristan Alkai Note Added: 0031128
2014-11-24 06:58 user6 Relationship added related to 0007554
2014-11-24 06:58 user6 Assigned To => user6
2014-11-24 06:58 user6 Status new => feedback
2014-11-25 13:25 Toady One Note Added: 0031183
2014-11-25 13:25 Toady One Status feedback => resolved
2014-11-25 13:25 Toady One Resolution open => fixed
2014-11-25 13:25 Toady One Assigned To user6 => Toady One
2014-11-25 16:18 lethosor Fixed in Version => Next Version
2015-12-11 18:41 user11 Relationship added parent of 0009246