///////////////////////////////////////////////////////////////////// // // Example pop file for the map mvm_example. // // This pop file contains a sampling of wave types used in MVM and is commented. // ///////////////////////////////////////////////////////////////////// // // Helpful debug and console commands for developing MVM population scripts: // // sv_cheats 1 // Allows cheat commands. // god // Enables god mode for players. // nb_stop 1 // Stops all bots in place. // nb_blind 1 // Bots will not treat players as threats. // currency_give x // Give player x amount of game currency to be used on upgrades. // tf_populator_health_multiplier x.x // Multiplies health of enemy bots - example: tf_populator_health_multiplier 0.01 will set health of bots to 1% of normal. // tf_mvm_popfile abcd // Will load the .pop file of the specified name - example tf_mvm_popfile mvm_mapname_challenge2 will load mvm_mapname_challenge2.pop in the tf/scripts/population directory. // tf_mvm_jump_to_wave x // Will jump to the specified wave number of the current .pop file - example tf_mvm_jump_to_wave 6 will jump to wave 6. // tf_bot_flag_kill_on_touch 1 // When a bot picks up the flag, they die. // ///////////////////////////////////////////////////////////////////// // BEGIN POP FILE ///////////////////////////////////////////////////////////////////// //FPSTD-by IDGCaptainRussia94 (https://steamcommunity.com/id/13371994101/) //Rawr <3 #base robot_giant.pop // This pop file is marked to be included. These are other .pop files that contain templates for TFBots. In our WaveSpawns we can reference the templates in these pop files. #base robot_standard.pop // This pop file is marked to be included. These are other .pop files that contain templates for TFBots. In our WaveSpawns we can reference the templates in these pop files. WaveSchedule { StartingCurrency 500 // How much currency each player starts with. Normally 400 is a good starting point, but increased to 20k for the purpose of this test script. RespawnWaveTime 60 // This is the maximum respawn time, in seconds for players when they die. Starting at 2 seconds, it grows 2 seconds per wave. // In this case, wave 1 will have a respawn time of 2 seconds. Wave 2 - 4 seconds. Wave 3 - 6 seocnds, and so on until it hits the cap of 10 seconds for wave 5 and beyond. CanBotsAttackWhileInSpawnRoom no // Sets the robots to not attack players while they are inside of their respawn room volume. Templates { IDG_Timer //the magic timer bot { Class Heavy Health 2000 Name "Time's up!" Scale 1 Item "Head Hunter" ClassIcon idg_timer Attributes UseBossHealthBar //players need to see the health BehaviorModifiers Mobber //Bot won't spawn with the bomb, IMPORTANT Tag timer //How the map knows this is the timer, IMPORTANT CharacterAttributes { "health regen" -200 "move speed bonus" 0.1 } } IDG_TowerDefense_Runner { Class Scout Health 250 Name "Runner" Scale 1 Item "Head Hunter" Skill Easy MaxVisionRange 300 WeaponRestrictions MeleeOnly Item "The Atomizer" CharacterAttributes { "move speed bonus" 3 "override footstep sound set" 7 } } IDG_TowerDefense_Testtype { Class Pyro Health 250 Name "Test" Scale 1 Item "Head Hunter" Item "The Thermal Thruster" Skill Easy Attributes AutoJump AutoJumpMin 2 AutoJumpMax 6 MaxVisionRange 600 WeaponRestrictions SecondaryOnly CharacterAttributes { "move speed bonus" 1 "override footstep sound set" 7 "increase buff duration" 30 "increased jump height" 4 } ItemAttributes { ItemName "The Thermal Thruster" "effect bar recharge rate increased" 0.1 "falling_impact_radius_stun" 1 "thermal_thruster_air_launch" 1 "set item tint rgb" 15185211 "set item tint rgb 2" 15185211 } } IDG_TowerDefense_Giant_Creep { Class Sniper Health 1700 Name "Giant Creep" Scale 2 Item "Head Hunter" Attributes MiniBoss Skill Expert MaxVisionRange 300 WeaponRestrictions MeleeOnly Item "The Razorback" CharacterAttributes { "move speed bonus" 0.75 } } IDG_TowerDefense_Creep { Class Sniper Health 600 Name "Creep" Item "Head Hunter" Skill Expert MaxVisionRange 100 WeaponRestrictions MeleeOnly Item "The Razorback" CharacterAttributes { "move speed bonus" 1 } } IDG_TowerDefense_FastCreep { Template IDG_TowerDefense_Creep Health 500 Name "Fast Creep" Skill Expert CharacterAttributes { "move speed bonus" 3 } } IDG_TowerDefense_Rocket_Creep { Class Soldier Health 200 Name "Blaster Creep" Scale 0.75 Item "Head Hunter" Item "The Gunboats" Skill Easy MaxVisionRange 1500 Item "The Razorback" CharacterAttributes { "move speed bonus" 0.75 } } IDG_TowerDefense_BackupCreep { Class Soldier Name "Backup Creep" Skill Normal Health 200 Scale 0.75 WeaponRestrictions MeleeOnly Item "The Disciplinary Action" Item "The Battalion's Backup" Attributes SpawnWithFullCharge CharacterAttributes { "move speed bonus" 1 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "increase buff duration" 1000 } } IDG_TowerDefense_ConchCreep { Class Soldier Name "Conch Creep" Skill Normal Health 200 Scale 0.75 WeaponRestrictions MeleeOnly Item "The Disciplinary Action" Item "The Concheror" Attributes SpawnWithFullCharge CharacterAttributes { "move speed bonus" 1 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "increase buff duration" 1000 } } IDG_TowerDefense_BuffCreep { Class Soldier Name "Buff Creep" Skill Normal Health 200 Scale 0.75 WeaponRestrictions MeleeOnly Item "The Disciplinary Action" Item "The Buff Banner" Attributes SpawnWithFullCharge CharacterAttributes { "move speed bonus" 1 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "increase buff duration" 1000 } } IDG_TowerDefense_PusherSoldier { Class Soldier Name "Pusher Creep" Skill Normal Health 1000 Scale 1.25 WeaponRestrictions MeleeOnly Item "The Escape Plan" } IDG_TowerDefense_PusherConchSoldier { Template IDG_TowerDefense_PusherSoldier Name "Pusher Conch Creep" Item "The Concheror" Attributes SpawnWithFullCharge CharacterAttributes { "increase buff duration" 1000 } } IDG_TowerDefense_Engie { Template T_TFBot_Engineer_Sentry_Tele_Battle Name "Back Camp Creep" } IDG_TowerDefense_InstaDeath_Pyro { Class Pyro Health 450 Name "Instant Death Gasser" WeaponRestrictions SecondaryOnly MaxVisionRange 600 Item "The Gas Passer" ItemAttributes { ItemName "The Gas Passer" "effect bar recharge rate increased" 0.1 "explode_on_ignite" 1 "set item tint rgb" 15185211 "set item tint rgb 2" 15185211 } } IDG_TowerDefense_LethalHeavy { Health 300 Name "InstaDeath Heavy" Scale 1 Class Heavy ItemAttributes { ItemName "iron curtain" "bullets per shot bonus" 4 "damage bonus" 30 "fire rate bonus" 0.01 "aiming movespeed decreased" 0.80 "minigun spinup time increased" 3.0 "weapon spread bonus" 0.25 "critboost on kill" 5 "restore health on kill" 0.10 } ItemAttributes { ItemName "the team captain" "attach particle effect" 1 } CharacterAttributes { "move speed bonus" 1.5 "dmg taken from fire increased" 0.4 "dmg taken from crit reduced" 0.25 "dmg taken from bullets reduced" 0.50 } Item "iron curtain" Item "The Razorback" Item "the team captain" } IDG_TowerDefense_PusherHeavy { Health 2500 Name "Pusher Creep" Scale 1.25 Class Heavy Item "Gloves of Running Urgently MvM" WeaponRestrictions MeleeOnly ItemAttributes { ItemName "Gloves of Running Urgently MvM" "dmg from ranged reduced" 2.5 "dmg from melee increased" 20.0 "melee bounds multiplier" 1.30 "melee range multiplier" 1.30 "melee attack rate bonus" 1.50 "damage bonus" 5 } CharacterAttributes { "move speed bonus" 1.5 "dmg taken from fire increased" 0.4 "dmg taken from crit reduced" 0.25 "dmg taken from bullets reduced" 0.50 } } IDG_TFBot_Medic_Bullet //Bullet Vacc Medic { Name "Vaccinator Medic" Class Medic Item "The Quick-Fix" ClassIcon medic_bullet Attributes SpawnWithFullCharge MaxVisionRange 400 ItemAttributes { ItemName "The Quick-Fix" "lunchbox adds minicrits" 3 "ubercharge rate bonus" 99999 "uber duration bonus" 99999 "medigun charge is resists" 1 "medigun fire resist deployed" 0.9 "medigun fire resist passive" 0.9 } CharacterAttributes { "bot medic uber health threshold" 99999 } } } ///////////////// //MISSIONS ///////////////// Mission // This is a sentry buster mission. It creates sentry busters for any player sentries deemed too dangerous. { Objective DestroySentries InitialCooldown 5 // Amount of time once a wave starts before the mission becomes active. Where spawnbot_sentrybuster // Entity at which to spawn. BeginAtWave 1 // The mission becomes active on this wave. RunForThisManyWaves 11 // It remains active for this many waves. Generally, this is the same as the total number of waves. CooldownTime 35 // This is the time, in seconds, between when Sentry Busters are allowed to spawn, should their spawning conditions be met. TFBot { Template T_TFBot_SentryBuster // This references a template to use for its TFBot. Attributes AutoJump AutoJumpMin 1 AutoJumpMax 2 Name "Jumpin' Buster" //MaxVisionRange 600 //WeaponRestrictions SecondaryOnly CharacterAttributes { "increased jump height" 2 } } } Mission // This is a sniper mission. This spawns sniper(s) at periodic intervals, it will not spawn more snipers unless its conditions are met, and all previous snipers from this mission are dead. { Objective Sniper InitialCooldown 30 // Amount of time once a wave starts before the mission becomes active. Where spawnbot_sniper // Entity at which to spawn. BeginAtWave 2 // The mission becomes active on this wave. RunForThisManyWaves 2 // It remains active for this many waves. CooldownTime 35 // This is the time, in seconds, between when Sniper Missions are allowed to spawn, should their spawning conditions be met. DesiredCount 1 // Number of snipers to spawn each time this mission's criteria are met. TFBot { Class Sniper Skill Expert Name Sniper Tag "sniper_bot" } } ///////////////// //WAVES ///////////////// //WAVE 1// Wave { StartWaveOutput // Output which occurs at moment the wave begins. { Target wave_start_relay_nobombcredits // Name of the entity in the map to target. Action Trigger // Input to give the targeted entity. } DoneOutput // Output which occurrs at moment the wave is completed. { Target wave_finished_relay_30credits // Name of the entity in the map to target. Action trigger // Input to give the targeted entity. } //Checkpoint No // Sets a checkpoint at the end of this wave. WaveSpawn //this is how you setup a timer as a bot { Name startupwave Where spawnbot_timer //IMPORTANT TotalCount 1 MaxActive 1 SpawnCount 1 Support LIMITED //I'd say you should use this, but make sure it says LIMITED or else the bot will keep respawning WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 TFBot { Template IDG_Timer //use this Health 10000 //timer loses 200 each second, but you can set to whatever, more=more time } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 10 // The total number of individual bots that will spawn. MaxActive 5 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 5 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 5 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Runner // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Where spawnbot WaitForAllDead startupwave TotalCount 3 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 10 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 50 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 7 // The total number of individual bots that will spawn. MaxActive 5 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 5 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 2 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 20 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. Attributes "AlwaysFireWeapon" } } WaveSpawn { WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 3 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 15 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 4 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 50 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_ConchCreep // Type of bot to spawn. Skill Easy // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 3 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 15 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 4 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 50 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_BackupCreep // Type of bot to spawn. Skill Easy // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s2 Where spawnbot WaitForAllSpawned w1s1 TotalCount 40 // The total number of individual bots that will spawn. MaxActive 10 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 5 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 10 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 5 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s2 Where spawnbot_specialbomb WaitForAllSpawned w1s1 TotalCount 5 // The total number of individual bots that will spawn. MaxActive 3 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 20 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 4 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 200 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. tag tempbomb ClassIcon idg_bomb_temp Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 Where spawnbot WaitForAllSpawned w1s1 TotalCount 25 // The total number of individual bots that will spawn. MaxActive 7 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 3 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 40 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 5 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Runner // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 Where spawnbot_specialbomb WaitForAllSpawned w1s2 TotalCount 5 // The total number of individual bots that will spawn. MaxActive 3 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 25 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 4 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_ConchCreep // Type of bot to spawn. tag tempbomb ClassIcon idg_bomb_temp Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 Where spawnbot WaitForAllSpawned w1s2 TotalCount 30 // The total number of individual bots that will spawn. MaxActive 15 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 5 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 15 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 5 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 Where spawnbot WaitForAllSpawned w1s2 TotalCount 5 // The total number of individual bots that will spawn. MaxActive 5 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 15 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 8 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 100 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } } //WAVE 2// Wave { StartWaveOutput // Output which occurs at moment the wave begins. { Target wave_start_relay_nobombcredits // Name of the entity in the map to target. Action Trigger // Input to give the targeted entity. } DoneOutput // Output which occurrs at moment the wave is completed. { Target wave_finished_relay_30credits // Name of the entity in the map to target. Action trigger // Input to give the targeted entity. } //Checkpoint No // Sets a checkpoint at the end of this wave. WaveSpawn //this is how you setup a timer as a bot { Name startupwave Where spawnbot_timer //IMPORTANT TotalCount 1 MaxActive 1 SpawnCount 1 Support LIMITED //I'd say you should use this, but make sure it says LIMITED or else the bot will keep respawning WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 40 TFBot { Template IDG_Timer //use this Health 10000 //timer loses 200 each second, but you can set to whatever, more=more time } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 18 // The total number of individual bots that will spawn. MaxActive 8 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 1 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Scout_Bonk // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 2 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 5 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 10 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Giant_Soldier_Crit // Type of bot to spawn. Skill Expert // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 18 // The total number of individual bots that will spawn. MaxActive 8 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 1 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. RandomChoice { TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } TFBot { Template IDG_TowerDefense_FastCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } } WaveSpawn { WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 16 // The total number of individual bots that will spawn. MaxActive 4 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 8 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 50 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_FastCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s2 WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 24 // The total number of individual bots that will spawn. MaxActive 6 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 2 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 3 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_InstaDeath_Pyro // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s2 WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 40 // The total number of individual bots that will spawn. MaxActive 15 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 10 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 8 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Runner // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { WaitForAllSpawned w1s1 Where spawnbot_specialbomb // Entity at which to spawn. TotalCount 4 // The total number of individual bots that will spawn. MaxActive 1 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 30 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 30 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_PusherHeavy // Type of bot to spawn. tag sentrybomb ClassIcon idg_bomb_sentry Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 WaitForAllSpawned w1s2 Where spawnbot // Entity at which to spawn. TotalCount 12 // The total number of individual bots that will spawn. MaxActive 6 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 2 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 10 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 3 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_BuffCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 WaitForAllSpawned w1s2 Where spawnbot // Entity at which to spawn. TotalCount 12 // The total number of individual bots that will spawn. MaxActive 6 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 2 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 5 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 3 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_BackupCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s3 WaitForAllSpawned w1s2 Where spawnbot // Entity at which to spawn. TotalCount 8 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 10 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 3 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_PusherConchSoldier // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { WaitForAllDead w1s2 Where spawnbot // Entity at which to spawn. TotalCount 2 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 40 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 25 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage // Type of bot to spawn. Skill Expert // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } } //WAVE 3// Wave { StartWaveOutput // Output which occurs at moment the wave begins. { Target wave_start_relay_nobombcredits // Name of the entity in the map to target. Action Trigger // Input to give the targeted entity. } DoneOutput // Output which occurrs at moment the wave is completed. { Target wave_finished_relay_30credits // Name of the entity in the map to target. Action trigger // Input to give the targeted entity. } //Checkpoint No // Sets a checkpoint at the end of this wave. WaveSpawn //this is how you setup a timer as a bot { Name startupwave Where spawnbot_timer //IMPORTANT TotalCount 1 MaxActive 1 SpawnCount 1 Support LIMITED //I'd say you should use this, but make sure it says LIMITED or else the bot will keep respawning WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 40 TFBot { Template IDG_Timer //use this Health 10000 //timer loses 200 each second, but you can set to whatever, more=more time } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot // Entity at which to spawn. TotalCount 15 // The total number of individual bots that will spawn. MaxActive 10 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 1 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_BackupCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s1 WaitForAllDead startupwave Where spawnbot_specialbomb // Entity at which to spawn. TotalCount 5 // The total number of individual bots that will spawn. MaxActive 5 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 6 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 1 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_ConchCreep // Type of bot to spawn. Skill Normal // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. Tag thrillerbomb } } WaveSpawn { WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 8 // The total number of individual bots that will spawn. MaxActive 8 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 2 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 6 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Creep // Type of bot to spawn. Health 800 Skill Easy // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 2 // The total number of individual bots that will spawn. MaxActive 1 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 60 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 25 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_PusherHeavy // Type of bot to spawn. Skill Easy // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } WaveSpawn { Name w1s2 WaitForAllSpawned w1s1 Where spawnbot_specialbomb // Entity at which to spawn. TotalCount 6 // The total number of individual bots that will spawn. MaxActive 2 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 20 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_BuffCreep // Type of bot to spawn. tag shieldbomb ClassIcon idg_bomb_shield Skill Normal } } WaveSpawn { Name w1s3 WaitForAllSpawned w1s1 Where spawnbot // Entity at which to spawn. TotalCount 30 // The total number of individual bots that will spawn. MaxActive 9 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 3 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 0 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 18 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. Squad { TFBot { Template IDG_TowerDefense_LethalHeavy // Type of bot to spawn. } TFBot { Template IDG_TowerDefense_ConchCreep } TFBot { Template IDG_TowerDefense_InstaDeath_Pyro } } } WaveSpawn { Name w1s4 WaitForAllSpawned w1s2 Where spawnbot_specialbomb // Entity at which to spawn. TotalCount 1 // The total number of individual bots that will spawn. MaxActive 1 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. WaitBeforeStarting 20 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 20 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template T_TFBot_Chief_Gauntlet // Type of bot to spawn. Health 100000 CharacterAttributes { "move speed bonus" 0.35 "health regen" 250 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 } } } WaveSpawn { WaitForAllSpawned w1s4 Where spawnbot // Entity at which to spawn. TotalCount 5 // The total number of individual bots that will spawn. MaxActive 5 // The maximum number of bots, from this WaveSpawn, that can be alive in the world at any moment. SpawnCount 1 // Defines the number of bots to spawn at a time as a group. Support 1 WaitBeforeStarting 10 // Amount of time to wait before spawning the first bot. WaitBetweenSpawns 6 // Amount of time to wait between spawning each group (defined by the spawncount) of bots. TotalCurrency 75 // Amount of money dropped by all of the bots in the WaveSpawn. Money is divided equally between each bot. TFBot { Template IDG_TowerDefense_Rocket_Creep // Type of bot to spawn. Skill Easy // Skill level of bot. options are Easy, Normal, Hard, Expert in ascending difficulty. } } } }