package Character
using RTDB, BaseStats

NPC_Base_Curves : StatModifierGroup
{
	fk< StatModifier >[] statModifiers = 
	[
		{
			statType = "BaseStats.Level";
			modifierType = "Additive";
			id = "puppet_power_level_to_level";
			column = "puppet_power_level_to_level";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Additive";
			id = "puppet_powerLevelToHealth";
			column = "puppet_powerLevelToHealth_base";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.LimbHealth";
			modifierType = "Additive";
			id = "puppet_powerLevelToHealth";
			column = "puppet_powerLevelToHealth_base";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ThermalResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ElectricResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ChemicalResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Detection";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = 0.8f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.NPCDoTDPS";
			modifierType = "Additive";
			refStat = "BaseStats.NPCDamage";
			opSymbol = "*";
			value = 0.5f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.DPS";
			modifierType = "Multiplier";
			id = "puppet_powerLevelToDPS";
			column = "puppet_intrinsic_levelToDPS";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Armor";
			modifierType = "AdditiveMultiplier";
			refStat = "BaseStats.ArmorMultBonus";
			opSymbol = "*";
			value = 1f;
		} : CombinedStatModifier
	];
}

NPCBaseRandomizers : StatModifierGroup
{
	fk< StatModifier >[] statModifiers = 
	[
		{
			statType = "BaseStats.ThermalResistance";
			modifierType = "Additive";
			min = 0.84f;
			max = 1.16f;
		} : RandomStatModifier, 
		{
			statType = "BaseStats.ElectricResistance";
			modifierType = "Additive";
			min = 0.84f;
			max = 1.16f;
		} : RandomStatModifier, 
		{
			statType = "BaseStats.ChemicalResistance";
			modifierType = "Additive";
			min = 0.84f;
			max = 1.16f;
		} : RandomStatModifier
	];
}

NPC_Base_Primary_Stat_ModGroup : NPC_Base_Curves
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 30;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = 40;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLArmDamageThreshold";
			modifierType = "Additive";
			value = 30;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRArmDamageThreshold";
			modifierType = "Additive";
			value = 30;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismHeadDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLArmDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRArmDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLArmDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRArmDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLLegDamageThreshold";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRLegDamageThreshold";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Stamina";
			modifierType = "Additive";
			value = 40;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.CanDash";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpact";
			modifierType = "Additive";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpactMelee";
			modifierType = "Additive";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStagger";
			modifierType = "Additive";
			value = 1.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStaggerMelee";
			modifierType = "Additive";
			value = 2.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterDefeated";
			modifierType = "Additive";
			value = 0.3;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterPain";
			modifierType = "Additive";
			value = 0.15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterKnockdown";
			modifierType = "Additive";
			value = 3.667;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionDamageHealthFactor";
			modifierType = "Additive";
			value = 2.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseCoefficient";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsVisibilityCooldown";
			modifierType = "Additive";
			value = 1.9f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsMinimumLineOfSightTime";
			modifierType = "Additive";
			value = 0.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsSensesTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsCoverTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 0.5f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockWeakSpotComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockHeadComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockChestComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockLegComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockBreachComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockMechanicalComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockVehicleComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.EnemyHackUploadProgressBumpMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier, 
		"Character.BaseAccuracy"
	];
}

BaseAccuracy : ConstantStatModifier
{
	statType = "BaseStats.Accuracy";
	modifierType = "Additive";
	value = 0.0f;
}

Android_Primary_Stat_ModGroup : NPC_Base_Curves
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 120;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = 55;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundHeadDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLArmDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRArmDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLLegDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRLegDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismHeadDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLArmDamageThreshold";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRArmDamageThreshold";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLLegDamageThreshold";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRLegDamageThreshold";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLArmDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRArmDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLLegDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRLegDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Stamina";
			modifierType = "Additive";
			value = 40;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.CanDash";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpact";
			modifierType = "Additive";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStagger";
			modifierType = "Additive";
			value = 2.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterDefeated";
			modifierType = "Additive";
			value = 0.3;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterPain";
			modifierType = "Additive";
			value = 0.15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterKnockdown";
			modifierType = "Additive";
			value = 3.667;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseCoefficient";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsVisibilityCooldown";
			modifierType = "Additive";
			value = 1.9f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsMinimumLineOfSightTime";
			modifierType = "Additive";
			value = 0.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsSensesTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsCoverTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 0.5f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.HackingResistance";
			modifierType = "Additive";
			id = "puppet_hacking_res_to_upload";
			column = "android_hacking_res_to_npc_rarity";
			refStat = "BaseStats.NPCRarity";
		} : CurveStatModifier, 
		"QuickHack.TargetResistance_DifficultyMult", "QuickHack.TargetResistanceUltimate_DifficultyMult"
	];
}

Crowd_Primary_Stat_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.Level";
			modifierType = "Additive";
			id = "puppet_power_level_to_level";
			column = "puppet_power_level_to_level";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Additive";
			id = "puppet_powerLevelToHealth";
			column = "puppet_powerLevelToHealth_base";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ThermalResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ElectricResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.ChemicalResistance";
			modifierType = "Additive";
			id = "puppet_powerLevelToResistances";
			column = "puppet_powerLevelToResistances";
			refStat = "BaseStats.PowerLevel";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 0.6f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = 33;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismHeadDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLArmDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRArmDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRLegDamageThreshold";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLArmDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRArmDamageThreshold";
			modifierType = "Additive";
			value = 10;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLLegDamageThreshold";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRLegDamageThreshold";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpact";
			modifierType = "Additive";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpactMelee";
			modifierType = "Additive";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStagger";
			modifierType = "Additive";
			value = 1.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStaggerMelee";
			modifierType = "Additive";
			value = 2.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterDefeated";
			modifierType = "Additive";
			value = 0.3;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterPain";
			modifierType = "Additive";
			value = 0.15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterKnockdown";
			modifierType = "Additive";
			value = 3.667;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionDamageHealthFactor";
			modifierType = "Additive";
			value = 2.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseCoefficient";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsVisibilityCooldown";
			modifierType = "Additive";
			value = 1.9f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsMinimumLineOfSightTime";
			modifierType = "Additive";
			value = 0.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsSensesTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsCoverTraceLoSIncreaseSpeed";
			modifierType = "Additive";
			value = 0.5f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier
	];
}

Mechanical_Primary_Stat_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.SmartGunTimeToLockWeakSpotComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockHeadComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockChestComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockLegComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockBreachComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockMechanicalComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockVehicleComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier
	];
}

Mechanical_Immunities_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.PoisonImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundedImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.BleedingImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HeadshotImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.UnconsciousImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TranquilizerImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier
	];
}

Drone_Primary_Stat_ModGroup : NPC_Base_Curves
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.HitShapeArmor";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 0.5f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = 35;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownImmunity";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockWeakSpotComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockHeadComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockChestComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockLegComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockBreachComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockMechanicalComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockVehicleComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HackingResistance";
			modifierType = "Additive";
			id = "puppet_hacking_res_to_upload";
			column = "drone_hacking_res_to_npc_rarity";
			refStat = "BaseStats.NPCRarity";
		} : CurveStatModifier, 
		"QuickHack.TargetResistance_DifficultyMult", "QuickHack.TargetResistanceUltimate_DifficultyMult"
	];
}

Drone_Big_Primary_Stat_ModGroup : NPC_Base_Curves
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.HitShapeArmor";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 0.9f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = 35;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownImmunity";
			modifierType = "Additive";
			value = 1.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockWeakSpotComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockHeadComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockChestComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockLegComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockBreachComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockMechanicalComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.SmartGunTimeToLockVehicleComponentMultiplier";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HackingResistance";
			modifierType = "Additive";
			id = "puppet_hacking_res_to_upload";
			column = "drone_hacking_res_to_npc_rarity";
			refStat = "BaseStats.NPCRarity";
		} : CurveStatModifier, 
		"QuickHack.TargetResistance_DifficultyMult", "QuickHack.TargetResistanceUltimate_DifficultyMult"
	];
}

Border_Patrol_Drone_Primary_Stat_ModGroup : NPC_Base_Curves
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.HitShapeArmor";
			modifierType = "Additive";
			value = 100f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DPS";
			modifierType = "Multiplier";
			value = 20;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PoisonImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.BleedingImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ElectrocuteImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.QuickHackImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Additive";
			value = 0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1.0f;
		} : CombinedStatModifier
	];
}

Mech_Primary_Stat_ModGroup : NPC_Base_Curves
{
	statModifiers += 
	[
		{
			statType = "BaseStats.HitShapeArmor";
			modifierType = "Additive";
			value = 100f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 2.0f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ElectricResistance";
			modifierType = "Additive";
			value = -20;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ThermalResistance";
			modifierType = "Additive";
			value = 35;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.LimbHealth";
			modifierType = "Multiplier";
			value = 1.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 1000;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Multiplier";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Multiplier";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Multiplier";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdInCover";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLArmDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRArmDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLLegDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRLegDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitWoundsFactor";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.AudioStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.VisualStimRangeMultiplier";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Visibility";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DamageReductionExplosion";
			modifierType = "Additive";
			value = 0.15f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Hearing";
			modifierType = "Additive";
			value = 1.0f;
		} : ConstantStatModifier, 
		"AttackModifier.MinotaurHGMMinTBH", {
			statType = "BaseStats.NPCDamage";
			modifierType = "Additive";
			refStat = "BaseStats.DPS";
			opSymbol = "*";
			value = 1f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Accuracy";
			modifierType = "Multiplier";
			value = 0.66;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HackingResistance";
			modifierType = "Additive";
			id = "puppet_hacking_res_to_upload";
			column = "mech_hacking_res_to_npc_rarity";
			refStat = "BaseStats.NPCRarity";
		} : CurveStatModifier, 
		"QuickHack.TargetResistance_DifficultyMult", "QuickHack.TargetResistanceUltimate_DifficultyMult"
	];
}

DEMO_NPC_Stat_Modifiers_Group : StatModifierGroup
{
	statModifiers = 
	[
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			id = "puppet_levelToPowerLevel";
			column = "puppet_levelToPowerLevel";
			refStat = "BaseStats.Level";
		} : CurveStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier
	];
}

CPO_Stat_Modifiers_Group : StatModifierGroup
{
	statModifiers = 
	[
		{
			statType = "BaseStats.Level";
			modifierType = "Additive";
			value = 5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Additive";
			value = 400;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.LimbHealth";
			modifierType = "Additive";
			value = 50;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Armor";
			modifierType = "Additive";
			value = 3;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ThermalResistance";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ElectricResistance";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ChemicalResistance";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DPS";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Accuracy";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Evasion";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Weight";
			modifierType = "Additive";
			value = 60;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PhysicalDamage";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLArmDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRArmDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundLLegDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRLegDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismHeadDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLArmDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRArmDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismLLegDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DismRLegDamageThreshold";
			modifierType = "Additive";
			value = 100;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedHeadDamageThreshold";
			modifierType = "Additive";
			value = -1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLArmDamageThreshold";
			modifierType = "Additive";
			value = 20;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRArmDamageThreshold";
			modifierType = "Additive";
			value = 20;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedLLegDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DefeatedRLegDamageThreshold";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitDismembermentFactor";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Detection";
			modifierType = "Additive";
			value = 1f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.CPO_NPC_Importance";
			modifierType = "Additive";
			value = 100f;
		} : ConstantStatModifier
	];
}

CPO_BossFight_Group : StatModifierGroup
{
	statModifiers = 
	[
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 2;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 8.0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.PhysicalDamage";
			modifierType = "Additive";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.DPS";
			modifierType = "Additive";
			value = 250;
		} : ConstantStatModifier
	];
}

E3_WoundedState_DecayData : PoolValueModifier
{
	bool enabled = false;
	float rangeBegin = 0;
	float rangeEnd = 100;
	float startDelay = 0;
	float valuePerSec = 3;
}

Cyberpsycho_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Multiplier";
			value = 0.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TBHsBaseSourceMultiplierCoefficient";
			modifierType = "Multiplier";
			value = 0.8;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.ImpactDamageThreshold";
			modifierType = "Additive";
			value = 5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 8;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThreshold";
			modifierType = "Additive";
			value = 17;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StaggerDamageThresholdInCover";
			modifierType = "Additive";
			value = 8;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.KnockdownDamageThresholdImpulse";
			modifierType = "Additive";
			value = 25;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TranquilizerImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = 0.2f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = -0.66f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Finisher_TargetHealthMax_Clamp";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier
	];
}

MaxTac_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.DPS";
			modifierType = "Multiplier";
			value = 0.8f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Accuracy";
			modifierType = "Multiplier";
			value = 0.9f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.75;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TranquilizerImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = 0.2f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = -0.66f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Finisher_TargetHealthMax_Clamp";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier
	];
}

MaxTac_Mantis_ModGroup : StatModifierGroup
{
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.DPS";
			modifierType = "Multiplier";
			value = 0.4f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Accuracy";
			modifierType = "Multiplier";
			value = 0.8f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.75;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TranquilizerImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = 0.2f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Poise";
			modifierType = "Additive";
			refStat = "BaseStats.Health";
			opSymbol = "*";
			value = -0.66f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.Finisher_TargetHealthMax_Clamp";
			modifierType = "Additive";
			value = 15;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterKnockdown";
			modifierType = "Additive";
			value = -5.33;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStagger";
			modifierType = "Additive";
			value = -4.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStaggerMelee";
			modifierType = "Additive";
			value = -4.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpact";
			modifierType = "Additive";
			value = -3.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpactMelee";
			modifierType = "Additive";
			value = -3.5;
		} : ConstantStatModifier
	];
}

Cyberpsycho_HitReaction_Resistance : StatModifierGroup
{
	statModifiers += 
	[
		{
			statType = "BaseStats.HitTimerAfterKnockdown";
			modifierType = "Additive";
			value = 5.33;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStagger";
			modifierType = "Additive";
			value = 4.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterStaggerMelee";
			modifierType = "Additive";
			value = 4.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpact";
			modifierType = "Additive";
			value = 3.5;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitTimerAfterImpactMelee";
			modifierType = "Additive";
			value = 3.5;
		} : ConstantStatModifier
	];
}

Cyberpsycho_EarlyGame_Weapon : NPCEquipmentItemsPoolEntry
{
	minLevel = 0;
	weight = 1.0f;
}

Cyberpsycho_MidGame_Weapon : NPCEquipmentItemsPoolEntry
{
	minLevel = 17;
	weight = 100;
}

Cyberpsycho_LateGame_Weapon : NPCEquipmentItemsPoolEntry
{
	minLevel = 25;
	weight = 10000;
}

Cyberpsycho_EndGame_Weapon : NPCEquipmentItemsPoolEntry
{
	minLevel = 33;
	weight = 1000000;
}

