aboutsummaryrefslogtreecommitdiff
path: root/Northstar.CustomServers/scripts/aisettings
diff options
context:
space:
mode:
Diffstat (limited to 'Northstar.CustomServers/scripts/aisettings')
-rw-r--r--Northstar.CustomServers/scripts/aisettings/base_vehicle.txt35
-rw-r--r--Northstar.CustomServers/scripts/aisettings/classes.txt149
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_bullseye.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone.txt119
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_beam.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_cloaked.txt15
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_plasma.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fast.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fd.txt20
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_rocket.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_rocket_fast.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_shield.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_worker.txt99
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_drone_worker_fast.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_dropship.txt49
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_dropship_dogfighter.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_dropship_hero.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_frag_drone.txt92
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_frag_drone_fd.txt23
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_frag_drone_throwable.txt19
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_gunship.txt83
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_gunship_scripted.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_marvin.txt73
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_pilot_elite.txt107
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin.txt89
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_cqb.txt16
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_sniper.txt14
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_s2s.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_prowler.txt148
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier.txt201
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_bish.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_blisk.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_drone_summoner.txt4
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_bear.txt14
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_sarah.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_eliteguard.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_sandbox.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_specialist.txt45
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_shield_captain.txt27
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_sidearm.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist.txt43
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist_militia.txt44
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_spyglass.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_soldier_training_sentry.txt24
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_spectre.txt216
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_spectre_mortar.txt45
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker.txt162
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling.txt33
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_fd.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_mossy.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_fd.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie.txt15
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie_mossy.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_super_spectre.txt210
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_super_spectre_aitdm.txt17
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_super_spectre_burnmeter.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_super_spectre_calmer.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_super_spectre_fd.txt17
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan.txt172
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_arc.txt10
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas.txt21
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_ion_prime_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb.txt19
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_boss_fd.txt23
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker.txt19
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_boss_fd.txt23
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_fd_sniper.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_mortar.txt10
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard.txt19
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_boss_fd.txt23
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto.txt43
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas.txt15
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_ion_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_rocketeer.txt10
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_stickybomb.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tone_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tracker.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_vanguard.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre.txt13
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_fighter.txt10
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_legion_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_meteor.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_minigun.txt17
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_scorch_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_arc.txt10
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_leadwall.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_northstar_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_ronin_prime.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_sniper.txt12
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_buddy.txt25
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_s2s.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_skyway.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_mortar.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_nuke.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre.txt22
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter.txt26
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter_berserker_core.txt34
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_legion_prime_bounty.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor.txt24
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_boss_fd.txt27
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_nuke.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun.txt27
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_boss_fd.txt31
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_nuke.txt13
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_scorch_prime_bounty.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_proto_stasisgun.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_sarah.txt21
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_sniper.txt20
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder.txt20
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_arc.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall.txt41
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_arc.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_boss_fd.txt45
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_shift_core.txt38
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_northstar_prime_bounty.txt6
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer.txt24
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer_dash_core.txt11
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper.txt22
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_boss_fd.txt26
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_bounty.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_fd.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_titan_vanguard.txt24
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega.txt69
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_attrition.txt18
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_fortwar.txt42
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_frontierdefense.txt42
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_nowindup.txt5
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_old.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_mega_windup.txt13
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry.txt72
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap.txt16
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap_fd.txt23
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at.txt16
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at_fd.txt17
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma.txt9
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma_skyway.txt14
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tactical_ability.txt7
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tday.txt70
-rw-r--r--Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_windup.txt8
-rw-r--r--Northstar.CustomServers/scripts/aisettings/synced_melee_data.rson628
147 files changed, 4770 insertions, 0 deletions
diff --git a/Northstar.CustomServers/scripts/aisettings/base_vehicle.txt b/Northstar.CustomServers/scripts/aisettings/base_vehicle.txt
new file mode 100644
index 000000000..a13b30665
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/base_vehicle.txt
@@ -0,0 +1,35 @@
+base_vehicle
+{
+ leechAnimSet vehicle
+ leechAnimTag HIJACK
+ leechDataKnifeTag KNIFE
+
+ mechanical 1
+
+ DefaultModelName "models/vehicle/goblin_dropship/goblin_dropship.mdl"
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 180 // use near values up to this distance
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 180
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 180
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 180
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 180
+ FOV_Combat_Far_Vert 180
+
+ YawSpeed 25
+ MoveYawSpeed 15
+ AimAngularSpeed 25
+
+ PainOnHeavyDamageThreshold 0 // no heavy damage
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/classes.txt b/Northstar.CustomServers/scripts/aisettings/classes.txt
new file mode 100644
index 000000000..d250e2df9
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/classes.txt
@@ -0,0 +1,149 @@
+classes
+{
+ import base_vehicle.txt
+
+ import npc_bullseye.txt
+ import npc_drone.txt
+ import npc_drone_beam.txt
+ import npc_drone_cloaked.txt
+ import npc_drone_plasma.txt
+ import npc_drone_plasma_fd.txt
+ import npc_drone_plasma_fast.txt
+ import npc_drone_rocket.txt
+ import npc_drone_rocket_fast.txt
+ import npc_drone_shield.txt
+ import npc_drone_worker.txt
+ import npc_drone_worker_fast.txt
+ import npc_dropship.txt
+ import npc_dropship_dogfighter.txt
+ import npc_dropship_hero.txt
+ import npc_frag_drone.txt
+ import npc_frag_drone_fd.txt
+ import npc_frag_drone_throwable.txt
+ import npc_gunship.txt
+ import npc_gunship_scripted.txt
+ import npc_marvin.txt
+ import npc_pilot_elite.txt
+ import npc_pilot_elite_assassin.txt
+ import npc_pilot_elite_assassin_cqb.txt
+ import npc_pilot_elite_assassin_sniper.txt
+ import npc_pilot_elite_s2s.txt
+ import npc_prowler.txt
+ import npc_soldier.txt
+ import npc_soldier_bish.txt
+ import npc_soldier_blisk.txt
+ import npc_soldier_drone_summoner.txt
+ import npc_soldier_hero_bear.txt
+ import npc_soldier_hero_sarah.txt
+ import npc_soldier_shield_captain.txt
+ import npc_soldier_sidearm.txt
+ import npc_soldier_specialist.txt
+ import npc_soldier_specialist_militia.txt
+ import npc_soldier_spyglass.txt
+ import npc_soldier_training_sentry.txt
+ import npc_soldier_pve_sandbox.txt
+ import npc_soldier_pve_specialist.txt
+ import npc_soldier_pve_eliteguard.txt
+ import npc_spectre.txt
+ import npc_spectre_mortar.txt
+ import npc_stalker.txt
+ import npc_stalker_fd.txt
+ import npc_stalker_crawling.txt
+ import npc_stalker_crawling_fd.txt
+ import npc_stalker_crawling_mossy.txt
+ import npc_stalker_zombie.txt
+ import npc_stalker_zombie_mossy.txt
+ import npc_super_spectre.txt
+ import npc_super_spectre_burnmeter.txt
+ import npc_super_spectre_aitdm.txt
+ import npc_super_spectre_fd.txt
+ import npc_super_spectre_calmer.txt
+ import npc_titan.txt
+ import npc_titan_arc.txt
+ import npc_titan_atlas.txt
+ import npc_titan_atlas_stickybomb.txt
+ import npc_titan_atlas_stickybomb_boss_fd.txt
+ import npc_titan_atlas_tracker.txt
+ import npc_titan_atlas_tracker_fd_sniper.txt
+ import npc_titan_atlas_tracker_boss_fd.txt
+ import npc_titan_atlas_tracker_mortar.txt
+ import npc_titan_atlas_vanguard.txt
+ import npc_titan_atlas_vanguard_boss_fd.txt
+ import npc_titan_auto.txt
+ import npc_titan_auto_atlas.txt
+ import npc_titan_auto_atlas_rocketeer.txt
+ import npc_titan_auto_atlas_stickybomb.txt
+ import npc_titan_auto_atlas_ion_prime.txt
+ import npc_titan_auto_atlas_tracker.txt
+ import npc_titan_auto_atlas_tone_prime.txt
+ import npc_titan_auto_atlas_vanguard.txt
+ import npc_titan_auto_ogre.txt
+ import npc_titan_auto_ogre_fighter.txt
+ import npc_titan_auto_ogre_meteor.txt
+ import npc_titan_auto_ogre_scorch_prime.txt
+ import npc_titan_auto_ogre_minigun.txt
+ import npc_titan_auto_ogre_legion_prime.txt
+ import npc_titan_auto_stryder.txt
+ import npc_titan_auto_stryder_arc.txt
+ import npc_titan_auto_stryder_leadwall.txt
+ import npc_titan_auto_stryder_ronin_prime.txt
+ import npc_titan_auto_stryder_sniper.txt
+ import npc_titan_auto_stryder_northstar_prime.txt
+ import npc_titan_buddy.txt
+ import npc_titan_buddy_skyway.txt
+ import npc_titan_buddy_s2s.txt
+ import npc_titan_mortar.txt
+ import npc_titan_nuke.txt
+ import npc_titan_ogre.txt
+ import npc_titan_ogre_fighter.txt
+ import npc_titan_ogre_fighter_berserker_core.txt
+ import npc_titan_ogre_meteor.txt
+ import npc_titan_ogre_meteor_boss_fd.txt
+ import npc_titan_ogre_minigun.txt
+ import npc_titan_ogre_minigun_boss_fd.txt
+ import npc_titan_ogre_minigun_nuke.txt
+ import npc_titan_proto_stasisgun.txt
+ import npc_titan_sarah.txt
+ import npc_titan_vanguard.txt
+ import npc_titan_sniper.txt
+ import npc_titan_stryder.txt
+ import npc_titan_stryder_arc.txt
+ import npc_titan_stryder_leadwall.txt
+ import npc_titan_stryder_leadwall_boss_fd.txt
+ import npc_titan_stryder_leadwall_shift_core.txt
+ import npc_titan_stryder_leadwall_arc.txt
+ import npc_titan_stryder_rocketeer.txt
+ import npc_titan_stryder_rocketeer_dash_core.txt
+ import npc_titan_stryder_sniper.txt
+ import npc_titan_stryder_sniper_fd.txt
+ import npc_titan_stryder_sniper_boss_fd.txt
+ import npc_turret_mega.txt
+ import npc_turret_mega_nowindup.txt
+ import npc_turret_mega_old.txt
+ import npc_turret_mega_windup.txt
+ import npc_turret_mega_attrition.txt
+ import npc_turret_mega_fortwar.txt
+ import npc_turret_mega_frontierdefense.txt
+ import npc_turret_sentry.txt
+ import npc_turret_sentry_plasma.txt
+ import npc_turret_sentry_plasma_skyway.txt
+ import npc_turret_sentry_burn_card_at.txt
+ import npc_turret_sentry_burn_card_ap.txt
+ import npc_turret_sentry_burn_card_at_fd.txt
+ import npc_turret_sentry_burn_card_ap_fd.txt
+ import npc_turret_sentry_tactical_ability.txt
+ import npc_turret_sentry_tday.txt
+ import npc_turret_sentry_windup.txt
+
+ import npc_titan_atlas_stickybomb_bounty.txt
+ import npc_titan_atlas_ion_prime_bounty.txt
+ import npc_titan_atlas_tracker_bounty.txt
+ import npc_titan_atlas_vanguard_bounty.txt
+ import npc_titan_stryder_leadwall_bounty.txt
+ import npc_titan_stryder_sniper_bounty.txt
+ import npc_titan_stryder_northstar_prime_bounty.txt
+ import npc_titan_ogre_meteor_bounty.txt
+ import npc_titan_ogre_scorch_prime_bounty.txt
+ import npc_titan_ogre_minigun_bounty.txt
+ import npc_titan_ogre_legion_prime_bounty.txt
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_bullseye.txt b/Northstar.CustomServers/scripts/aisettings/npc_bullseye.txt
new file mode 100644
index 000000000..13a22de6a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_bullseye.txt
@@ -0,0 +1,8 @@
+npc_bullseye
+{
+ BaseClass "npc_bullseye"
+ title #NPC_BULLSEYE
+
+ noModel 1
+ meleeable 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone.txt
new file mode 100644
index 000000000..e2b658354
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone.txt
@@ -0,0 +1,119 @@
+npc_drone
+{
+ HullType "HULL_SMALL"
+ AIClass flyingdrone
+ BodyType flyingdrone
+ SmartAmmoLockType any
+ drone_type "drone_type_basic"
+
+ BaseClass "npc_drone"
+
+ BehaviorSelector "behavior_drone"
+
+ mechanical 1
+
+ Health 90 [$sp]
+ Health 100 [$mp]
+
+ title #NPC_DRONE
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "" [$sp]
+
+ //leechAnimSet flyingdrone
+ //onLeechFuncName DroneOnLeeched
+ //leechAnimTag HIJACK
+ //leechDataKnifeTag KNIFE
+ leechMaxDist 0
+
+ DefaultModelName "models/robots/drone_air_attack/drone_air_attack_rockets.mdl"
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 500 // use near values up to this distance
+ FOV_Far_Dist 1700 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 360
+ FOV_Idle_Near_Vert 360
+ FOV_Idle_Far_Horz 400
+ FOV_Idle_Far_Vert 400
+
+ FOV_Alert_Near_Horz 150
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 110
+ FOV_Alert_Far_Vert 110
+
+ FOV_Combat_Near_Horz 160
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 130
+ FOV_Combat_Far_Vert 60
+
+ aimassist_bounds_override 40.0
+ aimassist_use_short_inner_bounds 1
+ aimassist_adspull_centerAttachmentName "HEADSHOT"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName ""
+ aimassist_adspull_headshotRadius 0.0
+
+ YawSpeed 35
+ MoveYawSpeed 15
+ AimAngularSpeed 10
+
+ // TEMP for now, make them basically blind unless you're right in front of them
+ NoticeDistNear_Idle 200
+ NoticeDistNear_Alert 300
+ NoticeDistNear_Combat 1000
+
+ NoticeDistFar_Idle 2000
+ NoticeDistFar_Alert 2000
+ NoticeDistFar_Combat 2000
+
+ NoticeTimeNear_Idle 0.1
+ NoticeTimeNear_Alert 0.1
+ NoticeTimeNear_Combat 0.0
+
+ NoticeTimeFar_Idle 1.0
+ NoticeTimeFar_Alert 1.0
+ NoticeTimeFar_Combat 1.0
+
+ NoticeForgetPreTime 0.3
+ NoticeForgetPostTime 5.0
+
+ rodeoMaxDist 0 // set to > 0 to make rodeoable
+ chaseStopDist 800
+ chaseStopDistHeavyArmor 1200
+
+ faceEnemyToleranceAngle 2
+ faceEnemyStrictToleranceAngle 1
+ PainOnHeavyDamageThreshold 0 // no heavy damage
+
+ waitBetweenWeaponBurst 1
+
+ magneticRange 125
+
+ waypointTolerance 16
+ randomHoverAmount 3
+ flyingStoppingTime 0.5
+ maxFlyingSpeed 600
+ maxFlyingSpeedNonCombat 150
+
+ maxPitch 15
+ maxRoll 30
+
+ patrolRangeMin 300
+ patrolRangeMax 600
+
+ hoverHeight 100 // if has target, offset above target's height
+
+ closestToCameraSound Drone_Mvmt_Hover_Hero // only works on drones for now
+ moveLoopingSound Drone_Mvmt_Hover
+ yawChangeSound Drone_Mvmt_Turn
+ yawChangeSoundAngle 100
+
+ //sound0 Drone.Ambient.Searching.Loop // scan loop (no enemy)
+ //sound1 Drone.Ambient.Has.Enemy.loop // scan loop (has enemy)
+ //sound2 Drone.Target.Locking // target locking on
+ //sound3 Drone_Beam_TargetPlayer // Target locked, plays at end of Drone.Target.Locking
+ //sound4 Drone.Target.Lost // target lost
+
+ showTitle 1 [$mp]
+ showTitle 0 [$sp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_beam.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_beam.txt
new file mode 100644
index 000000000..388ee3d69
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_beam.txt
@@ -0,0 +1,9 @@
+#base "npc_drone.txt"
+npc_drone_beam
+{
+ DefaultWeapon "mp_weapon_dronebeam"
+ ForceAutoPrecacheDefaultWeapon 1
+ title #NPC_DRONE_BEAM
+ drone_type "drone_type_beam"
+ DefaultModelName "models/robots/drone_air_attack/drone_air_attack_plasma.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_cloaked.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_cloaked.txt
new file mode 100644
index 000000000..1f1fe0793
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_cloaked.txt
@@ -0,0 +1,15 @@
+#base "npc_drone.txt"
+npc_drone_cloaked
+{
+ DefaultWeapon ""
+ title #NPC_DRONE_CLOAKED
+ drone_type "drone_type_cloaked"
+
+ YawSpeed 60
+ MoveYawSpeed 30
+ AimAngularSpeed 30
+
+ maxFlyingSpeed 1500
+ maxFlyingSpeedNonCombat 1500
+ hoverHeight 300 // if has target, offset above target's height
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma.txt
new file mode 100644
index 000000000..dd2665a4c
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma.txt
@@ -0,0 +1,9 @@
+#base "npc_drone.txt"
+npc_drone_plasma
+{
+ DefaultWeapon "mp_weapon_droneplasma"
+ ForceAutoPrecacheDefaultWeapon 1
+ title #NPC_DRONE_PLASMA
+ drone_type "drone_type_plasma"
+ DefaultModelName "models/robots/drone_air_attack/drone_air_attack_plasma.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fast.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fast.txt
new file mode 100644
index 000000000..c05037c25
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fast.txt
@@ -0,0 +1,5 @@
+#base "npc_drone_plasma.txt"
+npc_drone_plasma_fast
+{
+ maxFlyingSpeedNonCombat 600 //120
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fd.txt
new file mode 100644
index 000000000..661403673
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_plasma_fd.txt
@@ -0,0 +1,20 @@
+#base "npc_drone_plasma.txt"
+npc_drone_plasma_fd
+{
+ DefaultWeapon "mp_weapon_droneplasma"
+ ForceAutoPrecacheDefaultWeapon 1
+ title #NPC_DRONE_PLASMA
+ drone_type "drone_type_plasma"
+ DefaultModelName "models/robots/drone_air_attack/drone_air_attack_plasma.mdl"
+
+ waypointTolerance 400
+ randomHoverAmount 1
+ flyingStoppingTime 0.0
+ maxFlyingSpeed 400
+ maxFlyingSpeedNonCombat 300
+
+ YawSpeed 75
+ MoveYawSpeed 65
+
+ SmartAmmoLockType small
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket.txt
new file mode 100644
index 000000000..d330a3d25
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket.txt
@@ -0,0 +1,8 @@
+#base "npc_drone.txt"
+npc_drone_rocket
+{
+ DefaultWeapon "mp_weapon_dronerocket"
+ title #NPC_DRONE_ROCKET
+ drone_type "drone_type_rocket"
+ DefaultModelName "models/robots/drone_air_attack/drone_air_attack_rockets.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket_fast.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket_fast.txt
new file mode 100644
index 000000000..7bd1a3e4c
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_rocket_fast.txt
@@ -0,0 +1,5 @@
+#base "npc_drone_rocket.txt"
+npc_drone_rocket_fast
+{
+ maxFlyingSpeedNonCombat 600 //120
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_shield.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_shield.txt
new file mode 100644
index 000000000..e4e56d124
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_shield.txt
@@ -0,0 +1,9 @@
+#base "npc_drone.txt"
+npc_drone_shield
+{
+ title #NPC_DRONE_SHIELD
+ drone_type "drone_type_shield"
+ Health 350
+
+ nonCombatAI 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_worker.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_worker.txt
new file mode 100644
index 000000000..f400d2c5f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_worker.txt
@@ -0,0 +1,99 @@
+npc_drone_worker
+{
+ HullType "HULL_SMALL"
+ AIClass flyingdrone
+ BodyType flyingdrone
+ SmartAmmoLockType any
+
+ marvin_type "marvin_type_drone"
+ drone_type "drone_type_marvin"
+ BaseClass "npc_drone"
+ nonCombatAI 1
+
+ BehaviorSelector "behavior_drone"
+ title #NPC_DRONE_WORKER
+
+ Health 20 [$sp]
+ Health 20 [$mp]
+
+ //leechAnimSet flyingdrone
+ //onLeechFuncName DroneOnLeeched
+ //leechAnimTag HIJACK
+ //leechDataKnifeTag KNIFE
+ leechMaxDist 0
+
+ DefaultModelName "models/robots/aerial_unmanned_worker/aerial_unmanned_worker.mdl"
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 500 // use near values up to this distance
+ FOV_Far_Dist 2000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 130
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 60
+ FOV_Idle_Far_Vert 60
+
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 60
+ FOV_Alert_Far_Vert 60
+
+ FOV_Combat_Near_Horz 160
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 130
+ FOV_Combat_Far_Vert 60
+
+ aimassist_adspull_centerAttachmentName "CHESTFOCUS"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName ""
+ aimassist_adspull_headshotRadius 0.0
+
+ YawSpeed 30
+ MoveYawSpeed 15
+ AimAngularSpeed 10
+
+ // TEMP for now, make them basically blind unless you're right in front of them
+ NoticeDistNear_Idle 200
+ NoticeDistNear_Alert 300
+ NoticeDistNear_Combat 1000
+
+ NoticeDistFar_Idle 2000
+ NoticeDistFar_Alert 2000
+ NoticeDistFar_Combat 2000
+
+ NoticeTimeNear_Idle 0.1
+ NoticeTimeNear_Alert 0.1
+ NoticeTimeNear_Combat 0.0
+
+ NoticeTimeFar_Idle 1.0
+ NoticeTimeFar_Alert 1.0
+ NoticeTimeFar_Combat 1.0
+
+ NoticeForgetPreTime 0.3
+ NoticeForgetPostTime 5.0
+
+ rodeoMaxDist 0 // set to > 0 to make rodeoable
+ chaseStopDist 700
+ chaseStopDistHeavyArmor 1000
+
+ faceEnemyToleranceAngle 2
+ faceEnemyStrictToleranceAngle 1
+ PainOnHeavyDamageThreshold 0 // no heavy damage
+
+ waitBetweenWeaponBurst 1
+
+ magneticRange 30
+ randomHoverAmount 1
+ flyingStoppingTime 0.75
+ maxFlyingSpeed 200
+ maxFlyingSpeedNonCombat 120
+
+ minGoalRadius 16
+
+ maxPitch 45
+ maxRoll 45
+
+ moveLoopingSound WorkerDrone_Mvmt_Hover
+
+ hoverHeight 100 // if has target, offset above target's height
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_drone_worker_fast.txt b/Northstar.CustomServers/scripts/aisettings/npc_drone_worker_fast.txt
new file mode 100644
index 000000000..e9e470bdd
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_drone_worker_fast.txt
@@ -0,0 +1,6 @@
+#base "npc_drone_worker.txt"
+npc_drone_worker_fast
+{
+ maxFlyingSpeed 400 //400
+ maxFlyingSpeedNonCombat 400 //120
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_dropship.txt b/Northstar.CustomServers/scripts/aisettings/npc_dropship.txt
new file mode 100644
index 000000000..851b8f644
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_dropship.txt
@@ -0,0 +1,49 @@
+#base "base_vehicle.txt"
+npc_dropship
+{
+ BaseClass "npc_dropship"
+ title #NPC_DROPSHIP
+ titleIMC #NPC_GOBLIN
+ titleMIL #NPC_CROW
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "" [$sp]
+
+ HullType "HULL_FLYING_VEHICLE"
+ AIClass vehicle
+ BodyType vehicle
+
+ collideWithPlayer 1
+ ArmorType heavy
+ SmartAmmoLockType large
+ DrawEnemyHealthBar 1
+ DrawTargetHealthBar 1
+
+ BehaviorSelector "behavior_dropship"
+
+ DefaultModelName "models/vehicle/goblin_dropship/goblin_dropship.mdl"
+ DefaultModelName_IMC "models/vehicle/goblin_dropship/goblin_dropship.mdl"
+ DefaultModelName_MIL "models/vehicle/crow_dropship/crow_dropship.mdl"
+
+ DefaultWeapon ""
+
+ Health 10000 [$sp]
+ Health 10000 [$mp]
+
+ meleeable false
+
+ magneticRange 190
+
+ YawSpeed 45
+ goalTolerance 400
+ waypointTolerance 1000
+ flyingStoppingTime 1.0
+ tiltLookaheadTime 1.0
+ yawLookaheadTime 2.0
+ randomHoverAmount 15
+ maxFlyingAccel 2000
+ maxFlyingSpeed 3000
+ maxFlyingSpeedNonCombat 3000
+
+ maxPitch 10
+ maxRoll 30
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_dropship_dogfighter.txt b/Northstar.CustomServers/scripts/aisettings/npc_dropship_dogfighter.txt
new file mode 100644
index 000000000..a2c6c88e2
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_dropship_dogfighter.txt
@@ -0,0 +1,8 @@
+#base "npc_dropship.txt"
+npc_dropship_dogfighter
+{
+ title #NPC_DROPSHIP_DOGFIGHTER
+ DefaultModelName "models/vehicle/straton/straton_imc_gunship_01.mdl"
+ DefaultModelName_IMC "models/vehicle/straton/straton_imc_gunship_01.mdl"
+ DefaultModelName_MIL "models/vehicle/hornet/hornet_fighter.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_dropship_hero.txt b/Northstar.CustomServers/scripts/aisettings/npc_dropship_hero.txt
new file mode 100644
index 000000000..a7b9214cf
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_dropship_hero.txt
@@ -0,0 +1,9 @@
+#base "npc_dropship.txt"
+npc_dropship_hero
+{
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+
+ DefaultModelName "models/vehicle/goblin_dropship/goblin_dropship_hero.mdl"
+ DefaultModelName_IMC "models/vehicle/goblin_dropship/goblin_dropship_hero.mdl"
+ DefaultModelName_MIL "models/vehicle/crow_dropship/crow_dropship_hero.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_frag_drone.txt b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone.txt
new file mode 100644
index 000000000..9b435cdb7
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone.txt
@@ -0,0 +1,92 @@
+npc_frag_drone
+{
+ HullType "HULL_HUMAN"
+ orientToGround 1
+ BodyType human
+ ArmorType normal
+ smartAmmoLockAttachmentName0 CHESTFOCUS
+ title #NPC_SPECTRE_SUICIDE
+
+ footstep_type "Tick"
+
+ minSpeedScale 0.8
+ maxSpeedScale 1.5
+
+ BaseClass npc_frag_drone
+ AIClass frag_drone
+ TraverseAnimType frag_drone
+ BehaviorSelector "behavior_frag_drone"
+
+ mechanical 1
+
+ DefaultModelName "models/robots/drone_frag/drone_frag.mdl"
+ DefaultModelName_IMC "models/robots/drone_frag/drone_frag.mdl"
+ DefaultModelName_MIL "models/robots/drone_frag/drone_frag.mdl"
+ DefaultWeapon ""
+ WeaponCapacity "Locked"
+
+ Health 45 [$sp]
+ Health 110 [$mp]
+
+ LookDistDefault_Idle 2000
+ LookDistDefault_Alert 2000
+ LookDistDefault_Combat 2000
+
+ FOV_Idle_Near_Horz 360
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 360
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 360
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 360
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 360
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 360
+ FOV_Combat_Far_Vert 180
+
+ faceEnemyToleranceAngle 180
+ faceEnemyStrictToleranceAngle 180
+ shouldConsiderFacingDir 0
+ moveYawSpeed 30
+
+ aimassist_bounds_override 25
+ aimassist_adspull_centerAttachmentName "aimassist_center"
+ aimassist_adspull_centerRadius 13.0
+ aimassist_adspull_headshotAttachmentName ""
+ aimassist_adspull_headshotRadius 0.0
+
+ MeleeDamageMin 120
+ MeleeDamageMax 120
+ MeleeDamageRadius 32
+ MeleeRange 16
+ meleeImpactEffectTable "melee_spectre"
+
+ meleeable 0
+ leechMaxDist 0
+
+ MinStartMoveDist 100
+ MaxArrivalDist 150
+ MinForceWalkDist 0
+ moveDeflectionLookAheadTime 0.5
+
+ allowPatrol 1
+ allowInvestigate 1
+
+ chaseStopDist 16
+ chaseStopDistHeavyArmor 16
+
+ shootableByFriendlyPlayer 1
+ showFriendlyIcon 1
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "" [$sp]
+
+ aiEnemy_usePriorityDist 1300
+
+ magneticRange 125
+
+ suicideExplosionDelay 2.1
+ suicideExplosionDistance 200.0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_fd.txt
new file mode 100644
index 000000000..ce679d194
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_fd.txt
@@ -0,0 +1,23 @@
+#base "npc_frag_drone.txt"
+npc_frag_drone_fd
+{
+ SuicideChaseTime 3.0 [$sp]
+ SuicideChaseTime 10.0 [$mp]
+
+ Health 45 [$sp]
+ Health 100 [$mp]
+
+ DefaultModelName "models/weapons/sentry_frag/sentry_frag.mdl"
+ DefaultModelName_IMC "models/weapons/sentry_frag/sentry_frag.mdl"
+ DefaultModelName_MIL "models/weapons/sentry_frag/sentry_frag.mdl"
+
+
+ suicideExplosionDistance 200.0
+
+// OverrideOverloadAnim "sp_suicide_spectre_explode_stand_short"
+ JumpAtTitans 0
+ damageDefOverride "damagedef_frag_drone_explode_FD"
+
+ minSpeedScale 2.0
+ maxSpeedScale 2.5
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_throwable.txt b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_throwable.txt
new file mode 100644
index 000000000..53458c3cc
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_frag_drone_throwable.txt
@@ -0,0 +1,19 @@
+#base "npc_frag_drone.txt"
+npc_frag_drone_throwable
+{
+ title "#WPN_FRAG_DRONE"
+ suicideExplosionDelay 1.25 [$mp]
+ suicideExplosionDistance 100.0 [$mp]
+
+ Health 60 [$sp]
+ Health 60 [$mp]
+
+ DefaultModelName "models/weapons/sentry_frag/sentry_frag.mdl"
+ DefaultModelName_IMC "models/weapons/sentry_frag/sentry_frag.mdl"
+ DefaultModelName_MIL "models/weapons/sentry_frag/sentry_frag.mdl"
+
+ footstep_type "sentryfragdrone"
+
+ SuicideChaseTime 3.0 [$sp]
+ SuicideChaseTime 0.0 [$mp]
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_gunship.txt b/Northstar.CustomServers/scripts/aisettings/npc_gunship.txt
new file mode 100644
index 000000000..e4df1fe1f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_gunship.txt
@@ -0,0 +1,83 @@
+#base "base_vehicle.txt"
+npc_gunship
+{
+ HullType "HULL_FLYING_VEHICLE"
+ AIClass vehicle
+ BodyType vehicle
+ collideWithPlayer 1
+
+ ArmorType heavy
+ SmartAmmoLockType large
+
+ title #NPC_GUNSHIP
+ titleIMC #NPC_PHANTOM
+ titleMIL #NPC_HORNET
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "" [$sp]
+
+ BaseClass "npc_gunship"
+
+ DefaultModelName "models/vehicle/straton/straton_imc_gunship_01.mdl"
+ DefaultWeapon "mp_weapon_gunship_missile"
+ //DefaultWeapon "mp_weapon_gunship_turret"
+ BehaviorSelector "behavior_gunship"
+ chaseStopDist 700
+ chaseStopDistHeavyArmor 1000
+ DrawEnemyHealthBar 1
+ DrawTargetHealthBar 1
+
+ Health 10000 [$sp]
+ Health 10000 [$mp]
+
+ aiEnemy_priority 50
+
+ faceEnemyToleranceAngle 2
+ faceEnemyStrictToleranceAngle 1
+ aimConeCos 0.906 // 25 degree
+ aimConeCloseCos 0.906 // 25 degree
+
+ meleeable false
+ circleStrafeDist 1300
+
+ magneticRange 190
+ leechMaxDist 150
+ rodeoMaxDist 200
+
+ waitBetweenWeaponBurst 0
+
+ YawSpeed 30
+
+ minGoalRadius 300
+ patrolRangeMin 2000
+ patrolRangeMax 3000
+
+ goalTolerance 400
+ waypointTolerance 350
+ flyingStoppingTime 1.0
+ tiltLookaheadTime 2.0
+ yawLookaheadTime 2.0
+ randomHoverAmount 15
+ maxFlyingAccel 1500
+ maxFlyingSpeed 2200
+ maxFlyingSpeedNonCombat 1000
+
+ attackRunHeight 300
+ attackRunDist 2500
+
+ maxPitch 30
+ maxRoll 30
+
+ missileAwarenessCos -1
+
+ dodgePeriod 10 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 3 // Don't dodge more than this many times in dodgePeriod
+ minConsecutiveDodgeTime 2
+ StrafeDodgeDamage 400
+ flyingDodgeDist 800
+ enemyAimAtMeWidthHeavyArmor 150
+
+ chasecamDistanceMax 320
+ chasecamMaxOrbitDepth 90
+ chasecamOffsetUp 150
+ chasecamOffsetRight 110
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_gunship_scripted.txt b/Northstar.CustomServers/scripts/aisettings/npc_gunship_scripted.txt
new file mode 100644
index 000000000..e387551f3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_gunship_scripted.txt
@@ -0,0 +1,6 @@
+#base "npc_gunship.txt"
+npc_gunship_scripted
+{
+ BaseClass "npc_gunship_scripted"
+ title #NPC_GUNSHIP_SCRIPTED
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_marvin.txt b/Northstar.CustomServers/scripts/aisettings/npc_marvin.txt
new file mode 100644
index 000000000..495f3cceb
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_marvin.txt
@@ -0,0 +1,73 @@
+npc_marvin
+{
+ AIClass marvin
+
+ title #NPC_MARVIN
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "" [$sp]
+
+ HullType "HULL_HUMAN"
+ BodyType marvin
+ SmartAmmoLockType none
+ smartAmmoLockAttachmentName0 HEADFOCUS
+
+ marvin_type "marvin_type_walker"
+
+ BehaviorSelector "behavior_marvin"
+
+ mechanical 1
+ nonCombatAI 1
+
+ BaseClass "npc_marvin"
+
+ footstep_type "robot"
+
+ leechAnimSet marvin
+
+ DefaultModelName "models/robots/marvin/marvin.mdl"
+ DefaultWeapon ""
+
+ Health 10 [$sp]
+ Health 10 [$mp]
+
+ FOV_Vert_Offset -10
+ FOV_Near_Dist 150 // distance at which we transition between near and far FOV values
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 180
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 180
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 180
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 180
+ FOV_Combat_Far_Vert 180
+
+ YawSpeed 30
+ MoveYawSpeed 12
+ AimAngularSpeed 7
+
+ MeleeDamageMin 10
+ MeleeDamageMax 20
+ MeleeDamageRadius 64
+
+ fallDeathHeight 300
+
+ PainOnHeavyDamageThreshold 0
+ PainOnRepeatDamageThreshold 0
+
+ MinStartMoveDist 100
+ MaxArrivalDist 120
+ MinForceWalkDist 150
+
+ magneticRange 60
+
+ moveDeflectionLookAheadTime 1.5
+ reactChanceDefault 100
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite.txt b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite.txt
new file mode 100644
index 000000000..8bd840296
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite.txt
@@ -0,0 +1,107 @@
+npc_pilot_elite
+{
+ HullType "HULL_HUMAN"
+ AIClass pilot_elite
+ BodyType human
+ ArmorType normal
+ TraverseAnimType human
+
+ smartAmmoLockAttachmentName0 CHESTFOCUS
+
+ footstep_type "grunt"
+
+ title #NPC_PILOT
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "ui/targetinfo_npc_basic" [$sp]
+
+ BaseClass "npc_pilot_elite"
+
+ DefaultModelName "models/humans/pilots/sp_medium_reaper_m.mdl"
+ DefaultWeapon "mp_weapon_r97"
+ BehaviorSelector "behavior_pilot_elite"
+
+ Health 250 [$sp]
+ Health 250 [$mp]
+
+ PainOnHeavyDamageThreshold 250
+ breakOutOfPainDamageThreshold 150
+ PainOnRepeatDamageThreshold 300
+
+ allowUseCover 1
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 150 // distance at which we transition between near and far FOV values
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 130
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 60
+ FOV_Idle_Far_Vert 60
+
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 60
+ FOV_Alert_Far_Vert 60
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 130
+ FOV_Combat_Far_Vert 100
+
+ AimAngularSpeed 7
+
+ YawSpeed 30
+ MoveYawSpeed 30
+
+ faceEnemyWhileMovingDist 1000
+
+ aimassist_adspull_centerAttachmentName "CHESTFOCUS"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName "HEADSHOT"
+ aimassist_adspull_headshotRadius 13.0
+
+ MeleeDamageMin 70
+ MeleeDamageMax 80
+ MeleeDamageRadius 32
+ MeleeRange 80
+ MeleeCosAngleRange 0.2
+ MeleeChargeRange 220
+ MeleeChargeDamageMin 180
+ MeleeChargeDamageMax 200
+ MeleeChargeDamageRadius 70
+ meleeInterval 0
+ meleeChargeInterval 3
+ meleeImpactEffectTable "melee_spectre"
+
+ blockPeriod 7
+ maxBlockPerPeriod 3
+
+ dodgePeriod 4 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+ minConsecutiveDodgeTime 1.5
+ dodgeForwardThreshold 800
+ dodgeBackwardThreshold 0
+ StrafeDodgeDamage 300
+
+ circleStrafeDist 500
+ circleStrafeAngleIncrement 30
+
+ chaseStopDist 16
+ chaseStopDistHeavyArmor 250
+
+ tauntInterval 60
+
+ MinStartMoveDist 100
+ MaxArrivalDist 150
+ MinForceWalkDist 0 // 150
+
+ leechMaxDist 0
+ showFriendlyIcon 1
+
+ meleeable 1
+
+ magneticRange 125
+
+ evasiveCombatTotalHealthDiffPct 0.8
+ aggressiveCombatTotalHealthDiffPct 0.95
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin.txt b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin.txt
new file mode 100644
index 000000000..144d4df19
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin.txt
@@ -0,0 +1,89 @@
+npc_pilot_elite_assassin
+{
+ HullType "HULL_HUMAN"
+ AIClass pilot_assassin
+ BodyType human
+ ArmorType normal
+ smartAmmoLockAttachmentName0 CHESTFOCUS
+ TraverseAnimType spectre
+
+ title #NPC_PILOT_ELITE_ASSASSIN
+
+ BaseClass "npc_pilot_elite"
+
+ DefaultModelName "models/Robots/spectre/spectre_ninja.mdl"
+ DefaultWeapon "mp_weapon_r97"
+ BehaviorSelector "behavior_pilot_elite"
+
+ Health 1500
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 150 // distance at which we transition between near and far FOV values
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 130
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 60
+ FOV_Idle_Far_Vert 60
+
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 60
+ FOV_Alert_Far_Vert 60
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 130
+ FOV_Combat_Far_Vert 100
+
+ YawSpeed 30
+ MoveYawSpeed 30
+ AimAngularSpeed 20
+
+ aimassist_adspull_centerAttachmentName "CHESTFOCUS"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName "HEADSHOT"
+ aimassist_adspull_headshotRadius 13.0
+
+ MeleeDamageMin 70
+ MeleeDamageMax 80
+ MeleeDamageRadius 32
+ MeleeRange 80
+ MeleeCosAngleRange 0.2
+ MeleeChargeRange 220
+ MeleeChargeDamageMin 180
+ MeleeChargeDamageMax 200
+ MeleeChargeDamageRadius 70
+ meleeInterval 0
+ meleeChargeInterval 3
+ meleeImpactEffectTable "melee_spectre"
+
+ blockPeriod 7
+ maxBlockPerPeriod 3
+
+ dodgePeriod 4 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+ minConsecutiveDodgeTime 1.5
+ dodgeForwardThreshold 800
+ dodgeBackwardThreshold 0
+ StrafeDodgeDamage 300
+ circleStrafeDist 400
+
+ chaseStopDist 16
+ chaseStopDistHeavyArmor 250
+
+ tauntInterval 60
+
+ MinStartMoveDist 100
+ MaxArrivalDist 150
+ MinForceWalkDist 150
+
+ leechMaxDist 0
+ showFriendlyIcon 1
+
+ decloakOnShoot 1
+
+ meleeable 1
+
+ magneticRange 125
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_cqb.txt b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_cqb.txt
new file mode 100644
index 000000000..74bf638ef
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_cqb.txt
@@ -0,0 +1,16 @@
+#base "npc_pilot_elite_assassin.txt"
+npc_pilot_elite_assassin_cqb
+{
+ title #NPC_PILOT_ELITE_ASSASSIN_CQB
+
+ BehaviorSelector "behavior_pilot_elite_assassin_cqb"
+
+ canCloak 1
+
+// blockPeriod 7
+// maxBlockPerPeriod 3
+
+ dodgePeriod 5 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 3 // Don't dodge more than this many times in dodgePeriod
+ minConsecutiveDodgeTime 1.0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_sniper.txt b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_sniper.txt
new file mode 100644
index 000000000..f9885b1d5
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_assassin_sniper.txt
@@ -0,0 +1,14 @@
+#base "npc_pilot_elite_assassin.txt"
+npc_pilot_elite_assassin_sniper
+{
+ title #NPC_PILOT_ELITE_ASSASSIN_SNIPE
+
+ canCloak 1
+
+ DefaultWeapon "mp_weapon_dmr"
+ BehaviorSelector "behavior_pilot_elite_assassin_sniper"
+
+ Health 1500 //hack for testing
+
+ decloakOnShoot 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_s2s.txt b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_s2s.txt
new file mode 100644
index 000000000..2a497d2ea
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_pilot_elite_s2s.txt
@@ -0,0 +1,6 @@
+#base "npc_pilot_elite.txt"
+
+npc_pilot_elite_s2s
+{
+ LookDistDefault_Combat 15000 //so the 6-4 can shoot at distant ships in the intro
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_prowler.txt b/Northstar.CustomServers/scripts/aisettings/npc_prowler.txt
new file mode 100644
index 000000000..1df9538f0
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_prowler.txt
@@ -0,0 +1,148 @@
+npc_prowler
+{
+ HullType "HULL_PROWLER"
+ useSequenceBounds 1
+ orientToGround 1
+ AIClass prowler
+ TraverseAnimType prowler
+ BodyType human
+ ArmorType normal
+ collideWithPlayer 1
+
+ title #NPC_PROWLER
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "" [$sp]
+
+ BaseClass "npc_prowler"
+
+ footstep_type "prowler"
+ quadruped 1
+
+ DefaultModelName "models/creatures/prowler/r2_prowler.mdl"
+ DefaultWeapon ""
+ BehaviorSelector "behavior_prowler"
+
+ GibModel0 "models/gibs/human_gibs.mdl"
+
+ melee_charge_set prowler
+
+ Health 280
+
+ painOnHeavyDamageThreshold 50
+ PainOnRepeatDamageThreshold 210
+ heavyPainMinInterval 4
+ PainOnSurpriseHit 0
+ PainWhileRunning 1
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 150 // distance at which we transition between near and far FOV values
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 160
+ FOV_Idle_Near_Vert 160
+ FOV_Idle_Far_Horz 120
+ FOV_Idle_Far_Vert 120
+
+ FOV_Alert_Near_Horz 160
+ FOV_Alert_Near_Vert 160
+ FOV_Alert_Far_Horz 150
+ FOV_Alert_Far_Vert 120
+
+ FOV_Combat_Near_Horz 160
+ FOV_Combat_Near_Vert 160
+ FOV_Combat_Far_Horz 150
+ FOV_Combat_Far_Vert 120
+
+ faceEnemyToleranceAngle 45
+ faceEnemyStrictToleranceAngle 45
+ MoveYawSpeed 15
+ AimAngularSpeed 20
+ allowTurn45Anims 0
+
+ aimassist_adspull_centerAttachmentName "aimassist_center"
+ aimassist_adspull_centerRadius 18.0
+ aimassist_adspull_headshotAttachmentName "HEADSHOT"
+ aimassist_adspull_headshotRadius 13.0
+
+ MeleeDamageMin 60 [$mp]
+ MeleeDamageMax 80 [$mp]
+ MeleeDamageMinHeavyArmor 60 [$mp]
+ MeleeDamageMaxHeavyArmor 80 [$mp]
+ MeleeDamageRadius 60 [$mp]
+ MeleeRange 80 [$mp]
+ MeleeInterval 1.5 [$mp]
+ MeleeMaxCombo 2 [$mp]
+ MeleeChargeDamageMin 100 [$mp]
+ MeleeChargeDamageMax 100 [$mp]
+ MeleeChargeDamageMinHeavyArmor 100 [$mp]
+ MeleeChargeDamageMaxHeavyArmor 100 [$mp]
+ MeleeChargeDamageRadius 60 [$mp]
+ MeleeChargeRange 240 [$mp]
+ meleeChargeInterval 3 [$mp]
+
+ MeleeDamageMin 15 [$sp]
+ MeleeDamageMax 20 [$sp]
+ MeleeDamageMinHeavyArmor 150 [$sp]
+ MeleeDamageMaxHeavyArmor 150 [$sp]
+ MeleeDamageRadius 60 [$sp]
+ MeleeRange 80 [$sp]
+ MeleeInterval 1.5 [$sp]
+ MeleeMaxCombo 2 [$sp]
+ MeleeChargeDamageMin 25 [$sp]
+ MeleeChargeDamageMax 25 [$sp]
+ MeleeChargeDamageMinHeavyArmor 300 [$sp]
+ MeleeChargeDamageMaxHeavyArmor 300 [$sp]
+ MeleeChargeDamageRadius 60 [$sp]
+ MeleeChargeRange 240 [$sp]
+ meleeChargeInterval 3 [$sp]
+
+ MeleeCosAngleRange 0.707 // Matches faceEnemyStrictToleranceAngle
+ MeleeEnemyArmorType any
+ MeleeChargeEnemyArmorType any
+
+ meleeHighOffset 70
+
+ meleeImpactEffectTable "melee_prowler"
+ syncedMeleeEngageDist 40
+ meleeable 1
+
+ canBeAlertedByEnemiesOutsideOfMaxDist 0
+ returnToIdleTime 15
+ maxEnemyDist 950
+ maxEnemyDistHeavyArmor 1200
+ aiEnemy_usePriorityDist 0
+
+ pathMaxDetourBase 1000
+ pathMaxDetourMultiplier 2.0
+ minGoalRadius 256
+
+ MinStartMoveDist 100
+ MaxArrivalDist 230
+ MinForceWalkDist 0
+ circleStrafeDist 420
+ enemyAimAtMeWidth 100
+
+ chaseStopDist 100
+ chaseStopDistHeavyArmor 200
+ chaseStopVerticalDist 300
+ chaseTryRunningDodgeWhenAimedAtMinDist 300 // This should be greater than MeleeChargeRange so that he prioritizes leap attacking over dodging
+
+ dodgePeriod 4 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+
+ traverseCostFactor 0.5
+
+ showFriendlyIcon 1
+
+ allowFlee 1
+ allowSignals 1
+ allowPatrol 1
+ allowInvestigate 0 // no investigate
+
+ patrolRangeMin 600
+ patrolRangeMax 800
+
+ moveDeflectionLookAheadTime 0.5
+ reactChanceDefault 100
+ reactBulletChanceDefault 90
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier.txt
new file mode 100644
index 000000000..e5dcfeb17
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier.txt
@@ -0,0 +1,201 @@
+
+npc_soldier
+{
+ AIClass human
+ ArmorType normal
+ BaseClass "npc_soldier"
+ BodyType human
+ HullType "HULL_HUMAN"
+ SmartAmmoLockType small // defaults to small
+ TraverseAnimType human
+ traverseCostFactor 5.0
+
+ difficultTraverseFlags 256 // 1 << 8 (TRAVERSE_JUMP_UP_DOWN_128)
+
+ BehaviorSelector "behavior_soldier" [$mp]
+ BehaviorSelector "behavior_sp_soldier" [$sp]
+
+ footstep_type "grunt"
+ footstepSprintSpeedThreshold 100
+
+ title #NPC_SOLDIER
+ title_IMC #NPC_GRUNT_IMC
+ title_MIL #NPC_GRUNT_MILITIA
+ ui_targetinfo "ui/targetinfo_soldier_bounty" [$mp]
+ ui_targetinfo "ui/targetinfo_cockpit_name" [$sp]
+
+ IsGenericGrunt 1
+
+ GrenadeWeaponName mp_weapon_frag_grenade
+
+ AimAngularSpeed 7
+ allowFlee 1
+ allowInvestigate 1 [$sp]
+ allowPatrol 1 [$sp]
+ allowSignals 1
+ allowUseCover 1
+ DefaultModelName "models/humans/grunts/imc_grunt_rifle.mdl"
+ DefaultModelName_IMC "models/humans/grunts/imc_grunt_rifle.mdl"
+ DefaultModelName_MIL "models/humans/grunts/mlt_grunt_rifle.mdl"
+
+ DefaultWeapon "mp_weapon_rspn101"
+ WeaponCapacity "PilotMainWeapons"
+ GibModel0 "models/gibs/human_gibs.mdl"
+
+ headshotFX "P_headshot_human"
+
+ faceEnemyStrictToleranceAngle 30
+ faceEnemyWhileMovingDist 400 [$sp]
+ faceEnemyWhileMovingDist 600 [$mp]
+
+ Health 90 [$sp]
+ Health 50 [$mp]
+
+ PainOnRepeatDamageThreshold 39 [$sp]
+ PainOnRepeatDamageThreshold 15 [$mp]
+ RepeatDamageTimeInterval 8
+
+ PainOnHeavyDamageThreshold 80 // more than health so never happens for base soldier but will happen for higher health ones
+ PainOnSurpriseHit 1
+ PainWhileRunning 1
+
+ fallDeathHeight 300
+
+ aimassist_adspull_centerAttachmentName "CHESTFOCUS"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName "HEADSHOT"
+ aimassist_adspull_headshotRadius 8.0
+
+ MeleeDamageMax 30 [$mp]
+ MeleeDamageMin 30 [$mp]
+ MeleeDamageMax 53 [$sp]
+ MeleeDamageMin 53 [$sp]
+ MeleeDamageRadius 40 [$mp]
+ MeleeRange 40 [$mp]
+ MeleeDamageRadius 60 [$sp]
+ MeleeRange 60 [$sp]
+ MeleeDamageForce 15000
+
+ MeleeChargeDamageMin 20
+ MeleeChargeDamageMax 20
+ MeleeChargeDamageRadius 35
+ MeleeChargeRange 0
+ MeleeChargeCosAngleRange 0.866 // 30 degrees
+ MeleeChargeInterval 3
+ MeleeChargeEnemyArmorType normal
+ MeleeChargeOnlyPlayers 1
+
+ MaxArrivalDist 170
+ MinForceWalkDist 150
+ MinStartMoveDist 100
+ MoveYawSpeed 12
+
+ moveDeflectionLookAheadTime 0.5 [$sp]
+ moveDeflectionLookAheadTime 0.5 [$mp]
+
+ LookDistDefault_Alert 3000
+ LookDistDefault_Combat 5000
+ LookDistDefault_Idle 1500
+
+ "mp" [$mp]
+ {
+ crouchCombatDistInner 350
+ crouchCombatDistOuter 450
+
+ 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 500
+ crouchCombatDistOuter 650
+
+ 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 80
+ 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
+
+ showTitle 1
+
+ resetBurstOnStopShootOverlay 1
+ restrictAimGunToValidSequences 1
+ showFriendlyIcon 1
+ waitBetweenWeaponBurst 1
+ suppressLSP_duration 10 [$sp]
+ suppressLSP_duration 10 [$mp]
+ enemyAimAtMeWidth 100
+
+ aiEnemy_usePriorityDist 2000 [$sp]
+ aiEnemy_immediateThreatDist 230 [$sp]
+ aiEnemy_immediateThreatDist 94 [$mp]
+
+ braceWhenDangerousAreaDisplacementFails 1
+
+ reactChanceDefault 90 [$sp]
+ reactChanceDefault 60 [$mp]
+ reactBulletChanceDefault 90 [$sp]
+ reactBulletChanceDefault 60 [$mp]
+ reactFriendlyChanceDefault 100
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_bish.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_bish.txt
new file mode 100644
index 000000000..b4e6eee54
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_bish.txt
@@ -0,0 +1,8 @@
+#base "npc_soldier.txt"
+npc_soldier_bish
+{
+ SettingsTitle "Bish"
+ DefaultModelName_IMC "models/humans/mcor_hero/bish/mcor_hero_bish.mdl"
+ DefaultModelName_MIL "models/humans/mcor_hero/bish/mcor_hero_bish.mdl"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_blisk.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_blisk.txt
new file mode 100644
index 000000000..82548c97e
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_blisk.txt
@@ -0,0 +1,8 @@
+#base "npc_soldier.txt"
+npc_soldier_blisk
+{
+ SettingsTitle "Blisk"
+ DefaultModelName_IMC "models/humans/imc_villain/blisk/imc_villain_blisk.mdl"
+ DefaultModelName_MIL "models/humans/imc_villain/blisk/imc_villain_blisk.mdl"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_drone_summoner.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_drone_summoner.txt
new file mode 100644
index 000000000..2ebedae21
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_drone_summoner.txt
@@ -0,0 +1,4 @@
+#base "npc_soldier_shield_captain.txt"
+npc_soldier_drone_summoner
+{
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_bear.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_bear.txt
new file mode 100644
index 000000000..d10daea62
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_bear.txt
@@ -0,0 +1,14 @@
+#base "npc_soldier.txt"
+npc_soldier_hero_bear
+{
+ title #NPC_BEAR_NAME
+ SettingsTitle #NPC_BEAR_NAME
+ IsGenericGrunt 0
+
+ DefaultModelName "models/humans/pilots/sp_heavy_roog_m.mdl"
+ DefaultModelName_IMC "models/humans/pilots/sp_heavy_roog_m.mdl"
+ DefaultModelName_MIL "models/humans/pilots/sp_heavy_roog_m.mdl"
+
+ DefaultWeapon "mp_weapon_mastiff"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_sarah.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_sarah.txt
new file mode 100644
index 000000000..fcc3901b6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_hero_sarah.txt
@@ -0,0 +1,12 @@
+#base "npc_soldier.txt"
+npc_soldier_hero_sarah
+{
+ title #NPC_SARAH_NAME
+ SettingsTitle #NPC_SARAH_NAME
+ IsGenericGrunt 0
+
+ DefaultModelName "models/humans/heroes/mlt_hero_sarah.mdl"
+ DefaultModelName_IMC "models/humans/heroes/mlt_hero_sarah.mdl"
+ DefaultModelName_MIL "models/humans/heroes/mlt_hero_sarah.mdl"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_eliteguard.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_eliteguard.txt
new file mode 100644
index 000000000..f09efadad
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_eliteguard.txt
@@ -0,0 +1,12 @@
+#base "npc_soldier.txt"
+
+npc_soldier_pve_eliteguard
+{
+ title "Elite Guard"
+
+ DefaultModelName "models/humans/grunts/imc_grunt_rifle_pve.mdl"
+ DefaultModelName_IMC "models/humans/grunts/imc_grunt_rifle_pve.mdl"
+ DefaultModelName_MIL "models/humans/grunts/imc_grunt_rifle_pve.mdl"
+
+ returnToIdleTime 3
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_sandbox.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_sandbox.txt
new file mode 100644
index 000000000..cb4e5784e
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_sandbox.txt
@@ -0,0 +1,7 @@
+#base "npc_soldier.txt"
+
+npc_soldier_pve_sandbox
+{
+ title "Grunt"
+ returnToIdleTime 3
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_specialist.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_specialist.txt
new file mode 100644
index 000000000..d3abdef29
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_pve_specialist.txt
@@ -0,0 +1,45 @@
+#base "npc_soldier.txt"
+npc_soldier_pve_specialist
+{
+ SummonDrone npc_drone_plasma
+ title #NPC_SPECIALIST
+
+ IsGenericGrunt 0
+
+ mechanical 1
+ magneticRange 125
+
+ DefaultWeapon "mp_weapon_lstar"
+ GrenadeWeaponName "mp_weapon_frag_drone"
+
+ Health 120
+ PainOnRepeatDamageThreshold 90
+
+ DefaultModelName "models/humans/grunts/imc_grunt_shield_captain.mdl"
+ DefaultModelName_IMC "models/humans/grunts/imc_grunt_shield_captain.mdl"
+ DefaultModelName_MIL "models/humans/grunts/imc_grunt_shield_captain.mdl"
+
+ 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"
+
+ footstep_type "robopilot"
+
+ returnToIdleTime 3
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_shield_captain.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_shield_captain.txt
new file mode 100644
index 000000000..96516c659
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_shield_captain.txt
@@ -0,0 +1,27 @@
+#base "npc_soldier.txt"
+npc_soldier_shield_captain
+{
+ title #NPC_SOLDIER_SHIELD_CAPTAIN
+ PersonalShield 1
+
+ DefaultWeapon "mp_weapon_lmg"
+
+ Health 350 [$mp]
+ Health 150 [$sp]
+
+ PainOnRepeatDamageThreshold 260 [$mp]
+ PainOnRepeatDamageThreshold 110 [$sp]
+
+ AimAngularSpeed 3
+ faceEnemyToleranceAngle 35
+
+ IsGenericGrunt 0
+
+ DefaultModelName "models/humans/grunts/imc_grunt_shield_captain.mdl"
+ DefaultModelName_IMC "models/humans/grunts/imc_grunt_shield_captain.mdl"
+ DefaultModelName_MIL "models/humans/grunts/imc_grunt_shield_captain.mdl"
+
+ headshotFX "P_headshot_pilot"
+
+ braceWhenDangerousAreaDisplacementFails 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_sidearm.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_sidearm.txt
new file mode 100644
index 000000000..e5062df0d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_sidearm.txt
@@ -0,0 +1,6 @@
+#base "npc_soldier.txt"
+npc_soldier_sidearm
+{
+ title "Pistol Grunt"
+ DefaultWeapon "mp_weapon_semipistol"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist.txt
new file mode 100644
index 000000000..fc7a77a0f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist.txt
@@ -0,0 +1,43 @@
+#base "npc_soldier.txt"
+npc_soldier_specialist
+{
+ SummonDrone npc_drone_plasma
+ title #NPC_SPECIALIST
+
+ IsGenericGrunt 0
+
+ mechanical 1
+ magneticRange 125
+
+ DefaultWeapon "mp_weapon_lstar"
+ GrenadeWeaponName "mp_weapon_frag_drone"
+
+ Health 120
+ PainOnRepeatDamageThreshold 90
+
+ DefaultModelName "models/humans/pilots/sp_light_ged_m.mdl"
+ DefaultModelName_IMC "models/humans/pilots/sp_light_ged_m.mdl"
+ DefaultModelName_MIL "models/humans/pilots/sp_light_ged_m.mdl"
+
+ 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"
+
+ footstep_type "robopilot"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist_militia.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist_militia.txt
new file mode 100644
index 000000000..f08a13469
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_specialist_militia.txt
@@ -0,0 +1,44 @@
+#base "npc_soldier.txt"
+npc_soldier_specialist_militia
+{
+ SummonDrone npc_drone_plasma
+ title #NPC_SPECIALIST_MILITIA
+
+ IsGenericGrunt 0
+
+ mechanical 1
+ magneticRange 125
+
+ DefaultWeapon "mp_weapon_lstar"
+ GrenadeWeaponName "mp_weapon_frag_drone"
+
+ Health 120
+ PainOnRepeatDamageThreshold 90
+
+ DefaultModelName "models/humans/grunts/grunt_specialist.mdl"
+ DefaultModelName_IMC "models/humans/grunts/grunt_specialist.mdl"
+ DefaultModelName_MIL "models/humans/grunts/grunt_specialist.mdl"
+
+ 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"
+
+ footstep_type "robopilot"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_spyglass.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_spyglass.txt
new file mode 100644
index 000000000..6fd6c86d5
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_spyglass.txt
@@ -0,0 +1,8 @@
+#base "npc_soldier.txt"
+npc_soldier_spyglass
+{
+ SettingsTitle "Spyglass"
+ DefaultModelName_IMC "models/humans/imc_villain/spyglass/imc_villain_spyglass.mdl"
+ DefaultModelName_MIL "models/humans/imc_villain/spyglass/imc_villain_spyglass.mdl"
+}
+
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_soldier_training_sentry.txt b/Northstar.CustomServers/scripts/aisettings/npc_soldier_training_sentry.txt
new file mode 100644
index 000000000..37634d9a4
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_soldier_training_sentry.txt
@@ -0,0 +1,24 @@
+#base "npc_soldier.txt"
+npc_soldier_training_sentry
+{
+ title #NPC_SOLDIER_TRAINING_SENTRY
+
+ FOV_Vert_Offset 10
+ 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_Idle_Near_Horz 180
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 180
+ FOV_Idle_Far_Vert 80
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 180
+ FOV_Alert_Far_Vert 80
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 180
+ FOV_Combat_Far_Vert 80
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_spectre.txt b/Northstar.CustomServers/scripts/aisettings/npc_spectre.txt
new file mode 100644
index 000000000..27efebad2
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_spectre.txt
@@ -0,0 +1,216 @@
+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
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_spectre_mortar.txt b/Northstar.CustomServers/scripts/aisettings/npc_spectre_mortar.txt
new file mode 100644
index 000000000..6c2151ebd
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_spectre_mortar.txt
@@ -0,0 +1,45 @@
+#base "npc_spectre.txt"
+npc_spectre_mortar
+{
+ title #NPC_SPECTRE_MORTAR
+
+ minGoalRadius 8
+ assaultHarvester 0
+
+ "mp" [$mp]
+ {
+ crouchCombatDistInner 300
+ crouchCombatDistOuter 350
+
+ FOV_Alert_Far_Horz 100
+ FOV_Alert_Far_Vert 180
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 120
+ FOV_Combat_Far_Horz 100
+ FOV_Combat_Far_Vert 120
+ 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
+ }
+ "sp" [$sp]
+ {
+ 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
+ }
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker.txt
new file mode 100644
index 000000000..ae3347e9d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker.txt
@@ -0,0 +1,162 @@
+npc_stalker
+{
+ AIClass stalker
+ TraverseAnimType stalker
+
+ title #NPC_STALKER
+ ui_targetinfo "ui/targetinfo_stalker_bounty" [$mp]
+ ui_targetinfo "ui/targetinfo_npc_hackable" [$sp]
+ ui_targetinfo_offset_z 12
+
+ useSequenceBounds 1
+
+ aiEnemy_usePriorityDist 1300
+ aiEnemy_immediateThreatDist 200
+
+ AimAngularSpeed 7
+
+ ArmorType normal
+
+ BaseClass "npc_stalker"
+ BodyType human
+
+ footstep_type "stalker"
+ footstepSprintSpeedThreshold 85
+ mechanical 1
+
+ BehaviorSelector "behavior_stalker"
+ crawlingSettingsWrapper "npc_stalker_crawling"
+
+ chaseStopDist 75 [$sp]
+ chaseStopDistHeavyArmor 200 [$sp]
+
+ chaseStopDist 500 [$mp]
+ chaseStopDistHeavyArmor 800 [$mp]
+
+ traverseCostFactor 5.0 // need to take into account slow move speed
+ minGoalRadius 1600
+
+ DefaultModelName "models/robots/stalker/robot_stalker.mdl" [$sp]
+ DefaultModelName_IMC "models/robots/stalker/robot_stalker.mdl" [$sp]
+ DefaultModelName_MIL "models/robots/stalker/robot_stalker.mdl" [$sp]
+
+ DefaultModelName "models/robots/stalker/robot_stalker_red.mdl" [$mp]
+ DefaultModelName_IMC "models/robots/stalker/robot_stalker_red.mdl" [$mp]
+ DefaultModelName_MIL "models/robots/stalker/robot_stalker_red.mdl" [$mp]
+
+ DefaultWeapon "mp_weapon_lstar"
+ WeaponCapacity "PilotMainWeapons"
+
+ longJumpHeight 2000
+
+ GibModel0 "models/robots/stalker/robot_stalker_l_leg_gib.mdl" [$sp]
+ GibModel1 "models/robots/stalker/robot_stalker_r_leg_gib.mdl" [$sp]
+ GibModel2 "models/robots/stalker/robot_stalker_l_arm_gib.mdl" [$sp]
+ GibModel3 "models/robots/stalker/robot_stalker_r_arm_gib.mdl" [$sp]
+ GibModelSoftened0 "models/robots/stalker/robot_stalker_l_leg_gib.mdl" [$sp]
+ GibModelSoftened1 "models/robots/stalker/robot_stalker_r_leg_gib.mdl" [$sp]
+ GibModelSoftened2 "models/robots/stalker/robot_stalker_l_arm_gib.mdl" [$sp]
+ GibModelSoftened3 "models/robots/stalker/robot_stalker_r_arm_gib.mdl" [$sp]
+ GibModel0 "models/robots/stalker/robot_stalker_l_leg_red_gib.mdl" [$mp]
+ GibModel1 "models/robots/stalker/robot_stalker_r_leg_red_gib.mdl" [$mp]
+ GibModel2 "models/robots/stalker/robot_stalker_l_arm_red_gib.mdl" [$mp]
+ GibModel3 "models/robots/stalker/robot_stalker_r_arm_red_gib.mdl" [$mp]
+ GibModelSoftened0 "models/robots/stalker/robot_stalker_l_leg_red_gib.mdl" [$mp]
+ GibModelSoftened1 "models/robots/stalker/robot_stalker_r_leg_red_gib.mdl" [$mp]
+ GibModelSoftened2 "models/robots/stalker/robot_stalker_l_arm_red_gib.mdl" [$mp]
+ GibModelSoftened3 "models/robots/stalker/robot_stalker_r_arm_red_gib.mdl" [$mp]
+ GibAttachment0 "left_leg"
+ GibAttachment1 "right_leg"
+ GibAttachment2 "left_arm"
+ GibAttachment3 "right_arm"
+ GibSpeed 100
+ GibAngularSpeed 5
+ GibMaxDist 1600
+ GibFX "P_exp_spectre_death"
+ GibSound "Explo_Spectre"
+
+ headshotFX "P_headshot_pilot_robot"
+ landingImpactTable "pilot_landing"
+ footstepImpactTable "pilot_foostep"
+
+ faceEnemyStrictToleranceAngle 25
+ faceEnemyWhileMovingDist 60
+
+ FOV_Idle_Far_Horz 60
+ FOV_Idle_Far_Vert 50
+ FOV_Idle_Near_Horz 130
+ FOV_Idle_Near_Vert 70
+
+ FOV_Alert_Far_Horz 60
+ FOV_Alert_Far_Vert 50
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 70
+
+ FOV_Combat_Far_Horz 60
+ FOV_Combat_Far_Vert 50
+ FOV_Combat_Near_Horz 130
+ FOV_Combat_Near_Vert 70
+
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+ FOV_Near_Dist 350 // distance at which we transition between near and far FOV values
+ FOV_Vert_Offset 0
+
+ HullType "HULL_HUMAN"
+ magneticRange 125
+ MaxArrivalDist 170
+
+ aimassist_adspull_centerAttachmentName "CHESTFOCUS"
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotAttachmentName "HEADSHOT"
+ aimassist_adspull_headshotRadius 8.0
+ aimassist_adspull_noPitchUp 1 // don't want players to get sucked to chest when they're trying to chop the legs
+
+ MeleeDamageMin 20 [$mp]
+ MeleeDamageMax 20 [$mp]
+ Health 150 [$mp]
+
+ PainOnHeavyDamageThreshold 80 [$mp] // turned off for mp
+ PainOnRepeatDamageThreshold 50 [$mp]
+
+ MeleeDamageMin 53 [$sp]
+ MeleeDamageMax 53 [$sp]
+ Health 250 [$sp]
+
+ PainOnHeavyDamageThreshold 59 [$sp]
+ PainOnRepeatDamageThreshold 75 [$sp]
+
+ MeleeDamageRadius 30 [$mp]
+ MeleeRange 50 [$mp]
+
+ MeleeDamageRadius 60 [$sp]
+ MeleeRange 60 [$sp]
+
+ MeleeDamageForce 40000
+
+ meleeImpactEffectTable "melee_spectre"
+
+ MinForceWalkDist 0
+ MinStartMoveDist 100
+ MoveYawSpeed 12
+ allowTurn45Anims 0
+ moveDeflectionLookAheadTime 1.5
+
+ DrawEnemyHealthBar 0
+ DrawTargetHealthBar 0
+
+ resetBurstOnStopShootOverlay 1
+ restrictAimGunToValidSequences 1
+
+ showFriendlyIcon 1
+ showTitle 1 [$mp]
+ showTitle 1 [$sp]
+
+ smartAmmoLockAttachmentName0 HEADFOCUS
+ smartAmmoLockAttachmentName1 left_arm
+ smartAmmoLockAttachmentName2 right_arm
+ smartAmmoLockAttachmentName3 foot_L_sole
+ smartAmmoLockAttachmentName4 foot_R_sole
+ waitBetweenWeaponBurst 1
+ suppressLSP_duration 8
+ reactChanceDefault 90
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling.txt
new file mode 100644
index 000000000..3a2516717
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling.txt
@@ -0,0 +1,33 @@
+#base "npc_stalker.txt"
+npc_stalker_crawling
+{
+ ScriptSpawnAsCrawler 1
+
+ AIClass stalker_crawling
+
+ useSequenceBounds 1
+ orientToGround 1
+
+ DefaultWeapon ""
+ BehaviorSelector "behavior_stalker_crawling"
+
+ faceEnemyToleranceAngle 45
+
+ eyeOffsetOverride_enabled 1
+ eyeOffsetOverride "5 0 20"
+
+ chaseStopDist 45
+
+ allowWalkAnims 0
+
+ MeleeDamageMax 35
+ MeleeDamageMin 30
+
+ MeleeDamageRadius 40
+ MeleeRange 45
+ MeleeInterval 0
+
+ aimassist_adspull_centerRadius 11.0
+ aimassist_adspull_headshotRadius 7.0
+ aimassist_adspull_noPitchUp 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_fd.txt
new file mode 100644
index 000000000..62a9d7ebd
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_fd.txt
@@ -0,0 +1,5 @@
+#base "npc_stalker_crawling.txt"
+npc_stalker_crawling_fd
+{
+ minGoalRadius 16
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_mossy.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_mossy.txt
new file mode 100644
index 000000000..48fc894dd
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_crawling_mossy.txt
@@ -0,0 +1,11 @@
+#base "npc_stalker_crawling.txt"
+npc_stalker_crawling_mossy
+{
+ title "#NPC_STALKER_ZOMBIE_MOSSY" [$sp]
+
+ DefaultModelName "models/robots/stalker/robot_stalker_mossy.mdl"
+ DefaultModelName_IMC "models/robots/stalker/robot_stalker_mossy.mdl"
+ DefaultModelName_MIL "models/robots/stalker/robot_stalker_mossy.mdl"
+
+ Health 150
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_fd.txt
new file mode 100644
index 000000000..cc21b4418
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_fd.txt
@@ -0,0 +1,6 @@
+#base "npc_stalker.txt"
+npc_stalker_fd
+{
+ crawlingSettingsWrapper "npc_stalker_crawling_fd"
+ minGoalRadius 16
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie.txt
new file mode 100644
index 000000000..fddee0fbf
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie.txt
@@ -0,0 +1,15 @@
+#base "npc_stalker.txt"
+npc_stalker_zombie
+{
+ SpawnLimping 1
+
+ title "#NPC_STALKER_ZOMBIE" [$sp]
+
+ DefaultWeapon ""
+ Health 150
+
+ allowWalkAnims 0
+
+ leechAnimSet spectre
+ leechMaxDist 150
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie_mossy.txt b/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie_mossy.txt
new file mode 100644
index 000000000..8dccbf6f1
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_stalker_zombie_mossy.txt
@@ -0,0 +1,9 @@
+#base "npc_stalker_zombie.txt"
+npc_stalker_zombie_mossy
+{
+ title "#NPC_STALKER_ZOMBIE_MOSSY" [$sp]
+
+ DefaultModelName "models/robots/stalker/robot_stalker_mossy.mdl"
+ DefaultModelName_IMC "models/robots/stalker/robot_stalker_mossy.mdl"
+ DefaultModelName_MIL "models/robots/stalker/robot_stalker_mossy.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_super_spectre.txt b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre.txt
new file mode 100644
index 000000000..f5d30aa5a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre.txt
@@ -0,0 +1,210 @@
+npc_super_spectre
+{
+ HullType "HULL_MEDIUM"
+ AIClass super_spectre
+ TraverseAnimType super_spectre
+ collideWithPlayer 1
+
+ ragdollOnTraverseDeath 0
+ mechanical 1
+ BodyType super_spectre
+ ArmorType heavy [$sp]
+ ArmorType heavy [$mp]
+ SmartAmmoLockType large
+ smartAmmoLockAttachmentName0 CHESTFOCUS
+ smartAmmoLockAttachmentName1 HEADFOCUS
+ smartAmmoLockAttachmentName2 exp_torso_main
+ smartAmmoLockAttachmentName3 shell
+ smartAmmoLockAttachmentName4 shell2
+
+ suppressLSP_duration 5
+
+ title #NPC_SUPER_SPECTRE
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "" [$sp]
+
+ DrawEnemyHealthBar 1 [$mp]
+ DrawTargetHealthBar 1 [$mp]
+
+ DrawEnemyHealthBar 0 [$sp]
+ DrawTargetHealthBar 0 [$sp]
+
+ footstep_type "superspectre"
+ footstepSprintSpeedThreshold 500
+
+ BaseClass "npc_super_spectre"
+
+ DefaultModelName "models/robots/super_spectre/super_spectre_v1.mdl"
+ DefaultWeapon "mp_weapon_super_spectre"
+ ForceAutoPrecacheDefaultWeapon 1
+ AdditionalScriptWeapon "mp_weapon_spectre_spawner"
+ AdditionalAISettings "npc_frag_drone"
+ BehaviorSelector "behavior_super_spectre"
+
+ GibModel0 "models/robots/super_spectre/super_spectre_left_arm.mdl"
+ GibModel1 "models/robots/super_spectre/super_spectre_right_arm.mdl"
+ GibModel2 "models/robots/super_spectre/super_spectre_left_leg.mdl"
+ GibModel3 "models/robots/super_spectre/super_spectre_right_leg.mdl"
+ GibModelSoftened0 "models/robots/super_spectre/super_spectre_left_arm.mdl"
+ GibModelSoftened1 "models/robots/super_spectre/super_spectre_right_arm.mdl"
+ GibModelSoftened2 "models/robots/super_spectre/super_spectre_left_leg.mdl"
+ GibModelSoftened3 "models/robots/super_spectre/super_spectre_right_leg.mdl"
+ GibAttachment0 "FX_DAM_VENT_RL"
+ GibAttachment1 "FX_DAM_VENT_RR"
+ GibAttachment2 "THRUST_L_FOOT"
+ GibAttachment3 "THRUST_R_FOOT"
+ GibSpeed 450
+ GibAngularSpeed 30
+ GibMaxDist 16000
+ GibFX "P_sup_spectre_death"
+ //GibSound "ai_reaper_explo_3p"
+
+ //leechAnimSet super_spectre
+ //onLeechFuncName SuperSpectreOnLeeched
+ //leechAnimTag REF
+ //leechDataKnifeTag KNIFE
+ leechMaxDist 0
+
+ Health 3500 [$mp]
+ Health 3000 [$sp]
+
+ PainOnHeavyDamageThreshold 450
+ PainOnRepeatDamageThreshold 2400
+ breakOutOfPainDamageThreshold 500
+ PainOnSurpriseHit 0
+ PainWhileRunning 0
+
+ FOV_Vert_Offset 0
+ FOV_Near_Dist 500 // 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_Idle_Near_Horz 130
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 60
+ FOV_Idle_Far_Vert 60
+
+ FOV_Alert_Near_Horz 130
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 60
+ FOV_Alert_Far_Vert 60
+
+ FOV_Combat_Near_Horz 160
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 130
+ FOV_Combat_Far_Vert 60
+
+ MoveYawSpeed 15
+ AimAngularSpeed 20
+
+ moveDeflectionSmallObstacleRadius 25
+
+ aimassist_adspull_centerAttachmentName "exp_torso_core_fx"
+ aimassist_adspull_centerRadius 18.0
+ aimassist_adspull_headshotAttachmentName "HEADFOCUS"
+ aimassist_adspull_headshotRadius 17.0
+
+ // The common ground slam melee attack he does is actually defined by damagedef_reaper_groundslam
+ MeleeCosAngleRange -1 // 360
+ MeleeDamageForce 50000
+ MeleeChargeDamageForce 50000
+
+ // MP melee settings
+ MeleeDamageMin 50 [$mp]
+ MeleeDamageMax 70 [$mp]
+ MeleeDamageMinHeavyArmor 1000 [$mp]
+ MeleeDamageMaxHeavyArmor 2000 [$mp]
+ MeleeChargeDamageMin 60 [$mp]
+ MeleeChargeDamageMax 80 [$mp]
+ MeleeChargeDamageMinHeavyArmor 1000 [$mp]
+ MeleeChargeDamageMaxHeavyArmor 2000 [$mp]
+
+ // SP melee settings
+ MeleeDamageMin 20 [$sp]
+ MeleeDamageMax 30 [$sp]
+ MeleeDamageMinHeavyArmor 1000 [$sp]
+ MeleeDamageMaxHeavyArmor 2000 [$sp]
+ MeleeChargeDamageMin 40 [$sp]
+ MeleeChargeDamageMax 50 [$sp]
+ MeleeChargeDamageMinHeavyArmor 1000 [$sp]
+ MeleeChargeDamageMaxHeavyArmor 2000 [$sp]
+
+ MeleeDamageRadius 120
+ MeleeRange 150
+ MeleeChargeDamageRadius 100
+ MeleeChargeDamageHeight 120
+ MeleeChargeRange 150
+
+ MeleeEnemyArmorType any
+ MeleeChargeEnemyArmorType normal
+ MeleeChargeCosAngleRange 0.5
+ MeleeDamageFlags "DF_MELEE | DF_KNOCK_BACK"
+ MeleeChargeDamageFlags "DF_MELEE | DF_KNOCK_BACK"
+
+ meleeCameraShakeDuration 1.0
+ meleeImpactEffectTable "melee_superSpectre"
+ //landingImpactTable "titan_landing"
+ //footstepImpactTable "titan_footstep"
+ dodgeImpactTable "titan_dodge"
+
+ specialRangeAttackMinDist 700
+ specialRangeAttackMaxDist 1500
+
+ faceEnemyToleranceAngle 45
+ faceEnemyStrictToleranceAngle 45
+
+ waitBetweenWeaponBurst 0
+
+ MinStartMoveDist 100
+ MaxArrivalDist 250
+ MinForceWalkDist 1500
+ MinForceWalkDistVsHeavyArmor 150
+
+ titanStompable 0
+ rodeoMaxDist 0
+ showFriendlyIcon 1
+
+ aiEnemy_usePriorityDist 1500
+ aiEnemy_priority 20
+
+ magneticRange 125
+ chaseStopDist 150
+ chaseStopDistHeavyArmor 1200
+ chaseOnlyReachable 1
+
+ traverseCostFactor 2.0
+ minGoalRadius 256
+
+ dodgePeriod 6 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 6 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ minConsecutiveDodgeTime 0
+ missileAwarenessCos -0.1
+ dodgeForwardThreshold 800
+ dodgeBackwardThreshold 400
+ StrafeDodgeDamage 400
+ lockOnDodgeHealthThreshold 0.8
+ enemyAimAtMeWidthHeavyArmor 75
+
+ longJumpCheckMinInterval 8
+ longJumpCheckMaxInterval 15
+ longJumpMinDist 600
+ longJumpMaxDist 1000
+ longJumpHeight 300
+
+ chasecamDistanceMax 320
+ chasecamMaxOrbitDepth 90
+ chasecamOffsetUp 0
+ chasecamOffsetRight 110
+
+ enable_frag_drones 1 [$sp]
+ enable_frag_drones 0 [$mp]
+
+ reactChanceDefault 100
+ reactSurprised_maxRadius 2000
+ reactSurprised_distDelta 600
+
+ nuke_on_death 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_aitdm.txt b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_aitdm.txt
new file mode 100644
index 000000000..1a9e1cf11
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_aitdm.txt
@@ -0,0 +1,17 @@
+#base "npc_super_spectre.txt"
+npc_super_spectre_aitdm
+{
+ enable_frag_drones 0
+ enable_harvester_assault 1
+
+ MinForceWalkDist 300
+ MinForceWalkDistVsHeavyArmor 150
+
+ Health 3500 [$mp]
+ Health 3000 [$sp]
+
+ ui_targetinfo "ui/targetinfo_reaper_bounty" [$mp]
+ ui_targetinfo "" [$sp]
+
+ PainOnHeavyDamageThreshold 1000
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_burnmeter.txt b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_burnmeter.txt
new file mode 100644
index 000000000..fc52becda
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_burnmeter.txt
@@ -0,0 +1,6 @@
+#base "npc_super_spectre.txt"
+npc_super_spectre_burnmeter
+{
+ enable_frag_drones 0
+ ui_targetinfo "ui/targetinfo_reaper_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_calmer.txt b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_calmer.txt
new file mode 100644
index 000000000..0acb249fc
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_calmer.txt
@@ -0,0 +1,5 @@
+#base "npc_super_spectre.txt"
+npc_super_spectre_calmer
+{
+ nuke_on_death 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_fd.txt
new file mode 100644
index 000000000..3a6a9da77
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_super_spectre_fd.txt
@@ -0,0 +1,17 @@
+#base "npc_super_spectre.txt"
+npc_super_spectre_fd
+{
+ enable_frag_drones 0
+ assaultHarvester 0
+
+ minGoalRadius 64
+
+ MinForceWalkDist 0
+ MinForceWalkDistVsHeavyArmor 0
+
+ Health 3500 [$mp]
+ Health 3000 [$sp]
+
+ ui_targetinfo "ui/targetinfo_reaper_bounty" [$mp]
+ ui_targetinfo "" [$sp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan.txt
new file mode 100644
index 000000000..b2d7f38fb
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan.txt
@@ -0,0 +1,172 @@
+npc_titan
+{
+ HullType "HULL_TITAN"
+ useSequenceBounds 1
+ collideWithPlayer 1
+ AIClass titan
+ BodyType titan
+ ArmorType heavy
+ SmartAmmoLockType large
+ TraverseAnimType titan
+ title #NPC_TITAN
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "ui/targetinfo_titan_sp" [$sp]
+
+ smartAmmoLockAttachmentName0 SMART_AMMO_HEAD
+ smartAmmoLockAttachmentName1 SMART_AMMO_TORSO_FRONT
+ smartAmmoLockAttachmentName2 SMART_AMMO_TORSO_BASE
+ smartAmmoLockAttachmentName3 SMART_AMMO_ARM_LEFT
+ smartAmmoLockAttachmentName4 SMART_AMMO_ARM_RIGHT
+
+ BaseClass "npc_titan"
+
+ DefaultModelName "models/titans/buddy/titan_buddy.mdl"
+ DefaultWeapon "mp_titanweapon_particle_accelerator"
+ BehaviorSelector "behavior_titan"
+ WeaponCapacity "TitanMainWeapons"
+ npc_titan_player_settings "titan_atlas"
+
+ mechanical 1
+
+ showHolsteredWeapons 1
+
+ Health 8000 [$sp]
+ Health 8000 [$mp]
+
+ PainOnHeavyDamageThreshold 1000
+ PainOnRepeatDamageThreshold 3000
+ RepeatDamageTimeInterval 3
+ breakOutOfPainDamageThreshold 300
+ lightPainMinInterval 1.5
+ heavyPainMinInterval 8
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 180 // use near values up to this distance
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 140
+ FOV_Idle_Near_Vert 120
+ FOV_Idle_Far_Horz 100
+ FOV_Idle_Far_Vert 70
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 90
+ FOV_Alert_Far_Horz 170
+ FOV_Alert_Far_Vert 70
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 120
+ FOV_Combat_Far_Horz 170
+ FOV_Combat_Far_Vert 90
+
+ YawSpeed 25
+ MoveYawSpeed 15
+ AimAngularSpeed 10
+
+ moveDeflectionSmallObstacleRadius 25
+
+ MeleeDamageMin 150
+ MeleeDamageMax 300
+ MeleeDamageMinHeavyArmor 500
+ MeleeDamageMaxHeavyArmor 600
+ MeleeDamageRadius 120
+ MeleeDamageForce 2500000
+ MeleeChargeDamageForce 2800000
+ MeleeDamageUpwardBias 0.5
+ MeleeRange 200
+ MeleeChargeRange 270
+ MeleeChargeDamageRadius 150
+ MeleeChargeDamageHeight 150
+ MeleeChargeDamageMin 500
+ MeleeChargeDamageMax 700
+ MeleeChargeDamageMinHeavyArmor 700
+ MeleeChargeDamageMaxHeavyArmor 1000
+ meleeInterval 2
+ meleeChargeInterval 3
+ meleeMaxCombo 2
+ meleeCameraShakeDuration 1.0
+ MeleeEnemyArmorType any
+ MeleeChargeEnemyArmorType any
+ meleeImpactEffectTable "melee_titan"
+ syncedMeleeEngageDist 80
+ syncedMeleePressToInitiateDist 300
+ landingImpactTable "titan_landing"
+ footstepImpactTable "titan_footstep"
+ dodgeImpactTable "titan_dodge"
+
+ circleStrafeDist 1000
+ circleStrafeAngleIncrement 20
+
+ faceEnemyToleranceAngle 85
+ faceEnemyWhileMovingDist 3500
+ faceEnemyWhileMovingDuration 3
+ StrafeDodgeDamage 800
+
+ takeCoverFromEnemyRadius 700
+ chaseStopDist 200
+ chaseStopDistHeavyArmor 1000
+
+ MinStartMoveDist 300
+ MaxArrivalDist 320
+ MinForceWalkDist 300
+
+ showFriendlyIcon 1
+ restrictAimGunToValidSequences 1
+ waitBetweenWeaponBurst 1
+ shootableByFriendlyPlayer 1
+
+ allowFlee 0
+ allowSignals 1
+ allowPatrol 1
+ allowInvestigate 1
+ allowCrouchAnims 0
+
+ patrolRangeMin 1000
+ patrolRangeMax 2500
+
+ minGoalRadius 256
+
+ aiEnemy_immediateThreatDist 800 [$sp]
+ aiEnemy_usePriorityDist 2200
+ aiEnemy_priority 50
+
+ ai_passThroughThickness 128
+
+ titan_footstep_damage_height_check_ratio 0.15
+ titan_footstep_damage_min_speed 50
+ titan_footstep_damage_interval 1.0
+ titan_footstep_damage_dist_interval 150
+
+ chasecamDistanceMax 320
+ chasecamMaxOrbitDepth 90
+ chasecamOffsetUp 0
+ chasecamOffsetRight 110
+
+ magneticRange 190
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+ dodgeForwardThreshold 1000
+ dodgeBackwardThreshold 1600
+ enemyAimAtMeWidthHeavyArmor 50
+ reactChanceDefault 100
+
+ evasiveCombatShieldPct 0.8 // if my shield is above 80% don't be evasive
+
+ evasiveCombatHealthSegmentPct 0.0
+ aggressiveCombatHealthSegmentPct 0.0
+
+ aggressiveCombatTotalHealthDiffPct 0.3 // if my health+shield - enemy heatlh+shield is > 30% of my max health+shield
+
+ evasiveCombatTotalHealthDiffPct 1.0 [$mp] // if enemy health+shield - my heatlh+shield is > 100% of my max health+shield
+ evasiveCombatTotalHealthDiffPct 0.2 [$sp] // if enemy health+shield - my heatlh+shield is > 20% of my max health+shield
+
+ evasiveCombatHealthChangeRateDiff -200
+ aggresiveCombatHealthChangeRateDiff 100
+
+ sharedEnergyTotal 1000
+ sharedEnergyRegenDelay 0.2
+ sharedEnergyRegenRate 100.0
+
+ DrawEnemyHealthBar 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_arc.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_arc.txt
new file mode 100644
index 000000000..5cd5c2a3e
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_arc.txt
@@ -0,0 +1,10 @@
+#base "npc_titan.txt"
+npc_titan_arc
+{
+ title #NPC_TITAN_ARC
+ WeaponCapacity "Locked"
+ npc_titan_player_settings "titan_stryder"
+ footstep_type "stryder"
+ is_arc_titan 1
+ faceEnemyWhileMovingDist 1024
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas.txt
new file mode 100644
index 000000000..8ac0d2eab
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas.txt
@@ -0,0 +1,21 @@
+#base "npc_titan.txt"
+
+npc_titan_atlas
+{
+ footstep_type "atlas"
+ title #NPC_TITAN_ATLAS
+
+ StrafeDodgeDamage 800
+ PainOnRepeatDamageThreshold 3400
+
+ dodgePeriod 8 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 12 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ DefaultModelName "models/titans/medium/titan_medium_wraith.mdl" [$mp]
+ DefaultModelName "models/titans/medium/sp_titan_medium_wraith.mdl" [$sp]
+
+ npc_titan_player_settings "titan_atlas"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_ion_prime_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_ion_prime_bounty.txt
new file mode 100644
index 000000000..c042f71d6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_ion_prime_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_atlas_stickybomb_bounty.txt"
+npc_titan_atlas_ion_prime_bounty
+{
+ npc_titan_player_settings "titan_atlas_ion_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb.txt
new file mode 100644
index 000000000..0ce4acb3b
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb.txt
@@ -0,0 +1,19 @@
+#base "npc_titan_atlas.txt"
+npc_titan_atlas_stickybomb
+{
+ title "#NPC_TITAN_ATLAS_STICKYBOMB"
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_stickybomb"
+
+ sharedEnergyTotal 1000
+ sharedEnergyRegenDelay 0.2
+ sharedEnergyRegenRate 100.0
+
+ evasiveCombatHealthChangeRateDiff -100
+ aggresiveCombatHealthChangeRateDiff 100
+
+ DefaultModelName "models/titans/medium/titan_medium_ajax.mdl" [$mp]
+ DefaultModelName "models/titans/medium/sp_titan_medium_ajax.mdl" [$sp]
+
+ footstep_type "ion"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_boss_fd.txt
new file mode 100644
index 000000000..0da91a358
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_boss_fd.txt
@@ -0,0 +1,23 @@
+#base "npc_titan_atlas_stickybomb.txt"
+npc_titan_atlas_stickybomb_boss_fd
+{
+ title "#NPC_TITAN_ATLAS_STICKYBOMB"
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_stickybomb"
+
+ sharedEnergyTotal 1000
+ sharedEnergyRegenDelay 0.2
+ sharedEnergyRegenRate 100.0
+
+ evasiveCombatHealthChangeRateDiff -100
+ aggresiveCombatHealthChangeRateDiff 100
+
+ DefaultModelName "models/titans/medium/titan_medium_ajax.mdl" [$mp]
+ DefaultModelName "models/titans/medium/sp_titan_medium_ajax.mdl" [$sp]
+
+ footstep_type "ion"
+
+ titanCamoIndex -1
+ titanDecalIndex 12
+ titanSkinIndex 8
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_bounty.txt
new file mode 100644
index 000000000..8fcda68e9
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_stickybomb_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_atlas_stickybomb.txt"
+npc_titan_atlas_stickybomb_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker.txt
new file mode 100644
index 000000000..5a57b9ee7
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker.txt
@@ -0,0 +1,19 @@
+#base "npc_titan_atlas.txt"
+npc_titan_atlas_tracker
+{
+ title #NPC_TITAN_ATLAS_TRACKER
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_tracker"
+
+ BehaviorSelector "behavior_titan_long_range"
+
+ circleStrafeDist 1500
+ circleStrafeAngleIncrement 15
+
+ aggresiveCombatHealthChangeRateDiff 300
+
+ DefaultModelName "models/titans/medium/titan_medium_wraith.mdl" [$mp]
+ DefaultModelName "models/titans/medium/sp_titan_medium_wraith.mdl" [$sp]
+
+ footstep_type "tone"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_boss_fd.txt
new file mode 100644
index 000000000..07a653c11
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_boss_fd.txt
@@ -0,0 +1,23 @@
+#base "npc_titan_atlas_tracker.txt"
+npc_titan_atlas_tracker_boss_fd
+{
+ title #NPC_TITAN_ATLAS_TRACKER
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_tracker"
+
+ BehaviorSelector "behavior_titan_long_range"
+
+ circleStrafeDist 1500
+ circleStrafeAngleIncrement 15
+
+ aggresiveCombatHealthChangeRateDiff 300
+
+ DefaultModelName "models/titans/medium/titan_medium_wraith.mdl" [$mp]
+ DefaultModelName "models/titans/medium/sp_titan_medium_wraith.mdl" [$sp]
+
+ footstep_type "tone"
+
+ titanCamoIndex 30
+ titanDecalIndex 12
+ titanSkinIndex 2
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_bounty.txt
new file mode 100644
index 000000000..dc413e82b
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_atlas_tracker.txt"
+npc_titan_atlas_tracker_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_fd_sniper.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_fd_sniper.txt
new file mode 100644
index 000000000..1703dd9f8
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_fd_sniper.txt
@@ -0,0 +1,7 @@
+#base "npc_titan_atlas_tracker.txt"
+npc_titan_atlas_tracker_fd_sniper
+{
+ title #NPC_TITAN_SNIPER_FD
+ minGoalRadius 100
+ assaultHarvester 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_mortar.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_mortar.txt
new file mode 100644
index 000000000..8dfc4baae
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_tracker_mortar.txt
@@ -0,0 +1,10 @@
+#base "npc_titan_atlas_tracker.txt"
+npc_titan_atlas_tracker_mortar
+{
+ title #NPC_TITAN_MORTAR
+
+ npc_titan_player_settings "titan_atlas_tracker_mortar"
+ minGoalRadius 32
+ assaultHarvester 0
+ allowCrouchAnims 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard.txt
new file mode 100644
index 000000000..ec63b128d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard.txt
@@ -0,0 +1,19 @@
+#base "npc_titan_atlas.txt"
+npc_titan_atlas_vanguard
+{
+ title #NPC_TITAN_ATLAS_VANGUARD
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_vanguard"
+
+ BehaviorSelector "behavior_titan_long_range"
+
+ circleStrafeDist 1500
+ circleStrafeAngleIncrement 15
+
+ aggresiveCombatHealthChangeRateDiff 300
+
+ DefaultModelName "models/titans/medium/titan_medium_vanguard.mdl" [$mp]
+ DefaultModelName "models/titans/medium/titan_medium_vanguard.mdl" [$sp]
+
+ footstep_type "buddy"
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_boss_fd.txt
new file mode 100644
index 000000000..335eee599
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_boss_fd.txt
@@ -0,0 +1,23 @@
+#base "npc_titan_atlas_vanguard.txt"
+npc_titan_atlas_vanguard_boss_fd
+{
+ title #NPC_TITAN_ATLAS_VANGUARD
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_atlas_vanguard"
+
+ BehaviorSelector "behavior_titan_long_range"
+
+ circleStrafeDist 1500
+ circleStrafeAngleIncrement 15
+
+ aggresiveCombatHealthChangeRateDiff 300
+
+ DefaultModelName "models/titans/medium/titan_medium_vanguard.mdl" [$mp]
+ DefaultModelName "models/titans/medium/titan_medium_vanguard.mdl" [$sp]
+
+ footstep_type "buddy"
+
+ titanCamoIndex 133
+ titanDecalIndex 0
+ titanSkinIndex 2
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_bounty.txt
new file mode 100644
index 000000000..eebad86a3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_atlas_vanguard_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_atlas_vanguard.txt"
+npc_titan_atlas_vanguard_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto.txt
new file mode 100644
index 000000000..14f3c2456
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto.txt
@@ -0,0 +1,43 @@
+#base "npc_titan.txt"
+
+npc_titan_auto
+{
+ title #NPC_TITAN_AUTO
+
+ BaseClass "npc_titan"
+
+ footstep_type "atlas"
+
+ aggressiveCombatTotalHealthDiffPct 0.5
+
+ "general" [$mp]
+ {
+ BehaviorSelector "behavior_mp_auto_titan"
+ chaseStopDistHeavyArmor 1000
+ dodgeBackwardThreshold 1600
+ dodgeForwardThreshold 800
+ faceEnemyWhileMovingDist 2500
+ faceEnemyWhileMovingDist 3500
+ Health 8000
+ lockOnDodgeHealthThreshold 0.6
+ MeleeChargeDamageMaxHeavyArmor 2000
+ MeleeChargeDamageMinHeavyArmor 2000
+ MeleeDamageMaxHeavyArmor 500
+ MeleeDamageMinHeavyArmor 400
+ StrafeDodgeDamage 800
+ }
+
+ "general" [$sp]
+ {
+ BehaviorSelector "behavior_sp_auto_titan"
+ chaseStopDistHeavyArmor 600
+ dodgeBackwardThreshold 2000
+ dodgeForwardThreshold 1500
+ Health 7500
+ MeleeChargeDamageMaxHeavyArmor 1500
+ MeleeChargeDamageMinHeavyArmor 1000
+ MeleeDamageMaxHeavyArmor 1000
+ MeleeDamageMinHeavyArmor 750
+ StrafeDodgeDamage 800
+ }
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas.txt
new file mode 100644
index 000000000..17a65f129
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas.txt
@@ -0,0 +1,15 @@
+#base "npc_titan_auto.txt"
+
+npc_titan_auto_atlas
+{
+ footstep_type "atlas"
+ title #NPC_TITAN_AUTO_ATLAS
+
+ StrafeDodgeDamage 800
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+
+ ai_passThroughThickness 128
+ DefaultModelName "models/titans/medium/titan_medium_ajax.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_ion_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_ion_prime.txt
new file mode 100644
index 000000000..5545e3d7f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_ion_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_atlas_stickybomb.txt"
+
+npc_titan_auto_atlas_ion_prime
+{
+ npc_titan_player_settings "titan_atlas_ion_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_rocketeer.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_rocketeer.txt
new file mode 100644
index 000000000..48fa9b994
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_rocketeer.txt
@@ -0,0 +1,10 @@
+#base "npc_titan_auto_atlas.txt"
+
+npc_titan_auto_atlas_rocketeer
+{
+ title "#NPC_TITAN_AUTO_ATLAS_ROCKETEER"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_atlas_rocketeer"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_stickybomb.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_stickybomb.txt
new file mode 100644
index 000000000..72307ee8b
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_stickybomb.txt
@@ -0,0 +1,12 @@
+#base "npc_titan_auto_atlas.txt"
+
+npc_titan_auto_atlas_stickybomb
+{
+ title "#NPC_TITAN_AUTO_ATLAS_LASER"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_atlas_stickybomb"
+
+ footstep_type "ion"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tone_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tone_prime.txt
new file mode 100644
index 000000000..a475466f3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tone_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_atlas_tracker.txt"
+
+npc_titan_auto_atlas_tone_prime
+{
+ npc_titan_player_settings "titan_atlas_tone_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tracker.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tracker.txt
new file mode 100644
index 000000000..55bc4b0a3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_tracker.txt
@@ -0,0 +1,12 @@
+#base "npc_titan_auto_atlas.txt"
+
+npc_titan_auto_atlas_tracker
+{
+ title "#NPC_TITAN_AUTO_ATLAS_TRACKER"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_atlas_tracker"
+
+ footstep_type "tone"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_vanguard.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_vanguard.txt
new file mode 100644
index 000000000..9e0028889
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_atlas_vanguard.txt
@@ -0,0 +1,12 @@
+#base "npc_titan_auto_atlas.txt"
+
+npc_titan_auto_atlas_vanguard
+{
+ title "#NPC_TITAN_AUTO_ATLAS_VANGUARD"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_atlas_vanguard"
+
+ footstep_type "buddy"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre.txt
new file mode 100644
index 000000000..e291df60f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre.txt
@@ -0,0 +1,13 @@
+#base "npc_titan_auto.txt"
+
+npc_titan_auto_ogre
+{
+ footstep_type "ogre"
+ title #NPC_TITAN_AUTO_OGRE
+
+ StrafeDodgeDamage 1000
+
+ dodgePeriod 7 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ DefaultModelName "models/titans/heavy/titan_heavy_ogre.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_fighter.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_fighter.txt
new file mode 100644
index 000000000..921055c00
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_fighter.txt
@@ -0,0 +1,10 @@
+#base "npc_titan_auto_ogre.txt"
+
+npc_titan_auto_ogre_fighter
+{
+ title "#NPC_TITAN_AUTO_OGRE_FIGHTER"
+
+ dodgePeriod 7 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_ogre_fighter"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_legion_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_legion_prime.txt
new file mode 100644
index 000000000..16afd2268
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_legion_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_ogre_minigun.txt"
+
+npc_titan_auto_ogre_legion_prime
+{
+ npc_titan_player_settings "titan_ogre_legion_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_meteor.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_meteor.txt
new file mode 100644
index 000000000..385a401b8
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_meteor.txt
@@ -0,0 +1,11 @@
+#base "npc_titan_auto_ogre.txt"
+
+npc_titan_auto_ogre_meteor
+{
+ title "#NPC_TITAN_AUTO_OGRE_METEOR"
+
+ maxDodgePerPeriod 0 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_ogre_meteor"
+
+ footstep_type "scorch"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_minigun.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_minigun.txt
new file mode 100644
index 000000000..33e9b2632
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_minigun.txt
@@ -0,0 +1,17 @@
+#base "npc_titan_auto_ogre.txt"
+
+npc_titan_auto_ogre_minigun
+{
+ title "#NPC_TITAN_AUTO_OGRE_MINIGUN"
+
+ maxDodgePerPeriod 0 // Don't dodge more than this many times in dodgePeriod
+
+ aimAngularSpeed 2
+ aimConeCos 0.5 // 60 degree
+ aimConeCloseCos 0.5 // 60 degree
+
+ npc_titan_player_settings "titan_ogre_minigun"
+ windup_time 1.0
+
+ footstep_type "legion"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_scorch_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_scorch_prime.txt
new file mode 100644
index 000000000..8f0928b0a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_ogre_scorch_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_ogre_meteor.txt"
+
+npc_titan_auto_ogre_scorch_prime
+{
+ npc_titan_player_settings "titan_ogre_scorch_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder.txt
new file mode 100644
index 000000000..a1a6fbe97
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder.txt
@@ -0,0 +1,11 @@
+#base "npc_titan_auto.txt"
+
+npc_titan_auto_stryder
+{
+ footstep_type "northstar"
+ title #NPC_TITAN_AUTO_STRYDER
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 3 // Don't dodge more than this many times in dodgePeriod
+ DefaultModelName "models/titans/light/titan_light_locust.mdl"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_arc.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_arc.txt
new file mode 100644
index 000000000..82e384e84
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_arc.txt
@@ -0,0 +1,10 @@
+#base "npc_titan_auto_stryder.txt"
+
+npc_titan_auto_stryder_arc
+{
+ title "#NPC_TITAN_AUTO_STRYDER_ARC"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_stryder_arc"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_leadwall.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_leadwall.txt
new file mode 100644
index 000000000..81896b86f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_leadwall.txt
@@ -0,0 +1,12 @@
+#base "npc_titan_auto_stryder.txt"
+
+npc_titan_auto_stryder_leadwall
+{
+ title "#NPC_TITAN_AUTO_STRYDER_SWORD"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_stryder_leadwall"
+
+ footstep_type "ronin"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_northstar_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_northstar_prime.txt
new file mode 100644
index 000000000..0ce6d33e7
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_northstar_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_stryder_sniper.txt"
+
+npc_titan_auto_stryder_northstar_prime
+{
+ npc_titan_player_settings "titan_stryder_northstar_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_ronin_prime.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_ronin_prime.txt
new file mode 100644
index 000000000..0d00942fe
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_ronin_prime.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_auto_stryder_leadwall.txt"
+
+npc_titan_auto_stryder_ronin_prime
+{
+ npc_titan_player_settings "titan_stryder_ronin_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_sniper.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_sniper.txt
new file mode 100644
index 000000000..b43a5a0c6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_auto_stryder_sniper.txt
@@ -0,0 +1,12 @@
+#base "npc_titan_auto_stryder.txt"
+
+npc_titan_auto_stryder_sniper
+{
+ title "#NPC_TITAN_AUTO_STRYDER_SNIPER"
+
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+ npc_titan_player_settings "titan_stryder_sniper"
+
+ footstep_type "northstar"
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy.txt
new file mode 100644
index 000000000..453f0d2cb
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy.txt
@@ -0,0 +1,25 @@
+#base "npc_titan.txt"
+
+npc_titan_buddy
+{
+ AIClass titan_buddy
+ footstep_type "buddy"
+ title #NPC_BT_NAME
+
+ ui_targetinfo "" [$mp]
+ ui_targetinfo "ui/targetinfo_cockpit_name" [$sp]
+
+ DefaultModelName "models/titans/buddy/titan_buddy.mdl"
+ npc_titan_player_settings "titan_buddy"
+ BehaviorSelector "behavior_titan_buddy"
+
+ dodgeForwardThreshold 2500
+
+ nonCombatTurnAnimsOnlyForIdle 1
+ allowPatrol 0
+
+ MeleeChargeRange 100
+
+ returnToIdleTime 3
+ can_traverse 1
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_s2s.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_s2s.txt
new file mode 100644
index 000000000..83b687ca7
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_s2s.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_buddy.txt"
+
+npc_titan_buddy_s2s
+{
+ LookDistDefault_Combat 15000 //so he and sarah can fire on ships at the intro
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_skyway.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_skyway.txt
new file mode 100644
index 000000000..12403bef0
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_buddy_skyway.txt
@@ -0,0 +1,7 @@
+#base "npc_titan_buddy.txt"
+
+npc_titan_buddy_skyway
+{
+ DefaultModelName "models/titans/buddy/titan_buddy_skyway.mdl"
+ npc_titan_player_settings "titan_buddy_spare"
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_mortar.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_mortar.txt
new file mode 100644
index 000000000..7f80721db
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_mortar.txt
@@ -0,0 +1,8 @@
+#base "npc_titan.txt"
+npc_titan_mortar
+{
+ title #NPC_TITAN_MORTAR
+ WeaponCapacity "Locked"
+ npc_titan_player_settings "titan_atlas"
+ is_mortar_titan 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_nuke.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_nuke.txt
new file mode 100644
index 000000000..3cd1eabb4
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_nuke.txt
@@ -0,0 +1,9 @@
+#base "npc_titan.txt"
+npc_titan_nuke
+{
+ title #NPC_TITAN_NUKE
+ WeaponCapacity "Locked"
+ npc_titan_player_settings "titan_ogre"
+ is_nuke_titan 1
+ faceEnemyWhileMovingDist 500
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre.txt
new file mode 100644
index 000000000..7a284ae8f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre.txt
@@ -0,0 +1,22 @@
+#base "npc_titan.txt"
+
+npc_titan_ogre
+{
+ footstep_type "ogre"
+ title #NPC_TITAN_OGRE
+
+ StrafeDodgeDamage 1000
+ PainOnRepeatDamageThreshold 3500
+
+ MeleeChargeRange 300
+
+ dodgePeriod 10 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 12 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 0 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ DefaultModelName "models/titans/heavy/titan_heavy_ogre.mdl" [$mp]
+ DefaultModelName "models/titans/heavy/sp_titan_heavy_deadbolt.mdl" [$sp]
+ npc_titan_player_settings "titan_ogre"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter.txt
new file mode 100644
index 000000000..d1f504777
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter.txt
@@ -0,0 +1,26 @@
+#base "npc_titan_ogre.txt"
+npc_titan_ogre_fighter
+{
+ title #NPC_TITAN_OGRE_FIGHTER
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_ogre_fighter"
+
+ BehaviorSelector "behavior_titan_melee"
+
+ PainOnHeavyDamageThreshold 10000
+
+ chaseStopDist 200
+ chaseStopDistHeavyArmor 200
+
+ meleeInterval 1
+ meleeChargeInterval 2
+ meleeMaxCombo 4
+
+ //evasiveCombatHealthSegmentPct 0.0 [$mp] // if my segment is down to 20% be evasive
+ //evasiveCombatHealthSegmentPct 0.2 [$sp] // if my segment is down to 20% be evasive
+ //aggressiveCombatHealthSegmentPct 0.0 [$mp] // if enemy segement is down to 40% be aggressive
+ //aggressiveCombatHealthSegmentPct 0.4 [$sp] // if enemy segement is down to 40% be aggressive
+
+ evasiveCombatHealthChangeRateDiff -600
+ aggresiveCombatHealthChangeRateDiff -400
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter_berserker_core.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter_berserker_core.txt
new file mode 100644
index 000000000..c3058416b
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_fighter_berserker_core.txt
@@ -0,0 +1,34 @@
+#base "npc_titan_ogre_fighter.txt"
+npc_titan_ogre_fighter_berserker_core
+{
+ BehaviorSelector "behavior_titan_melee_core"
+
+ chaseStopDist 100
+ chaseStopDistHeavyArmor 100
+
+ dodgePeriod 1.2 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+
+ PainOnHeavyDamageThreshold 0 // no heavy damage
+ PainOnRepeatDamageThreshold 1
+
+ meleeInterval 0.5
+ meleeChargeInterval 0.5
+ meleeMaxCombo 8
+
+ MeleeDamageMin 2000
+ MeleeDamageMax 3000
+ MeleeDamageMinHeavyArmor 2000
+ MeleeDamageMaxHeavyArmor 3000
+ MeleeDamageRadius 150
+ MeleeDamageForce 3000000
+ MeleeChargeDamageForce 3200000
+ MeleeRange 200
+ MeleeChargeRange 300
+ MeleeChargeDamageRadius 100
+ MeleeChargeDamageHeight 100
+ MeleeChargeDamageMin 500
+ MeleeChargeDamageMax 500
+ MeleeChargeDamageMinHeavyArmor 3000
+ MeleeChargeDamageMaxHeavyArmor 4000
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_legion_prime_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_legion_prime_bounty.txt
new file mode 100644
index 000000000..9c1028391
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_legion_prime_bounty.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_ogre_minigun_bounty.txt"
+npc_titan_ogre_legion_prime_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+ npc_titan_player_settings "titan_ogre_legion_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor.txt
new file mode 100644
index 000000000..b935f34a2
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor.txt
@@ -0,0 +1,24 @@
+#base "npc_titan_ogre.txt"
+npc_titan_ogre_meteor
+{
+ title #NPC_TITAN_OGRE_METEOR
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_ogre_meteor"
+
+ BehaviorSelector "behavior_titan_ogre_meteor"
+
+ chaseStopDist 500
+ chaseStopDistHeavyArmor 700
+ circleStrafeDist 600
+
+ evasiveCombatTotalHealthDiffPct 0.1
+
+ evasiveCombatHealthChangeRateDiff -300
+ aggresiveCombatHealthChangeRateDiff 50
+
+ footstep_type "scorch"
+
+ DefaultModelName "models/titans/heavy/titan_heavy_ogre.mdl" [$mp]
+ DefaultModelName "models/titans/heavy/sp_titan_heavy_ogre.mdl" [$sp]
+
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_boss_fd.txt
new file mode 100644
index 000000000..ce863d299
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_boss_fd.txt
@@ -0,0 +1,27 @@
+#base "npc_titan_ogre_meteor.txt"
+npc_titan_ogre_meteor_boss_fd
+{
+ title #NPC_TITAN_OGRE_METEOR
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_ogre_meteor"
+
+ BehaviorSelector "behavior_titan_ogre_meteor"
+
+ chaseStopDist 500
+ chaseStopDistHeavyArmor 700
+ circleStrafeDist 600
+
+ evasiveCombatTotalHealthDiffPct 0.1
+
+ evasiveCombatHealthChangeRateDiff -300
+ aggresiveCombatHealthChangeRateDiff 50
+
+ footstep_type "scorch"
+
+ DefaultModelName "models/titans/heavy/titan_heavy_ogre.mdl" [$mp]
+ DefaultModelName "models/titans/heavy/sp_titan_heavy_ogre.mdl" [$sp]
+
+ titanCamoIndex -1
+ titanDecalIndex 0
+ titanSkinIndex 7
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_bounty.txt
new file mode 100644
index 000000000..62a8afad8
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_ogre_meteor.txt"
+npc_titan_ogre_meteor_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_nuke.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_nuke.txt
new file mode 100644
index 000000000..5a73c6f0e
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_meteor_nuke.txt
@@ -0,0 +1,11 @@
+#base "npc_titan_ogre_meteor.txt"
+npc_titan_ogre_meteor_nuke
+{
+ title #NPC_TITAN_AUTO_NUKE
+ npc_titan_player_settings "titan_ogre_meteor_nuke"
+ minGoalRadius 32
+
+ titanCamoIndex -1
+ titanDecalIndex 11
+ titanSkinIndex 4
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun.txt
new file mode 100644
index 000000000..16055d80f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun.txt
@@ -0,0 +1,27 @@
+#base "npc_titan_ogre.txt"
+npc_titan_ogre_minigun
+{
+ title #NPC_TITAN_OGRE_MINIGUN
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_ogre_minigun"
+
+ BehaviorSelector "behavior_titan_ogre_minigun"
+
+ lightPainMinInterval 4
+
+ StrafeDodgeDamage 1200
+
+ chaseStopDist 2000
+ chaseStopDistHeavyArmor 2000
+
+ aimAngularSpeed 2
+ aimConeCos 0.5 // 60 degree
+ aimConeCloseCos 0.5 // 60 degree
+
+ footstep_type "legion"
+
+ DefaultModelName "models/titans/heavy/titan_heavy_deadbolt.mdl" [$mp]
+ DefaultModelName "models/titans/heavy/sp_titan_heavy_deadbolt.mdl" [$sp]
+
+ windup_time 1.0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_boss_fd.txt
new file mode 100644
index 000000000..2587a3315
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_boss_fd.txt
@@ -0,0 +1,31 @@
+#base "npc_titan_ogre_minigun.txt"
+npc_titan_ogre_minigun_boss_fd
+{
+ title #NPC_TITAN_OGRE_MINIGUN
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_ogre_minigun"
+
+ BehaviorSelector "behavior_titan_ogre_minigun"
+
+ lightPainMinInterval 4
+
+ StrafeDodgeDamage 1200
+
+ chaseStopDist 2000
+ chaseStopDistHeavyArmor 2000
+
+ aimAngularSpeed 2
+ aimConeCos 0.5 // 60 degree
+ aimConeCloseCos 0.5 // 60 degree
+
+ footstep_type "legion"
+
+ DefaultModelName "models/titans/heavy/titan_heavy_deadbolt.mdl" [$mp]
+ DefaultModelName "models/titans/heavy/sp_titan_heavy_deadbolt.mdl" [$sp]
+
+ windup_time 1.0
+
+ titanCamoIndex 30
+ titanDecalIndex 12
+ titanSkinIndex 2
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_bounty.txt
new file mode 100644
index 000000000..aa4ab86fe
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_ogre_minigun.txt"
+npc_titan_ogre_minigun_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_nuke.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_nuke.txt
new file mode 100644
index 000000000..fba50cbaf
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_minigun_nuke.txt
@@ -0,0 +1,13 @@
+#base "npc_titan_ogre_minigun.txt"
+npc_titan_ogre_minigun_nuke
+{
+ title #NPC_TITAN_AUTO_NUKE
+ npc_titan_player_settings "titan_ogre_minigun_nuke"
+ minGoalRadius 32
+
+ BehaviorSelector "behavior_titan_ogre_minigun_nuke"
+
+ titanCamoIndex 133
+ titanDecalIndex 15
+ titanSkinIndex 2
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_scorch_prime_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_scorch_prime_bounty.txt
new file mode 100644
index 000000000..d8a8510d3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_ogre_scorch_prime_bounty.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_ogre_meteor_bounty.txt"
+npc_titan_ogre_scorch_prime_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+ npc_titan_player_settings "titan_ogre_scorch_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_proto_stasisgun.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_proto_stasisgun.txt
new file mode 100644
index 000000000..57bd78644
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_proto_stasisgun.txt
@@ -0,0 +1,8 @@
+#base "npc_titan.txt"
+
+npc_titan_proto_stasisgun
+{
+ title #NPC_TITAN_PROTO_STASISGUN
+
+ BehaviorSelector "behavior_sp_npc_titan_proto_stasisgun"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_sarah.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_sarah.txt
new file mode 100644
index 000000000..1030ad4ec
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_sarah.txt
@@ -0,0 +1,21 @@
+#base "npc_titan_buddy.txt"
+
+npc_titan_sarah
+{
+ AIClass titan_buddy
+ footstep_type "buddy"
+ title #NPC_SARAH_NAME
+
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "ui/targetinfo_titan_sp" [$sp]
+
+ DefaultModelName "models/titans/buddy/titan_buddy.mdl"
+ npc_titan_player_settings "titan_buddy"
+ BehaviorSelector "behavior_titan_buddy"
+
+ MeleeChargeRange 250
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+
+ aiEnemy_priority 20 // lower than other titans
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_sniper.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_sniper.txt
new file mode 100644
index 000000000..c4be82ae3
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_sniper.txt
@@ -0,0 +1,20 @@
+#base "npc_titan.txt"
+
+npc_titan_sniper
+{
+ HullType "HULL_TITAN"
+ title #NPC_TITAN_SNIPER
+
+ BehaviorSelector "behavior_titan_sniper"
+ WeaponCapacity "Locked"
+ npc_titan_player_settings "titan_atlas"
+
+ circleStrafeDist 2500
+ circleStrafeAngleIncrement 5
+
+ aiEnemy_usePriorityDist 3500
+
+ LookDistDefault_Combat 9500 //DO NOT set less than 9k without talking to mo first - will break s2s
+
+ aggressiveCombatTotalHealthDiffPct 0.8
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder.txt
new file mode 100644
index 000000000..6257f3770
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder.txt
@@ -0,0 +1,20 @@
+#base "npc_titan.txt"
+
+npc_titan_stryder
+{
+ footstep_type "northstar"
+ title #NPC_TITAN_STRYDER
+
+ dodgePeriod 8 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 3 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 12 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ DefaultModelName "models/titans/light/titan_light_locust.mdl"
+ npc_titan_player_settings "titan_stryder"
+
+ takeCoverFromEnemyRadius 1500
+
+ evasiveCombatHealthChangeRateDiff -150
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_arc.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_arc.txt
new file mode 100644
index 000000000..37aec44e8
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_arc.txt
@@ -0,0 +1,7 @@
+#base "npc_titan_stryder.txt"
+npc_titan_stryder_arc
+{
+ title #NPC_TITAN_STRYDER_ARC
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_arc"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall.txt
new file mode 100644
index 000000000..fc2111c1a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall.txt
@@ -0,0 +1,41 @@
+#base "npc_titan_stryder.txt"
+npc_titan_stryder_leadwall
+{
+ title #NPC_TITAN_STRYDER_LEADWALL
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_leadwall"
+
+ BehaviorSelector "behavior_titan_shotgun"
+
+ MeleeDamageMinHeavyArmor 750
+ MeleeDamageMaxHeavyArmor 750
+
+ chaseStopDist 200
+ chaseStopDistHeavyArmor 750
+ chaseTryRunningDodgeWhenAimedAtMinDist 700
+
+ circleStrafeDist 700
+ circleStrafeAngleIncrement 35
+
+ dodgePeriod 12 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 12 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ evasiveCombatHealthChangeRateDiff -350
+ aggresiveCombatHealthChangeRateDiff 50
+
+ //evasiveCombatHealthSegmentPct 0.0 [$mp] // no segment health regen in mp
+ //evasiveCombatHealthSegmentPct 0.4 [$sp] // if my segment is down to 40% be evasive
+
+ //aggressiveCombatHealthSegmentPct 0.0 [$mp] // no segment health regen in mp
+ //aggressiveCombatHealthSegmentPct 0.5 [$sp] // if enemy segement is down to 50% be aggressive
+
+ DefaultModelName "models/titans/light/titan_light_locust.mdl" [$mp]
+ DefaultModelName "models/titans/light/sp_titan_light_locust.mdl" [$sp]
+
+ aggressiveCombatTotalHealthDiffPct 0.2 // if my health+shield - enemy heatlh+shield is > 40% of my max health+shield
+
+ footstep_type "ronin"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_arc.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_arc.txt
new file mode 100644
index 000000000..bdbfb50d2
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_arc.txt
@@ -0,0 +1,11 @@
+#base "npc_titan_stryder_leadwall.txt"
+npc_titan_stryder_leadwall_arc
+{
+ title #NPC_TITAN_ARC
+
+ npc_titan_player_settings "titan_stryder_leadwall_arc"
+
+ titanCamoIndex 2
+ titanDecalIndex 0
+ titanSkinIndex 52
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_boss_fd.txt
new file mode 100644
index 000000000..17f702ce6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_boss_fd.txt
@@ -0,0 +1,45 @@
+#base "npc_titan_stryder_leadwall.txt"
+npc_titan_stryder_leadwall_boss_fd
+{
+ title #NPC_TITAN_STRYDER_LEADWALL
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_leadwall"
+
+ BehaviorSelector "behavior_titan_shotgun"
+
+ MeleeDamageMinHeavyArmor 750
+ MeleeDamageMaxHeavyArmor 750
+
+ chaseStopDist 200
+ chaseStopDistHeavyArmor 750
+ chaseTryRunningDodgeWhenAimedAtMinDist 700
+
+ circleStrafeDist 700
+ circleStrafeAngleIncrement 35
+
+ dodgePeriod 12 [$sp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$sp] // Don't dodge more than this many times in dodgePeriod
+
+ dodgePeriod 12 [$mp] // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 [$mp] // Don't dodge more than this many times in dodgePeriod
+
+ evasiveCombatHealthChangeRateDiff -350
+ aggresiveCombatHealthChangeRateDiff 50
+
+ //evasiveCombatHealthSegmentPct 0.0 [$mp] // no segment health regen in mp
+ //evasiveCombatHealthSegmentPct 0.4 [$sp] // if my segment is down to 40% be evasive
+
+ //aggressiveCombatHealthSegmentPct 0.0 [$mp] // no segment health regen in mp
+ //aggressiveCombatHealthSegmentPct 0.5 [$sp] // if enemy segement is down to 50% be aggressive
+
+ DefaultModelName "models/titans/light/titan_light_locust.mdl" [$mp]
+ DefaultModelName "models/titans/light/sp_titan_light_locust.mdl" [$sp]
+
+ aggressiveCombatTotalHealthDiffPct 0.2 // if my health+shield - enemy heatlh+shield is > 40% of my max health+shield
+
+ footstep_type "ronin"
+
+ titanCamoIndex -1
+ titanDecalIndex 12
+ titanSkinIndex 6
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_bounty.txt
new file mode 100644
index 000000000..c5892a673
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_stryder_leadwall.txt"
+npc_titan_stryder_leadwall_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_shift_core.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_shift_core.txt
new file mode 100644
index 000000000..9729cb7e6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_leadwall_shift_core.txt
@@ -0,0 +1,38 @@
+#base "npc_titan_stryder_leadwall.txt"
+npc_titan_stryder_leadwall_shift_core
+{
+ BehaviorSelector "behavior_titan_melee_core"
+
+ PainOnHeavyDamageThreshold 10000
+
+ chaseStopDist 100
+ chaseStopDistHeavyArmor 100
+
+ circleStrafeDist 150
+
+ dodgePeriod 5 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 1 // Don't dodge more than this many times in dodgePeriod
+
+ meleeInterval 0.2
+ meleeChargeInterval 0.2
+ meleeMaxCombo 8
+
+ MeleeDamageMin 500
+ MeleeDamageMax 500
+ MeleeDamageMinHeavyArmor 2000
+ MeleeDamageMaxHeavyArmor 2000
+ MeleeDamageRadius 150
+ MeleeDamageForce 3000000
+ MeleeChargeDamageForce 3200000
+ MeleeRange 200
+ MeleeChargeRange 300
+ MeleeChargeDamageRadius 150
+ MeleeChargeDamageHeight 150
+ MeleeChargeDamageMin 600
+ MeleeChargeDamageMax 600
+ MeleeChargeDamageMinHeavyArmor 2000
+ MeleeChargeDamageMaxHeavyArmor 2000
+
+ evasiveCombatHealthChangeRateDiff -600
+ aggresiveCombatHealthChangeRateDiff -400
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_northstar_prime_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_northstar_prime_bounty.txt
new file mode 100644
index 000000000..131a10854
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_northstar_prime_bounty.txt
@@ -0,0 +1,6 @@
+#base "npc_titan_stryder_sniper_bounty.txt"
+npc_titan_stryder_northstar_prime_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+ npc_titan_player_settings "titan_stryder_northstar_prime"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer.txt
new file mode 100644
index 000000000..2fa07fa78
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer.txt
@@ -0,0 +1,24 @@
+#base "npc_titan_stryder.txt"
+npc_titan_stryder_rocketeer
+{
+ title #NPC_TITAN_STRYDER_ROCKET
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_rocketeer"
+
+ BehaviorSelector "behavior_titan_rocketeer"
+
+ circleStrafeDist 1500
+ circleStrafeAngleIncrement 30
+
+ dodgeForwardThreshold 1200
+ dodgeBackwardThreshold 1600
+
+ longJumpCheckMinInterval 10
+ longJumpCheckMaxInterval 20
+ longJumpMinDist 1000
+ longJumpMaxDist 8000
+ longJumpHeight 360
+
+ DefaultModelName "models/titans/light/titan_light_raptor.mdl" [$mp]
+ DefaultModelName "models/titans/light/sp_titan_light_raptor.mdl" [$sp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer_dash_core.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer_dash_core.txt
new file mode 100644
index 000000000..b96916425
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_rocketeer_dash_core.txt
@@ -0,0 +1,11 @@
+#base "npc_titan_stryder_rocketeer.txt"
+npc_titan_stryder_rocketeer_dash_core
+{
+ circleStrafeDist 80
+
+ dodgePeriod 0.1 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 3 // Don't dodge more than this many times in dodgePeriod
+
+ evasiveCombatHealthChangeRateDiff -600
+ aggresiveCombatHealthChangeRateDiff -400
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper.txt
new file mode 100644
index 000000000..b23e493e6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper.txt
@@ -0,0 +1,22 @@
+#base "npc_titan_stryder.txt"
+npc_titan_stryder_sniper
+{
+ title #NPC_TITAN_STRYDER_SNIPER
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_sniper"
+
+ BehaviorSelector "behavior_titan_sniper"
+
+ LookDistDefault_Combat 12000 // long range for S2S
+
+ longJumpCheckMinInterval 10
+ longJumpCheckMaxInterval 20
+ longJumpMinDist 500 // not to far so sniper can get use it as defense
+ longJumpMaxDist 8000
+ longJumpHeight 360
+
+ DefaultModelName "models/titans/light/titan_light_raptor.mdl" [$mp]
+ DefaultModelName "models/titans/light/sp_titan_light_raptor.mdl" [$sp]
+
+ footstep_type "northstar"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_boss_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_boss_fd.txt
new file mode 100644
index 000000000..90493d793
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_boss_fd.txt
@@ -0,0 +1,26 @@
+#base "npc_titan_stryder_sniper.txt"
+npc_titan_stryder_sniper_boss_fd
+{
+ title #NPC_TITAN_STRYDER_SNIPER
+ WeaponCapacity "FromLoadout"
+ npc_titan_player_settings "titan_stryder_sniper"
+
+ BehaviorSelector "behavior_titan_sniper"
+
+ LookDistDefault_Combat 12000 // long range for S2S
+
+ longJumpCheckMinInterval 10
+ longJumpCheckMaxInterval 20
+ longJumpMinDist 500 // not to far so sniper can get use it as defense
+ longJumpMaxDist 8000
+ longJumpHeight 360
+
+ DefaultModelName "models/titans/light/titan_light_raptor.mdl" [$mp]
+ DefaultModelName "models/titans/light/sp_titan_light_raptor.mdl" [$sp]
+
+ footstep_type "northstar"
+
+ titanCamoIndex 30
+ titanDecalIndex 10
+ titanSkinIndex 2
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_bounty.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_bounty.txt
new file mode 100644
index 000000000..26c2ddc8d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_bounty.txt
@@ -0,0 +1,5 @@
+#base "npc_titan_stryder_sniper.txt"
+npc_titan_stryder_sniper_bounty
+{
+ ui_targetinfo "ui/targetinfo_titan_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_fd.txt
new file mode 100644
index 000000000..2a156b9a6
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_stryder_sniper_fd.txt
@@ -0,0 +1,7 @@
+#base "npc_titan_stryder_sniper.txt"
+npc_titan_stryder_sniper_fd
+{
+ title #NPC_TITAN_SNIPER_FD
+ minGoalRadius 100
+ assaultHarvester 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_titan_vanguard.txt b/Northstar.CustomServers/scripts/aisettings/npc_titan_vanguard.txt
new file mode 100644
index 000000000..09daba770
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_titan_vanguard.txt
@@ -0,0 +1,24 @@
+#base "npc_titan_buddy.txt"
+
+npc_titan_vanguard
+{
+ AIClass titan_buddy
+ footstep_type "buddy"
+ title "#NPC_TITAN_VANGUARD" [$mp]
+ title "#NPC_TITAN_VANGUARD_SP" [$sp]
+
+
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "ui/targetinfo_titan_sp" [$sp]
+
+ DefaultModelName "models/titans/buddy/titan_buddy.mdl"
+ Skin 1
+ npc_titan_player_settings "titan_buddy"
+ BehaviorSelector "behavior_titan_buddy"
+
+ MeleeChargeRange 250
+ dodgePeriod 8 // Don't dodge more than maxDodgePerPeriod within this time
+ maxDodgePerPeriod 2 // Don't dodge more than this many times in dodgePeriod
+
+ aiEnemy_priority 20 // lower than other titans
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega.txt
new file mode 100644
index 000000000..f44fa5c0b
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega.txt
@@ -0,0 +1,69 @@
+npc_turret_mega
+{
+ HullType "HULL_CUSTOM" // use OBB as hull size
+ AIClass turret
+ collideWithPlayer 1
+
+ BodyType other
+ ArmorType heavy [$sp]
+ ArmorType heavy [$mp]
+ SmartAmmoLockType large
+
+ titanStompable 0
+
+ title #NPC_TURRET_HEAVY
+ ui_targetinfo "ui/targetinfo_titan" [$mp]
+ ui_targetinfo "" [$sp]
+
+ mechanical 1
+
+ BaseClass "npc_turret_mega"
+ DrawEnemyHealthBar 1
+ DrawTargetHealthBar 1
+
+ DefaultModelName "models/Robots/turret_heavy/turret_heavy.mdl"
+ DefaultWeapon "mp_weapon_turretlaser_mega"
+
+ maxEnemyDist 0
+ maxEnemyDistHeavyArmor 5000
+ maxEnemyDistForAttacker 16000
+ maxEnemyDistHeavyArmorForAttacker 16000
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 180 // use near values up to this distance
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 180
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 180
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 180
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 180
+ FOV_Combat_Far_Vert 180
+
+ YawSpeed 25
+ AimAngularSpeed 30
+
+ meleeable 0
+
+ chasecamDistanceMax 500
+ chasecamMaxOrbitDepth 90
+ chasecamOffsetUp 75
+ chasecamOffsetRight 0
+
+ magneticRange 190
+
+ sound0 "MegaTurret_Laser_ClunkStart" // start sound
+ sound1 "MegaTurret_Laser_Servo" // pitch sound
+ sound2 "MegaTurret_Laser_Servo" // yaw sound
+
+ windup_time 0.0
+ start_active 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_attrition.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_attrition.txt
new file mode 100644
index 000000000..8ea04829f
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_attrition.txt
@@ -0,0 +1,18 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_attrition
+{
+ windup_time 0.0
+ Health 15000 [$mp]
+
+ maxEnemyDist 0
+ maxEnemyDistHeavyArmor 5000
+ maxEnemyDistForAttacker 16000
+ maxEnemyDistHeavyArmorForAttacker 16000
+
+ Health 5000 [$sp]
+ start_active 1
+ regen_rate 100
+ explode_on_death 1
+
+ ui_targetinfo "ui/targetinfo_megaturret_bounty" [$mp]
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_fortwar.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_fortwar.txt
new file mode 100644
index 000000000..4c06f5d6a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_fortwar.txt
@@ -0,0 +1,42 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_fortwar
+{
+ windup_time 0.0
+ Health 10000 //15000
+
+ maxEnemyDist 0
+ maxEnemyDistHeavyArmor 8000
+ //maxEnemyDistForAttacker 16000
+ //maxEnemyDistHeavyArmorForAttacker 16000
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 360 // use near values up to this distance
+ FOV_Far_Dist 4028 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ YawSpeed 70 //50 //75
+ AimAngularSpeed 70 //60 //90
+
+ waitBetweenWeaponBurst 3
+
+ //faceEnemyToleranceAngle 5
+ //faceEnemyStrictToleranceAngle 5
+
+ onlyAttackableByTitans 1 // hack for fortwar mode
+
+ suppressLSP_duration 10 [$sp]
+ suppressLSP_duration 10 [$mp]
+
+ NoticeForgetPostTime 5.0 [$sp]
+ NoticeForgetPreTime 1.0 [$sp]
+
+ NoticeForgetPostTime 5.0 [$mp]
+ NoticeForgetPreTime 1.0 [$mp]
+
+ start_active 1
+ regen_rate 100
+ explode_on_death 1
+
+ ui_targetinfo "ui/targetinfo_megaturret_fw" [$mp]
+
+ smartAmmoLockFromTitansOnly 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_frontierdefense.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_frontierdefense.txt
new file mode 100644
index 000000000..1cb89fe6a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_frontierdefense.txt
@@ -0,0 +1,42 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_frontierdefense
+{
+ windup_time 0.0
+ Health 10000 //15000
+
+ maxEnemyDist 3000
+ maxEnemyDistHeavyArmor 8000
+ //maxEnemyDistForAttacker 16000
+ //maxEnemyDistHeavyArmorForAttacker 16000
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 360 // use near values up to this distance
+ FOV_Far_Dist 4028 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ YawSpeed 70 //50 //75
+ AimAngularSpeed 70 //60 //90
+
+ waitBetweenWeaponBurst 3
+
+ //faceEnemyToleranceAngle 5
+ //faceEnemyStrictToleranceAngle 5
+
+ //onlyAttackableByTitans 1 // hack for fortwar mode
+
+ suppressLSP_duration 10 [$sp]
+ suppressLSP_duration 10 [$mp]
+
+ NoticeForgetPostTime 5.0 [$sp]
+ NoticeForgetPreTime 1.0 [$sp]
+
+ NoticeForgetPostTime 5.0 [$mp]
+ NoticeForgetPreTime 1.0 [$mp]
+
+ start_active 1
+ regen_rate 100
+ explode_on_death 1
+
+ ui_targetinfo "ui/targetinfo_megaturret_fw" [$mp]
+
+ smartAmmoLockFromTitansOnly 0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_nowindup.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_nowindup.txt
new file mode 100644
index 000000000..91fc60a65
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_nowindup.txt
@@ -0,0 +1,5 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_nowindup
+{
+ windup_time 0.0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_old.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_old.txt
new file mode 100644
index 000000000..ba3cff002
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_old.txt
@@ -0,0 +1,8 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_old
+{
+ DefaultModelName "models/turrets/turret_imc_lrg.mdl"
+ DefaultWeapon "mp_weapon_mega_turret"
+
+ windup_time 0.0
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_windup.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_windup.txt
new file mode 100644
index 000000000..adbd3e885
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_mega_windup.txt
@@ -0,0 +1,13 @@
+#base "npc_turret_mega.txt"
+npc_turret_mega_windup
+{
+ windup_time 0.0
+ Health 8000 [$mp]
+
+ maxEnemyDist 0
+
+ Health 5000 [$sp]
+ start_active 1
+ regen_rate 100
+ explode_on_death 1
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry.txt
new file mode 100644
index 000000000..f5dfa5f74
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry.txt
@@ -0,0 +1,72 @@
+npc_turret_sentry
+{
+ HullType "HULL_CUSTOM"
+ AIClass small_turret
+ collideWithPlayer 1 [$sp]
+ collideWithPlayer 0 [$mp]
+
+ BodyType other
+ ArmorType heavy
+ title #NPC_TURRET_SENTRY
+ ui_targetinfo "ui/targetinfo_remote_turret" [$mp]
+ ui_targetinfo "" [$sp]
+
+ Health 600 [$sp]
+ Health 1200 [$mp]
+
+ mechanical 1
+
+ turret_explode_on_death 1
+
+ SmartAmmoLockType any
+ smartAmmoLockAttachmentName0 turret_player_use
+
+ BaseClass "npc_turret_sentry"
+
+ DefaultModelName "models/robots/turret_plasma/turret_plasma.mdl"
+ DefaultWeapon "mp_weapon_yh803_bullet"
+ DrawEnemyHealthBar 0
+ DrawTargetHealthBar 0
+
+ maxEnemyDist 2000
+ maxEnemyDistHeavyArmor 2000
+ maxEnemyDistForAttacker 8000
+ maxEnemyDistHeavyArmorForAttacker 8000
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 180 // use near values up to this distance
+ FOV_Far_Dist 1000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ LookDistDefault_Idle 2500
+ LookDistDefault_Alert 3000
+ LookDistDefault_Combat 4000
+
+ FOV_Idle_Near_Horz 360
+ FOV_Idle_Near_Vert 270
+ FOV_Idle_Far_Horz 270
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 360
+ FOV_Alert_Near_Vert 270
+ FOV_Alert_Far_Horz 270
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 360
+ FOV_Combat_Near_Vert 270
+ FOV_Combat_Far_Horz 270
+ FOV_Combat_Far_Vert 180
+
+ MaxTurretYaw 90
+ YawSpeed 45
+ AimAngularSpeed 45
+
+ meleeable 1
+
+ suppressLSP_duration 10
+
+ magneticRange 90
+
+ sound0 "Boost_Card_SentryTurret_Scanning_Start_3P" // start up
+ sound1 "MegaTurret_Servos_Tilt_LP" // silent by design
+ sound2 "Boost_Card_SentryTurret_Scanning_Loop_3P" // yaw
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap.txt
new file mode 100644
index 000000000..9ec586110
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap.txt
@@ -0,0 +1,16 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_burn_card_ap
+{
+ DefaultModelName "models/Robots/turret_hitscan/turret_hitscan.mdl"
+ DefaultWeapon "mp_weapon_yh803_bullet"
+ title "#NPC_TURRET_SENTRY_AP"
+
+ maxEnemyDistHeavyArmor 0
+
+ Health 600 [$sp]
+ Health 1250 [$mp]
+
+ turret_lifetime 60.0 //Make sure to change #BURNMETER_AP_TURRETWEAPON_DESC
+
+ //MaxTurretYaw 360
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap_fd.txt
new file mode 100644
index 000000000..16cce927a
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_ap_fd.txt
@@ -0,0 +1,23 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_burn_card_ap_fd
+{
+ DefaultModelName "models/Robots/turret_hitscan/turret_hitscan.mdl"
+ DefaultWeapon "mp_weapon_yh803_bullet"
+ title "#NPC_TURRET_SENTRY"
+
+ maxEnemyDist 2000
+ maxEnemyDistHeavyArmor 1200
+ maxEnemyDistForAttacker 8000
+ maxEnemyDistHeavyArmorForAttacker 2000
+
+ YawSpeed 35
+ AimAngularSpeed 35
+
+ Health 600 [$sp]
+ Health 300 [$mp]
+
+ turret_lifetime 0.0
+ cleanup_between_rounds 0
+
+ MaxTurretYaw 360
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at.txt
new file mode 100644
index 000000000..58a5c49ce
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at.txt
@@ -0,0 +1,16 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_burn_card_at
+{
+ DefaultModelName "models/robots/turret_plasma/turret_plasma.mdl"
+ DefaultWeapon "mp_weapon_turretplasma"
+ title "#NPC_TURRET_SENTRY_AT"
+
+ maxEnemyDist 0
+
+ Health 600 [$sp]
+ Health 2500 [$mp]
+
+ turret_lifetime 60.0 //Make sure to change #BURNMETER_AT_TURRETWEAPON_DESC and #BURNMETER_AT_TURRETWEAPON_DESC_BOOST_ACTIVATION_TEXT
+
+ //MaxTurretYaw 360
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at_fd.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at_fd.txt
new file mode 100644
index 000000000..f120c79ba
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_burn_card_at_fd.txt
@@ -0,0 +1,17 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_burn_card_at_fd
+{
+ DefaultModelName "models/robots/turret_plasma/turret_plasma.mdl"
+ DefaultWeapon "mp_weapon_turretplasma"
+ title "#NPC_TURRET_SENTRY_PLASMA"
+
+ maxEnemyDist 2000
+
+ Health 600 [$sp]
+ Health 400 [$mp]
+
+ turret_lifetime 0.0 //Make sure to change #BURNMETER_AT_TURRETWEAPON_DESC and #BURNMETER_AT_TURRETWEAPON_DESC_BOOST_ACTIVATION_TEXT
+ cleanup_between_rounds 0
+
+ MaxTurretYaw 360
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma.txt
new file mode 100644
index 000000000..bad53ace5
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma.txt
@@ -0,0 +1,9 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_plasma
+{
+ DefaultModelName "models/robots/turret_plasma/turret_plasma.mdl"
+ DefaultWeapon "mp_weapon_turretplasma"
+ title "#NPC_TURRET_SENTRY_PLASMA"
+
+ //MaxTurretYaw 360
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma_skyway.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma_skyway.txt
new file mode 100644
index 000000000..1244c353c
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_plasma_skyway.txt
@@ -0,0 +1,14 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_plasma_skyway
+{
+ DefaultModelName "models/robots/turret_plasma/turret_plasma.mdl"
+ DefaultWeapon "mp_weapon_turretplasma"
+ title "#NPC_TURRET_SENTRY_PLASMA"
+
+ //MaxTurretYaw 360
+
+ maxEnemyDist 8000
+ maxEnemyDistHeavyArmor 8000
+ maxEnemyDistForAttacker 8000
+ maxEnemyDistHeavyArmorForAttacker 8000
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tactical_ability.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tactical_ability.txt
new file mode 100644
index 000000000..ad6a15c0d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tactical_ability.txt
@@ -0,0 +1,7 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_tactical_ability
+{
+ Health 600
+ title #NPC_TURRET_SENTRY_TACTICAL_ABILITY
+ //SecondaryWeapon "mp_weapon_engineer_turret_rocket"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tday.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tday.txt
new file mode 100644
index 000000000..c94ada19d
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_tday.txt
@@ -0,0 +1,70 @@
+npc_turret_sentry_tday
+{
+ HullType "HULL_CUSTOM"
+ AIClass small_turret
+ collideWithPlayer 1
+
+ BodyType other
+ ArmorType heavy
+ title #NPC_TURRET_HEAVY
+ ui_targetinfo "ui/targetinfo_npc_basic" [$mp]
+ ui_targetinfo "" [$sp]
+
+ Health 600 [$sp]
+ Health 1200 [$mp]
+
+ mechanical 1
+ titanStompable 0
+
+ turret_explode_on_death 0
+
+ SmartAmmoLockType any
+
+ BaseClass "npc_turret_sentry"
+
+ DefaultModelName "models/Robots/turret_heavy/turret_heavy.mdl"
+ DefaultWeapon "mp_weapon_turret_tday"
+ DrawEnemyHealthBar 0
+ DrawTargetHealthBar 0
+
+ LookDistDefault_Idle 10000
+ LookDistDefault_Alert 10000
+ LookDistDefault_Combat 10000
+
+ FOV_Vert_Offset -20
+ FOV_Near_Dist 180 // use near values up to this distance
+ FOV_Far_Dist 10000 // use far values after this distance, interpolate horizontal in between, use far for vertical
+
+ FOV_Idle_Near_Horz 180
+ FOV_Idle_Near_Vert 180
+ FOV_Idle_Far_Horz 180
+ FOV_Idle_Far_Vert 180
+
+ FOV_Alert_Near_Horz 180
+ FOV_Alert_Near_Vert 180
+ FOV_Alert_Far_Horz 180
+ FOV_Alert_Far_Vert 180
+
+ FOV_Combat_Near_Horz 180
+ FOV_Combat_Near_Vert 180
+ FOV_Combat_Far_Horz 180
+ FOV_Combat_Far_Vert 180
+
+ MaxTurretYaw 90
+ YawSpeed 40
+ AimAngularSpeed 55
+
+ meleeable 0
+
+ suppressLSP_duration 10
+
+ magneticRange 90
+ aim_laser_disabled 1
+
+ sound0 "MegaTurret_Servos_Clunk" // start sound
+ sound1 "MegaTurret_Servos_Tilt_LP" // pitch sound
+ sound2 "MegaTurret_Servos_Rotate_LP" // yaw sound
+
+ windup_time 0.0
+ start_active 0
+} \ No newline at end of file
diff --git a/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_windup.txt b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_windup.txt
new file mode 100644
index 000000000..4d92d825e
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/npc_turret_sentry_windup.txt
@@ -0,0 +1,8 @@
+#base "npc_turret_sentry.txt"
+npc_turret_sentry_windup
+{
+ health 600
+ MaxTurretYaw 180
+ windup_time 2.5
+ DefaultWeapon "mp_weapon_yh803"
+}
diff --git a/Northstar.CustomServers/scripts/aisettings/synced_melee_data.rson b/Northstar.CustomServers/scripts/aisettings/synced_melee_data.rson
new file mode 100644
index 000000000..f07e21c46
--- /dev/null
+++ b/Northstar.CustomServers/scripts/aisettings/synced_melee_data.rson
@@ -0,0 +1,628 @@
+/*
+Synced Melee between AI data.
+This list should be sorted by attacker/defender pairs.
+*/
+
+/*
+engageAngleThreshold - How much turntable blending the defender is willing to do.
+Larger values increase the likelihood that the melee occurs, but at the cost of more blending.
+*/
+
+
+
+
+
+
+// ----- grunt VS grunt ----- //
+// front
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_F_punch_A"
+ defenderSeq: "pt_synced_melee_F_punch_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_F_throw_A"
+ defenderSeq: "pt_synced_melee_F_throw_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_knife_kick_A"
+ defenderSeq: "pt_synced_melee_knife_kick_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_knife_struggle_A"
+ defenderSeq: "pt_synced_melee_knife_struggle_D"
+ engageAngleThreshold: 40
+}
+
+
+// side
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_R_disarm_A"
+ defenderSeq: "pt_synced_melee_R_disarm_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_L_tackle_A"
+ defenderSeq: "pt_synced_melee_L_tackle_D"
+ engageAngleThreshold: 40
+}
+
+
+// back
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_back_backstab_A"
+ defenderSeq: "pt_synced_melee_back_backstab_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_back_cheststab_A"
+ defenderSeq: "pt_synced_melee_back_cheststab_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_back_neckstab_A"
+ defenderSeq: "pt_synced_melee_back_neckstab_D"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "human"
+ attackerSeq: "pt_synced_melee_back_throw_A"
+ defenderSeq: "pt_synced_melee_back_throw_D"
+ engageAngleThreshold: 40
+}
+
+
+
+
+
+
+// ----- spectre VS spectre ----- //
+{
+ attackerClass: "spectre"
+ defenderClass: "spectre"
+ attackerSeq: "sp_stand_melee_A"
+ defenderSeq: "sp_stand_melee_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "spectre"
+ attackerSeq: "sp_stand_melee_headrip_A"
+ defenderSeq: "sp_stand_melee_headrip_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "spectre"
+ attackerSeq: "sp_stand_melee_behind_A"
+ defenderSeq: "sp_stand_melee_behind_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "spectre"
+ attackerSeq: "sp_stand_melee_left_A"
+ defenderSeq: "sp_stand_melee_left_V"
+ engageAngleThreshold: 40
+}
+
+
+
+
+
+
+// ----- crawling stalker VS grunt ----- //
+{
+ attackerClass: "stalker_crawling"
+ defenderClass: "human"
+ attackerSeq: "st_synced_melee_F_grunt_crawl"
+ defenderSeq: "pt_synced_melee_F_grunt_crawl"
+ engageAngleThreshold: 70
+}
+
+
+
+
+
+
+// ----- stalker VS grunt ----- //
+{
+ attackerClass: "stalker"
+ defenderClass: "human"
+ attackerSeq: "st_synced_melee_F_chestpunch_A"
+ defenderSeq: "pt_synced_melee_F_chestpunch_D"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "stalker"
+ defenderClass: "human"
+ attackerSeq: "st_synced_melee_F_facepunch"
+ defenderSeq: "pt_synced_melee_F_facepunch"
+ engageAngleThreshold: 90
+}
+
+{
+ attackerClass: "stalker"
+ defenderClass: "human"
+ attackerSeq: "st_synced_melee_B_chestpunch_A"
+ defenderSeq: "pt_synced_melee_B_chestpunch_D"
+ engageAngleThreshold: 90
+}
+
+{
+ attackerClass: "stalker"
+ defenderClass: "human"
+ attackerSeq: "st_synced_melee_F_spinepunch"
+ defenderSeq: "pt_synced_melee_B_spinepunch"
+ engageAngleThreshold: 40
+}
+
+
+
+
+
+
+// ----- spectre VS grunt ----- //
+{
+ attackerClass: "spectre"
+ defenderClass: "human"
+ attackerSeq: "sp_stand_melee_A"
+ defenderSeq: "pt_stand_melee_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "human"
+ attackerSeq: "sp_stand_melee_headrip_A"
+ defenderSeq: "pt_stand_melee_headrip_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "human"
+ attackerSeq: "sp_stand_melee_behind_A"
+ defenderSeq: "pt_stand_melee_behind_V"
+ engageAngleThreshold: 70
+}
+
+{
+ attackerClass: "spectre"
+ defenderClass: "human"
+ attackerSeq: "sp_stand_melee_left_A"
+ defenderSeq: "pt_stand_melee_left_V"
+ engageAngleThreshold: 40
+}
+
+
+
+
+
+
+// ----- prowler VS grunt ----- //
+{
+ attackerClass: "prowler"
+ defenderClass: "human"
+ attackerSeq: "pr_grunt_attack_F"
+ defenderSeq: "pt_prowler_attack_F"
+ engageAngleThreshold: 70
+}
+
+
+
+
+
+
+// ----- grunt VS pilot ----- //
+{
+ attackerClass: "human"
+ defenderClass: "pilot_assassin"
+ attackerSeq: "pt_synced_melee_B_neckstab_V"
+ defenderSeq: "ninja_synced_melee_B_neckstab_A"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "pilot_assassin"
+ attackerSeq: "pt_synced_melee_R_chestleap_V"
+ defenderSeq: "ninja_synced_melee_R_chestleap_A"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "pilot_assassin"
+ attackerSeq: "pt_synced_melee_F_chestslam_V"
+ defenderSeq: "ninja_synced_melee_F_chestslam_A"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "pilot_assassin"
+ attackerSeq: "pt_synced_melee_F_chestkick_V"
+ defenderSeq: "ninja_synced_melee_F_chestkick_A"
+ engageAngleThreshold: 40
+}
+
+{
+ attackerClass: "human"
+ defenderClass: "pilot_assassin"
+ attackerSeq: "pt_synced_melee_L_headcut_V"
+ defenderSeq: "ninja_synced_melee_L_headcut_A"
+ engageAngleThreshold: 40
+}
+
+
+
+
+
+
+// ----- titan VS grunt ----- //
+{
+ attackerClass: "titan"
+ defenderClass: "human"
+ attackerSeq: "at_synced_melee_F_toss_A"
+ defenderSeq: "pt_synced_melee_F_toss_V"
+ engageAngleThreshold: 60
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "human"
+ attackerSeq: "at_synced_melee_B_toss_A"
+ defenderSeq: "pt_synced_melee_B_toss_V"
+ engageAngleThreshold: 60
+}
+
+
+
+
+
+
+// ----- titan VS spectre ----- //
+{
+ attackerClass: "titan"
+ defenderClass: "spectre"
+ attackerSeq: "at_synced_melee_F_toss_A"
+ defenderSeq: "pt_synced_melee_F_toss_V"
+ engageAngleThreshold: 60
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "spectre"
+ attackerSeq: "at_synced_melee_B_toss_A"
+ defenderSeq: "pt_synced_melee_B_toss_V"
+ engageAngleThreshold: 60
+}
+
+
+
+
+
+
+// ----- titan VS titan ----- //
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "mt_ai_sync_melee_kick_knockback_A"
+ defenderSeq: "mt_ai_sync_melee_kick_knockback_V"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ //defenderHealthThreshold_above: 0.3
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "mt_ai_synced_melee_kick_finisher_A"
+ defenderSeq: "mt_ai_synced_melee_kick_finisher_V"
+ engageAngleThreshold: 90
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+/*
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "at_synced_melee_F_bash_A"
+ defenderSeq: "at_synced_melee_F_bash_V"
+ engageAngleThreshold: 60
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "at_synced_melee_F_punch_A"
+ defenderSeq: "at_synced_melee_F_punch_V"
+ engageAngleThreshold: 60
+}
+*/
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "mt_ai_synced_finisher_B_armrip_A"
+ defenderSeq: "mt_ai_synced_finisher_B_armrip_V"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan"
+ attackerSeq: "mt_ai_synced_knockback_B_slam_A"
+ defenderSeq: "mt_ai_synced_knockback_B_slam_V"
+ engageAngleThreshold: 60
+}
+
+
+
+// ----- BT VS titan (melee) ----- //
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_uppercut_A"
+ defenderSeq: "titan_synced_bt_uppercut_D"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_above: 0.3
+}
+
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_kickshoot_A"
+ defenderSeq: "titan_synced_bt_kickshoot_D"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_above: 0.3
+}
+
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_2hitcombo_A"
+ defenderSeq: "titan_synced_bt_2hitcombo_D"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_above: 0.3
+}
+
+
+
+
+
+
+// ----- BT VS titan (executions) ----- //
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_execute_kickshoot_AI_A"
+ defenderSeq: "titan_synced_bt_execute_kickshoot_AI_V"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_execute_flip_takedown_AI_A"
+ defenderSeq: "titan_synced_bt_execute_flip_takedown_AI_V"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan_buddy"
+ defenderClass: "titan"
+ attackerSeq: "bt_synced_titan_execute_pilot_rip_A"
+ defenderSeq: "titan_synced_bt_execute_pilot_rip_V"
+ engageAngleThreshold: 60
+ defenderHealthThreshold_below: 0.3
+}
+
+
+
+
+
+
+// ----- titan VS BT (melee) ----- //
+// generic titan
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "at_synced_melee_F_punch_A"
+ defenderSeq: "at_synced_melee_F_punch_V"
+ engageAngleThreshold: 60
+}
+
+// medium titan only
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "mt_ai_sync_melee_kick_knockback_A"
+ defenderSeq: "bt_ai_sync_melee_kick_knockback_V"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_above: 0.3
+}
+
+
+
+
+
+
+// ----- titan VS BT (executions) ----- //
+// light titan only
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "lt_execution_attacker_sword_01"
+ defenderSeq: "bt_execution_victim_sword_01"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+// medium titan only
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "mt_ai_synced_melee_kick_finisher_A"
+ defenderSeq: "bt_ai_synced_melee_kick_finisher_V"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "mt_execution_attacker_laser"
+ defenderSeq: "bt_execution_victim_laser"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "mt_execution_attacker_tone"
+ defenderSeq: "bt_execution_victim_tone"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+// heavy titan only
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "htPRED_MP_Sync_Execution_attacker"
+ defenderSeq: "t_MeleeExecuted_By_htPred"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+{
+ attackerClass: "titan"
+ defenderClass: "titan_buddy"
+ attackerSeq: "htThermite_MP_Sync_Execution_attacker"
+ defenderSeq: "t_MeleeExecuted_By_htThermite"
+ engageAngleThreshold: 60
+ attackerSeq_sparselyAvailable: true
+ defenderHealthThreshold_below: 0.3
+}
+
+
+
+
+
+
+// ----- BT VS prowler (executions) ----- //
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_front_01_A"
+ defenderSeq: "bt_synced_prowler_front_01_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_front_02_A"
+ defenderSeq: "bt_synced_prowler_front_02_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_45_left_A"
+ defenderSeq: "bt_synced_prowler_45_left_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_45_right_A"
+ defenderSeq: "bt_synced_prowler_45_right_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_90_left_A"
+ defenderSeq: "bt_synced_prowler_90_left_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_90_right_A"
+ defenderSeq: "bt_synced_prowler_90_right_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_135_left_A"
+ defenderSeq: "bt_synced_prowler_135_left_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_135_right_A"
+ defenderSeq: "bt_synced_prowler_135_right_D"
+ engageAngleThreshold: 45
+}
+
+{
+ attackerClass: "prowler"
+ defenderClass: "titan_buddy"
+ attackerSeq: "prowler_synced_bt_back_01_A"
+ defenderSeq: "bt_synced_prowler_back_01_D"
+ engageAngleThreshold: 45
+} \ No newline at end of file