npc_spectre { AIClass spectre TraverseAnimType spectre title #NPC_SPECTRE useSequenceBounds 1 aiEnemy_usePriorityDist 1300 aiEnemy_immediateThreatDist 200 [$sp] aiEnemy_immediateThreatDist 94 [$mp] AimAngularSpeed 7 ArmorType normal BaseClass "npc_spectre" BodyType human footstep_type "robot" mechanical 1 BehaviorSelector "behavior_spectre" chaseStopDist 300 chaseStopDistHeavyArmor 800 allowCower 0 allowUseCover 1 traverseCostFactor 2.0 minGoalRadius 256 DefaultModelName "models/robots/spectre/imc_spectre.mdl" DefaultModelName_IMC "models/robots/spectre/imc_spectre.mdl" DefaultModelName_MIL "models/robots/spectre/imc_spectre.mdl" DefaultWeapon "mp_weapon_rspn101" WeaponCapacity "PilotMainWeapons" longJumpCheckMinInterval 15 longJumpCheckMaxInterval 30 longJumpMinDist 400 longJumpMaxDist 700 longJumpHeight 300 GibModel0 "models/robots/spectre/spectre_assault_d_gib_leg_l.mdl" GibModel1 "models/robots/spectre/spectre_assault_d_gib_leg_r.mdl" GibModel2 "models/robots/spectre/spectre_assault_d_gib_arm_l.mdl" GibModel3 "models/robots/spectre/spectre_assault_d_gib_arm_r.mdl" GibModelSoftened0 "models/robots/spectre/spectre_assault_d_gib_leg_l.mdl" GibModelSoftened1 "models/robots/spectre/spectre_assault_d_gib_leg_r.mdl" GibModelSoftened2 "models/robots/spectre/spectre_assault_d_gib_arm_l.mdl" GibModelSoftened3 "models/robots/spectre/spectre_assault_d_gib_arm_r.mdl" GibAttachment0 "left_leg" GibAttachment1 "right_leg" GibAttachment2 "left_arm" GibAttachment3 "right_arm" GibSpeed 200 GibAngularSpeed 20 GibMaxDist 1600 GibFX "P_exp_spectre_death" GibSound "Explo_Spectre" headshotFX "P_headshot_pilot_robot" landingImpactTable "pilot_landing" footstepImpactTable "pilot_foostep" faceEnemyStrictToleranceAngle 30 faceEnemyWhileMovingDist 600 "mp" [$mp] { crouchCombatDistInner 300 crouchCombatDistOuter 350 FOV_Alert_Far_Horz 100 FOV_Alert_Far_Vert 60 FOV_Alert_Near_Horz 130 FOV_Alert_Near_Vert 180 FOV_Combat_Far_Horz 100 FOV_Combat_Far_Vert 60 FOV_Combat_Near_Horz 130 FOV_Combat_Near_Vert 180 FOV_Idle_Far_Horz 100 FOV_Idle_Far_Vert 60 FOV_Idle_Near_Horz 130 FOV_Idle_Near_Vert 180 NoticeForgetPostTime 5.0 NoticeForgetPreTime 1.0 NoticeDistNear_Alert 300 NoticeDistNear_Combat 300 NoticeDistNear_Idle 150 NoticeDistFar_Alert 2000 NoticeDistFar_Combat 2000 NoticeDistFar_Idle 2000 NoticeTimeNear_Alert 0.1 NoticeTimeNear_Combat 0.0 NoticeTimeNear_Idle 0.1 NoticeTimeFar_Alert 1.0 NoticeTimeFar_Combat 1.0 NoticeTimeFar_Idle 1.0 NoticeTimePeripheral_Alert 0.7 NoticeTimePeripheral_Combat 0.7 NoticeTimePeripheral_Idle 0.7 } "sp" [$sp] { crouchCombatDistInner 400 crouchCombatDistOuter 500 FOV_Alert_Far_Horz 100 FOV_Alert_Far_Vert 60 FOV_Alert_Near_Horz 180 FOV_Alert_Near_Vert 100 FOV_Combat_Far_Horz 100 FOV_Combat_Far_Vert 60 FOV_Combat_Near_Horz 180 FOV_Combat_Near_Vert 80 FOV_Idle_Far_Horz 100 FOV_Idle_Far_Vert 60 FOV_Idle_Near_Horz 170 FOV_Idle_Near_Vert 80 NoticeForgetPostTime 5.0 NoticeForgetPreTime 1.0 NoticeDistNear_Alert 300 NoticeDistNear_Combat 300 NoticeDistNear_Idle 150 NoticeDistFar_Alert 1800 NoticeDistFar_Combat 2500 NoticeDistFar_Idle 1500 NoticeTimeNear_Alert 0.2 NoticeTimeNear_Combat 0.1 NoticeTimeNear_Idle 0.5 NoticeTimeFar_Alert 0.75 NoticeTimeFar_Combat 0.5 NoticeTimeFar_Idle 2.0 NoticeTimePeripheral_Alert 1.0 NoticeTimePeripheral_Combat 0.75 NoticeTimePeripheral_Idle 2.0 } FOV_Near_Dist 150 // distance at which we transition between near and far FOV values FOV_Far_Dist 2000 // use far values after this distance, interpolate horizontal in between, use far for vertical FOV_Vert_Offset -20 // looking down instead of up... better for pilots on high ground feeling HullType "HULL_HUMAN" leechAnimSet spectre leechMaxDist 150 magneticRange 125 MaxArrivalDist 170 aimassist_adspull_centerAttachmentName "CHESTFOCUS" aimassist_adspull_centerRadius 11.0 aimassist_adspull_headshotAttachmentName "HEADSHOT" aimassist_adspull_headshotRadius 7.0 MeleeDamageMax 20 [$mp] MeleeDamageMin 20 [$mp] MeleeDamageMax 53 [$sp] MeleeDamageMin 53 [$sp] Health 130 [$sp] Health 100 [$mp] PainOnHeavyDamageThreshold 32 PainOnRepeatDamageThreshold 70 MeleeDamageRadius 40 [$mp] MeleeRange 65 [$mp] MeleeDamageRadius 60 [$sp] MeleeRange 60 [$sp] MeleeChargeDamageMin 80 MeleeChargeDamageMax 80 MeleeChargeDamageMinHeavyArmor 80 MeleeChargeDamageMaxHeavyArmor 80 MeleeChargeDamageRadius 25 MeleeChargeRange 135 meleeChargeInterval 1 MeleeChargeEnemyArmorType any meleeImpactEffectTable "melee_spectre" MinForceWalkDist 0 MinStartMoveDist 100 MoveYawSpeed 12 moveDeflectionLookAheadTime 0.5 [$sp] shootingCoverFightRadius 600 [$sp] DrawEnemyHealthBar 0 DrawTargetHealthBar 0 resetBurstOnStopShootOverlay 1 restrictAimGunToValidSequences 1 showFriendlyIcon 1 showTitle 1 [$mp] showTitle 1 [$sp] ui_targetinfo "ui/targetinfo_spectre_bounty" [$mp] ui_targetinfo "ui/targetinfo_npc_hackable" [$sp] smartAmmoLockAttachmentName0 HEADFOCUS waitBetweenWeaponBurst 1 suppressLSP_duration 1.5 reactChanceDefault 90 }