package TargetTracking
using RTDB

DefaultPreset : ThreatTrackingPresetBase
{
	baseAccuracy = 
	{
		duration = 15.0f;
	} : LinearAccuracy;
	beliefAccuracy = 
	{
		exponent = 1.7f;
		timeFactor = 0.08f;
	} : NonLinearAccuracy;
	baseDroppingThreatCooldown = 2.0f;
	droppingCooldownPerSecondWhileVisible = 0.1f;
	droppingCooldownPerHit = 5.0f;
	visibleBeliefSpeedMultiplier = 5.0f;
}

FollowerPreset : ThreatTrackingPresetBase
{
	baseAccuracy = 
	{
		duration = 30.0;
	} : LinearAccuracy;
	beliefAccuracy = 
	{
		accuracyDropCooldown = 5.0;
		exponent = 8.0;
		minDistanceToRunCooldown = 0.0;
	} : NonLinearAccuracy;
	baseDroppingThreatCooldown = 0.0f;
	droppingCooldownPerSecondWhileVisible = 0.25f;
	droppingCooldownPerHit = 0.0f;
	maximumDroppingCooldownValue = 5.0f;
}

PlayerPreset : ThreatTrackingPresetBase
{
	baseAccuracy = 
	{
	} : LinearAccuracy;
	beliefAccuracy = 
	{
		accuracyDropCooldown = 5.0;
		exponent = 1.0;
		minDistanceToRunCooldown = 0.0;
	} : NonLinearAccuracy;
	baseDroppingThreatCooldown = 0.0f;
	droppingCooldownPerSecondWhileVisible = 0.0f;
	droppingCooldownPerHit = 0.0f;
}

CyberpsychoPreset : DefaultPreset
{
	baseDroppingThreatCooldown = 10.0f;
}

BossPreset : DefaultPreset
{
	baseDroppingThreatCooldown = 10.0f;
}

PreventionUnitPreset : DefaultPreset
{
	baseAccuracy = 
	{
		duration = 5.0f;
	} : LinearAccuracy;
	baseDroppingThreatCooldown = 0.0f;
	mountedHysteresisThreatDrop = ( 90.f, 110.f );
}

RealPosition : TrackingMode
{
	enumName = "RealPosition";
}

LastKnownPosition : TrackingMode
{
	enumName = "LastKnownPosition";
}

BeliefPosition : TrackingMode
{
	enumName = "BeliefPosition";
}

SharedLastKnownPosition : TrackingMode
{
	enumName = "SharedLastKnownPosition";
}

SharedBeliefPosition : TrackingMode
{
	enumName = "SharedBeliefPosition";
}

