#base robot_standard.pop #base robot_giant.pop // Test count: 17 // Report // Scout - Pending // Soldier - Fun // Pyro - Fun // Demo - // Heavy - ??? // Engie - Tolerable // Medic - Fun // Sniper - Fun // Spy - Okayish // //Wave 1: Generally good //Wave 2: Depends on pushed //Wave 3: Questionable WaveSchedule { StartingCurrency 1200 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 6 FixedRespawnWaveTime No Templates { T_TFBot_Heavy_Elite_Plasma { Class Heavyweapons Name "Elite Plasma Heavy" ClassIcon heavy_atomic Health 2000 Scale 1.4 WeaponRestrictions PrimaryOnly Item "The Virtual Viewfinder" Item "Iron Curtain" Skill Expert ItemAttributes { ItemName "Iron Curtain" "override projectile type" 13 "centerfire projectile" 1 "damage bonus" 2 "fire rate bonus" 2 "energy weapon penetration" 0 "dmg bonus vs buildings" 5 "projectile speed increased" 0.75 "projectile spread angle penalty" 5 "sniper fires tracer HIDDEN" 0 "dmg pierces resists absorbs" 1 } CharacterAttributes { "move speed bonus" 0.8 } } } // MISSION: Sentry Buster Mission { Objective DestroySentries Where spawn_generic CooldownTime 45 BeginAtWave 1 RunForThisManyWaves 5 TFBot { Template T_TFBot_SentryBuster } } // Spy Wave 1 Mission { Objective Spy InitialCooldown 30 Where spawn_mission_spy BeginAtWave 1 RunForThisManyWaves 2 CooldownTime 45 DesiredCount 2 TFBot { Template T_TFBot_Spy } } // Engineer Wave 2 Mission { Objective Engineer InitialCooldown 80 Where spawn_generic BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter Health 250 Attributes TeleportToHint TeleportWhere spawn_generic TeleportWhere spawn_side_main TeleportWhere spawn_side_opposite } } // Sniper Wave 3 Mission { Objective Sniper InitialCooldown 80 Where spawn_mission_sniper BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper } } // Spy Wave 3 Mission { Objective Spy InitialCooldown 90 Where spawn_mission_spy BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 45 DesiredCount 2 TFBot { Template T_TFBot_Spy } } // Engineer Wave 4 Mission { Objective Engineer InitialCooldown 80 Where spawn_generic BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter Health 250 Attributes TeleportToHint TeleportWhere spawn_generic TeleportWhere spawn_side_main TeleportWhere spawn_side_opposite } } Mission { Objective Sniper InitialCooldown 80 Where spawn_mission_sniper BeginAtWave 5 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper } } Mission { Objective Sniper InitialCooldown 80 Where spawn_mission_sniper BeginAtWave 6 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper Skill Expert } } Mission { Objective Spy InitialCooldown 60 Where spawn_mission_spy BeginAtWave 6 RunForThisManyWaves 1 CooldownTime 45 DesiredCount 3 TFBot { Template T_TFBot_Spy } } ////////////////////////////////////////////////////////////// // Starts with 1200 ends with 2000 // Subwave A. // 2 Tanks, scouts, crit boxing heavies and a basic giant demo // // Subwave B. Starts giant demos are dead // 3 Giant Burstfire Soldiers with squaded pyros. Squaded soldiers and squaded scouts. ////////////////////////////////////////////////////////////// // Comments: Honestly I really like this wave. The Soldiers come out right before to tank to start being a threat and then you have to focus on the tank with light support. After that theres a second tank while you deal with a regular demoman. // Comments: The // Review: Subwave 1 is good for all classes. Subwave 2: // Subwave 1: 9/10 Only flaw is the tanks Wave { InitWaveOutput { Target wave_init_random_center Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 150 Name "wave1_Atank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 Tank { Health 10000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_main OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCurrency 150 Name "wave1_Atank" WaitForAllSpawned "wave1_ADemo" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 5 Tank { Health 10000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_opposite OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCurrency 50 Name "wave1_ASoldier1" Where spawn_generic TotalCount 6 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 0 Squad { TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } } } WaveSpawn { TotalCurrency 50 Name "wave1_ASoldier1" Where spawn_generic TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 3 WaitBetweenSpawns 0 Squad { TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } TFBot { Class Soldier BehaviorModifiers push } } } WaveSpawn //AMelee1 consists of Boxing heavies, scouts and a giant stock demo { TotalCurrency 50 // Original Bat Scouts Name "wave1_AMelee1" Where spawn_generic TotalCount 8 MaxActive 8 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 4 TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } } // WaveSpawn // { // TotalCurrency 50 // // Name "wave1_AMelee1" // // Where spawn_generic // TotalCount 12 // MaxActive 12 // SpawnCount 3 // WaitBeforeStarting 8 // WaitBetweenSpawns 10 // // TFBot // { // Template T_TFBot_Heavyweapons_Heavyweight_Champ // //Attributes AlwaysCrit Unfun ngl // } // // Removed Squad due to Bat Scouts changing to Reg Scouts // Squad // { // TFBot // { // Template T_TFBot_Heavyweapons_Heavyweight_Champ // Attributes AlwaysCrit // } // TFBot // { // Template T_TFBot_Heavyweapons_Heavyweight_Champ // Attributes AlwaysCrit // } // TFBot // { // Template T_TFBot_Heavyweapons_Heavyweight_Champ // Attributes AlwaysCrit // } // } // } WaveSpawn { TotalCurrency 50 Name "wave1_ADemo" Where spawn_generic TotalCount 15 MaxActive 15 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 20 Squad { TFBot { Template T_TFBot_Giant_Demoman } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ //Attributes AlwaysCrit Unfun ngl } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ //Attributes AlwaysCrit Unfun ngl } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ //Attributes AlwaysCrit Unfun ngl } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ //Attributes AlwaysCrit Unfun ngl } } } WaveSpawn { TotalCurrency 100 Name "wave1_BSoldier" WaitForAllDead "wave1_ADemo" Where spawn_generic TotalCount 15 MaxActive 10 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 20 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 50 Name "wave1_BSoldier" WaitForAllDead "wave1_ADemo" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 10 Squad { TFBot { Class Soldier } TFBot { Class Soldier } } } WaveSpawn { TotalCurrency 50 Name "wave1_BFlankScout" WaitForAllDead "wave1_ADemo" Where spawn_right TotalCount 6 MaxActive 3 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 20 Squad { TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } } } WaveSpawn { TotalCurrency 50 Name "wave1_BFlankScout" WaitForAllDead "wave1_ADemo" Where spawn_left TotalCount 6 MaxActive 3 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 20 Squad { TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } TFBot { Class Scout ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } } } } ////////////////////////////////////////////////////////////// // Starts with 2000 ends with 3000 // Subwave A. // A powerful dps check of Kritz medics with giant soldiers // // Subwave B. Starts when All giant soldier pairs are dead // Quick waves of Gauntlets, Demoknights, Bowman, // // Subwave C. Starts when the Demoknights and bowman are spawned // Squads of Huntsman and Dragonfury and Burstfire Demos with ubers ////////////////////////////////////////////////////////////// // Review // Subwave 1 Is generally a quick dps check that makes players focus on the kritz medics before getting pounded. Most dying here don't do much. // Subwave 2 and 3 are fine. // Review 10/10 Wave { InitWaveOutput { Target wave_init_random_sides Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 300 Name "wave2_ASoldier" Where spawn_generic TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Giant_Soldier Skill Hard } TFBot { ClassIcon medic_quickfix_armored Health 900 Scale 1.3 Name "Armored Quickfix Medic" Class Medic Skill Expert Attributes SpawnWithFullCharge Tag bot_squad_member ItemAttributes { ItemName "The Quick-Fix" "uber duration bonus" -3 } CharacterAttributes { "heal rate bonus" 10 } Item "The Quick-Fix" Item "The Surgeon's Stahlhelm" } } } WaveSpawn { TotalCurrency 100 Name "wave2_BMelee1" WaitForAllSpawned "wave2_ASoldier" Where spawn_generic TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 15 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn { TotalCurrency 100 Name "wave2_BMelee2" WaitForAllSpawned "wave2_ASoldier" Where spawn_generic TotalCount 24 MaxActive 12 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 2 TFBot { Template T_TFBot_Demoman_Knight Skill Normal } } WaveSpawn { TotalCurrency 100 Name "wave2_BMelee2" WaitForAllSpawned "wave2_ASoldier" Where spawn_generic TotalCount 8 MaxActive 8 SpawnCount 4 WaitBeforeStarting 30 WaitBetweenSpawns 10 Squad { TFBot { Class Soldier } TFBot { Class Soldier } TFBot { Class Soldier } TFBot { Class Soldier } } } WaveSpawn { TotalCurrency 200 Name "wave2_CGiant" WaitForAllSpawned "wave2_BMelee2" Where spawn_generic TotalCount 9 MaxActive 9 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 25 Squad { TFBot { Template T_TFBot_Giant_Demo_Burst } TFBot { Class Pyro } TFBot { Class Pyro } } } WaveSpawn { TotalCurrency 200 Name "wave2_CGiant" WaitForAllSpawned "wave2_BMelee2" Where spawn_generic TotalCount 8 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 2 TFBot { Class Soldier } } WaveSpawn { TotalCurrency 100 Name "wave2_CGiant" WaitForAllSpawned "wave2_BMelee2" Where spawn_generic TotalCount 30 MaxActive 12 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 5 Squad { TFBot { Class Pyro Attributes AlwaysFireWeapon } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" "damage bonus" 0.5 } } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" "damage bonus" 0.5 } } } } } ////////////////////////////////////////////////////////////// // Starts with 3000 ends with 3800 // Subwave A. // Sticky Demos, Heal on Hit Soldier, BFB Scouts and Flanking Heavies // // Subwave B. // Tank with Deflector Heavies with meds ////////////////////////////////////////////////////////////// // Review: Okay where do I begin. The nature of this wave is just... idk // 7/10 at most Wave { InitWaveOutput { Target wave_init_random_center Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 50 Name "wave3_AScoutSticky" Where spawn_generic TotalCount 15 MaxActive 9 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 10 Squad { TFBot { Class Demoman } TFBot { Class Demoman } TFBot { Class Demoman } } } WaveSpawn { TotalCurrency 50 Name "wave3_AScoutSticky" Where spawn_generic TotalCount 24 MaxActive 12 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 2 TFBot { Class Scout } } WaveSpawn { TotalCurrency 50 Name "wave3_AScoutSticky" Where spawn_side_opposite TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 TFBot { Template T_TFBot_Giant_Scout } } WaveSpawn { TotalCurrency 100 Name "wave3_ASoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 25 TFBot { Template T_TFBot_Giant_Soldier_Spammer } } WaveSpawn { TotalCurrency 50 Name "wave3_AHeavy" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 15 Squad { TFBot { Class Heavy BehaviorModifiers Push Tag flank } TFBot { Class Heavy BehaviorModifiers Push Tag flank } } } WaveSpawn { TotalCurrency 200 Name "wave3_Btank" WaitForAllSpawned "wave3_AScoutSticky" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 20 Tank { Health 30000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_opposite OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCurrency 100 Name "wave3_BDeflector" WaitForAllSpawned "wave3_ASoldier" Where spawn_generic TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 20 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } } ////////////////////////////////////////////////////////////// // Starts with 3800 ends with 4600 // Subwave A. // Rapidfire Soldier // // Subwave B. // Rapidfire Soldier // // Subwave C. // Rapidfire Soldier ////////////////////////////////////////////////////////////// // 10/10 Wave { InitWaveOutput { Target wave_init_random_sides Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 100 Name "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer Item "Bumble Beenie" } TFBot // Giant Uber Med { Class Medic Name "Giant Medic" Skill Expert Health 4500 Attributes SpawnWithFullCharge Item "The Quick-Fix" WeaponRestrictions SecondaryOnly Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 // only works on mediguns that have this attribute ie quickfix } } } } WaveSpawn { TotalCurrency 50 Name "wave4_AScout" Where spawn_generic TotalCount 20 MaxActive 8 SpawnCount 4 WaitBeforeStarting 3 WaitBetweenSpawns 3 TFBot { Class Scout Skill Hard } } WaveSpawn { TotalCurrency 50 Name "wave4_AScout" Where spawn_generic TotalCount 20 MaxActive 10 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 1 TFBot { Template T_TFBot_Demoman_Knight ItemAttributes { ItemName "The Eyelander" "critboost on kill" 3 "max health additive penalty" -0 "damage bonus" 0.8 } } } WaveSpawn { TotalCurrency 50 Name "wave4_AScout" Where spawn_generic TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 5 TFBot { Class Demoman Skill Hard } } WaveSpawn { TotalCurrency 50 Name "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 0 Squad { TFBot { Class Soldier Name "Giant Rapid Charged Soldier" ClassIcon soldier_spammer Skill Normal Health 4500 Item "The Original" WeaponRestrictions PrimaryOnly Attributes MiniBoss ItemAttributes { ItemName "The Original" "faster reload rate" -0.8 "fire rate bonus" 0.5 "Projectile speed increased" 0.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } TFBot // Giant Kritz Med { ClassIcon medic_kritz_giant Health 4500 Name "Giant Kritzkrieg Medic" Class Medic Skill Expert Attributes SpawnWithFullCharge Attributes MiniBoss Attributes AlwaysCrit Tag bot_squad_member ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 100 "uber duration bonus" 200 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 "bot medic uber health threshold" 5000 } Item "The Kritzkrieg" Item "Vintage Tyrolean" } } } WaveSpawn { TotalCurrency 50 Name "wave4_BRapidfireSoldier" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 0 Squad { TFBot //Rapidfire Cow Mangler { Template T_TFBot_Giant_Soldier_Spammer //ClassIcon soldier_infinite_mangler Name "Giant Rapid Mangler Soldier" Item "The Cow Mangler 5000" Item "Lord Cockswain's Pith Helmet" Item "Lord Cockswain's Novelty Mutton Chops and Pipe" ItemAttributes { ItemName "The Cow Mangler 5000" "fire rate bonus" 0.5 "faster reload rate" 0.001 "set damagetype ignite" 1 "dmg bonus vs buildings" 5 "damage bonus vs burning" 1.5 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { TotalCurrency 50 Name "wave4_BRapidfireSoldier" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 15 WaitBetweenSpawns 0 Squad { TFBot //Rapidfire Airstrike Soldier { Template T_TFBot_Giant_Soldier_Spammer Name "Giant Rapid Jumping Soldier" //ClassIcon soldier_infinite_para Health 4000 Item "The B.A.S.E. Jumper" Item "The Air Strike" Item "The Whirly Warrior" Attributes AutoJump AutoJumpMin 12 AutoJumpMax 16 ItemAttributes { ItemName "The Air Strike" "faster reload rate" 0.001 "fire rate bonus" 0.5 //previous: 0.75 "fire rate bonus with reduced health" 0.3 //previous: 0.25 //end rate was 0.1875; new end rate is 0.15 "increased jump height" 4 "cancel falling damage" 1 "damage penalty" 1 "blast radius decreased" 1 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { TotalCurrency 50 Name "wave4_BRapidfireSoldier" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 30 WaitBetweenSpawns 0 Squad { TFBot //Rapidfire Blackbox { Template T_TFBot_Giant_Soldier_Spammer //ClassIcon soldier_infinite_heal Name "Giant Rapid Healing Soldier" Health 5000 Item "The Black Box" Item "The Grenadier's Softcap" ItemAttributes { ItemName "The Black Box" "damage bonus" 0.6 "fire rate bonus" 0.5 "faster reload rate" 0.001 "heal on hit for rapidfire" 200 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { TotalCurrency 0 Name "wave4_BScout" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 20 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 1 TFBot { Class Scout Skill Hard } } WaveSpawn { TotalCurrency 50 Name "wave4_BBow" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 20 MaxActive 20 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 5 Squad { TFBot { Class Pyro Skill Hard } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } } } WaveSpawn { TotalCurrency 50 Name "wave4_BBow" WaitForAllDead "wave4_ARapidfireSoldier" Where spawn_generic TotalCount 20 MaxActive 20 SpawnCount 4 WaitBeforeStarting 20 WaitBetweenSpawns 5 Squad { TFBot { Class Pyro Skill Hard } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } TFBot { Class Sniper Name "Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Huntsman" ItemAttributes { ItemName "The Huntsman" } } } } WaveSpawn { TotalCurrency 50 Name "wave4_CRapidfireSoldier1" WaitForAllDead "wave4_BRapidfireSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 0 Squad { TFBot //Rapidfire Beggars { Template T_TFBot_Giant_Soldier_Spammer //ClassIcon soldier_infinite_heal Name "Giant Rapid Bazooka Soldier" Health 4000 Item "The Beggar's Bazooka" Item "The Helmet Without A Home" Item "The Captain's Cocktails" ItemAttributes { ItemName "The Beggar's Bazooka" "auto fires when full" 0 "auto fires full clip" 0 "can overload" 0 "faster reload rate" 0.25 "clip size penalty HIDDEN" 0.25 "reload time increased hidden" 1 "projectile spread angle penalty" 6 "fire rate bonus HIDDEN" 0.15 "Projectile speed increased" 0.7 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { TotalCurrency 50 Name "wave4_AScout" WaitForAllDead "wave4_BRapidfireSoldier" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 2 WaitBeforeStarting 2 WaitBetweenSpawns 1 Squad { TFBot { Class Heavy } TFBot { Class Pyro } } } WaveSpawn { TotalCurrency 50 Name "wave4_AScout" WaitForAllSpawned "wave4_CRapidfireSoldier2" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 2 WaitBeforeStarting 2 WaitBetweenSpawns 1 Squad { TFBot { Class Heavy } TFBot { Class Pyro } } } WaveSpawn { TotalCurrency 50 Name "wave4_CRapidfireSoldier2" WaitForAllDead "wave4_BRapidfireSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 0 Squad { TFBot //Rapidfire Beggars { Class Soldier ClassIcon soldier_spammer Name "Giant Rapid Triplefire Soldier" Health 4200 Item "The Beggar's Bazooka" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Beggar's Bazooka" "auto fires when full" 0 "auto fires full clip" 0 "can overload" 0 "damage bonus" 0.6 "fire rate bonus" 0.001 //"clip size penalty" 0.75 Cos Beggars "faster reload rate" 0.33 "blast radius increased" 1.25 //"Projectile speed increased" 0.4 "projectile spread angle penalty" 4 } 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 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { TotalCurrency 50 Name "wave4_DRapidfireSoldier" WaitForAllSpawned "wave4_CRapidfireSoldier2" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 8 TFBot //Flanking Rapidfire { Template T_TFBot_Giant_Soldier_Spammer } } WaveSpawn { TotalCurrency 50 Name "wave4_DRapidfireSoldier" WaitForAllSpawned "wave4_CRapidfireSoldier2" Where spawn_generic TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 14 WaitBetweenSpawns 8 TFBot //Flanking Rapidfire { Template T_TFBot_Giant_Soldier_Spammer Tag flank BehaviorModifiers Push } } } ////////////////////////////////////////////////////////////// // Starts with 4600 ends with 6000 // Subwave A. // Crit Colonel Barrage with Meds and Greatknights // // Subwave B. // Tank first, flanking giant pyros. Soldiers main // // Subwave C. // Uhhh maybe a colonel barrage ////////////////////////////////////////////////////////////// Wave { InitWaveOutput { Target wave_init_random_sides Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 300 Name "wave5_ABurstDemo" Where spawn_generic TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 20 Squad { TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { TotalCurrency 200 Name "wave5_ASword" Where spawn_generic TotalCount 15 MaxActive 15 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 10 Squad { TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } } } WaveSpawn { TotalCurrency 100 Name "wave5_ASword" Where spawn_side_main TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 10 TFBot { Class Demoman Name "Great Demoknight" ClassIcon demoknight_charge Skill Expert Item "The Dark Falkirk Helm" ItemAttributes { ItemName "The Dark Falkirk Helm" "item style override" 1 } Item "The Claidheamohmor" Item "The Splendid Screen" ItemAttributes { ItemName "The Splendid Screen" "Attack not cancel charge" 1 } Scale "1.3" Health 650 WeaponRestrictions MeleeOnly //Attributes AlwaysCrit CharacterAttributes { "charge recharge rate increased" 1 "increased jump height" 1.5 "cancel falling damage" 1 } } } WaveSpawn { TotalCurrency 100 Name "wave5_ASword" Where spawn_side_main TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 TFBot { Class Demoman Name "Great Demoknight" ClassIcon demoknight_charge Skill Expert Item "The Dark Falkirk Helm" ItemAttributes { ItemName "The Dark Falkirk Helm" "item style override" 1 } Item "The Claidheamohmor" Item "The Splendid Screen" ItemAttributes { ItemName "The Splendid Screen" "Attack not cancel charge" 1 } Scale "1.3" Health 650 WeaponRestrictions MeleeOnly //Attributes AlwaysCrit CharacterAttributes { "charge recharge rate increased" 1 "increased jump height" 1.5 "cancel falling damage" 1 } BehaviorModifiers Push } } WaveSpawn { TotalCurrency 200 Name "wave5_ASword" Where spawn_side_main TotalCount 15 MaxActive 15 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 10 Squad { TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } BehaviorModifiers Push } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } BehaviorModifiers Push } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } BehaviorModifiers Push } } } WaveSpawn { TotalCurrency 300 Name "wave5_Btank" WaitForAllSpawned "wave5_ABurstDemo" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 Tank { Health 30000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_opposite OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCurrency 400 Name "wave5_BPyroSoldier" WaitForAllSpawned "wave5_ABurstDemo" Where spawn_side_opposite TotalCount 16 MaxActive 16 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 10 Squad { TFBot { Template T_TFBot_Giant_Demoman ClassIcon demo_spammer ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0 } } TFBot { Class Soldier Name "Bison Rapid Fire" //Intended to be Burst Fire, but the attribute doesn't work on bison :( Item "The Righteous Bison" ClassIcon soldier_bison Skill Hard Health 1350 scale 1.5 Attributes HoldFireUntilFullReload WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "The Righteous Bison" "fire rate bonus" 0.6 "faster reload rate" -0.6 "clip size bonus" 2 } CharacterAttributes { "head scale" 0.7 "move speed bonus" 0.8 } } TFBot { Class Soldier Name "Bison Rapid Fire" //Intended to be Burst Fire, but the attribute doesn't work on bison :( Item "The Righteous Bison" ClassIcon soldier_bison Skill Hard Health 1350 scale 1.5 Attributes HoldFireUntilFullReload WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "The Righteous Bison" "fire rate bonus" 0.6 "faster reload rate" -0.6 "clip size bonus" 2 } CharacterAttributes { "head scale" 0.7 "move speed bonus" 0.8 } } TFBot { Class Soldier Name "Bison Rapid Fire" //Intended to be Burst Fire, but the attribute doesn't work on bison :( Item "The Righteous Bison" ClassIcon soldier_bison Skill Hard Health 1350 scale 1.5 Attributes HoldFireUntilFullReload WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "The Righteous Bison" "fire rate bonus" 0.6 "faster reload rate" -0.6 "clip size bonus" 2 } CharacterAttributes { "head scale" 0.7 "move speed bonus" 0.8 } } } } WaveSpawn { TotalCurrency 100 Name "wave5_BPyroSoldier" WaitForAllSpawned "wave5_ABurstDemo" Where spawn_generic TotalCount 20 MaxActive 10 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 2 TFBot { Class Scout Skill Expert } } WaveSpawn { TotalCurrency 100 Name "wave5_Csoldier1" WaitForAllSpawned "wave5_Btank" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 5 WaitBeforeStarting 30 WaitBetweenSpawns 0 TFBot { Class Soldier Skill Expert Item "The Direct Hit" CharacterAttributes { "move speed bonus" 1.2 } } } WaveSpawn { TotalCurrency 100 Name "wave5_Csoldier2" WaitForAllSpawned "wave5_Csoldier1" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 5 WaitBeforeStarting 5 WaitBetweenSpawns 0 TFBot { Class Soldier Skill Expert Item "The Direct Hit" CharacterAttributes { "move speed bonus" 1.2 } } } } //////////////////// // Subwave A // 6 Bigrock bursts // // Subwave B // Battalion, subgiant plasma heavies, uber meds // // Subwave C // // // // /////////////////// Wave { InitWaveOutput { Target wave_init_random_sides Action Trigger } StartWaveOutput { Target wave_start_normal Action Trigger } DoneOutput { Target wave_finished_normal Action Trigger } WaveSpawn { TotalCurrency 100 Name "wave6_BigrockBurst" Where spawn_generic TotalCount 6 MaxActive 6 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 1 FirstSpawnOutput //Crit { Target relay_wheel_go_crits Action Trigger } TFBot { Template T_TFBot_Soldier_BurstFire Name "Giga Burst Fire Soldier" BehaviorModifiers Push } } WaveSpawn { TotalCurrency 100 Name "wave6_AScout" WaitForAllDead "wave6_BigrockBurst" Where spawn_generic TotalCount 10 MaxActive 10 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 8 TFBot { Class Scout Name "Giant Blaster Scout" Item "Baby Face's Blaster" ClassIcon scout_giant Skill Expert Health 1600 WeaponRestrictions PrimaryOnly Attributes AlwaysCrit Attributes MiniBoss ItemAttributes { ItemName "Baby Face's Blaster" "hype resets on jump" 0 "lose hype on take damage" 0 } CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 } } } WaveSpawn { TotalCurrency 100 Name "wave6_AGauntlet" WaitForAllDead "wave6_BigrockBurst" Where spawn_generic TotalCount 24 MaxActive 10 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 3 TFBot { Class Heavyweapons Name "Armored Steel Gauntlet" Skill Hard ClassIcon heavy_steelfist_nys //Attributes DefensiveBuffHigh // Passive damage reduction, replaces high health Health 1600 Scale 1.5 // Force scale to 1 when "Health" set high WeaponRestrictions MeleeOnly Item "Fists of Steel" } } WaveSpawn { TotalCurrency 100 Name "wave6_ABattalionSoldier" WaitForAllDead "wave6_BigrockBurst" Where spawn_generic TotalCount 12 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 10 Squad { TFBot { Template T_TFBot_Giant_Soldier ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 } Attributes AlwaysCrit } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Expert } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Class Medic Name "Armored Uber Medic" Item "Medic Mask" ClassIcon medic_uber_armored Health 1600 Scale 1.3 Skill Hard Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "ubercharge rate bonus" 2 } CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { TotalCurrency 100 Name "wave6_ABattalionSoldier" WaitForAllDead "wave6_BigrockBurst" Where spawn_generic TotalCount 12 MaxActive 12 SpawnCount 6 WaitBeforeStarting 35 WaitBetweenSpawns 10 Squad { TFBot { Template T_TFBot_Giant_Soldier ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 } Attributes AlwaysCrit } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Expert } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Template T_TFBot_Heavy_Elite_Plasma Skill Hard } TFBot { Class Medic Name "Armored Uber Medic" Item "Medic Mask" ClassIcon medic_uber_armored Health 1600 Scale 1.3 Skill Hard Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "ubercharge rate bonus" 2 } CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { TotalCurrency 100 Name "wave6_BHell" WaitForAllDead "wave6_ABattalionSoldier" Where spawn_generic TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 15 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Attributes AlwaysCrit ItemAttributes { ItemName "Deflector" "dmg bonus vs buildings" 3 } } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { TotalCurrency 100 Name "wave6_BHell" WaitForAllDead "wave6_ABattalionSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 18 TFBot { Template T_TFBot_Soldier_BurstFire Name "Giga Burst Fire Soldier" ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "dmg bonus vs buildings" 3 } Tag flank_left BehaviorModifiers Push } // Squad // { // TFBot // { // Template T_TFBot_Soldier_BurstFire // // Tag flank_left // BehaviorModifiers Push // } // TFBot // { // Class Pyro // Health 1600 // Scale 1.3 // Skill Expert // Attributes AlwaysCrit // CharacterAttributes // { // "move speed bonus" 0.8 // } // // Tag flank_left // BehaviorModifiers Push // } // TFBot // { // Class Pyro // Health 1200 // Scale 1.3 // Skill Expert // Attributes AlwaysCrit // CharacterAttributes // { // "move speed bonus" 0.8 // } // // Tag flank_left // BehaviorModifiers Push // } // TFBot // { // Class Pyro // Health 1200 // Scale 1.3 // Skill Expert // Attributes AlwaysCrit // CharacterAttributes // { // "move speed bonus" 0.8 // } // // Tag flank_left // BehaviorModifiers Push // } // } } WaveSpawn { TotalCurrency 100 Name "wave6_BHell" WaitForAllDead "wave6_ABattalionSoldier" Where spawn_generic TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 18 TFBot { Template T_TFBot_Soldier_BurstFire Name "Giga Burst Fire Soldier" ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "dmg bonus vs buildings" 3 } Tag flank_right BehaviorModifiers Push } } WaveSpawn { TotalCurrency 100 Name "wave6_BGauntlet" WaitForAllDead "wave6_ABattalionSoldier" Where spawn_generic TotalCount 24 MaxActive 12 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 5 TFBot { Class Scout Skill Expert Attributes AlwaysCrit } } WaveSpawn { TotalCurrency 300 Name "wave6_Btank" WaitForAllSpawned "wave6_BHell" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 Tank { Health 50000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_opposite Skin 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCurrency 300 Name "wave6_Btank" WaitForAllSpawned "wave6_BHell" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 Tank { Health 50000 Speed 75 Name "TankBossA" StartingPathTrackNode tank_path_start_main Skin 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } }