Apparently there is an unimplemented fat system, so they at least thought about it. Dunno what their official stance is on it now.
BehaviorHunger.cs
if (Saturation <= 0)
{
// Let's say a fat reserve of 1000 is depleted in 3 ingame days using the default game speed of 1/60th
// => 72 ingame hours / 60 = 1.2 irl hours = 4320 irl seconds
// => 1 irl seconds substracts 1/4.32 fat reserves
//float sprintLoss = sprintCounter / (15f * 6);
//FatReserves = Math.Max(0, FatReserves - dt / 4.32f - sprintLoss / 4.32f);
//if (FatReserves <= 0)
{
entity.ReceiveDamage(new DamageSource() { Source = EnumDamageSource.Internal, Type = EnumDamageType.Hunger }, 0.125f);
}
sprintCounter = 0;
}
/*if (Saturation >= 0.85 * MaxSaturation)
{
// Fat recovery is 6 times slower
FatReserves = Math.Min(MaxFatReserves, FatReserves + dt / (6 * 4.32f));
}
float max = MaxFatReserves;
float cur = FatReserves / max;
if (cur <= 0.8 || lastFatReserves <= 0.8)
{
float diff = cur - lastFatReserves;
if (Math.Abs(diff) >= 0.1)
{
HealthLocked += diff > 0 ? -1 : 1;
if (diff > 0 || Health > 0)
{
entity.ReceiveDamage(new DamageSource() { source = EnumDamageSource.Internal, type = (diff > 0) ? EnumDamageType.Heal : EnumDamageType.Hunger }, 1);
}
lastFatReserves = cur;
}
} else
{
lastFatReserves = cur;
} */