My ARK Breeding Calculator calculates timings and food requirements for raising baby creatures in ARK. This page is to hold any comments on the calculator and provide some background. This page was written as of V224.2 of ARK. Implementations of all the calculations discussed below can be found in the Breeding Calculator.
Source code can be found here. Commits now serve as the changelog.
- Make baby phase calcs use trough calc
- Tek Troughs
- Food quantities by trough as well as by stack
- Clearer UI
- Add fish meat?
- Update below text with new food rate calculations
- Add all the new dinos
For a primer on finding data in the dev kit, see my Taming Calculator page. For breeding, the relevant blueprints are [Creature]_Character_BP, DinoCharacterStatusComponent_BP_[Creature] and, for creatures which lay eggs, PrimalItemConsumable_Egg_[Creature]_Fertilized. To get the basic timings for breeding, we can filter by 'baby' in [Creature]_Character_BP. The relevant values are Baby Age Speed, which seems to be constant across all creatures, and it's multiplier Extra Baby Age Speed Multiplier. To get the total time taken for the baby to mature in seconds, divide 1 by the product of these values. Baby Age Speed represents progress per second, with 1 being complete, so we multiply the speed by the corresponding multiplier, and then divide 1 by the result to get time taken in seconds. Gestation time works the same, but using the Baby Gestation Speed and Extra Baby Gestation Speed values. Note that even non-mammals have the gestation values, they simply aren't used.
For egg-laying creatures we must instead look in PrimalItemConsumable_Egg_[Creature]_Fertilized. The egg incubation seems to be bolted on to the durability mechanic, to to calculate the incubation time we filter by 'durability' use the values Egg Lose Durability Per Second and Extra Egg Lose Durability Per Second Multiplier. We can see from Initial Value Constant a little above that this value starts at 100, as in 100%, rather than the 1 used by the other timings, so here we divide 100 by the product of our speed values to get the time taken in seconds.
Food rates are the next item of interest. In DinoCharacterStatusComponent_BP_[Creature] we can filter by 'baby' to find Baby Dino Consuming Food Rate Multiplier. This determines the rate at which babies consume food, although I am not completely sure of the formula just yet, so I am using my own constants for the maximum and minimum baby food consumption rates for each creature in the current implementation.
(Old, see commits for recent updates)
Added Dodo, Oviraptor
Written by Crumplecorn
Last Updated 23/11/2015