#base robot_standard.pop #base robot_giant.pop #base robot_gatebot.pop #base wooper_weapons.pop WaveSchedule { StartingCurrency 750 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 3 PointTemplates { GateLogic { // logic_relay // { // "targetname" "setup_gate1" // "OnTrigger" "gate1_spawn_door,Open,,0,-1" // "OnTrigger" "gate1_prerequisite,Disable,,0,-1" // "OnTrigger" "intel2,Enable,,0,-1" // "OnTrigger" "gate1_door_alarm,Disable,,0,-1" // "OnTrigger" "spawnbot_upper0,Disable,,0,-1" // "OnTrigger" "spawnbot_upper1_Enable,,0,-1" // "OnTrigger" "sentry_nest_main_off,Trigger,,0,-1" // "OnTrigger" "sentry_nest_middle_on,Trigger,,0,-1" // "OnTrigger" "gate1_prerequisite,Disable,,0,-1" // "OnTrigger" "gate1_prerequisite_door,Disable,,0,-1" // "OnTrigger" "gate1_capturepoint_a,SetOwner,3,0.1,-1" // } logic_relay { "targetname" "setup_gate1" "OnTrigger" "vo_security_alert,Kill,,0,-1" "OnTrigger" "robot_radio_waves_beep,Kill,,0,-1" "OnTrigger" "robot_radio_waves_beep2,Kill,,0,-1" "OnTrigger" "steam_whistle,Kill,,0,-1" "OnTrigger" "force_gate1_open,Trigger,,0.1,-1" "OnTrigger" "pop_interface,UnpauseBotSpawning,,0.1,-1" "OnTrigger" "intel2,Disable,,0.2,-1" "OnTrigger" "intel3,Disable,,0.2,-1" } logic_relay { "targetname" "setup_gate2" "OnTrigger" "vo_security_alert,Kill,,0,-1" "OnTrigger" "robot_radio_waves_beep,Kill,,0,-1" "OnTrigger" "robot_radio_waves_beep2,Kill,,0,-1" "OnTrigger" "steam_whistle,Kill,,0,-1" "OnTrigger" "force_gate1_open,Trigger,,0.1,-1" "OnTrigger" "gate2_relay,Trigger,,0.2-1" "OnTrigger" "gate2_capturepoint_b,SetOwner,3,0.2,-1" "OnTrigger" "pop_interface,UnpauseBotSpawning,,0.2,-1" "OnTrigger" "intel2,Kill,,0.2,-1" "OnTrigger" "intel3,Kill,,0.2,-1" } logic_relay { "targetname" "killallintels" "OnTrigger" "intel2,Kill,,0.2,-1" "OnTrigger" "intel3,Kill,,0.2,-1" } } BlimpSoldier { KeepAlive 1 info_target { "targetname" "blimpspawn" "origin" "0 0 0" } } } SpawnTemplate GateLogic ExtraTankPath //blimp path by package { Name blimp Node "1991 -3000 520" Node "1991 -1559 520" Node "1091 -1559 500" Node "-654 -1559 470" Node "-654 -122 400" Node "-35 601 210" Node "-35 895 210" Node "-465 1444 190" // Node "-225 1444 190" } Templates { T_TFBot_Medic_Kritz { Class Medic ClassIcon medic_kritz2 Name "Kritz Medic" Skill Expert Attributes SpawnWithFullCharge WeaponRestrictions SecondaryOnly Item "The KritzKrieg" Item "Power Spike" ItemAttributes { ItemName "The KritzKrieg" "uber duration bonus" 900 "ubercharge rate bonus" 900 } CharacterAttributes { "bot medic uber health threshold" 226 } } T_TFBot_Giant_Soldier_Specialist { Class Soldier Name "Giant Stunner Soldier" ClassIcon soldier_stun_giant Skill Expert Health 3800 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "rocket specialist" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } T_TFBot_Giant_Engineer_Deathray { Class Engineer Action FetchFlag ClassIcon soldier_bison_giant Name "Giant Deathray Engineer" Health 3000 Skill Expert Tag bot_giant WeaponRestrictions PrimaryOnly Item "The Pomson 6000" Attributes MiniBoss AimAt Body ItemAttributes { ItemName "The Pomson 6000" "fire rate bonus" 0.01 "faster reload rate" 0.01 "projectile speed decreased" 1.2 "damage penalty" 0.1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } T_TFBot_Demoman_Stickybomb { Class Demoman ClassIcon demo_sticky_daan Name "Stickybomb Demoman" Skill Hard WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "is_passive_weapon" 1 "override projectile type" 27.0 } ItemAttributes { ItemName "TF_WEAPON_PIPEBOMBLAUNCHER" "faster reload rate" 0 "stickybomb charge rate" 0 } } T_TFBot_Demoman_Minelayer { Class Demoman ClassIcon demo_clusterbomb_delay Name "Minelayer Demoman" Skill Normal Attributes HoldFireUntilFullReload Item "The Iron Bomber" Item "Steel Shako" ItemAttributes { ItemName "The Iron Bomber" "projectile spread angle penalty" 3.0 "faster reload rate" 0.45 "fire rate bonus" 0.05 "damage penalty" 0.6 "fuse bonus" 2.2 } } T_TFGateBot_Heavy_IronFist_Crasher { Class Heavyweapons Name "Gatecrasher Heavy" ClassIcon heavy_armored_fist Health 900 Scale 1.5 EventChangeAttributes { Default { Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Item "Fists of Steel" Item "MvM GateBot Light Heavy" WeaponRestrictions MeleeOnly Tag bot_giant Skill Hard } RevertGateBotsBehavior { Item "MvM GateBot Light Heavy" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Heavy" "item style override" 1 } WeaponRestrictions PrimaryOnly Tag bot_giant Skill Normal } } } T_TFGateBot_Medic_Shield { Class Medic Name "Shield Medic" ClassIcon medic_shield_ala EventChangeAttributes { Default { Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Item "MvM GateBot Light Medic" WeaponRestrictions SecondaryOnly Attributes SuppressFire Attributes SpawnWithFullCharge Attributes ProjectileShield Attributes IgnoreEnemies Skill Hard ActionOverride Mobber ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "generate rage on heal" 2 "increase buff duration" 99 } FireWeapon { Delay 0 Type "Special" } } RevertGateBotsBehavior { ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Medic" "item style override" 1 } Item "MvM GateBot Light Medic" WeaponRestrictions SecondaryOnly Attributes SuppressFire Attributes SpawnWithFullCharge Attributes ProjectileShield Attributes IgnoreEnemies ActionOverride FetchFlag Skill Hard ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "generate rage on heal" 2 "increase buff duration" 99 } FireWeapon { Delay 0 Type "Special" } } } } T_TFBot_Engineer_ShortCircuit_M1 { Name "Short Circuit Engineer" Class Engineer ClassIcon engineer_shortcircuit_lite Skill Expert Item "The Short Circuit" WeaponRestrictions SecondaryOnly Attributes SuppressFire Action FetchFlag FireWeapon { Type "Primary" Delay 0 Cooldown 0 IfSeeTarget 1 MaxTargetRange 200 } ItemAttributes { ItemName "The Short Circuit" "dmg bonus vs buildings" 5 } } T_TFBot_Engineer_ShortCircuit_M2 { Name "Short Circuit Engineer" Class Engineer ClassIcon engineer_shortcircuit_lite Skill Expert Item "The Short Circuit" Item "Computron 5000" WeaponRestrictions SecondaryOnly Attributes SuppressFire Action FetchFlag FireWeapon { Type "Secondary" Delay 0 Cooldown 4 IfSeeTarget 1 } ItemAttributes { ItemName "The Short Circuit" "dmg bonus vs buildings" 5 } } T_TFBot_Demo_Fountain // thanks to pametome { Class Demoman Name "Pipe Fountain Demo" ClassIcon demo_barrage_lite Skill Expert WeaponRestrictions PrimaryOnly Attributes AlwaysFireWeapon BehaviorModifiers push AimOffset "0 0 10000" FOV 360 SeeThroughWalls 1 ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "fire rate bonus" 0.5 "faster reload rate" 0.01 "projectile spread angle penalty" 12 "fuse bonus" 2.2 "Projectile speed decreased" 0.5 } CharacterAttributes { "self dmg push force decreased" 0 "blast dmg to self increased" 0 } } T_TFBot_Giant_Sniper // thanks getty { Class Sniper Name "Giant Sniper" Health 3000 Skill Expert Attributes MiniBoss Attributes SuppressFire Tag bot_giant FireWeapon { Type "Primary" Delay 0.5 Cooldown 2.25 Duration 0.1 IfSeeTarget 1 IfLeftSpawn 1 } FireInput { Target !self Action $AddCond Param 1 Delay 0.1 Cooldown 0.1 IfSeeTarget 1 } FireInput { Target !self Action $RemoveCond Param 1 Delay 2 Cooldown 1 IfNoTarget 1 } ItemAttributes { ItemName "TF_WEAPON_SNIPERRIFLE" "damage bonus" 1.5 "dmg bonus vs buildings" 2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } } Mission // sentry buster { Objective DestroySentries InitialCooldown 30 Where spawnbot_main0 Where spawnbot_main1 Where spawnbot_main2 BeginAtWave 1 RunForThisManyWaves 9 CooldownTime 27 TFBot { Template T_TFBot_SentryBuster Tag bot_giant Item "Seeing Double" Item "Six Pack Abs" Name "Martini Buster" CharacterAttributes { "head scale" 3 "torso scale" 0 } } } Mission // wave 1 spy { Objective Spy InitialCooldown 75 Where spawnbot BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 35 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target setup_gate2 Action Trigger } DoneOutput { Target holograms_3way_relay Action Trigger } WaveSpawn { Name "1-1a" Where spawnbot_main2 SpawnCount 2 MaxActive 2 TotalCount 2 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Giant_Scout_FAN FireInput { Target killallintels Action Trigger Delay 0 Repeats 1 } } TFBot { Template T_TFBot_Medic_Kritz CharacterAttributes { "move speed bonus" 2 "mult medigun range" 1.5 } } } } WaveSpawn { Name "1-1a" Where spawnbot_main2 SpawnCount 1 MaxActive 2 TotalCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 22 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Sniper } } WaveSpawn { Name "1-1b" Where spawnbot_main2 SpawnCount 2 MaxActive 4 TotalCount 18 WaitBeforeStarting 11 WaitBetweenSpawns 2 TotalCurrency 50 TFBot { Template T_TFBot_Demo_Fountain } } WaveSpawn { Name "1-1b" Where spawnbot_main2 SpawnCount 2 MaxActive 4 TotalCount 22 WaitBeforeStarting 11 WaitBetweenSpawns 1.5 TotalCurrency 50 TFBot { Class Soldier Skill Normal } } WaveSpawn { Name "1-2a" Where spawnbot_main2 WaitForAllSpawned "1-1a" SpawnCount 1 MaxActive 2 TotalCount 3 WaitBeforeStarting 18 WaitBetweenSpawns 18 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Pyro ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 } } } WaveSpawn { Name "1-2b" Where spawnbot_main2 WaitForAllSpawned "1-1b" SpawnCount 2 MaxActive 10 TotalCount 24 WaitBeforeStarting 5 WaitBetweenSpawns 1 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Scout_Jumping_Sandman } TFBot { Template T_TFBot_Medic_Kritz Attributes AutoJump AutoJumpMin 5 AutoJumpMax 5 CharacterAttributes { "move speed bonus" 2 "increased jump height" 2 "mult medigun range" 1.5 } } } } WaveSpawn { Name "1-3" Where spawnbot_main2 WaitForAllSpawned "1-1b" SpawnCount 1 MaxActive 2 TotalCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { Name "1-sup" Where spawnbot_main2 WaitForAllSpawned "1-1b" SpawnCount 4 MaxActive 8 TotalCount 12 Support 1 WaitBeforeStarting 5 WaitBetweenSpawns 5 TotalCurrency 50 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast } } } Wave // WAVE 02 { StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target setup_gate2 Action Trigger } DoneOutput { Target holograms_3way_relay Action Trigger } WaveSpawn { Name "2-1a" SpawnCount 1 MaxActive 8 TotalCount 90 TotalCurrency 200 Where spawnbot_main2 WaitBetweenSpawns 0.5 TFBot { Template T_TFBot_Engineer_ShortCircuit_M1 } } WaveSpawn { Name "2-1a" SpawnCount 1 MaxActive 3 TotalCount 10 TotalCurrency 100 Where spawnbot_main2 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Engineer_ShortCircuit_M2 } } WaveSpawn { Name "2-1b" SpawnCount 1 MaxActive 4 TotalCount 4 TotalCurrency 100 Where spawnbot_main2 WaitBeforeStarting 2 WaitBetweenSpawns 17 TFBot { Template T_TFBot_Giant_Demoman ClassIcon demo_spammer_package } } WaveSpawn { Name "2-1c" SpawnCount 3 MaxActive 6 TotalCount 21 TotalCurrency 50 Where spawnbot_main2 WaitBeforeStarting 6 WaitBetweenSpawns 2 TFBot { Class Pyro Skill Easy } } WaveSpawn { Name "2-2b" WaitForAllSpawned "2-2c" SpawnCount 2 MaxActive 2 TotalCount 2 TotalCurrency 100 WaitBeforeStarting 10 Where spawnbot_main2 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload } } WaveSpawn { Name "2-2c" WaitForAllSpawned "2-1c" SpawnCount 3 MaxActive 6 TotalCount 21 TotalCurrency 50 Where spawnbot_main2 WaitBeforeStarting 8 WaitBetweenSpawns 2 TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } } WaveSpawn { Name "2-sup" WaitForAllSpawned "2-2c" SpawnCount 5 MaxActive 10 TotalCount 20 Support 1 TotalCurrency 50 Where spawnbot_main2 WaitBeforeStarting 8 WaitBetweenSpawns 8 TFBot { Template T_TFBot_Heavyweapons_Shotgun } } } Wave // WAVE 03 { StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target setup_gate1 Action Trigger } DoneOutput { Target holograms_3way_relay Action Trigger } WaveSpawn { Name "3-1" SpawnCount 1 MaxActive 1 TotalCount 90 Where spawnbot_main1 Where spawnbot_main2 TFBot { Template T_TFGateBot_Medic_Shield } } } Wave // WAVE 04 { StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target setup_gate1 Action Trigger } WaveSpawn { Name "4-blimp" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 FirstSpawnWarningSound "mvm/mvm_tank_start.wav" FirstSpawnOutPut { Target wave_start_relay Action RunScriptCode Param " ClientPrint(null,3,`\x0799CCFFBlimp incoming!`) " } Tank { Health 10000 Speed 160 DisableSmokestack 1 Classicon blimp2_lite Skin 1 MaxTurnRate 30 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 ReplaceModelCollisions 1 DisableChildModels 1 EngineLoopSound "npc\combine_gunship\dropship_engine_distant_loop1.wav" PingSound "npc\combine_gunship\ping_search.wav" Name "blimpboss" StartingPathTrackNode "blimp_1" SpawnTemplate BlimpSoldier OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "4-blimpkill" WaitBeforeStarting 42 WaitForAllSpawned "4-blimp" FirstSpawnOutput { Target "bignet" Action "RunScriptCode" Param "EntFire(`tank_boss`,`RemoveHealth`,`999999`)" } } WaveSpawn { Name "4-blimpboss" WaitForAllDead "4-blimp" Where spawnbot_main1 Where spawnbot_main2 SpawnCount 1 MaxActive 1 TotalCount 1 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier FireInput { Target !self Action $TeleportToEntity Cooldown 9999 Delay 0 Repeats 1 Param "blimpspawn" } } } } }