#base robot_standard.pop #base robot_giant.pop #base robot_gatebot.pop #base robot_spidertank.pop Effort { StartingCurrency 450 CanBotsAttackWhileInSpawnRoom no RespawnWaveTime 5 RobotLimit 25 NoThrillerTaunt 1 NoRomevisionCosmetics 1 NoCritPumpkin 1 ForceHoliday 2 BotsAreHumans 2 StandableHeads 1 TextPrintTime 0 BodyPartScaleSpeed 10 BluHumanFlagCapture 1 FastNPCUpdate 1 NoSkeletonSplit 1 WaveStartCountdown 3 PrecacheModel "models/weapons/c_models/c_critbanner/c_critbanner.mdl" PrecacheModel "models/weapons/c_models/c_bulletbanner/c_bulletbanner.mdl" PrecacheModel "models/weapons/c_models/c_hastebanner/c_hastebanner.mdl" PrecacheModel "models/player/items/all_class/gately_gibus_heavy.mdl" PrecacheModel "models/weapons/w_models/w_rocketbullet.mdl" PrecacheParticle "rockettrail_airstrike_line" DisallowUpgrade "generate rage on heal" DisallowUpgrade "explosive sniper shot" DisallowUpgrade "rocket specialist" DisallowUpgrade "applies snare effect" ItemAttributes { ItemName "The Huntsman" "override projectile type" 4 "mult projectile count" 2 "blast radius increased" 2 "projectile spread angle penalty" 3 //"custom projectile model" "models/props_lakeside_event/bomb_temp.mdl" } //one item (#1) ItemAttributes { ItemName "Baby Face's Blaster" "weapon spread bonus" 0.8 "clip size penalty" 1 "hype resets on jump" 25 "lose hype on take damage" 1 "special item description" "Lessened boost loss on dmg and jump, added 20% lower weapon spread, and removed clip size penalty." } //one item (#2) ItemAttributes { ItemName "The Flying Guillotine" "mark for death" 1 "minicrits become crits" 1 } //one item (#3) ItemAttributes { ClassName "TF_WEAPON_PISTOL" "max health additive bonus" 25 "critboost on kill" 3 "maxammo metal increased" 1.5 } //one item (#4) ItemAttributes { ItemName "The Liberty Launcher" "mod projectile heat follow crosshair" 1 "mod projectile heat seek power" 180 "Projectile speed increased" 0.2 "fire rate bonus hidden" 2 "damage penalty" 1 "damage bonus hidden" 2 "clip size bonus" .25 "projectile acceleration" 5000 "projectile acceleration time" .1 "projectile acceleration start time" .5 "custom weapon fire sound" "=50|rpg_sounds/rocketfire1.wav" "mod projectile heat aim time" 10 "custom impact sound" "sound/misc/null.wav" "special item description" "+100% damage bonus" } //one item (#5) ItemAttributes { ItemName "The B.A.S.E. Jumper" "dmg taken from blast reduced" 0.65 "increased air control" 4 "air dash count" 1 } //one item (#6) ItemAttributes { ItemName "The Gunboats" "max health additive bonus" 50 "deploy time decreased" 0.35 "rocket jump damage reduction" .05 "cancel falling damage" 2 } //one item i swear(#7) ItemAttributes { ItemName "Panic Attack Shotgun" "minicritboost on kill" 5 "max health additive bonus" 25 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_PRIMARY" "minicritboost on kill" 5 "max health additive bonus" 25 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_SOLDIER" "minicritboost on kill" 5 "max health additive bonus" 25 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "minicritboost on kill" 5 "max health additive bonus" 25 } ItemAttributes { ItemName "The Crusader's Crossbow" "faster reload rate" 0.75 "clip size upgrade atomic" 3 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_PYRO" "minicritboost on kill" 5 "max health additive bonus" 25 } //one item (#8) ItemAttributes { ItemName "The Degreaser" "flame_reflect_on_collision" 1 "max_flame_reflection_count" 2 "reflected_flame_dmg_reduction" 2 "special item description" "Flames will ricochet off of surfaces up to 2 times. Ricocheted flames deal double damage" } //one item (#9) ItemAttributes { ItemName "The Pain Train" "damage bonus" 2 "dmg taken from bullets increased" 1 "bleeding duration" 5 "hit self on miss" 1 "drop health pack on kill" 1 "special damage type" 1 "dmg taken mult from special damage type 1" 0.65 } //one item (#10) ItemAttributes { ItemName "The Family Business" "health regen" 2 "heal on hit for rapidfire" 25 "switch from wep deploy time decreased" .7 "single wep deploy time decreased" .4 } //one item (#11) ItemAttributes //I really liked this on royal's mission so I just had to get permission to modify it and put it here { ItemName "The Gunslinger" "upgrade rate decrease" 2 "mult dispenser rate" 1.5 "mult teleporter recharge rate" 0.5 "build rate bonus" 0.5 "mvm sentry ammo" 2 "engy sentry radius increased" 2 "engineer teleporter build rate multiplier" 2.5 "special item description" "+55% damage bonus on all primaries and the short circuit, +100% damage bonus for all melees." } //one item (#12) ItemAttributes { ItemName "TF_WEAPON_SMG" "max health additive bonus" 25 "damage bonus" 1.30 "minicritboost on kill" 5 "dmg pierces resists absorbs" 1 "can headshot" 1 "revolver use hit locations" 1 } //one item (#13) ItemAttributes { ItemName "The Amputator" "special item description" "Alt-Fire: Provides mini-crits to nearby team members" "always crit" 1 } //one item i swear(#14) ItemAttributes { ItemName "TF_WEAPON_INVIS" "max health additive bonus" 50 } ItemAttributes { ItemName "The Cloak and Dagger" "max health additive bonus" 50 } //one item (#15) ItemAttributes { ItemName "The Enforcer" "damage bonus" 1.5 "fire rate penalty" 2 "faster reload rate" 1.4 "explosive bullets" 147 "blast dmg to self increased" 0.6 "special damage type" 2 "mult dmg vs tanks" 2 "self dmg push force decreased" 0.6 "special item description" "Cannot blast jump while disguised" } PlayerItemEquipSpawnTemplate { Name "gunslinger_buff" ItemName "The Gunslinger" } PlayerItemEquipSpawnTemplate { Name "pistol_equipped" ClassName "TF_WEAPON_PISTOL" } PlayerItemEquipSpawnTemplate { Name "amputator_template" ItemName "The Amputator" } PlayerShootTemplate { Name rpg_shoottemplate ItemName "The Liberty Launcher" AttachToProjectile 1 } Mission // Sentry Busters - All { Objective DestroySentries InitialCooldown 30 Where spawnbot_mission_sentry_buster BeginAtWave 1 RunForThisManyWaves 5 CooldownTime 45 TFBot { Template T_TFBot_SentryBuster CharacterAttributes { "move speed bonus" 1.2 } } } Mission // For Wave 1 { Where spawnbot_mission_sniper Objective Sniper BeginAtWave 1 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 20 CooldownTime 30 TFBot { Template T_TFBot_Sniper Item "Zombie Sniper" CharacterAttributes { "voice pitch scale" 0.8 } } } Mission // For Wave 2 { Where spawnbot_mission_sniper Objective Spy BeginAtWave 2 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 20 CooldownTime 30 TFBot { Template T_TFBot_Spy NoIdleSound 1 Item "Zombie Spy" UseHumanModel 2 Tag bot_spy CharacterAttributes { "voice pitch scale" 0.8 } } } Mission // For Wave 3 { Where spawnbot_mission_sniper Objective Sniper BeginAtWave 3 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 20 CooldownTime 30 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper NoIdleSound 1 Item "Zombie Sniper" UseHumanModel 2 CharacterAttributes { "voice pitch scale" 0.8 } } } Mission // For Wave 4 { Where spawnbot Objective Engineer BeginAtWave 4 RunForThisManyWaves 1 DesiredCount 1 InitialCooldown 15 CooldownTime 35 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter Item "Zombie Engineer" UseHumanModel 2 CharacterAttributes { "voice pitch scale" 0.8 } } } Wave // Wave #1 { StartWaveOutput { Target wave_start_ironman_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "w1_a" Where flankers TotalCount 24 MaxActive 9 SpawnCount 3 WaitBeforeStarting 1 WaitBetweenSpawns 4 TotalCurrency 120 TFBot { Template JURGateBot_Pyro_DragonFury } } WaveSpawn { Name "w1_a" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 20 TFBot { Template JURBot_Heavy_Warrior } } WaveSpawn { Name "w1_a" Where spawnbot TotalCount 15 MaxActive 7 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 3 TotalCurrency 300 RandomChoice { TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior } TFBot { Template JURBot_Heavy_Warrior Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 150 } Tag spell_crits NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_CRITBOOSTED_USER_BUFF } SpawnTemplate "spellbook_bot_init" } } } WaveSpawn { Name "w1_b" WaitForAllDead "w1_a" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 TotalCurrency 225 TFBot { Template T_TFBot_Giant_Demo_RapidFire CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Demo" } } WaveSpawn { Name "w1_b" WaitForAllDead "w1_a" Where spawnbot TotalCount 18 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 6 TotalCurrency 180 RandomChoice { TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun } TFBot { Template JURBot_Soldier_RocketShotgun Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 149 } Tag spell_haste NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_KING_BUFFED } SpawnTemplate "spellbook_bot_init" } } } WaveSpawn { Name "w1_b_extra" WaitForAllDead "w1_a" Where flankers TotalCount 32 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 145 RandomChoice { TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire } TFBot { Template JURBot_Scout_Slowfire Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 149 } Tag spell_haste NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_KING_BUFFED } SpawnTemplate "spellbook_bot_init_flanker" } } } WaveSpawn { Name "w1_c" WaitForAllDead "w1_b" Where spawnbot TotalCount 4 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Engineer_Widowmaker NoIdleSound 1 UseHumanModel 2 Item "Zombie Engineer" CharacterAttributes { "voice pitch scale" 0 } } } WaveSpawn { Name "w1_c" WaitForAllDead "w1_b" Where flankers TotalCount 32 MaxActive 12 SpawnCount 4 WaitBeforeStarting 1 WaitBetweenSpawns 8 TotalCurrency 160 RandomChoice { TFBot { Template JURGateBot_Demoman Skill Easy UseHumanModel 2 Item "Zombie Demo" CharacterAttributes { "voice pitch scale" 0.8 } } TFBot { Template JURGateBot_Demoman Skill Normal UseHumanModel 2 Item "Zombie Demo" CharacterAttributes { "voice pitch scale" 0.8 } } TFBot { Template JURGateBot_Demoman Skill Hard UseHumanModel 2 Item "Zombie Demo" CharacterAttributes { "voice pitch scale" 0.8 } } } } WaveSpawn { Name "w1_d" WaitForAllDead "w1_c" Where spawnbot TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish NoIdleSound 1 Item "Zombie Demo" UseHumanModel 2 CharacterAttributes { "voice pitch scale" 0 } SpawnTemplate "powerup_knockout_logic" } TFBot { Template T_TFBot_Medic_Knockout CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } } } WaveSpawn { Name "w1_d" WaitForAllDead "w1_c" Where spawnbot TotalCount 4 MaxActive 3 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 14 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout CharacterAttributes { "voice pitch scale" 0.8 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Scout" } } WaveSpawn { Name "wave1_hellion" Where spawnbot_spell MaxActive 1 SpawnCount 1 //WaitBeforeStarting 30 WaitBetweenSpawns 60 Support 1 TFBot { Template JURBot_Spell_Skeleton_One Tag spell_underworld NoBombUpgrades 1 SuppressTimedFetchFlag 1 } } WaveSpawn { Name "wave1_hellion" Where spawnbot_underworld_main_2 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_One SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave1_hellion" Where spawnbot_underworld_main_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_One SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave1_hellion" Where spawnbot_underworld_loot_1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_One SpawnTemplate "underworld_skeleton_loot" } } WaveSpawn { Name "wave1_hellion" Where spawnbot_underworld_loot_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_One SpawnTemplate "underworld_skeleton_loot" } } } Wave // Wave #2 { StartWaveOutput { Target wave_start_ironman_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "w2_a_tank" TotalCount 1 TotalCurrency 200 Tank { Template SpiderTank Name "SpiderTank" Health 20000 StartingPathTrackNode "tank_path_1" SpawnTemplate "spidertank_color" Model "models/bots/boss_bot/boss_tank_color.mdl" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "w2_a" Where flankers TotalCount 30 MaxActive 9 SpawnCount 3 WaitBeforeStarting 1 WaitBetweenSpawns 6 TotalCurrency 150 RandomChoice { TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" } TFBot { Template T_TFBot_Pyro_Phlog Item "Zombie Pyro" Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 147 } Tag spell_regen NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_HALLOWEEN_QUICK_HEAL } SpawnTemplate "regen_particle_template" SpawnTemplate "spellbook_bot_init_flanker" } } } WaveSpawn { Name "w2_a" Where flankers TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Soldier NoIdleSound 1 Item "Zombie Soldier" } } WaveSpawn { Name "w2_a" Where spawnbot TotalCount 30 MaxActive 12 SpawnCount 6 WaitBeforeStarting 2 WaitBetweenSpawns 10 TotalCurrency 125 RandomChoice { TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ } TFBot { Template JURBot_Heavy_Champ Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 147 } Tag spell_regen NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_HALLOWEEN_QUICK_HEAL } SpawnTemplate "regen_particle_template" SpawnTemplate "spellbook_bot_init" } } } WaveSpawn { Name "w2_b_gatebot" WaitForAllDead "w2_a" Where flankers TotalCount 36 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 180 TFBot { Template JURBot_Soldier_EscapePlan SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "1.04" "attachment offset" "-3.7 0.45 -14.5" "attachment angles" "11 0 6" "attachment scale" 1.5 } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } } WaveSpawn { Name "w2_b" WaitForAllDead "w2_a" Where spawnbot TotalCount 15 MaxActive 15 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 375 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Heavy" } TFBot { Template T_TFBot_Medic_BigHeal CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } TFBot { Template T_TFBot_Medic_BigHeal CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } TFBot { Template T_TFBot_Medic_BigHeal CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } TFBot { Template T_TFBot_Medic_BigHeal CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } } } WaveSpawn { Name "w2_c" WaitForAllDead "w2_b" Where flankers TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 16 TotalCurrency 300 TFBot { Template T_TFBot_Giant_Soldier_RocketShotgun CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Soldier" } } WaveSpawn { Name "w2_c" WaitForAllDead "w2_b" Where spawnbot Where flankers TotalCount 20 MaxActive 6 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 5 Support Limited TotalCurrency 70 RandomChoice { TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop } TFBot { Template JURBot_Scout_Shortstop Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 150 } Tag spell_crits NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_CRITBOOSTED_USER_BUFF } SpawnTemplate "spellbook_bot_init_flanker" } } } WaveSpawn { Name "w2_c" WaitForAllDead "w2_b" Where spawnbot TotalCount 16 MaxActive 4 SpawnCount 1 WaitBeforeStarting 8 WaitBetweenSpawns 6 Support Limited TFBot { Template JURBot_PotionTosser Attributes DisableDodge } } WaveSpawn { Name "wave2_hellion" Where spawnbot_spell MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawns 60 Support 1 TFBot { Template JURBot_Spell_Skeleton_Two Tag spell_underworld NoBombUpgrades 1 SuppressTimedFetchFlag 1 } } WaveSpawn { Name "wave2_hellion" Where spawnbot_underworld_main_2 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Two SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave2_hellion" Where spawnbot_underworld_main_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Two SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave2_hellion" Where spawnbot_underworld_loot_1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Two SpawnTemplate "underworld_skeleton_loot" } } WaveSpawn { Name "wave2_hellion" Where spawnbot_underworld_loot_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Two SpawnTemplate "underworld_skeleton_loot" } } } Wave // Wave #3 { StartWaveOutput { Target wave_start_ironman_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "w3_a" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 18 TotalCurrency 300 TFBot { Template JURBot_Giant_Heavy_Shotgun_BurstFire NoIdleSound 1 UseHumanModel 2 Item "Zombie Heavy" } } WaveSpawn { Name "w3_a_gatebot" Where flankers TotalCount 30 MaxActive 8 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 6 TotalCurrency 225 TFBot { Class Soldier Name "Charged Soldier" ClassIcon soldier_crit Skill Normal Item "The Original" Attributes AlwaysCrit WeaponRestrictions PrimaryOnly ItemAttributes { ItemName "The Original" "faster reload rate" 0.2 "fire rate bonus" 2 "Projectile speed increased" 0.5 } CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Soldier" SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "1.04" "attachment offset" "-2.2 0.45 -11.5" "attachment angles" "0 0 6" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } } WaveSpawn { Name "w3_a" Where spawnbot Where flankers TotalCount 16 MaxActive 6 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 5 TotalCurrency 160 RandomChoice { TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire } TFBot { Template JURBot_Sniper_Huntsman_Splitfire Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 149 } Tag spell_haste NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_KING_BUFFED } SpawnTemplate "spellbook_bot_init_flanker" } } } WaveSpawn { Name "w3_b" WaitForAllSpawned "w3_a" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 6 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Pyro Skill Expert Attributes AlwaysCrit UseHumanModel 2 CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Pyro" } } WaveSpawn { Name "w3_b" WaitForAllSpawned "w3_a" Where flankers TotalCount 24 MaxActive 9 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 4 TotalCurrency 115 TFBot { Class Scout Skill Hard WeaponRestrictions PrimaryOnly Item "Crit-a-Cola" ClassIcon scout_cola_nys CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Scout" SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment offset" "-2.4 0.5 -10.3" "attachment angles" "-4 0 7" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } } WaveSpawn { Name "w3_b_tank" WaitForAllSpawned "w3_a" TotalCount 1 TotalCurrency 250 WaitBeforeStarting 12 Tank { Name "Tank" Health 30000 StartingPathTrackNode "tank_path_1" SpawnTemplate "ghosttank" Model "models/bots/boss_bot/boss_tank_color.mdl" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "w3_c" WaitForAllDead "w3_b" Where spawnbot TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 300 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Heavy" } TFBot { Template T_TFBot_Medic CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } TFBot { Template T_TFBot_Medic CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } TFBot { Template T_TFBot_Medic CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Medic" } } } WaveSpawn { Name "w3_c" WaitForAllDead "w3_b" Where spawnbot Where flankers TotalCount 18 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 3 Support Limited TotalCurrency 100 RandomChoice { TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner } TFBot { Template JURBot_Soldier_BuffBanner Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 147 } Tag spell_regen NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_HALLOWEEN_QUICK_HEAL } SpawnTemplate "regen_particle_template" SpawnTemplate "spellbook_bot_init" } } } WaveSpawn { Name "wave3_hellion" Where spawnbot_spell MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawns 60 Support 1 TFBot { Template JURBot_Spell_Skeleton_Three Tag spell_underworld NoBombUpgrades 1 SuppressTimedFetchFlag 1 } } WaveSpawn { Name "wave3_hellion" Where spawnbot_underworld_main_sniper MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Three SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave3_hellion" Where spawnbot_underworld_main_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Three SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave3_hellion" Where spawnbot_underworld_loot_1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Three SpawnTemplate "underworld_skeleton_loot" } } WaveSpawn { Name "wave3_hellion" Where spawnbot_underworld_loot_2 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Three SpawnTemplate "underworld_skeleton_loot" } } } Wave // Wave #4 { StartWaveOutput { Target wave_start_ironman_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "w4_a_gatebot" Where flankers TotalCount 5 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 250 RandomChoice { TFBot { Template JURBot_Giant_Soldier_RocketShotgun } TFBot { Template JURBot_Giant_Soldier_RocketShotgun } TFBot { Template JURBot_Giant_Soldier_RocketShotgun } TFBot { Template JURBot_Giant_Soldier_RocketShotgun Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 150 } Tag spell_crits NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_CRITBOOSTED_USER_BUFF } SpawnTemplate "spellbook_bot_init" } } } WaveSpawn { Name "w4_a" Where spawnbot TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 1 WaitBetweenSpawns 6 TotalCurrency 240 Squad { TFBot { Class Spy Name "Upgraded Munitions Spy" Skill Expert Health 1200 Scale 1.5 AimTrackingInterval 0.05 Action FetchFlag Item "Zombie Spy" ClassIcon spy_revolver_atomic ItemAttributes { ItemName "TF_WEAPON_REVOLVER" "hand scale" 1.5 "override projectile type" 2 "fire rate penalty" 2 "faster reload rate" 1.4 "custom projectile model" "models/weapons/w_models/w_rocketbullet.mdl" "projectile trail particle" "rockettrail_airstrike_line" "no self blast dmg" 2 "centerfire projectile" 1 "projectile no deflect" 1 } CharacterAttributes { "move speed bonus" 0.85 "cannot disguise" 1 "voice pitch scale" 0.8 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.75 } } TFBot { Template T_TFBot_Medic_Kritz Item "Zombie Medic" } } } WaveSpawn { Name "w4_a_gatebot" Where flankers TotalCount 30 MaxActive 10 SpawnCount 5 WaitBeforeStarting 1 WaitBetweenSpawns 7 TotalCurrency 120 RandomChoice { TFBot { Class Pyro Skill Expert WeaponRestrictions PrimaryOnly Item "Zombie Pyro" CharacterAttributes { "voice pitch scale" 0.8 } SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "0.95" "attachment offset" "1 0.2 -9.8" "attachment angles" "-42 0 3" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } TFBot { Template T_TFBot_Pyro_Flaregun ClassIcon pyro Item "Zombie Pyro" CharacterAttributes { "voice pitch scale" 0.8 } SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "0.95" "attachment offset" "1 0.2 -9.8" "attachment angles" "-42 0 3" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } } } WaveSpawn { Name "w4_skeles" WaitForAllSpawned "w4_b_tank" Where flankers TotalCount 15 MaxActive 15 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 5 Support 1 HalloweenBoss // HalloweenBoss spawner. Spawns a boss { FastUpdate 1 // Should do updates every tick (Default: 0) BossType SkeletonNormal // Boss type: MONOCULUS, Merasmus, HHH, SkeletonSmall, SkeletonNormal, SkeletonKing. Skeletons default limit is 30 active at once unless modified by MaxActiveSkeletons TeamNum 3 // Team number for Monoculus (2 - red, 3 - blu, 5 - neutral) (Default: 5) Health 100 // Boss health, 0 means default health (Default: 0) //Origin "-2099 -1686 428" // If set, spawns boss at the specified position rather than at where location Origin "0 0 0" Skin 2 SpreadRadius "250 250 250" // Randomly spreads halloween boss in x y z coordinates //StickToGround 6000 // Stick spawned boss to ground, as long as its up to x units above the ground SpawnAtEntity "tankboss_skele" // If set, spawns boss at the entity location instead of where location } } WaveSpawn { Name "w4_b_tank" WaitForAllDead "w4_a" TotalCount 1 TotalCurrency 150 Tank { Name "tankboss_skele" ClassIcon tank_skeleton Health 30000 StartingPathTrackNode "tank_path_1" DisableSmokestack 1 SpawnTemplate "skeletank" Model "models/bots/boss_bot/boss_tank_color.mdl" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "w4_b" WaitForAllDead "w4_a" Where flankers TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 150 TFBot { Template T_TFBot_Giant_Scout_Baseball NoIdleSound 1 UseHumanModel 2 Item "Zombie Scout" CharacterAttributes { "voice pitch scale" 0 } } } WaveSpawn { Name "w4_b" WaitForAllDead "w4_a" Where flankers TotalCount 24 MaxActive 10 SpawnCount 5 WaitBeforeStarting 8 WaitBetweenSpawns 6 TotalCurrency 50 TFBot { Class Demoman Name "Bumperknight" ClassIcon demoknight Skill Hard Item "Backbreaker's Guards" Item "The Chargin' Targe" Item "The Eyelander" WeaponRestrictions MeleeOnly ItemAttributes { ItemName "The Eyelander" "critboost on kill" 3 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Demo" CharacterAttributes { "voice pitch scale" 0.8 } SpawnTemplate "bumpercar_logic" } } WaveSpawn { Name "w4_b" WaitForAllDead "w4_a" Where spawnbot TotalCount 6 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Pyro_ComboFlare CharacterAttributes { "voice pitch scale" 0 } SpawnTemplate "powerup_logic_hastebuff_recipient" } } WaveSpawn { Name "w4_c" WaitForAllDead "w4_b" Where flankers TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 200 TFBot { Template JURBot_Giant_Soldier_Critbuff } } WaveSpawn { Name "w4_c" WaitForAllDead "w4_b" Where spawnbot TotalCount 6 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 9 TotalCurrency 120 TFBot { Name "Giant Crusader Medic" Class Medic ClassIcon medic_crossbow Skill Expert Health 4500 Attributes MiniBoss Action FetchFlag WeaponRestrictions PrimaryOnly Item "The Crusader's Crossbow" Item "Berliner's Bucket Helm" //Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Crusader's Crossbow" "auto fires full clip" 1 "auto fires when full" 1 "faster reload rate" 0.5 "clip size upgrade atomic" 3 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 } CharacterAttributes { "voice pitch scale" 0 } NoIdleSound 1 Item "Zombie Medic" SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } } WaveSpawn { Name "w4_c" WaitForAllDead "w4_b" Where flankers TotalCount 16 MaxActive 6 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 60 Support Limited RandomChoice { TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Soldier_Hastebuff Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 150 } Tag spell_crits NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_CRITBOOSTED_USER_BUFF } SpawnTemplate "spellbook_bot_init" SpawnTemplate "powerup_logic_critbuff_recipient" } } } WaveSpawn { Name "w4_c" WaitForAllDead "w4_b" Where flankers TotalCount 16 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 60 Support Limited RandomChoice { TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template JURBot_Demo_Quickie_Burst Item "Point and Shoot" ItemAttributes { ItemName "Point and Shoot" "attach particle effect" 147 } Tag spell_regen NoBombUpgrades 1 SuppressTimedFetchFlag 1 AddCond { Name TF_COND_HALLOWEEN_QUICK_HEAL } SpawnTemplate "regen_particle_template" SpawnTemplate "spellbook_bot_init_flanker" SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } } } WaveSpawn { Name "wave4_hellion" Where spawnbot_spell MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawns 60 Support 1 TFBot { Template JURBot_Spell_Skeleton_Four Tag spell_underworld NoBombUpgrades 1 SuppressTimedFetchFlag 1 SpawnTemplate "powerup_logic_hastebuff_recipient" SpawnTemplate "powerup_logic_critbuff_recipient" } } WaveSpawn { Name "wave4_hellion" Where spawnbot_underworld_main_sniper MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Four SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave4_hellion" Where spawnbot_underworld_main_3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Four SpawnTemplate "underworld_skeleton_main" } } WaveSpawn { Name "wave4_hellion" Where spawnbot_underworld_loot_1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Four SpawnTemplate "underworld_skeleton_loot" } } WaveSpawn { Name "wave4_hellion" Where spawnbot_underworld_loot_2 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 Support 1 TFBot { Template JURBot_Hell_Skeleton_Four SpawnTemplate "underworld_skeleton_loot" } } } Wave // Wave #test { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target underworld_loot_relay Action Trigger } WaveSpawn { Name "" Where spawnbot TotalCount 100 MaxActive 1 SpawnCount 1 TFBot { Template T_TFBot_Testing_Bot } } WaveSpawn { Name "" Where spawnbot_colossus TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 1 Support 1 TFBot { Template JURBot_Colossus } } } ExtraSpawnPoint { Name "spawnbot_hatadjust" TeamNum 3 X "3336" Y "-4125" Z "646" } ExtraSpawnPoint { Name "spawnbot_test" TeamNum 3 X "-2426" Y "-1844" Z "428" } ExtraSpawnPoint { Name "spawnbot_underworld_main_sniper" StartDisabled 1 TeamNum 3 X "973" Y "-551" Z "-9579" } ExtraSpawnPoint { Name "spawnbot_underworld_main_3" StartDisabled 1 TeamNum 3 X "-354" Y "-470" Z "-9951" } ExtraSpawnPoint { Name "spawnbot_underworld_main_2" StartDisabled 1 TeamNum 3 X "882" Y "-374" Z "-9931" } ExtraSpawnPoint { Name "spawnbot_underworld_main_1" StartDisabled 1 TeamNum 3 X "982" Y "-2164" Z "-10314" } ExtraSpawnPoint { Name "spawnbot_underworld_loot_1" StartDisabled 1 TeamNum 3 X "-72" Y "4194" Z "-10259" } ExtraSpawnPoint { Name "spawnbot_underworld_loot_2" StartDisabled 1 TeamNum 3 X "51" Y "5625" Z "-9854" } ExtraSpawnPoint { Name "spawnbot_underworld_loot_3" StartDisabled 1 TeamNum 3 X "602" Y "5970" Z "-10270" } ExtraSpawnPoint { Name "spawnbot_colossus" TeamNum 3 X "58" Y "5305" Z "-9830" } Templates { JURBot_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.45 "fire rate bonus" 0.001 "clip size upgrade atomic" 0 "faster reload rate" 1.6 "blast radius increased" 1.25 //"Projectile speed increased" 0.4 "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 "voice pitch scale" 0 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Soldier" } T_TFBot_Medic_Kritz { Name "Kritzkrieg Medic" Class Medic Skill Expert ClassIcon medic_kritz Attributes SpawnWithFullCharge Item "The Kritzkrieg" ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 999 "uber duration bonus" 999 } CharacterAttributes { "bot medic uber health threshold" 500 } } JURBot_Colossus { Class Sniper ClassIcon sniper_bow WeaponRestrictions SecondaryOnly //WeaponRestrictions PrimaryOnly Item "The Huntsman" Skill Expert Health 100000 Scale 18 ExtAttr IgnoreBuildings Attributes UseBossHealthBar Attributes MiniBoss //Attributes AlwaysCrit Attributes SuppressFire StripItemSlot 2 Action Mobber //AimTrackingInterval 0.01 NoCrouchButtonRelease 1 Tag bot_colossus CharacterAttributes { //"not solid to players" 1 "no_jump" 1 "no_duck" 1 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "override footstep sound set" 7 "rage giving scale" 200 "cancel falling damage" 1 "always allow taunt" 1 } ItemAttributes { ItemName "The Huntsman" "override projectile type" 6 //"mod flaregun fires pellets with knockback" 3 } ItemAttributes { ItemName "TF_WEAPON_SMG" "override projectile type" 6 } FireWeapon //Periodically fires weapon { Delay 8 //Time before the first fire input starts (Default: 10) Cooldown 6 //Time between each fire input (Default: 10) Repeats 0 //How many times should bot use the fire input in total (Default: 0 - Infinite) Duration 0.3 //How long should the button be pressed (Default: 0.1) Type "Primary" // Type of fire input - requires NoCrouchButtonRelease 1 in TFBot } Taunt { Delay 1 Repeats 1 Duration 6.5 Name "I See You Taunt" } EventChangeAttributes { AttackOne { ItemAttributes { ItemName "The Huntsman" "mod projectile heat seek power" 20 "mod projectile heat aim error" 30 "mod projectile heat aim time" 1 "arrow mastery" 10 } } AttackTwo { ItemAttributes { ItemName "The Huntsman" "override projectile type" 3 "mult projectile count" 7 "blast radius increased" 3 "projectile spread angle penalty" 4 "Projectile speed increased" 10 } } AttackThree { ItemAttributes { ItemName "The Huntsman" "override projectile type" 22 } } AttackFour { ItemAttributes { ItemName "TF_WEAPON_SMG" "override projectile type" 2 "fire rate penalty" 2 "faster reload rate" 1.4 "custom projectile model" "models/weapons/w_models/w_rocketbullet.mdl" "projectile trail particle" "rockettrail_airstrike_line" "no self blast dmg" 2 "centerfire projectile" 1 "projectile no deflect" 1 } } } NoIdleSound 1 Item "Zombie Sniper" Item "The Golden Garment" Item "The Triggerman's Tacticals" Item "The Snaggletoothed Stetson" Item "Final Frontiersman" ItemModel { ItemName "The Golden Garment" Model models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } ItemModel { ItemName "Zombie Sniper" Model models/empty.mdl } //UseHumanAnimations 1 //Skin 6 // UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl SpawnTemplate "colossus_template" } T_TFBot_Giant_Pyro_ComboFlare //courtesy of royal { Name "Giant Combo Pyro" Class Pyro Health 3000 ClassIcon pyro_degreaser_flare Item "The Degreaser" Item "The Flare Gun" Item "Pyromancer's Mask" Item "Zombie Pyro" NoIdleSound 1 Skill Expert Attributes MiniBoss MaxVisionRange 1200 ItemAttributes { ItemName "The Degreaser" "fire input on hit" "combo_primary_to_secondary_longhold^Trigger^" "damage penalty" 0.1 } ItemAttributes { ItemName "The Flare Gun" "faster reload rate" 0.2 } CharacterAttributes { "move speed bonus" 0.6 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } JURBot_Spell_Skeleton_One { Class Sniper Classicon dead_red_lite Name "Hellion" Scale 1.35 Health 650 StripItemSlot 0 StripItemSlot 1 WeaponRestrictions MeleeOnly Item "Final Frontiersman" CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 "damage force reduction" 0.75 "airblast vulnerability multiplier" 0.75 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Spell_Skeleton_Two { Class Sniper Classicon dead_red_lite Name "Hellion" Health 1200 Scale 1.5 StripItemSlot 0 StripItemSlot 1 WeaponRestrictions MeleeOnly Attributes AlwaysCrit Item "Final Frontiersman" CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.75 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Spell_Skeleton_Three { Class Sniper Classicon dead_red_lite Name "Hellion" Skill Hard Health 1200 Scale 1.5 StripItemSlot 1 StripItemSlot 2 Item "The Huntsman" Item "Final Frontiersman" CharacterAttributes { "move speed bonus" 0.85 "voice pitch scale" 0 "attach particle effect" 3013 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.75 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Spell_Skeleton_Four { Class Sniper Classicon dead_red_lite Name "Hellion" Skill Hard Health 1200 Scale 1.5 StripItemSlot 1 StripItemSlot 2 Item "The Huntsman" Item "Final Frontiersman" ItemAttributes { ItemName "The Huntsman" "arrow mastery" 1 } CharacterAttributes { "move speed bonus" 0.85 "voice pitch scale" 0 "attach particle effect" 3013 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.75 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Hell_Skeleton_One { Class Sniper Classicon dead_red_lite Name "Hellion" StripItemSlot 0 StripItemSlot 1 WeaponRestrictions MeleeOnly Item "Final Frontiersman" CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Hell_Skeleton_Two { Class Sniper Classicon dead_red_lite Name "Hellion" StripItemSlot 0 StripItemSlot 1 WeaponRestrictions MeleeOnly Attributes AlwaysCrit Item "Final Frontiersman" CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Hell_Skeleton_Three { Class Sniper Classicon dead_red_lite Name "Hellion" Skill Hard StripItemSlot 1 StripItemSlot 2 Item "The Huntsman" Item "Final Frontiersman" CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Hell_Skeleton_Four { Class Sniper Classicon dead_red_lite Name "Hellion" Skill Hard StripItemSlot 1 StripItemSlot 2 Item "The Huntsman" Item "Final Frontiersman" ItemAttributes { ItemName "The Huntsman" "arrow mastery" 1 } CharacterAttributes { "voice pitch scale" 0 "attach particle effect" 3013 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } Skin 6 UseCustomModel models/bots/skeleton_sniper/skeleton_sniper_fixed.mdl } JURBot_Demo_Quickie_Burst { Class Demoman Name "Burstfire Quickiebomb Demo" ClassIcon demo_sticky_daan MaxVisionRange 1024 Skill Normal WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Item "The Quickiebomb Launcher" ItemAttributes { ItemName "The Quickiebomb Launcher" "sticky arm time bonus" 0.01 "stickybomb charge rate" 0.01 "projectile spread angle penalty" 3 "clip size penalty" 0.375 "fire rate bonus" 0.001 "max pipebombs decreased" -5 } Item "Zombie Demo" } JURBot_Soldier_BuffBanner { Class Soldier Name "Extended Buff Soldier" Skill Normal ClassIcon soldier_buff Attributes SpawnWithFullCharge Item "The Buff Banner" CharacterAttributes { "increase buff duration" 9.0 } CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Soldier" } JURBot_Sniper_Huntsman_Splitfire { Class Sniper Name "Splitfire Bowman" Item "The Huntsman" ClassIcon sniper_bow_multi Skill Hard Health 1200 Scale 1.5 ItemAttributes { ItemName "The Huntsman" "arrow mastery" 1 } CharacterAttributes { "move speed bonus" 0.85 "voice pitch scale" 0.8 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Sniper" } JURBot_Scout_Shortstop { Class Scout Skill Easy ClassIcon scout_shortstop Item "The Shortstop" Name "Shortstop Scout" Health 650 Scale 1.4 UseHumanModel 2 Item "Zombie Scout" CharacterAttributes { "voice pitch scale" 0.8 } } JURGateBot_Heavy_Champ { Class Heavyweapons Name "Heavyweight Champ" Skill Easy ClassIcon heavy_champ WeaponRestrictions MeleeOnly Item "The Killing Gloves of Boxing" Item "Pugilist's Protector" CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Heavy" SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } JURBot_Heavy_Champ { Class Heavyweapons Name "Heavyweight Champ" Skill Easy ClassIcon heavy_champ WeaponRestrictions MeleeOnly Item "The Killing Gloves of Boxing" Item "Pugilist's Protector" CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Heavy" } JURBot_Scout_Slowfire { Class Scout Name "Scout" Skill Easy ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } Item "Zombie Scout" CharacterAttributes { "voice pitch scale" 0.8 } } JURBot_Soldier_RocketShotgun { Class Soldier ClassIcon soldier_blackbox Item "The Black Box" Name "Black Box Soldier" Skill Normal WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Black Box" "damage bonus" 0.33 "fire rate bonus" 0.001 "clip size upgrade atomic" 0 "faster reload rate" 0.9 "blast radius increased" 1.25 "projectile spread angle penalty" 2 "heal on hit for rapidfire" 60 } UseHumanModel 2 Item "Zombie Soldier" CharacterAttributes { "voice pitch scale" 0.8 } } JURBot_Heavy_Warrior { Class Heavyweapons Name "Warrior Heavy" ClassIcon heavy_warrior Skill Expert Health 900 Scale 1.5 WeaponRestrictions MeleeOnly Item "Warrior's Spirit" ItemAttributes { ItemName "Warrior's Spirit" "dmg taken increased" 1 } NoIdleSound 1 UseHumanModel 2 Item "Zombie Heavy" CharacterAttributes { "voice pitch scale" 0.8 } } JURGateBot_Pyro_DragonFury { Class Pyro Name "Dragon's Fury Pyro" ClassIcon pyro_dragon_fury_swordstone Skill Hard UseMeleeThreatPrioritization 1 Item "The Dragon's Fury" WeaponRestrictions PrimaryOnly MaxVisionRange 1000 NoIdleSound 1 UseHumanModel 2 Item "Zombie Pyro" ItemAttributes { ItemName "The Dragon's Fury" "airblast disabled" 1 } CharacterAttributes { "voice pitch scale" 0.8 } SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "0.95" "attachment offset" "1 0.2 -9.8" "attachment angles" "-42 0 3" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } JURBot_Scout_Bonk_Bullet { Class Scout Skill Hard Item "Bonk! Atomic Punch" ItemAttributes { ItemName "Bonk! Atomic Punch" "effect cond override" 78 } Item "Bonk Helm" WeaponRestrictions MeleeOnly ClassIcon scout_bonk_bullet_nys SpawnTemplate "bonk_bulletvac_logic" } T_TFBot_Testing_Bot { Class Scout Name "Testing Bot" Attributes SuppressFire CharacterAttributes { "move speed bonus" 0.001 "no_jump" 1 } } JURBot_PotionTosser { Class Sniper ClassIcon potion_trap_lite Name "Potion Tosser" Action Mobber Scale 1.35 Health 650 Attributes AlwaysCrit Attributes DisableDodge Item "The Crone's Dome" Item "Jarate" StripItemSlot 0 CustomWeaponModel { Slot 2 Model "models/empty.mdl" } UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" FireInput { Target "switch_to_melee" Action "Trigger" Delay 1 Cooldown 2.5 IfSeeTarget 0 } FireInput { Target "switch_to_potion" Action "Trigger" Delay 0 Cooldown 9 IfSeeTarget 1 } FireInput { Target "choose_potion_effect" Action "PickRandom" Delay 0 Cooldown 6 IfSeeTarget 0 } EventChangeAttributes { Default { Skill Expert ItemAttributes { ItemName "Jarate" "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 } } Cond_Minicrit { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 19 //Mini-crits "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 178 } } Cond_Marked { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 30 //Marked for death "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 44 } } Cond_Bombhead { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 53 //Bombhead "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 147 } } Cond_AmpuTaunt { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 55 //Amputator taunt "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 58 } } Cond_Stealth { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 66 //Stealth "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 82 } } Cond_Gravity { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 84 //Lowered gravity "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 155 } } Cond_Swim { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 107 //Swim in the air "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 130 } } Cond_Gas { Skill Expert ItemAttributes { ItemName "Jarate" "effect cond override" 123 //Covered in gas "SPELL: set item tint RGB" 5 "fire rate bonus" 3 "effect bar recharge rate increased" 0 "attach particle effect" 106 } } } } T_TFBot_Pyro_Phlog { Class Pyro Name "Phlog Pyro" ClassIcon pyro_phlog Skill Expert Attributes SpawnWithFullCharge Item "The Phlogistinator" ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 } } JURGateBot_Demoman { Class Demoman SpawnTemplate "gately_gibus_wearer" EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // 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 "Ghostly Gibus" ItemModel { ItemName "Ghostly Gibus" Model "models/player/items/all_class/gately_gibus_heavy.mdl" } ItemAttributes { ItemName "Ghostly Gibus" "custom item model" "models/player/items/all_class/gately_gibus_heavy.mdl" "attachment name" "head" "attachment scale" "1.03" "attachment offset" "0.2 0.2 -11.2" "attachment angles" "-22 0 4" } } RevertGateBotsBehavior { Item "Ghostly Gibus" } } } T_TFBot_Giant_Engineer_Frontierjustice { Class Engineer Name "Giant Frontier Engineer" Item "The Frontier Justice" ClassIcon engineer_frontier_justice_nys Attributes AlwaysCrit Skill Hard Health 2800 Attributes MiniBoss Action FetchFlag Scale 1.75 WeaponRestrictions PrimaryOnly NoIdleSound 1 UseHumanModel 2 Item "Zombie Engineer" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 4 "voice pitch scale" 0.8 } } T_TFBot_Giant_Engineer_Widowmaker { Class Engineer ClassIcon engineer_widowmaker_nys Name "Giant Widowmaker Engineer" Skill Hard Health 2800 Scale 1.75 WeaponRestrictions PrimaryOnly Attributes MiniBoss Action FetchFlag Item "The Widowmaker" NoIdleSound 1 UseHumanModel 2 Item "Zombie Engineer" ItemAttributes { ItemName "The Widowmaker" "fire rate bonus" .6 "damage bonus" .8 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 4 "voice pitch scale" 0.8 } } T_TFBot_Engineer_Widowmaker { Class Engineer ClassIcon engineer_widowmaker_nys Name "Widowmaker Engineer" Skill Hard WeaponRestrictions PrimaryOnly Action FetchFlag Item "The Widowmaker" UseHumanModel 2 Item "Zombie Engineer" //ItemAttributes //{ // ItemName "The Widowmaker" // "fire rate bonus" .6 // "damage bonus" .8 //} CharacterAttributes { "voice pitch scale" 0.8 } } T_TFBot_Medic_Knockout { Class Medic Name "Knockout Medic" Skill Expert Classicon medic_knockout Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "effect cond override" 78 //experimental } CharacterAttributes { "heal rate bonus" 100 "bot medic uber health threshold" 999 "uber duration bonus" 999 } UseHumanModel 2 Item "Zombie Medic" } JURBot_Soldier_EscapePlan { Class Soldier ClassIcon soldier_pickaxe_escape Name "Escapist Soldier" Skill Expert WeaponRestrictions MeleeOnly Item "The Escape Plan" CharacterAttributes { "voice pitch scale" 0.8 } UseHumanModel 2 Item "Zombie Soldier" } JURBot_Giant_Heavy_Shotgun_Burstfire { Name "Giant Burstfire Shotgun Heavy" Class Heavyweapons Skill Expert Health 5000 ClassIcon heavy_shotgun_burst Attributes MiniBoss WeaponRestrictions SecondaryOnly Item "The Family Business" ItemAttributes { ItemName "The Family Business" "auto fires full clip" 1 "auto fires when full" 1 "faster reload rate" 0.5 "fire rate bonus" 0.2 } CharacterAttributes { "move speed bonus" 0.7 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "attack projectiles" 1 // force ability to shoot down projectiles "override footstep sound set" 2 } } JURBot_Soldier_Hastebuff { Class Soldier Name "Haste Buff Soldier" Skill Normal ClassIcon soldier_hastebuff StripItemSlot 2 Item "The Gunboats" SpawnTemplate "haste_radius" SpawnTemplate "powerup_logic_hastebuff_recipient" CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_hastebanner/c_hastebanner.mdl" } UseHumanModel 2 Item "Zombie Soldier" } JURBot_Soldier_Critbuff { Class Soldier Name "Crit Buff Soldier" Skill Normal ClassIcon soldier_critbuff StripItemSlot 2 Item "The Gunboats" SpawnTemplate "crit_radius" SpawnTemplate "powerup_logic_critbuff_recipient" CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_critbanner/c_critbanner.mdl" } } JURBot_Giant_Soldier_Critbuff { Class Soldier ClassIcon soldier_critbuff Name "Giant Crit Banner Soldier" Skill Expert Health 3800 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes SpawnWithFullCharge CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "increase buff duration" 9.0 "voice pitch scale" 0 } StripItemSlot 2 Item "The Gunboats" SpawnTemplate "crit_radius" SpawnTemplate "powerup_logic_critbuff_recipient" CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_critbanner/c_critbanner.mdl" } NoIdleSound 1 Item "Zombie Soldier" } } PointTemplates { finale_logic { NoFixup 1 info_target { "targetname" "colossus_aimtarget_1" "origin" "-195 5561 -9800" } trigger_hurt { "StartDisabled" "1" "spawnflags" "1" "origin" "40 2261.5 -10528" "mins" "-4184 -5963 -32" "maxs" "4184 5963 32" "nodmgforce" "1" "damagetype" "16384" "damagemodel" "0" "damagecap" "99999" "damage" "99999" } filter_damage_type { "targetname" "filter_drown" "damagetype" "16384" "Negated" "1" } //prop_dynamic //{ // "targetname" "underworld_door_loot" // "model" "models/props_viaduct_event/underworld_door01.mdl" // "DisableBoneFollowers" "1" // "disableshadows" "1" // "solid" "0" // "spawnflags" "0" // "StartDisabled" "0" // "origin" "292 4106 -10235" //} logic_relay { "targetname" "underworld_loot_relay" "OnTrigger" "underworld_hurt_zone,Disable,,0,-1" "OnTrigger" "yea room,Disable,,0,-1" "OnTrigger" "island_door_fx,Enable,,0,-1" "OnTrigger" "fadein,Fade,,0,-1" "OnTrigger" "underworld_gatehouse_open,PlaySound,,0,-1" "OnTrigger" "underworld_sfx_shake,StartShake,,0,-1" "OnTrigger" "underworld_gatehouse_open,PlaySound,,2,-1" "OnTrigger" "underworld_sfx_shake,StartShake,,2,-1" "OnTrigger" "teleport_loot,Enable,,3,-1" "OnTrigger" "trigger_add_tf_player_condition,Disable,,0,-1" //"OnTrigger" "underworld_gatehouse_open,PlaySound,,4,-1" //"OnTrigger" "underworld_sfx_shake,StartShake,,4,-1" //"OnTrigger" //"OnTrigger" //"OnTrigger" } env_fade { "duration" "3" "holdtime" "1" "rendercolor" "255 255 255" "targetname" "fadein" } trigger_teleport { "targetname" "teleport_loot" "target" "spawn_loot" "StartDisabled" "1" "spawnflags" "1" "origin" "-64 -1408 -600" "mins" "-5000 -7000 -1200" "maxs" "5000 7000 1200" "filtername" "filter_redteam" } filter_tf_bot_has_tag //our tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_colossus" "targetname" "filter_colossus" } info_target { "targetname" "colossus_telehere" "origin" "-1338 4933 -10637" //"origin" "49 5454 -9839" } trigger_teleport { "targetname" "teleport_colossus" "target" "colossus_telehere" "StartDisabled" "0" "spawnflags" "1" "landmark" "!activator" "origin" "-64 -1408 -4000" "mins" "-9999 -9999 -19999" "maxs" "9999 9999 19999" "filtername" "filter_colossus" } } colossus_template { OnSpawnOutput { Target "!activator" Action SetDamageFilter Param "filter_drown" } } bumpercar_logic { OnSpawnOutput { Target "charge_checker" Action Trigger Delay 0.1 } filter_tf_condition { "targetname" "filter_checkcond" "condition" "17" "OnPass" "!activator,$RemoveCond,17,0,-1" "OnPass" "!activator,$AddCond,82,0.001,-1" "OnPass" "!activator,$AddCond,83,0.01,-1" "OnPass" "!activator,$RemoveCond,78,0,-1" "OnPass" "!activator,$RemoveCond,82,1.5,-1" "OnPass" "!activator,$RemoveCond,83,1.49,-1" } logic_relay { "targetname" "charge_checker" "spawnflags" "2" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "filter_checkcond,TestActivator,!activator,0,-1" } } rpg_shoottemplate { KeepAlive 1 OnParentKilledOutput { Target "rpg_template_aliveness" Action Kill Delay 0.1 } OnParentKilledOutput { Target "rpg_impact_sound" Action Kill Delay 0.1 } OnParentKilledOutput { Target "rpg_impact_sound" Action PlaySound Delay 0.01 } logic_relay { "targetname" "rpg_template_aliveness" } prop_dynamic { "targetname" "projectile" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/empty.mdl" "solid" "0" "spawnflags" "0" "StartDisabled" "0" } ambient_generic { "targetname" "rpg_impact_sound" "health" "4" "message" "rpg_sounds/rpg_explode.wav" "pitch" "100" "pitchstart" "100" "radius" "11000" "spawnflags" "48" "StartDisabled" "0" } RemoveIfKilled "rpg_template_aliveness" } playerweapon_fix { OnSpawnOutput { Target "!activator" Action "$Regenerate" Delay 0.01 } } powerup_knockout_logic { OnParentKilledOutput { Target "item_powerup_rune" Action Kill } OnSpawnOutput { Target "ubercond_checker" Action Trigger Delay 0.1 } filter_tf_condition { "targetname" "filter_ubercond" "condition" "78" "OnPass" "!activator,$AddCond,103,0,-1" "OnPass" "!activator,$AddPlayerAttribute,max health additive bonus|565,0,-1" "OnFail" "!activator,$RemoveCond,103,0,-1" "OnFail" "!activator,$RemovePlayerAttribute,max health additive bonus,0,-1" } logic_relay { "targetname" "ubercond_checker" "spawnflags" "2" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "!activator,$RemoveCond,78,0,-1" "OnTrigger" "filter_ubercond,TestActivator,!activator,0,-1" } } powerup_logic_critbuff_recipient { OnParentKilledOutput { Target "item_powerup_rune" Action Kill } OnSpawnOutput { Target "parentoutput_target" Action SetParent Param "!activator" } info_target { "targetname" "parentoutput_target" "$OnUser5" "recipient_counter,Add,1,0,-1" "$OnUser6" "recipient_counter,Subtract,1,0,-1" } math_counter { "targetname" "recipient_counter" "max" "9999" "outvalue" "countcompare,setvaluecompare,,0,-1" } logic_compare { "targetname" "countcompare" "onequalto" "!parent,$removecond,40,0,-1" "ongreaterthan" "!parent,$addcond,40,0,-1" } } crit_radius { KeepAlive 1 OnParentKilledOutput { Target "crit_radius_brush" Action Disable } OnParentKilledOutput { Target "crit_radius_brush" Action Kill Delay 0.2 } OnSpawnOutput { Target "crit_radius_brush" Action Enable Delay 0.2 } trigger_multiple { "targetname" "crit_radius_brush" "filtername" "filter_bluteam" "spawnflags" "1" "StartDisabled" "1" "mins" "-225 -225 -450" "maxs" "225 225 450" "origin" "100 0 0" "onstarttouch" "@c@!activator,$fireuser5,,0,-1" "onendtouch" "@c@!activator,$fireuser6,,0,-1" } RemoveIfKilled "haste_radius_brush" } powerup_logic_hastebuff_recipient { OnParentKilledOutput { Target "item_powerup_rune" Action Kill Delay 0 } OnSpawnOutput { Target "parentoutput_target" Action SetParent Param "!activator" } info_target { "targetname" "parentoutput_target" "OnUser1" "recipient_counter,Add,1,0,-1" "OnUser2" "recipient_counter,Subtract,1,0,-1" } math_counter { "targetname" "recipient_counter" "max" "9999" "outvalue" "countcompare,setvaluecompare,,0,-1" } logic_compare { "targetname" "countcompare" "onequalto" "!parent,$removecond,91,0,-1" "ongreaterthan" "!parent,$addcond,91,0,-1" } } haste_radius { KeepAlive 1 OnParentKilledOutput { Target "haste_radius_brush" Action Disable } OnParentKilledOutput { Target "haste_radius_brush" Action Kill Delay 0.2 } OnSpawnOutput { Target "haste_radius_brush" Action Enable Delay 0.2 } trigger_multiple { "targetname" "haste_radius_brush" "filtername" "filter_bluteam" "spawnflags" "1" "StartDisabled" "1" "mins" "-450 -450 -450" "maxs" "450 450 450" "origin" "100 0 0" "onstarttouch" "@c@!activator,fireuser1,,0,-1" "onendtouch" "@c@!activator,fireuser2,,0,-1" } RemoveIfKilled "haste_radius_brush" } amputator_template { KeepAlive 1 OnSpawnOutput { Target "amputator_checker" Action Trigger Delay 0.1 } OnParentKilledOutput { Target "amputator_radius_brush" Action Disable } OnParentKilledOutput { Target "amputator_radius_brush" Action Kill Delay 0.1 } filter_tf_condition { "targetname" "filter_amputator" "condition" "56" } filter_multi { "targetname" "filter_amputator_taunting" "filter01" "filter_amputator" "filter02" "filter_taunting" "OnPass" "amputator_radius_brush,Enable,,0,-1" "OnFail" "amputator_radius_brush,Disable,,0,-1" } filter_tf_condition { "targetname" "filter_taunting" "Negated" "0" "condition" "7" } logic_relay { "targetname" "amputator_checker" "spawnflags" "2" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "filter_amputator_taunting,TestActivator,!activator,0,-1" "OnTrigger" "filter_ampucrit,TestActivator,!activator,0,-1" } trigger_multiple { "targetname" "amputator_radius_brush" "filtername" "filter_redteam" "spawnflags" "1" "StartDisabled" "1" "mins" "-450 -450 -450" "maxs" "450 450 450" "origin" "100 0 0" "OnStartTouch" "!activator,$AddCond,16,0,-1" "OnEndTouch" "!activator,$RemoveCond,16,0,-1" } RemoveIfKilled "amputator_radius_brush" } gunslinger_buff { OnSpawnOutput { Target "pistol_checker" Action "Trigger" Delay 0.1 } OnParentKilledOutput { Target "!activator" Action "$RemoveItemAttribute" Param "damage bonus|0" Delay 0.1 } OnParentKilledOutput { Target "!activator" Action "$RemoveItemAttribute" Param "damage bonus|1" Delay 0.1 } OnParentKilledOutput { Target "!activator" Action "$RemoveItemAttribute" Param "damage bonus|2" Delay 0.1 } filter_tf_condition { "targetname" "filter_has_pistol" "Negated" "0" "condition" "130" "OnPass" "!activator,$AddItemAttribute,damage bonus|1.55|0,0,-1" //"OnPass" "!activator,$AddItemAttribute,damage bonus|1|1,0,-1" //no pistol damage bonus "OnPass" "!activator,$AddItemAttribute,damage bonus|2|2,0,-1" "OnFail" "!activator,$AddItemAttribute,damage bonus|1.55|0,0,-1" "OnFail" "!activator,$AddItemAttribute,damage bonus|1.55|1,0,-1" "OnFail" "!activator,$AddItemAttribute,damage bonus|2|2,0,-1" } logic_relay { "targetname" "pistol_checker" "OnTrigger" "filter_has_pistol,TestActivator,!activator,0,-1" } } pistol_equipped { OnSpawnOutput { Target "!activator" Action "$RemoveItemAttribute" Param "damage bonus|1" Delay 0.1 } OnSpawnOutput { Target "!activator" Action "$AddCond" Param "130" Delay 0 } } gately_gibus_wearer { OnParentKilledOutput { Target "@c@!activator" Action Kill } } potiontosser_logic { NoFixup 1 logic_relay { "targetname" "switch_to_melee" "OnTrigger" "!activator,$WeaponSwitchSlot,2,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" } logic_relay { "targetname" "switch_to_potion" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,1,0.1,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.11,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,1.2,-1" } logic_case { "targetname" "choose_potion_effect" "OnCase01" "!activator,$ChangeAttributes,Cond_Minicrit,0,-1" "OnCase02" "!activator,$ChangeAttributes,Cond_Bombhead,0,-1" "OnCase03" "!activator,$ChangeAttributes,Cond_AmpuTaunt,0,-1" "OnCase04" "!activator,$ChangeAttributes,Cond_Stealth,0,-1" "OnCase05" "!activator,$ChangeAttributes,Cond_Gravity,0,-1" "OnCase06" "!activator,$ChangeAttributes,Cond_Swim,0,-1" "OnCase07" "!activator,$ChangeAttributes,Cond_Gas,0,-1" } } bonk_bulletvac_logic { OnSpawnOutput { Target "bonkcond_checker" Action Trigger Delay 0.1 } filter_tf_condition { "targetname" "filter_bonkcond" "condition" "78" "OnPass" "!activator,$AddCond,58,0,-1" "OnPass" "!activator,$AddPlayerAttribute,dmg taken from bullets reduced|.25,0,-1" "OnFail" "!activator,$RemoveCond,58,0,-1" "OnFail" "!activator,$RemovePlayerAttribute,dmg taken from bullets reduced,0,-1" } logic_relay { "targetname" "bonkcond_checker" "spawnflags" "2" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "filter_bonkcond,TestActivator,!activator,0,-1" } } spellbook_bot_init { OnSpawnOutput { Target "!activator" Action "$TeleportToEntity" Param "spawnbot_spell" } } spellbook_bot_init_flanker { OnSpawnOutput { Target "!activator" Action "$TeleportToEntity" Param "spawnbot_spell" } OnSpawnOutput { Target "!activator" Action "$TeleportToEntity" Param "flankers" Delay 0.2 } } temp_spells_flag_2 { game_text { "targetname" "uniquespelltext" "channel" "4" "fadeout" "0.5" "holdtime" "9.5" "x" "-1" "y" "0.25" "origin" "1836 -8460 1424" } item_teamflag { "targetname" "flag_spells_teamflag" "flag_icon" "../hud/objectives_ticketcase" "flag_model" "models/props_halloween/hwn_spellbook_upright_major_noparticle.mdl" "gametype" "1" "neutraltype" "1" "returntime" "30" "tags" "spell_carrier" "teamnum" "3" "trail_effect" "3" "visiblewhendisabled" "1" "origin" "1836 -8460 1424" "OnDrop" "flag_spells_teamflag,Kill,,30,-1" "OnDrop" "flag_spells_trigger_touch,Enable,,0,-1" "OnPickupTeam2" "flag_spells_teamflag,SetTeam,2,0,-1" "OnDrop" "flag_spells_teamflag,ShowTimer,30,0,-1" "OnDrop" "flag_spells_teamflag,AddOutput,renderfx 10,25,-1" "OnPickupTeam2" "flag_spells_relay,CancelPending,,0,-1" "OnPickupTeam2" "flag_spells_relay,Kill,,0.1,-1" "OnDrop" "flag_spells_trigger_touch_cond,Kill,,30,-1" "OnDrop" "flag_spells_trigger_touch_cond,Enable,,0,-1" "OnDrop" "flag_spells_trigger_touch_underworld,Kill,,30,-1" "OnDrop" "flag_spells_trigger_touch_underworld,Enable,,0,-1" "OnDrop" "flag_spells_rot_sound,Open,,0,-1" } trigger_once { "targetname" "flag_spells_trigger_touch" "filtername" "filter_redteam" "parentname" "flag_spells_teamflag" "spawnflags" "1" "startdisabled" "1" "origin" "1836 -8460 1424" "mins" "-20 -20 -16" "maxs" "20 20 16" "OnStartTouch" "flag_spells_teamflag,ForceResetAndDisableSilent,,0,-1" "OnStartTouch" "flag_spells_teamflag,Kill,,0.5,-1" "OnStartTouch" "flag_spells_rot_sound,Kill,,0.02,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_underworld" "require_all_tags" "1" "tags" "spell_underworld" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Underworld Spell,0,-1" "OnPass" "uniquespelltext,addoutput,color 127 0 255,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_crits" "require_all_tags" "1" "tags" "spell_crits" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 34,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Spell Active - Crits,0,-1" "OnPass" "uniquespelltext,addoutput,color 255 75 75,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_haste" "require_all_tags" "1" "tags" "spell_haste" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 113,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Spell Active - Haste,0,-1" "OnPass" "uniquespelltext,addoutput,color 255 127 0,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_regen" "require_all_tags" "1" "tags" "spell_regen" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 73,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Spell Active - Regen,0,-1" "OnPass" "uniquespelltext,addoutput,color 75 255 75,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_vacc_b" "require_all_tags" "1" "tags" "spell_vacc_b" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 67,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Bullet Immunity Spell,0,-1" "OnPass" "uniquespelltext,addoutput,color 100 127 255,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_vacc_e" "require_all_tags" "1" "tags" "spell_vacc_e" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 68,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Blast Immunity Spell,0,-1" "OnPass" "uniquespelltext,addoutput,color 75 200 75,0,-1" } filter_tf_bot_has_tag { "targetname" "flag_spell_filter_vacc_f" "require_all_tags" "1" "tags" "spell_vacc_f" "origin" "1836 -8460 1424" "OnPass" "flag_spells_trigger_touch_cond,AddOutput,condition 69,0,-1" "OnPass" "flag_spells_trigger_touch_underworld,Kill,,0,-1" "OnPass" "uniquespelltext,addoutput,message Fire Immunity Spell,0,-1" "OnPass" "uniquespelltext,addoutput,color 255 150 50,0,-1" } trigger_once { "targetname" "flag_spells_trigger_touch_blu" "filtername" "filter_blueteam" "spawnflags" "1" "origin" "1836 -8460 1424" "mins" "-20 -20 -16" "maxs" "20 20 16" "OnStartTouch" "flag_spell_filter_crits,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_haste,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_regen,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_underworld,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_vacc_b,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_vacc_e,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_vacc_f,TestActivator,,0,-1" "OnStartTouch" "flag_spell_filter_vacc_f,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_vacc_e,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_vacc_b,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_underworld,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_regen,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_haste,Kill,,0.1,-1" "OnStartTouch" "flag_spell_filter_crits,Kill,,0.1,-1" } trigger_add_tf_player_condition { "targetname" "flag_spells_trigger_touch_cond" "condition" "-1" "duration" "10" "filtername" "filter_redteam" "parentname" "flag_spells_teamflag" "spawnflags" "1" "startdisabled" "1" "origin" "1836 -8460 1424" "mins" "-20 -20 -16" "maxs" "20 20 16" "OnStartTouch" "flag_spells_trigger_touch_cond,Kill,,0.02,-1" "OnStartTouch" "uniquespelltext,Display,,0,-1" } trigger_teleport { "targetname" "flag_spells_trigger_touch_underworld" "filtername" "filter_redteam" "parentname" "flag_spells_teamflag" "spawnflags" "1" "startdisabled" "1" "target" "spawn_loot" "origin" "1836 -8460 1424" "mins" "-20 -20 -16" "maxs" "20 20 16" "OnStartTouch" "flag_spells_trigger_touch_underworld,Kill,,0.02,-1" } func_door_rotating { "targetname" "flag_spells_rot_sound" "disablereceiveshadows" "1" "disableshadows" "1" "distance" "360" "noise1" "Halloween.Merasmus_Float" "noise2" "Halloween.Merasmus_TP_Out" "parentname" "flag_spells_teamflag" "spawnflags" "8" "speed" "12.4" "wait" "4" "origin" "1824 -8448 1452" "mins" "-8 -8 -12" "maxs" "8 8 12" } } altspells { logic_relay { "onspawn" "temp_spells_flag,kill,,0,-1" "onspawn" "spelltext,kill,,0,-1" "onspawn" "temp_spells_flag_2,addoutput,targetname temp_spells_flag,0.02,-1" "onspawn" "!self,kill,,0.05,-1" } } regen_particle_template { info_particle_system { "start_active" "1" "flag_as_weather" "0" "effect_name" "medic_healradius_blue_buffed" } } Combo_Pyro { NoFixup 1 logic_relay { "targetname" "combo_primary_to_secondary" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,1,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,0.6,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.61,-1" "OnTrigger" "!activator,$AddItemAttribute,fire input on hit|combo_primary_to_secondary^Trigger^|0,0.62,-1" } logic_relay { "targetname" "combo_primary_to_secondary_longhold" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,1,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,1.5,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,1.51,-1" "OnTrigger" "!activator,$AddItemAttribute,fire input on hit|combo_primary_to_secondary_longhold^Trigger^|0,1.52,-1" } } blimp_skele { NoFixup 1 prop_dynamic { "targetname" "kevin" "DefaultAnim" "taunt_russian" "DisableBoneFollowers" "1" "disableshadows" "1" "modelscale" "0.4" "skin" "6" "solid" "0" "angles" "0 180 0" "origin" "-9711 -1989 -5819" "model" "models/bots/skeleton_sniper/skeleton_sniper.mdl" } } skeletank { OnSpawnOutput { Target "!activator" Action "color" Param "108 101 84" } OnSpawnOutput { Target "!activator" Action "DisableShadow" } prop_dynamic { "targetname" "skullhat" "disableshadows" "1" "model" "models/passtime/skull/passtime_skull.mdl" "origin" "-47 -13 163" "angles" "0 90 -30" "modelscale" "7" } info_target { "targetname" "skeleton_target" "origin" "0 0 170" } //"-1531 -1528 289" //"-1578 -1541 452" } pumptank { OnSpawnOutput { Target "!activator" Action "color" Param "255 128 0" } OnSpawnOutput { Target "!activator" Action "DisableShadow" } prop_dynamic { "targetname" "pumphat" "disableshadows" "1" "model" "models/workshop/player/items/all_class/hw2013_pumpkin_top/hw2013_pumpkin_top_medic.mdl" "origin" "-50 0 -220" "angles" "0 0 0" "modelscale" "5" "lightingorigin" "lighting_fix_target" } } ghosttank { OnSpawnOutput { Target "!activator" Action "color" //Change to any RGB value Param "203 255 203" } OnSpawnOutput { Target "!activator" Action "DisableShadow" } OnSpawnOutput { Target "!activator" Action "Alpha" Param "120" } OnSpawnOutput { Target "!activator" Action "AddOutput" Param "rendermode 5" } prop_dynamic { "targetname" "ghosthat" "disableshadows" "1" "model" "models/workshop/player/items/all_class/hw2013_the_haunted_hat/hw2013_the_haunted_hat_medic.mdl" "origin" "-47 0 4" "angles" "-90 0 0" "modelscale" "2" //"lightingorigin" "in_a_rock" } } spidertank_color { OnSpawnOutput { Target "!activator" Action "color" Param "0 0 0" } OnSpawnOutput { Target "!activator" Action "DisableShadow" } } underworld_spawn_logic { trigger_multiple { "targetname" "underworld_main_spawn_trigger" "filtername" "filter_redteam" "spawnflags" "1" "StartDisabled" "0" "mins" "-4160 -4215 -1216" "maxs" "4160 4215 1216" "origin" "64 -18.27 -9344" "onstarttouchall" "spawnbot_underworld_main*,Enable,,0,-1" "onendtouchall" "spawnbot_underworld_main*,Disable,,0,-1" "onendtouchall" "skeleton_main*,$Suicide,,5.1,-1" } trigger_multiple { "targetname" "underworld_loot_spawn_trigger" "filtername" "filter_redteam" "spawnflags" "1" "StartDisabled" "0" "mins" "-5216 -2720 -1216" "maxs" "5216 2720 1216" "origin" "544 5536 -9344" "onstarttouchall" "spawnbot_underworld_loot*,Enable,,0,-1" "onendtouchall" "spawnbot_underworld_loot*,Disable,,0,-1" "onendtouchall" "skeleton_loot*,$Suicide,,5.1,-1" } } underworld_skeleton_main { OnSpawnOutput { Target "!activator" Action AddOutput Param "targetname skeleton_main" } OnParentKilledOutput { Target "!activator" Action AddOutput Param "targetname " } } underworld_skeleton_loot { OnSpawnOutput { Target "!activator" Action AddOutput Param "targetname skeleton_loot" } OnParentKilledOutput { Target "!activator" Action AddOutput Param "targetname " } } underworld_coffin { prop_dynamic { "targetname" "coffin" "origin" "0 116 -54" "angles" "0 90 -90" "disableshadows" "1" "model" "models/props_viaduct_event/coffin_simple_closed.mdl" "parentname" "coffin_tracktrain" "modelscale" "2" } prop_dynamic { "origin" "4 114 -38" "angles" "0 180 -90" "disableshadows" "1" "rendermode" "10" "solid" "2" "model" "models/props_urban/urban_crate002.mdl" "parentname" "coffin_tracktrain" } prop_dynamic { "origin" "4 64 -38" "angles" "0 180 -90" "disableshadows" "1" "rendermode" "10" "solid" "2" "model" "models/props_urban/urban_crate002.mdl" "parentname" "coffin_tracktrain" } prop_dynamic { "origin" "4 0 -38" "angles" "0 180 -90" "disableshadows" "1" "rendermode" "10" "solid" "2" "model" "models/props_urban/urban_crate002.mdl" "parentname" "coffin_tracktrain" } prop_dynamic { "origin" "4 -44 -38" "angles" "0 180 -90" "disableshadows" "1" "rendermode" "10" "solid" "2" "model" "models/props_urban/urban_crate002.mdl" "parentname" "coffin_tracktrain" } info_particle_system { "start_active" "1" "origin" "0 84 -75" "parentname" "coffin_tracktrain" "effect_name" "utaunt_arcane_purple_lights" } info_particle_system { "start_active" "1" "origin" "0 30 -75" "parentname" "coffin_tracktrain" "effect_name" "utaunt_arcane_purple_lights" } info_particle_system { "start_active" "1" "origin" "0 -28 -75" "parentname" "coffin_tracktrain" "effect_name" "utaunt_arcane_purple_lights" } info_particle_system { "start_active" "1" "origin" "0 -82 -75" "parentname" "coffin_tracktrain" "effect_name" "utaunt_arcane_purple_lights" } } underworld_coffin_track { NoFixup 1 func_tracktrain { "targetname" "coffin_tracktrain" "mins" "-1 -1 -1" "maxs" "1 1 1" "height" "-20" "orientationtype" "1" "angles" "0 180 0" "origin" "2422 6070 -10164" "spawnflags" "640" //rideable + not blockable "speed" "50" "startspeed" "50" "target" "coffin_track_init" "velocitytype" "0" "wheels" "50" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_1" "targetname" "coffin_track_init" "origin" "2422 6070 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_2" "targetname" "coffin_track_1" "origin" "2422 6070 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_3" "targetname" "coffin_track_2" "origin" "1190 6070 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_4" "targetname" "coffin_track_3" "origin" "101 6070 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_5" "targetname" "coffin_track_4" "origin" "-583 5858 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_6" "targetname" "coffin_track_5" "origin" "-861 4549 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_7" "targetname" "coffin_track_6" "origin" "-1130 4202 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_8" "targetname" "coffin_track_7" "origin" "-1637 4202 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_9" "targetname" "coffin_track_8" "origin" "-1872 4554 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_10" "targetname" "coffin_track_9" "origin" "-1872 5037 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_11" "targetname" "coffin_track_10" "origin" "-1637 5356 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_12" "targetname" "coffin_track_11" "origin" "-1130 5356 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_13" "targetname" "coffin_track_12" "origin" "-365 4988 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_14" "targetname" "coffin_track_13" "origin" "-29 4988 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_15" "targetname" "coffin_track_14" "origin" "425 4988 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_16" "targetname" "coffin_track_15" "origin" "654 5469 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_17" "targetname" "coffin_track_16" "origin" "564 5951 -10164" } path_track { "angles" "0 180 0" "orientationtype" "2" "radius" "0" "spawnflags" "0" "speed" "50" "target" "coffin_track_3" "targetname" "coffin_track_17" "origin" "101 6070 -10164" } } lightingfix { NoFixup 1 info_target { "targetname" "lighting_fix_target" "origin" "-2310 -2324 482" } } donotrunoffdummies { NoFixup 1 logic_relay { "onspawn" "pop_interface,RecomputeBlockers,,0,-1" } //Loot 1 func_nav_avoid { "targetname" "hellion_avoid" "mins" "-369 -182 -244" "maxs" "369 182 244" "origin" "615 4638 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-252 -128 -244" "maxs" "252 128 244" "origin" "31 4671 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-223 -157 -244" "maxs" "223 157 244" "origin" "-254 4544 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-145 -444 -244" "maxs" "145 444 244" "origin" "-462 4012 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-101 -540 -244" "maxs" "101 540 244" "origin" "909 1065 -10354" } //Loot 2 func_nav_avoid { "targetname" "hellion_avoid" "mins" "-355 -98 -244" "maxs" "355 98 244" "origin" "401 6139 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-157 -156 -244" "maxs" "157 156 244" "origin" "-40 5903 -10354" } func_nav_avoid { "targetname" "hellion_avoid" "mins" "-303 -45 -244" "maxs" "303 45 244" "origin" "605 5698 -10354" } } flag { NoFixup 1 logic_relay { "onspawn" "passtime_prop,SetParent,bomb_teamflag,0.1,-1" } item_teamflag { "targetname" "bomb_teamflag" "angles" "0 180 0" "origin" "126 1646 -10386" "flag_icon" "../hud/objectives_flagpanel_carried" //this is the hud icon that represents the flag "flag_model" "models/flag/briefcase.mdl" //you can replace the model of the flag if you know the file name, note that the skin of the model (the team color) will change based on the "TeamNum" keyvalue "flag_paper" "player_intel_papertrail" //this is the paper trail particle that emits whenever you move with the flag, this can also be changed "flag_trail" "flagtrail" //this is the team colored trail particle "GameType" "1" //1 sets the flag to "Attack/Defend" which only allows the flag to be picked up by its own team rather than the opposing team, you also cannot pick up neutral flags, set it to 0 to work as a normal flag in Capture The Flag gamemode "NeutralType" "1" "ReturnBetweenWaves" "1" "ReturnTime" "60000" "ScoringType" "0" "StartDisabled" "0" "TeamNum" "2" //changing this number affects which team the flag belongs to, 0 for neutral (both teams can pick it up), 1 for spectator (same as 0), 2 for red and 3 for blue "trail_effect" "1" } prop_dynamic { "origin" "126 1646 -10374" "targetname" "passtime_prop" "spawnflags" "0" "solid" "0" "rendercolor" "255 255 255" "renderamt" "255" "RandomAnimation" "0" "pressuredelay" "0" "physdamagescale" "1.0" "PerformanceMode" "0" "modelscale" "1.4" "model" "models/passtime/ball/passtime_ball_halloween.mdl" "MinAnimTime" "5" "MaxAnimTime" "10" "body" "0" "angles" "-90 0 -90" "StartDisabled" "0" } } capturezone //all three of the following entities can be used to detect the flag entity, there are different outputs you can use to achieve the desired outcome { NoFixup 1 func_capturezone { //note that with a func_capturezone, if a TFBot AI captures the flag inside this, it will result in blu team winning even if there are no outputs "mins" "-145 -101 -58" //mins and maxs are keyvalues that determine the size/volume of the entity brush in hammer units, these are defined as two opposite corners so you can only create cubes and prisms, the numbers can be asymmetrical however mins must be lower than maxs, each number represents the hammer unit distance from the origin point in terms of "X Y Z" coordinates "maxs" "145 101 58" "origin" "-182.5 5434 -9862.12" "TeamNum" "2" //changing this number affects which team can capture, 0 for neutral (both teams can cap), 1 for spectator (same as 0), 2 for red and 3 for blue "spawnflags" "2" ////////////////////////////////////////////editable outputs//////////////////////////////////////////// "OnCapture" "bots_win,RoundWin,,0,-1" //"OnCapture" "player,$DisplayTextCenter,you have captured the thingy,0,-1" //this output ends the wave in blu victory, you can remove it or edit it and replace it other outputs if you want it to do something else, note that the name of the entity may be different depending on what map you are on } } flagdetectionzone { NoFixup 1 func_flagdetectionzone { "classname" "func_flagdetectionzone" "mins" "-145 -101 -58" //mins and maxs are keyvalues that determine the size/volume of the entity brush in hammer units, these are defined as two opposite corners so you can only create cubes and prisms, the numbers can be asymmetrical however mins must be lower than maxs, each number represents the hammer unit distance from the origin point in terms of "X Y Z" coordinates "maxs" "145 101 58" "origin" "-182.5 5434 -9862.12" "spawnflags" "1" //"TeamNum" keyvalue exist for this entity though i have not tested it ////////////////////////////////////////////editable outputs//////////////////////////////////////////// "OnStartTouchFlag" "player,$DisplayTextCenter,you have captured the thingy,0,-1" "OnStartTouchFlag" "bomb_teamflag,ForceResetSilent,,0,-1" //"OnEndTouchFlag" "bots_win,RoundWin,,0,-1" //"OnDroppedFlag" "bots_win,RoundWin,,0,-1" //"OnPickedUpFlag" "bots_win,RoundWin,,0,-1" } } } ExtraTankPath { Name "underworld_blimp_path" Node "2422 6070 -10164" Node "2422 6070 -10164" Node "1190 6070 -10164" Node "101 6070 -10164" //Start Loop Node "-583 5858 -10164" Node "-861 4549 -10164" Node "-1130 4202 -10164" Node "-1637 4202 -10164" Node "-1872 4554 -10164" Node "-1872 5037 -10164" Node "-1637 5356 -10164" Node "-1130 5356 -10164" Node "-365 4988 -10164" Node "-29 4988 -10164" Node "425 4988 -10164" Node "654 5469 -10164" Node "564 5951 -10164" Node "101 6070 -10164" //End Loop } PlayerSpawnTemplate //Spawn custom player template { Name "playerweapon_fix" // Name of the template Origin "0 0 30" //Position where to spawn the template } //SpawnTemplate "altspells" //SpawnTemplate "underworld_coffin_track" //SpawnTemplate //{ // Name "underworld_coffin" // Origin "2422 6070 -10164" //} SpawnTemplate "flag" SpawnTemplate "flagdetectionzone" SpawnTemplate "capturezone" SpawnTemplate "donotrunoffdummies" SpawnTemplate "lightingfix" SpawnTemplate "underworld_spawn_logic" SpawnTemplate "blimp_skele" SpawnTemplate "Combo_Pyro" SpawnTemplate "finale_logic" SpawnTemplate "potiontosser_logic" }