#base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop //#base robot_lackryx.pop #base rotating_shield_tweaked.pop WaveSchedule { StartingCurrency 30000 RespawnWaveTime 5 FixedRespawnWaveTime Yes CanBotsAttackWhileInSpawnRoom No Advanced 1 WaveStartCountdown 0 FixHuntsmanDamageBonus 1 RobotLimit 26 MaxSpectators 0 NoRomevisionCosmetics 1 //PrecacheSound "mvm/mvm_used_powerup.wav" PrecacheSound "mvm/mvm_tank_start.wav" PrecacheModel "models/bots/boss_bot/boss_tank_color.mdl" PrecacheModel "models/bots/boss_bot/boss_boosted_tank.mdl" //PrecacheSound "sound\ambient\rottenburg\tunneldoor_open.wav" PrecacheGeneric "materials/sprites/upgrades_plain2.vmt" PrecacheGeneric "materials/sprites/upgrades_plain2.vtf" PrecacheModel "models/bots/boss_bot/boss_tank_ubered.mdl" PrecacheModel "models/props_frontline/tank_turret.mdl" //models\props_td\atom_bomb.mdl //LuaScriptFile "rotating_shield.lua" CustomWeapon { Name "FactoryTank Blackbox" OriginalItemName "The Black Box" "fire input on hit" "tank^AddHealth" "damage bonus" 0.5 "fire rate bonus" 0.001 "faster reload rate" 1.6 "blast radius increased" 1.25 "paintkit_proto_def_index" 414 "set_item_texture_wear" 0 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 1000 } ExtraSpawnPoint { Name "spawnbot_boss" TeamNum 3 X "-291" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_turret" TeamNum 3 X "-300" Y "4283" Z "-248" StartDisabled 0 } ExtraSpawnPoint { Name "spawnbot_boss_support_1" TeamNum 3 X "-285" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_1" TeamNum 3 X "-291" Y "4275" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_1" TeamNum 3 X "-291" Y "4290" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_1" TeamNum 3 X "-297" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_2" TeamNum 3 X "-300" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_2" TeamNum 3 X "-320" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_2" TeamNum 3 X "-340" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_3" TeamNum 3 X "-330" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_3" TeamNum 3 X "-310" Y "4283" Z "-248" StartDisabled 1 } ExtraSpawnPoint { Name "spawnbot_main_3" TeamNum 3 X "-305" Y "4283" Z "-248" StartDisabled 1 } Templates { T_TFBot_Tank_Turret_1 { Class Soldier WeaponRestrictions Primaryonly Attributes DisableDodge Skill Expert //Scale 1.5 UseCustomModel models\turret\miniturret.mdl AimOffset "0 0 50" Action Mobber FireWeapon { Delay 1 Cooldown 2 Repeats 0 Type "Primary" } //Scale 1.25 ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "clip size bonus" 99 "Projectile speed increased" 0.5 "fire rate bonus" 1.5 "projectile gravity" 250 //"projectile spread angle penalty" 5 } UseCustomModel models/props_doomsday/rocket_socket_doomsday.mdl CustomWeaponModel { Slot 0 Model "models/weapons/c_models/c_minigun/c_minigun.mdl" } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "override footstep sound set" 6 "not solid to players" 1 } } T_TFBot_Tank_Turret_2 { Class Soldier WeaponRestrictions Primaryonly Attributes DisableDodge Skill Easy //Scale 1.25 UseCustomModel models\turret\miniturret.mdl AimOffset "0 0 150" Action Mobber //Attributes AlwaysCrit Attributes HoldFireUntilFullReload FireWeapon { Delay 1 Cooldown 2 Repeats 0 Type "Primary" } ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "Projectile speed increased" 0.5 "ignores other projectiles" 1 "mult projectile count" 3 "projectile gravity" 250 "projectile spread angle penalty" 5 } UseCustomModel models/props_doomsday/rocket_socket_doomsday.mdl CustomWeaponModel { Slot 0 Model "models/weapons/c_models/c_minigun/c_minigun.mdl" } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "override footstep sound set" 6 "not solid to players" 1 } } T_TFBot_Tank_Turret_bomb { Class Demoman WeaponRestrictions Primaryonly Attributes DisableDodge Skill Easy Action Mobber //Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "The Iron Bomber" FireWeapon { Delay 1 Cooldown 2 Repeats 0 Type "Primary" } InterruptAction { Target "bomb_target" AimTarget "bomb_target" Delay 0.1 Cooldown 1 Duration 999 } UseCustomModel models/props_doomsday/rocket_socket_doomsday.mdl CustomWeaponModel { Slot 0 Model "models/weapons/c_models/c_minigun/c_minigun.mdl" } ItemAttributes { ItemName "The Iron Bomber" "custom projectile model" "models\props_td\atom_bomb.mdl" } ShootTemplate { Name "mvm_bomb" AttachToProjectile 1 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "fuse time" 20 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "override footstep sound set" 6 "not solid to players" 1 } } TankTemplate { ClassIcon tank_buff } T_TFBot_Tank_Turret_minicrit { Class Soldier Name "Extended Buff Soldier" ClassIcon soldier_buff Attributes SpawnWithFullCharge Item "The Buff Banner" ExtAttr IgnoreBuildings ExtAttr IgnorePlayers Attributes DisableDodge CharacterAttributes { "increase buff duration" 9999 "mod soldier buff range" 3 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } UseCustomModel "models/empty.mdl" CharacterAttributes { "move speed bonus" 0.1 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "override footstep sound set" 6 "not solid to players" 1 } } T_TFBot_Tank_Turret_RShieldLvL1 { Class Soldier UseCustomModel "models/empty.mdl" CharacterAttributes { "move speed bonus" 0.1 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "override footstep sound set" 6 "not solid to players" 1 } } T_TFBot_Scout_FAN { Class Scout ClassIcon scout_fan Name "Force-A-Nature Scout" Item "The Bolt Boy" Item "The Force-a-Nature" MaxVisionRange 500 ItemAttributes { ItemName "The Force-a-Nature" "faster reload rate" 1.6 //"scattergun knockback mult" 1.5 "damage bonus" 0.65 "damage blast push" 1.5 } } T_TFBot_Soldier_Bison { Class Soldier Name "Bison Soldier" WeaponRestrictions secondaryonly Item "The Righteous Bison" Item "Lord Cockswain's Pith Helmet" ClassIcon soldier_bison ItemAttributes { ItemName "The Righteous Bison" "faster reload rate" 0.5 "Projectile speed increased" 0.75 "projectile lifetime" 10 //"particle color rainbow" 50 } //AimLeadProjectileSpeed 1 AimAt body } T_TFBot_Chief_Soldier_AirStrike { Class Soldier Name "Soldier" item "The Air Strike" Item "The War Pig" Item "The B.A.S.E. jumper" ClassIcon soldier_airstrike_lite RocketJump 2 AimLeadProjectileSpeed 1 AimAt feet Health 15000 Attributes MiniBoss //Attributes HoldFireUntilFullReload //Attributes AlwaysFireWeapon Action Mobber ItemAttributes { ItemName "The Air Strike" "faster reload rate" 0.1 "clip size upgrade atomic" 2 "fire rate bonus" 0.5 } EventChangeAttributes { Attr1 { RocketJump 0 ItemAttributes { ItemName "The Air Strike" "ignores other projectiles" 1 "mult projectile count" 3 "projectile spread angle penalty" 10 "fire speed bonus" 3 "projectile speed increased" 0.25 } } Attr2 { RocketJump 2 ItemAttributes { ItemName "The Air Strike" "faster reload rate" 0.1 "clip size upgrade atomic" 2 "fire rate bonus" 0.75 "mult projectile count" 1 "ignores other projectiles" 0 } } } ChangeAttributes { Delay 15 Cooldown 25 Repeats 999 Name "Attr1" } ChangeAttributes { Delay 1 Cooldown 10 Repeats 999 Name "Attr2" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.5 "dmg taken from self reduced" 0.1 "self dmg push force increased" 100 "mul nonrocketjump attackrate" 1 //"mod_air_control_blast_jump" 0 } } T_TFBot_Giant_Pyro_Flare_Rain { Class Pyro Name "Giant Flare Rain Pyro" ClassIcon pyro_flare_rain_nys_giant Skill Expert Health 3000 Item "The Flare Gun" Item "Skullbrero" WeaponRestrictions SecondaryOnly Attributes MiniBoss Attributes DisableDodge UseMeleeThreatPrioritization 1 AimAt Head AimLeadProjectileSpeed 1 ItemAttributes { ItemName "The Flare Gun" "fire rate bonus" 0.075 "projectile spread angle penalty" 10 "Projectile speed increased" 0.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "override footstep sound set" 6 } } T_TFBot_Giant_Pyro_Elite { Class Pyro Name "Giant Pyro" ClassIcon pyro_giant Health 3000 WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes DisableDodge UseMeleeThreatPrioritization 1 AimAt Body Skill Expert AimTrackingInterval 0.01 CustomEyeParticle "eye_powerup_green_lvl_4" Item "The Flare Gun" Item "The Axtinguisher" ItemAttributes { ItemName "tf_weapon_flamethrower" //"flame_drag" 5 } DesiredAttackRange 300 WeaponSwitch { Type "Primary" MaxTargetRange 599 MinTargetRange 151 Delay 0.1 Repeats 0 Cooldown 1 IfSeeTarget 1 } WeaponSwitch { Type "Secondary" MaxTargetRange 100000 MinTargetRange 600 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } WeaponSwitch { Type "Melee" MaxTargetRange 200 MinTargetRange 0 Delay 0.1 Repeats 0 Cooldown 3 IfSeeTarget 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "airblast_destroy_projectile" 1 "override footstep sound set" 6 } } T_TFBot_Giant_Heavyweapons_Elite { Class Heavyweapons Name "Giant Heavy" ClassIcon heavy_giant Health 5000 WeaponRestrictions PrimaryOnly //MaxVisionRange 1200 Attributes MiniBoss Attributes DisableDodge Skill Expert UseMeleeThreatPrioritization 1 ExtAttr AlwaysFireWeaponAlt AimTrackingInterval 0.01 CustomEyeParticle "eye_powerup_green_lvl_4" Item "Fists of steel" ItemAttributes { ItemName "TF_WEAPON_MINIGUN" "damage bonus" 1.5 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "faster reload rate" 0.1 } WeaponSwitch { Type "Primary" MaxTargetRange 999 MinTargetRange 0 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } WeaponSwitch { Type "Melee" MaxTargetRange 100000 MinTargetRange 1000 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.1 "airblast vulnerability multiplier" 0.1 "airblast vertical vulnerability multiplier" 0.1 "override footstep sound set" 2 "mod minigun can holster while spinning" 1 } } T_TFBot_Giant_Scout_Elite { Class Scout Name "Giant Scout" ClassIcon scout_giant Health 1600 WeaponRestrictions PrimaryOnly Attributes MiniBoss Skill Expert UseMeleeThreatPrioritization 1 FastUpdate 1 DesiredAttackRange 250 AimTrackingInterval 0.01 WeaponSwitch { Type "Primary" MaxTargetRange 400 MinTargetRange 0 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } WeaponSwitch { Type "Secondary" MaxTargetRange 100000 MinTargetRange 401 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "airblast vertical vulnerability multiplier" 0.5 "override footstep sound set" 5 } } T_TFBot_Giant_Soldier_Elite { Class Soldier Name "Giant Soldier" ClassIcon soldier_giant Health 3800 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes DisableDodge Skill Expert UseMeleeThreatPrioritization 1 AimLeadProjectileSpeed 1 //AimTrackingInterval 0 CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.5 "dmg taken from self reduced" 0.1 "self dmg push force increased" 50 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "override footstep sound set" 3 } EventChangeAttributes { Attr1 { RocketJump 2 } Attr2 { RocketJump 0 } } ChangeAttributes { Delay 5 Cooldown 10 Repeats 999 Name "Attr1" MaxTargetRange 100000 MinTargetRange 501 } ChangeAttributes { Delay 10 Cooldown 10 Repeats 999 Name "Attr2" MaxTargetRange 500 MinTargetRange 0 } } T_TFBot_Giant_Demoman_Elite { Class Demoman Name "Giant Demoman" ClassIcon demo_giant Health 3300 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes DisableDodge Skill Expert AimAt Head AimLeadProjectileSpeed 1 UseMeleeThreatPrioritization 1 EventChangeAttributes { Attr1 { WeaponSwitch { Type "Secondary" MaxTargetRange 100000 MinTargetRange 601 Delay 0 Repeats 0 Cooldown 0 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "clip size bonus" 0 "is_passive_weapon" 1 } } Attr2 { WeaponSwitch { Type "Primary" Delay 0 Repeats 0 Cooldown 0 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "clip size bonus" 1 } } } ChangeAttributes { Delay 0 Cooldown 2 Repeats 999 Name "Attr1" MaxTargetRange 100000 MinTargetRange 601 } ChangeAttributes { Delay 5 Cooldown 2 Repeats 999 Name "Attr2" MaxTargetRange 600 MinTargetRange 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "override footstep sound set" 4 } } T_TFBot_Soldier_Bison { Class Soldier Name "Bison Soldier" WeaponRestrictions secondaryonly Item "The Righteous Bison" Item "Lord Cockswain's Pith Helmet" ClassIcon soldier_bison ItemAttributes { ItemName "The Righteous Bison" "faster reload rate" 0.25 } AimLeadProjectileSpeed 1 AimAt body } T_TFBot_Giant_Scout_Basher { Class Scout Name "Giant Basher Scout" ClassIcon scout_bostonbasher_giant Health 1600 WeaponRestrictions MeleeOnly Attributes MiniBoss Skill Expert //Attributes DisableDodge UseMeleeThreatPrioritization 1 FastUpdate 1 AimTrackingInterval 0.01 Item "The Boston Basher" ItemAttributes { ItemName "The Boston Basher" "hit self on miss" 0 } CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "airblast vertical vulnerability multiplier" 0.5 "override footstep sound set" 5 } } T_TFBot_Heavyweapons { Class Heavyweapons Name "Heavy" //Attributes DisableDodge MaxVisionRange 600 DesiredAttackRange 200 } T_TFBot_Medic_Shieldinf { Class Medic Name "Medic Boss" ClassIcon medic_shield_ala Skill Expert WeaponRestrictions SecondaryOnly Action Mobber Attributes SpawnWithFullCharge Attributes ProjectileShield DesiredAttackRange 0 Item "The Quick-Fix" ItemAttributes { ItemName "The Quick-Fix" "Ubercharge rate bonus" 0.01 "generate rage on heal" 2 "increase buff duration" 3 } FireWeapon { Delay 1 Cooldown 1 Repeats 0 IfSeeTarget 1 Duration 0.5 Type "Special" } FireInput { Target "!activator" Action "$SetProp$m_flRageMeter" Param "100" Delay 0 Cooldown 1 Repeats 999 } CharacterAttributes { "dmg penalty vs players" 1 } } T_TFBot_Giant_Soldier_RocketPush { Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Item "The Liberty Launcher" ClassIcon soldier_libertylauncher Attributes MiniBoss Attributes HoldFireUntilFullReload Name "Giant Blast Soldier" Health 3800 AimLeadProjectileSpeed 1 ItemAttributes { ItemName "The Liberty Launcher" "damage blast push" 1.25 "damage bonus" 0.75 "fire rate bonus" 0.25 "clip size upgrade atomic" 5 "faster reload rate" 0.2 "Blast radius decreased" 1.2 "projectile spread angle penalty" 4 } CharacterAttributes { "move speed bonus" 0.5 "dmg taken from self reduced" 0.1 "self dmg push force increased" 50 "override footstep sound set" 3 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "airblast vertical vulnerability multiplier" 0.1 } } T_TFBot_Pyro_Deflector { Class Pyro Item "The Degreaser" Item "Traffic Cone" ClassIcon pyro_reflect_daan DesiredAttackRange 200 CharacterAttributes { "airblast_destroy_projectile" 1 } } T_TFBot_Giant_Pyro_Deflector { Class Pyro Item "The Degreaser" Item "Traffic Cone" ClassIcon pyro_reflect_daan //DesiredAttackRange 200 Health 3000 Skill Expert Attributes MiniBoss ItemAttributes { ItemName "The Degreaser" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0 "airblast pushback scale" 3 "mult airblast refire time" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "airblast_destroy_projectile" 1 "override footstep sound set" 6 } } T_TFBot_Giant_Medic_Boss_1 { Class Medic Name "Medic Boss" ClassIcon medic_shield_ala Skill Expert Health 20000 AimTrackingInterval 0 UseMeleeThreatPrioritization 1 FastUpdate 1 Action Mobber Attributes MiniBoss //Attributes SpawnWithFullCharge //Attributes ProjectileShield WeaponRestrictions PrimaryOnly Item "The Quick-Fix" Item "The Ubersaw" Item "Mighty Mitre" ItemAttributes { ItemName "The Quick-Fix" "Ubercharge rate bonus" 1 "generate rage on heal" 1 "increase buff duration" 1 } EventChangeAttributes { Attr1 { WeaponRestrictions SecondaryOnly AimOffset "0 0 -500" DesiredAttackRange 0 AimLeadProjectileSpeed 0 //DisableDodge 1 FireWeapon { Delay 1 Cooldown 1 Repeats 0 IfSeeTarget 0 Duration 0.5 Type "Special" } CharacterAttributes { "move speed bonus" 1 } } Attr2 { WeaponRestrictions PrimaryOnly AimOffset "0 0 0" AimAt Head //DesiredAttackRange 500 //AimLeadProjectileSpeed 1 //DisableDodge 0 AddCond { Name "TF_COND_CRITBOOSTED" Delay 0.5 Duration -1 } FireWeapon { Delay 3 Cooldown 4 Repeats 0 IfSeeTarget 0 Duration 0.5 Type "Jump" } WeaponSwitch { Type "Primary" MaxTargetRange 100000 MinTargetRange 301 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } WeaponSwitch { Type "Melee" MaxTargetRange 300 MinTargetRange 0 Delay 0.1 Repeats 0 Cooldown 0 IfSeeTarget 1 } CharacterAttributes { "move speed bonus" 0.5 } } } ChangeAttributes { Delay 7 Cooldown 25 Repeats 999 Name "Attr1" } ChangeAttributes { Delay 0 Cooldown 20 Repeats 999 Name "Attr2" } FireInput { Target "!activator" Action "$SetProp$m_flRageMeter" Param "100" Delay 0 Cooldown 3 Repeats 999 } CharacterAttributes { "cancel falling damage" 1 "dmg penalty vs players" 1 } } T_TFBot_Soldier_RocketPush { Class Soldier Item "The Liberty Launcher" Name "Blast Soldier" ClassIcon soldier_libertylauncher Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Liberty Launcher" "damage blast push" 1.25 "damage bonus" 0.45 "fire rate bonus" 0.001 "clip size upgrade atomic" -2 "faster reload rate" 1.5 "Blast radius decreased" 1.2 "projectile spread angle penalty" 2 } AimLeadProjectileSpeed 1 } T_TFBot_Giant_Soldier_Spammer_directhit { Class Soldier Name "Giant RapidFire DirectHit Soldier" ClassIcon soldier_spammer Health 3800 Skill Expert Item "The Lucky Shot" Item "The Direct Hit" WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes DisableDodge ItemAttributes { ItemName "The Direct Hit" "faster reload rate" 0 "fire rate bonus" 0.5 "Projectile speed increased" 0.65 } AimAt Feet UseMeleeThreatPrioritization 1 AimLeadProjectileSpeed 1 CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "airblast vertical vulnerability multiplier" 0.25 "override footstep sound set" 3 } } T_TFBot_Giant_Soldier_RocketShotgun { Class Soldier ClassIcon soldier_blackbox_giant Name "Giant Black Box Soldier" Health 4200 Item "The Black Box" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Black Box" "damage bonus" 0.5 "fire rate bonus" 0.001 "faster reload rate" 1.6 "blast radius increased" 1.25 "paintkit_proto_def_index" 414 "set_item_texture_wear" 0 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 1000 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } T_TFBot_Giant_Soldier_RocketShotgun_FactoryTank { Class Soldier ClassIcon soldier_blackbox_giant Name "Giant Black Box Soldier" Health 4200 Item "FactoryTank Blackbox" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "dmg taken from self reduced" 0 "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } } PointTemplates { RotateShieldLvL1 { OnSpawnOutput { Target "rotate" Action "Start" Delay 0.3 } OnSpawnOutput { Target "rotate" Action "$SetFakeParent" Param "tank" Delay 0.1 } OnSpawnOutput { Target "rotate" Action "$SetLocalAngles" Param "0 0 0" Delay 0.2 } entity_medigun_shield { "parentname" "rotate" "targetname" "projectile_shield" "origin" "150 0 0" "angles" "0 90 0" "spawnflags" "1" "teamnum" "3" "skin" "1" "solid" "0" } func_rotating { "targetname" "rotate" "origin" "0 0 0" "$modules" "fakeparent" "$positiononly" "1" "mins" "-0.1 -0.1 -0.1" "maxs" "0.1 0.1 0.1" "dmg" "0" "fanfriction" "100" "maxspeed" "60" "spawnflags" "64" "volume" "0" } } precache { OnSpawnOutput { Target gamerules Action runscriptcode Param "::ubertankmodel <- PrecacheModel(`models/bots/boss_bot/boss_tank_ubered.mdl`)" Delay 0.1 } OnSpawnOutput { Target gamerules Action runscriptcode Param "::ubertankmodel <- PrecacheModel(`models/bots/boss_bot/boss_boosted_tank.mdl`)" Delay 0.1 } OnSpawnOutput { Target gamerules Action runscriptcode Param "::ubertankmodel <- PrecacheModel(`models/bots/boss_bot/boss_tank_color.mdl`)" Delay 0.1 } } colortank { OnSpawnOutput { Target "!activator" Action "color" //Change to any RGB value Param "65 65 65" } } turret_setup { NoFixup 1 filter_tf_bot_has_tag { "targetname" "filter_turret" "tags" "bot_turret" "require_all_tags" "1" } trigger_teleport { "targetname" "trigger_teleport_turret" "mins" "-5000 -5000 -5000" "maxs" "5000 5000 5000" "spawnflags" "1" "StartDisabled" "0" "origin" "-491 4309 -243" "target" "turretdest" "landmark" "!activator" "filtername" "filter_turret" } filter_tf_bot_has_tag { "targetname" "filter_turret_support" "tags" "bot_turret_support" "require_all_tags" "1" } trigger_teleport { "targetname" "trigger_teleport_turret_support" "mins" "-5000 -5000 -5000" "maxs" "5000 5000 5000" "spawnflags" "1" "StartDisabled" "0" "origin" "-491 4309 -243" "target" "turretsupportdest" "landmark" "!activator" "filtername" "filter_turret_support" } } turret_logic { NoFixup 1 info_teleport_destination { "targetname" "turretdest" "origin" "40 0 220" "start_active" "1" } info_teleport_destination { "targetname" "turretsupportdest" "origin" "0 0 0" "start_active" "1" } } turret_kill { NoFixup 1 OnSpawnOutput { Target "!activator" Action "AddOutput" Param "targetname turret" Delay 0 } OnKilledOutput { Target "!activator" Action "AddOutput" Param "targetname " Delay 0 } } tank_sprite { OnSpawnOutput { Target "tank_particle" Action "$SetFakeParent" Param "tank" Delay 1 } OnSpawnOutput { Target "tank_particle" Action "HideSprite" Delay 1 } env_sprite { "targetname" "tank_particle" "disablereceiveshadows" "0" "framerate" "1" "GlowProxySize" "1" "model" "upgrades_plain2.vmt" "scale" "0.3" "spawnflags" "1" "origin" "0 0 -500" "angles" "45 0 0" "$fakeparentoffset" "125 0 125" "$OnFakeParentKilled" "!self,Kill,,0,-1" } } factorytank_opening_long { NoFixup 1 OnSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "1" } OnSpawnOutput { Target "tank" Action "$SetProp$m_flPlaybackRate" Param "0" } OnSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "0" Delay 5 } OnSpawnOutput { Target "tank" Action "$SetProp$m_flPlaybackRate" Param "1" Delay 5 } } factorytank_opening_short { NoFixup 1 OnSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "1" } OnSpawnOutput { Target "tank" Action "$SetProp$m_flPlaybackRate" Param "0" } OnSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "0" Delay 1 } OnSpawnOutput { Target "tank" Action "$SetProp$m_flPlaybackRate" Param "1" Delay 1 } } tank_teleporter_setup { NoFixup 1 filter_tf_bot_has_tag { "targetname" "filter_tele" "tags" "bot_tele" "require_all_tags" "1" } filter_tf_bot_has_tag { "targetname" "filter_tele_boss" "tags" "bot_tele_boss" "require_all_tags" "1" } trigger_teleport //bot built tele { "targetname" "trigger_teleport_telebot" "mins" "-500 -500 -250" "maxs" "500 500 500" "spawnflags" "1" "StartDisabled" "0" "origin" "-491 4309 -243" "target" "teledest" "filtername" "filter_tele" "OnStartTouch" "buildsound,playsound,,0,-1" } trigger_teleport //bot built tele { "targetname" "trigger_teleport_telebot_boss" "mins" "-500 -500 -250" "maxs" "500 500 500" "spawnflags" "1" "StartDisabled" "1" "origin" "-491 4309 -243" "target" "teledest" "filtername" "filter_tele_boss" "OnStartTouch" "buildsound,playsound,,0,-1" } } tank_teleporter { NoFixup 1 OnSpawnOutput { Target "!activator" Action "AddOutput" Param "targetname tank" Delay 1 } info_teleport_destination { "targetname" "teledest" "origin" "250 0 28" "start_active" "1" } ambient_generic { "targetname" "buildsound" "origin" "0 0 50" "message" "ambient\rottenburg\portcullis_down.wav" "pitch" "100" "health" "10" "spawnflags" "49" } ambient_generic { "targetname" "uberstartound" "origin" "0 0 50" "message" "items\powerup_pickup_uber.wav" "pitch" "100" "health" "10" "spawnflags" "49" } ambient_generic { "targetname" "uberstopsound" "origin" "0 0 50" "message" "weapons\medigun_heal_detach.wav" "pitch" "100" "health" "10" "spawnflags" "49" } } tank_props { prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-65 25 140" "angles" "0 180 0" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-45 -25 140" "angles" "0 180 0" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-30 -25 140" "angles" "0 180 0" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-65 -25 140" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-45 25 140" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // cheminée moyenne { "model" "models/props_forest/chimney09.mdl" "origin" "-30 25 140" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.43" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-65 35 180" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-45 35 180" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-30 35 180" "angles" "0 180 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-65 -35 180" "angles" "0 0 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-45 -35 180" "angles" "0 0 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // petite cheminée de bordure { "model" "models/props_forest/chimney01.mdl" "origin" "-30 -35 180" "angles" "0 0 0" "disableshadows" "1" "skin" "0" "solid" "1" "disable shadows" "1" "modelscale" "0.33" } prop_dynamic // support pour tourelle { "model" "models\props_nucleus\mp_captop.mdl" "origin" "40 0 180" "angles" "180 0 0" "disableshadows" "1" "skin" "0" "solid" "0" "disable shadows" "1" "modelscale" "0.13" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-100 35 250" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-70 35 250" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-40 35 250" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-100 -35 250" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-70 -35 250" } info_particle_system { "effect_name" "smoke_wispy_black_granary" "start_active" "1" "origin" "-40 -35 250" } //models\props_2fort\spytech_roofbeam04.mdl //models\props_farm\powertower01.mdl //models\props_2fort\spytech_roofbeam03.mdl //models\props_moonbase\moon_steelsupport01.mdl //models\props_mining\silo_top001.mdl //models\props_nucleus\mp_captop.mdl //models\props_sunshine\lighthouse_top_skybox.mdl } boss_healthbar_logic { NoFixup 1 OnSpawnOutput { Target "!activator" Action "AddOutput" Param "targetname healthbar" Delay 0 } OnSpawnOutput { Target "tank" Action "SetSpeed" Param "0" } OnSpawnOutput { Target "tank_particle" Action "ShowSprite" Delay 0 } logic_relay { "targetname" "boss_healthbar_logic" "OnSpawn" "healthbar,$SetProp$m_iHealth,1,0,-1" "OnSpawn" "healthbar,$SetProp$m_iHealth,10,1,-1" "OnSpawn" "healthbar,$SetProp$m_iHealth,20,2,-1" "OnSpawn" "healthbar,$SetProp$m_iHealth,30,3,-1" "OnSpawn" "healthbar,$SetProp$m_iHealth,40,4,-1" "OnSpawn" "healthbar,Kill,,5,-1" "OnSpawn" "tank_particle,HideSprite,,5,-1" } OnKilledOutput { Target "!activator" Action "AddOutput" Param "targetname " Delay 0 } } //runscriptcode,NetProps.SetPropIntArray(self,`m_nModelIndexOverrides`,PrecacheModel(`models/bots/boss_bot/boss_tank_color.mdl`) boss_logic_0 { NoFixup 1 logic_relay { "targetname" "tank_update" "OnSpawn" "tank,SetSpeed,10,3,-1" "OnSpawn" "tank_uber_on,Trigger,,0,-1" "OnSpawn" "uberstartsound,playsound,,0,-1" "OnSpawn" "trigger_teleport_telebot_boss,Enable,,0,-1" "OnSpawn" "trigger_teleport_telebot_boss,Disable,,1,-1" "OnSpawn" "tank,$SetModelOverride,models/bots/boss_bot/boss_tank_ubered.mdl,0,1" "$OnKilled" "tank,$SetModelOverride,models/bots/boss_bot/boss_tank_color.mdl,0,-1" "$OnKilled" "tank_uber_off,Trigger,,0,-1" "$OnKilled" "uberstopsound,playsound,,0,-1" } } boss_logic_1 { NoFixup 1 logic_relay { "targetname" "tank_update" "OnSpawn" "tank,SetSpeed,10,3,-1" "OnSpawn" "tank_uber_on,Trigger,,0,-1" "OnSpawn" "uberstartsound,playsound,,5,-1" "OnSpawn" "trigger_teleport_telebot_boss,Enable,,0,-1" "OnSpawn" "trigger_teleport_telebot_boss,Disable,,1,-1" "OnSpawn" "tank,$SetModelOverride,models/bots/boss_bot/boss_tank_ubered.mdl,0,1" "$OnKilled" "tank,$SetModelOverride,models/bots/boss_bot/boss_tank_color.mdl,0,-1" "$OnKilled" "tank_uber_off,Trigger,,0,-1" "$OnKilled" "uberstopsound,playsound,,0,-1" "$OnKilled" "tank_phase_3,Trigger,,0,-1" } } tank_logic { NoFixup 1 logic_relay { "targetname" "tank_intro" "OnSpawn" "tank,SetSpeed,0,0,-1" "OnSpawn" "tank,SetSpeed,400,5,-1" "OnSpawn" "tank,SetSpeed,10,8,-1" "OnSpawn" "spawnbot_boss,Enable,,6,-1" "OnSpawn" "spawnbot_boss,Disable,,26,-1" } logic_relay { "targetname" "tank_phase_1" "OnTrigger" "spawnbot_main_1,enable,,0,-1" "OnTrigger" "tank,$SetProp$m_nSequence,1,0,-1" "OnTrigger" "tank,$SetProp$m_flPlaybackRate,0,0,-1" } logic_relay { "targetname" "tank_phase_2" "OnTrigger" "spawnbot_main_1,disable,,0,-1" "OnTrigger" "spawnbot_main_2,enable,,5,-1" "OnTrigger" "turret,Kill,,0,-1" "OnTrigger" "tank,$SetModelOverride,models/bots/boss_bot/boss_boosted_tank.mdl,0,-1" "OnTrigger" "tank,Skin,2,0.1,-1" "OnTrigger" "tank,$SetProp$m_nSequence,1,5,-1" "OnTrigger" "tank,$SetProp$m_flPlaybackRate,0,5,-1" } logic_relay { "targetname" "tank_phase_boss_1" "OnTrigger" "turret,Kill,,0,-1" "OnTrigger" "tank,$SetModelOverride,models/bots/boss_bot/boss_tank_color.mdl,0,1" "OnTrigger" "spawnbot_main_2,disable,,0,-1" "OnTrigger" "spawnbot_boss_support_1,enable,,0,-1" "OnTrigger" "spawnbot_boss,Enable,,5,-1" "OnTrigger" "spawnbot_boss,Disable,,20,-1" } logic_relay { "targetname" "tank_phase_3" "OnTrigger" "spawnbot_boss_support_1,disable,,0,-1" "OnTrigger" "spawnbot_main_3,enable,,5,-1" "OnTrigger" "turret,Kill,,0,-1" "OnTrigger" "bot,Kill,,0,-1" "OnTrigger" "tank,$SetProp$m_nSequence,1,5,-1" "OnTrigger" "tank,$SetProp$m_flPlaybackRate,0,5,-1" } logic_relay { "targetname" "tank_phase_4" "OnTrigger" "spawnbot_main_3,disable,,0,-1" "OnTrigger" "turret,Kill,,0,-1" } logic_relay { "targetname" "tank_uber_on" "OnTrigger" "tank,SetDamageFilter,filter_uber,0,-1" } logic_relay { "targetname" "tank_uber_off" "OnTrigger" "tank,SetDamageFilter,filter_red,0,-1" } filter_activator_name { "filtername" "blank" "Negated" "0" "targetname" "filter_uber" } info_target { "targetname" "bomb_target" "Origin" "700 0 300" } info_target { "targetname" "tank_front" "Origin" "300 0 0" } env_entity_maker { "targetname" "RShieldLvL1_spawner" "EntityTemplate" "RotateShieldLvL1" } } tank_health_checker { logic_timer { "targetname" "tank_health_checker" "RefireTime" "0.5" "OnTimer" "tankrunscriptcodeself.TakeDamage(0,1,Entities.FindByClassname(null,`player`))0-1" "OnTimer" "phase1_threshold,SetValue,$$=!parent.m_iHealth,0,-1" "OnTimer" "phase2_threshold,SetValue,$$=!parent.m_iHealth,0,-1" "OnTimer" "boss1_threshold,SetValue,$$=!parent.m_iHealth,0,-1" "OnTimer" "phase3_threshold,SetValue,$$=!parent.m_iHealth,0,-1" } math_counter { "targetname" "phase2_threshold" "startvalue" "100000" "min" "95000" "max" "100000" "OnHitMin" "tank_phase_1,trigger,,0,-1" //"OutValue" "player,$DisplayTextChat,,0,-1" } math_counter { "targetname" "phase2_threshold" "startvalue" "100000" "min" "90000" "max" "100000" "OnHitMin" "tank_phase_2,trigger,,0,-1" //"OutValue" "player,$DisplayTextChat,,0,-1" } math_counter { "targetname" "boss1_threshold" "startvalue" "100000" "min" "80000" "max" "100000" "OnHitMin" "tank_phase_boss_1,trigger,,0,-1" //"OutValue" "player,$DisplayTextChat,,0,-1" } math_counter { "targetname" "phase3_threshold" "startvalue" "100000" "min" "75000" "max" "100000" "OnHitMin" "tank_phase_3,trigger,,0,-1" //"OutValue" "player,$DisplayTextChat,,0,-1" } } mvm_bomb { KeepAlive 1 NoFixup 1 item_teamflag { "targetname" "turret_bomb" "gametype" "3" "flag_model" "models/props_td/atom_bomb.mdl" "teamnum" "3" } } bot_kill { NoFixup 1 OnSpawnOutput { Target "!activator" Action "AddOutput" Param "targetname bot" Delay 0 } OnKilledOutput { Target "!activator" Action "AddOutput" Param "targetname " Delay 0 } } homing_radius { trigger_multiple { "targetname" "trigger_homing" "mins" "-500 -500 -500" "maxs" "500 500 500" "spawnflags" "1" "StartDisabled" "1" "origin" "0 0 0" "filtername" "filter_homing" "OnStartTouch" "!Activator,$AddPlayerAttribute,mod projectile heat aim error|360,0,-1" "OnStartTouch" "!Activator,$AddPlayerAttribute,mod projectile heat seek power|90,0,-1" "OnStartTouch" "!Activator,$AddPlayerAttribute,mod projectile heat aim time|3,0,-1" "OnStartTouch" "!Activator,$AddCond 36,,0,-1" "OnStartTouch" "!Activator,$AddPlayerAttribute,projectile trail particle|eyeboss_projectile,0,-1" "OnEndTouch" "!Activator,$RemovePlayerAttribute,mod projectile heat aim error,0,-1" "OnEndTouch" "!Activator,$RemovePlayerAttribute,mod projectile heat seek power,0,-1" "OnEndTouch" "!Activator,$RemovePlayerAttribute,mod projectile heat aim time,0,-1" "OnEndTouch" "!Activator,$RemoveCond 36,,0,-1" "OnEndTouch" "!Activator,$RemovePlayerAttribute,projectile trail particle|eyeboss_projectile,0,-1" } filter_activator_tfteam { "targetname" "filter_homing" "teamnum" "3" "Negated" "0" } } crit_radius { trigger_multiple { "targetname" "trigger_crit" "mins" "-500 -500 -500" "maxs" "500 500 500" "spawnflags" "1" "StartDisabled" "1" "origin" "0 0 0" "filtername" "filter_crit" "OnStartTouch" "!Activator,$AddCond 5,,0,-1" "OnStartTouch" "!Activator,$RemoveCond 5,,0,-1" } filter_activator_tfteam { "targetname" "filter_crit" "teamnum" "3" "Negated" "0" } } annotation_1 { NoFixup 1 OnSpawnOutput { Target "annotation_1" Action "Show" Delay 1 } training_annotation { "targetname" "annotation_1" "display_text" "Black Box heals the tank !" "lifetime" 5 "origin" 0 0 0 } } } SpawnTemplate tank_teleporter_setup SpawnTemplate precache SpawnTemplate turret_setup //SpawnTemplate tank_sprite // MISSION: Sentry Buster Mission { Objective DestroySentries Where spawnbot_mission_sentrybuster CooldownTime 60 TFBot { Template T_TFBot_SentryBuster Tag bot_sentrybuster Attributes DisableDodge Tag bot_tele CharacterAttributes { "voice pitch scale" 0 } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } /////////////////////////////////////Tank WaveSpawn { Name "main" TotalCount 1 MaxActive 1 SpawnCount 1 TotalCurrency 100000 FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Model "models/bots/boss_bot/boss_tank_color.mdl" SpawnTemplate colortank StartingPathTrackNode tank_path_b_1 Skin 2 Health 100000 Speed 10 IsCrit 1 DisableBomb 1 Scale 1 //Scale the tank Name "FactoryTank" SpawnTemplate tank_teleporter SpawnTemplate tank_props SpawnTemplate tank_logic SpawnTemplate tank_health_checker SpawnTemplate turret_logic SpawnTemplate tank_sprite TriggerDestroyBuildingFix 1 NoScreenShake 0 //CritImmune 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } ////////////////////////////////////Turrets WaveSpawn { Name "turret_1" Where spawnbot_turret TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "main" WaitBeforeStarting 0 Support Limited Squad { Randomchoice { TFBot { Template T_TFBot_Tank_Turret_1 Name "Automatic Explosive Turret MARK1" SpawnTemplate turret_kill Tag bot_turret Health 10000 Scale 0.83 Action Mobber AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration -1 } } } } } WaveSpawn { Name "turret_2" Where spawnbot_turret TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "turret_1" WaitBeforeStarting 0 Support Limited Squad { Randomchoice { TFBot { Template T_TFBot_Tank_Turret_1 Name "Automatic Explosive Turret MARK1" SpawnTemplate turret_kill Tag bot_turret Health 10000 Scale 0.83 Action Mobber AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration -1 } } } } } WaveSpawn { Name "turret_support" Where spawnbot_turret TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "turret_1" WaitBeforeStarting 0 Support Limited Squad { Randomchoice { TFBot { Template T_TFBot_Tank_Turret_minicrit Name "Homing module" SpawnTemplate turret_kill Tag bot_turret_support Health 10000 Skill Easy Action Mobber AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration -1 } } } } } ////////////////////////////////////Special bosses WaveSpawn { Name "boss_0" Where spawnbot_boss TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "boss_0_healthbar" WaitBeforeStarting 5 //Support Limited TFBot { Template T_TFBot_Giant_Heavyweapons Skill Expert SpawnTemplate boss_logic_0 SpawnTemplate factorytank_opening_long Attributes UseBossHealthBar Action Mobber UseMeleeThreatPrioritization 1 Tag bot_tele_boss AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } } } WaveSpawn //boss_0 healthbar { Name "boss_0_healthbar" Where spawnbot_boss TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 Support Limited Squad { Randomchoice { TFBot { Class Scout SpawnTemplate boss_healthbar_logic Health 50 ClassIcon heavy_giant Action Idle Attributes UseBossHealthBar } } } } WaveSpawn { Name "boss_1" Where spawnbot_boss TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "boss_1_healthbar" WaitBeforeStarting 5 //Support Limited TFBot { Template T_TFBot_Chief_Soldier_AirStrike Skill Expert SpawnTemplate boss_logic_1 Action Mobber Tag bot_tele_boss ItemAttributes { ItemName "The Airstrike" "damage bonus" 1.5 "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } InterruptAction { Target "195 8065 740" Delay 1 Repeats 4 Cooldown 1 Duration 1 Distance 10 } } } WaveSpawn //boss_1 healthbar { Name "boss_1_healthbar" Where spawnbot_boss TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "boss_0" WaitBeforeStarting 10 Support Limited Squad { Randomchoice { TFBot { Class Scout SpawnTemplate boss_healthbar_logic Health 50 ClassIcon heavy_giant Action Idle Attributes UseBossHealthBar } } } } WaveSpawn //80000 { Name "boss_2" Where spawnbot_boss TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 5 WaitForAllDead "boss_1" WaitBeforeStarting 10 //Support Limited TFBot { Template T_TFBot_Giant_Medic_Boss_1 Skill Expert SpawnTemplate boss_logic_1 Action Mobber Tag bot_tele_boss ItemAttributes { ItemName "The Airstrike" "damage bonus" 1.5 "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } InterruptAction { Target "195 8065 740" Delay 1 Repeats 4 Cooldown 1 Duration 1 Distance 10 } } } ///////////////////////////////////Subwaves ////100000 WaveSpawn { Name "main_1a" Where spawnbot_main_1 TotalCount 7 MaxActive 7 SpawnCount 7 WaitForAllDead "boss_0" Support Limited TFBot { Template T_TFBot_Demoman_Knight ItemAttributes { ItemName "The Eyelander" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } Skill Expert Action Mobber Attributes AlwaysCrit Tag bot_tele } } WaveSpawn { Name "main_1b" Where spawnbot_main_1 TotalCount 14 MaxActive 7 SpawnCount 7 WaitForAllDead "main_1a" WaitBeforeStarting 15 WaitBetweenSpawns 17 Support Limited TFBot { Template T_TFBot_Demoman_Knight ItemAttributes { ItemName "The Eyelander" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } Skill Expert Action Mobber Attributes AlwaysCrit Tag bot_tele } } WaveSpawn { Name "main_1c" Where spawnbot_main_1 TotalCount 24 MaxActive 6 SpawnCount 3 WaitForAllSpawned "main_1a" WaitBeforeStarting 3 WaitBetweenSpawns 5 WaitForAllDead "boss_0" Support Limited LastSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "0" } TFBot { Template T_TFBot_Scout_FAN DesiredAttackRange 200 Skill Expert ItemAttributes { ItemName "The Force-a-nature" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } Skill Expert Action Mobber Tag bot_tele } } WaveSpawn { Name "main_1" Where spawnbot_main_1 TotalCount 2 MaxActive 1 SpawnCount 1 WaitForAllDead "main_1a" WaitBeforeStarting 20 WaitBetweenSpawns 15 Support Limited TFBot { Template T_TFBot_Giant_Pyro_Deflector Skill Expert Attributes AlwaysCrit AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } InterruptAction { Target "tank_front" Delay 10 Repeats 0 Cooldown 10 WaitUntilDone 1 Duration 1 Distance 300 } Action Mobber Tag bot_tele } } //Phase support WaveSpawn { Name "support_1" Where spawnbot_main_1 TotalCount 9 MaxActive 3 SpawnCount 1 WaitBeforeStarting 4 WaitBetweenSpawns 4 WaitForAllDead "main_1a" Support 1 TFBot { Template T_TFBot_Demoman_Knight SpawnTemplate factorytank_opening_short ItemAttributes { ItemName "The Eyelander" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } Skill Expert Action Mobber Attributes AlwaysCrit Tag bot_tele } } WaveSpawn { Name "support_1" Where spawnbot_main_1 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 30 WaitForAllDead "main_1a" Support 1 TFBot { Template T_TFBot_Spy Skill Expert AimTrackingInterval 0.1 Action Spy } } WaveSpawn { Name "support_1" Where spawnbot_main_1 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 7 WaitForAllDead "main_1b" Support 1 TFBot { Template T_TFBot_Scout_FAN SpawnTemplate factorytank_opening_short DesiredAttackRange 200 Skill Expert ItemAttributes { ItemName "The Force-a-nature" "paintkit_proto_def_index" 414 "set_item_texture_wear" 0.5 } AddCond { Name "TF_COND_INVULNERABLE" Delay 0 Duration 0.75 } Skill Expert Action Mobber Tag bot_tele } } ////90000 WaveSpawn { Name "main_2a" Where spawnbot_main_2 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 20 WaitForAllDead "turret_1" Support Limited TFBot { Template T_TFBot_Giant_Soldier_RocketPush Skill Normal Action Mobber Tag bot_tele } } WaveSpawn { Name "main_2b" Where spawnbot_main_2 TotalCount 24 MaxActive 6 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 WaitForAllDead "turret_1" Support Limited LastSpawnOutput { Target "tank" Action "$SetProp$m_nSequence" Param "0" } TFBot { Template T_TFBot_Soldier_Bison Skill Normal Action Mobber Tag bot_tele } } //Phase support WaveSpawn { Name "support_2" Where spawnbot_main_2 TotalCount 6 MaxActive 6 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 10 WaitForAllDead "main_2b" Support 1 TFBot { Template T_TFBot_Soldier_Bison Skill Easy Action Mobber Tag bot_tele SpawnTemplate factorytank_opening_short } } WaveSpawn { Name "support_2" Where spawnbot_main_2 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 WaitForAllDead "main_2a" Support 1 TFBot { Template T_TFBot_Soldier_RocketPush SpawnTemplate factorytank_opening_short Skill Easy Action Mobber Tag bot_tele } } WaveSpawn { Name "support_2" Where spawnbot_main_2 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 30 WaitForAllDead "turret_1" Support 1 TFBot { Template T_TFBot_Sniper SpawnTemplate factorytank_opening_short Skill Expert Action Sniper PreferClass Sniper Tag bot_tele } } ////75000 WaveSpawn { Name "main_3a" Where spawnbot_main_3 TotalCount 5 MaxActive 5 SpawnCount 5 WaitBeforeStarting 10 WaitForAllDead "turret_3" Support Limited TFBot { Template T_TFBot_Giant_Scout_Basher Attributes AlwaysCrit Skill Expert Action Mobber Tag bot_tele } } ////60000 ////50000 ////30000 ////20000 ////10000 } }