Build: 1.04.151979
In this file m_AutoinfectProbability is set to 50
dta\scripts\4_World\Classes\TransmissionAgents\Agents\InfluenzaAgent.c
m_AutoinfectProbability = 50;
In the base class m_AutoinfectProbability is defined as percentage per hour according to the comment
dta\scripts\4_World\Classes\TransmissionAgents\Agents\AgentBase.c
float m_AutoinfectProbability = -1;//probability of autoinfect as percentage per hour (50 means 50% chance autoinfect with this agent will happen 1x times within an hour of gameplay)(also dependent on CanAutoinfectPlayer check)
In the base class AutoinfectCheck() function probability is calculated per hour by dividing by 3600. Shouldn't InfluenzaAgent m_AutoinfectProbability be set to 1800 (half of 3600) for 50% probability?
float probability = (m_AutoinfectProbability / 3600) * deltaT * 1000;
Also the dice_throw is between 0 and 100000 which is a MUCH larger range than probability will ever return.