CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.34k stars 4.14k forks source link

Animals reproduce too fast #47461

Closed chuizhi closed 1 year ago

chuizhi commented 3 years ago

Version 11458,I've lived in the game for three years (91 days a season). When I first settled down, there were several short haired cats near my home, which I didn't care about. Then, it's the summer of the third year. Look at the picture. This is a group of cats. There are three such cats near my home. 360截图20210209211830848

At the beginning, I didn't know such a large group, so I went out at night to kill a few with bow and arrow. Then I found something wrong. Send it over a short distance - my God! I'm scared to death! At present, there seems to be no normal setting for animals to fight with each other in the game, and there is no setting for animals to eat, so there is such a large group. Can you adjust the probability of animal formation? 动物繁殖过快 我这个存档在游戏里生活了3年(91天一季)。本来刚定居的时候,家附近有几只短毛猫,我没管。然后,现在是第3年的夏天。请看图片,这是一个猫群。这样的猫群,我家附近还有3个。 一开始我不知道这么大的群体,所以晚上出动,想用弓箭杀死几只就好了。然后发现不对劲。用短距离传送过去——妈呀!吓死我了! 因为目前游戏里好像没有正常的动物互相打斗设定,也没有动物需要吃东西的设定,所以就出现这么大一群。 能否调节一下动物生成的几率?

actual-nh commented 3 years ago

Is it just cats, or lots of other animals including some that should be attacking each other (see #47152 for info on which should be)? If it's just cats, then I suspect the larger animals are getting attacked by zombies, and the smaller ones are being attacked by the cats. If the latter, I'm guessing no attacks are happening because they aren't in the "reality bubble" until you get close enough. (Or some combination of these - sometimes they're in the "reality bubble" but cats are, hrm, selected for.)

Maleclypse commented 3 years ago

This happens when you leave animals outside of the reality bubble for three years or drive through it every couple months. As soon as a predator or zombie gets in there it will destroy that mess of animals, but the system appears to be working as intended with extreme outliers occurring due to the length of the game. Long term there are plans for things outside the reality bubble to occasionally simulate.

CoroNaut commented 3 years ago

For additional information: #25302, #25289, #24848

adamkad1 commented 3 years ago

im having dwarf fortress flashbacks

actual-nh commented 3 years ago

This happens when you leave animals outside of the reality bubble for three years or drive through it every couple months. As soon as a predator or zombie gets in there it will destroy that mess of animals, but the system appears to be working as intended with extreme outliers occurring due to the length of the game. Long term there are plans for things outside the reality bubble to occasionally simulate.

In the meantime, perhaps a mechanism to specify a lower spawn rate for time outside the reality bubble?

actual-nh commented 3 years ago

For additional information: #25302, #25289, #24848

If they haven't been fixed, some of the animal growing-up periods in those seem rather too short!

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

actual-nh commented 3 years ago

Note also the discussion of possible modifiers to animal reproduction in #48116, for after 0.F.

kevingranade commented 3 years ago

In the meantime, perhaps a mechanism to specify a lower spawn rate for time outside the reality bubble?

Tweaking the rate fundamentally can not work, because it's the model for population that's wrong, not a single number.

What I'd like to do is have resources attached to the map like vegetation, then based on the amount of this basic resource we can determine how much of various kinds of animal populations a given area can support, then the actual populations of animals in the area will trend toward those numbers over time. I.e. a map tile of field might support some number of tiny rodents, some (smaller) number of rodent-eating predators, some number of larger herbivores, some number of larger predators, etc. For most animals we care to track these numbers would be fractional, e.g. one wolf pack per many (50-1,000!) square miles.

actual-nh commented 3 years ago

In the meantime, perhaps a mechanism to specify a lower spawn rate for time outside the reality bubble?

Tweaking the rate fundamentally can not work, because it's the model for population that's wrong, not a single number.

I was thinking of adjusting it because predators outside the reality bubble can't kill prey.

What I'd like to do is have resources attached to the map like vegetation, then based on the amount of this basic resource we can determine how much of various kinds of animal populations a given area can support, then the actual populations of animals in the area will trend toward those numbers over time. I.e. a map tile of field might support some number of tiny rodents, some (smaller) number of rodent-eating predators, some number of larger herbivores, some number of larger predators, etc. For most animals we care to track these numbers would be fractional, e.g. one wolf pack per many (50-1,000!) square miles.

Agreed. Note that such models can get into unrealistically large oscillations pretty easily - I'll have to look up the current work on that problem, it's been a while since I did.

BrettDong commented 3 years ago

Logistic growth model?

actual-nh commented 3 years ago

Logistic growth model?

Those work nicely if the limiting factor is constant or used up without replacement. The tricky part comes when you've got predator/prey interactions - predator eats a few too many, its population crashes, then the prey overpopulate, then the predators come back in a big way and eventually eat a few too many...

kevingranade commented 3 years ago

Specifically not a logistic growth model, we just calculate the convergence point based on available resources and then have the population do a decay toward that calculated number.

actual-nh commented 3 years ago

Specifically not a logistic growth model, we just calculate the convergence point based on available resources and then have the population do a decay toward that calculated number.

So no consideration of the effects of predation on prey numbers? (Including herbivores on plant life?) EDIT: That is, outside the reality bubble. Predation would affect numbers within the reality bubble, with the response of the prey population being to go back toward the calculated number.

kevingranade commented 3 years ago

Correct, so we have basic resources, which are different types of vegetation and tiny animals we don't represent in game, and then we solve for the whole tree of herbivores and carnivores supported by those resources, and each population just converges back to that calculated point over time. If you kill a bunch of herbivores, we don't try to model other herbivore populations growing faster as a result due to reduced competition, we don't model their predators or scavengers going hungry, we just slowly replace the lost population.

actual-nh commented 3 years ago

OK. A few thoughts/questions:

kthxbai0815 commented 2 years ago

Hi! I'm on stable (0.F-3 Frank-3) and I'm experiencing the same issue. It's winter in the second year and suddenly the animal reproduction exploded. Clusters with 100-200 animals are a common sight, affected are mammals like Rabbits, Turkeys, Brown chicks and Beagles. This really gets annoying, e.g. driving through cities gets more and more impossible. It there a way to mass murder these critters? Debug menu?

LeahLuong commented 2 years ago

Have you tried flamethrowers?? Or mininukes??

kthxbai0815 commented 2 years ago

Found it. Debug Menu > Map > Kill all monsters This kills everything in line of sight.

This "cheat" will do the job. Yeah, i thought about explosives, but after I killed about 3000 rabbits and turkeys with a slingshot I'm tired of hunting them.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.