//Credits to lite for creating the cutscenes/cave blocker for final boss! //Credits to PDA Expert for helping me fix up the boss! //Credits to Sleepykai for making the bosses death voice line! //Credits to Sergeant Table for helping make the boss feel more interesting! //Credits to Mentrillum for making the boss animation awakening and Robot Fire Hand attack! //Credits to ??? for making the Goliatron Boss music! //Credits to Nys and Seelpit for creating the goliatron icons! #base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop population { StartingCurrency 20000 RespawnWaveTime 3 CanBotsAttackWhileInSpawnRoom no FixedRespawnWaveTime Yes WaveStartCountdown 5 MaxRedPlayers 10 NoRomevisionCosmetics 1 MaxSpectators 0 PrecacheModel "models/props_mvm/robot_spawnpoint.mdl" PrecacheModel "models/weapons/c_models/c_defender/c_defender.mdl" PrecacheModel "models/bots/soldier/goliatron2022_v3.mdl" PrecacheSound "combattankphasestart.mp3" PrecacheModel "models/bots/boss_bot/combat_tank/combat_tank.mdl" PrecacheModel "models/bots/boss_bot/combat_tank/combat_tank_fireball.mdl" PrecacheModel "models/bots/boss_bot/combat_tank/combat_tank_railgun.mdl" PrecacheModel "models/bots/boss_bot/combat_tank/railgun_case.mdl" PrecacheModel "models/bots/boss_bot/combat_tank/combat_tank_rocket.mdl" PrecacheModel "models/bots/boss_bot/combat_tank/combat_tank_rocketpod.mdl" PrecacheModel "models/props_mvm/indicator/indicator_circle.mdl" DisableSound "Announcer.MVM_Tank_Alert_Another" DisableSound "Announcer.MVM_Tank_Alert_Multiple" DisableSound "Announcer.MVM_Tank_Alert_Halfway" DisableSound "Announcer.MVM_Tank_Alert_Halfway_Multiple" DisableSound "Announcer.MVM_Tank_Alert_Near_Hatch" DisableSound "Announcer.MVM_Tank_Alert_Deploying" SpawnTemplate main SpawnTemplate MissionName SpawnTemplate special_thanks SpawnTemplate //main spawn { Name "spawnpointsgiant" Origin "16 1877 320" Angles "0 -90 0" } SpawnTemplate //flank spawn { Name "spawnpoints" Origin "-957 1562 416" Angles "0 -90 0" } PointTemplates { main { NoFixup 1 // wood blockage logic_relay { "targetname" "wave_goliatron_relay" "ontrigger" "blockage,enable,,3,-1" "ontrigger" "outside,enable,,3,-1" "OnTrigger" "tank_path_11,AddOutput,OnPass tank_boss:setspeed:0:0:1,0,-1" } prop_dynamic { "targetname" "blockage" "disableshadows" "1" "startdisabled" "1" "origin" "0 2120 320" "angles" "0 90 0" "model" "models/props_mvm/woodplanks_tank_entrance002.mdl" "modelscale" "1.25" } func_forcefield { "targetname" "blockage" "startdisabled" "1" "origin" "4 2116 458" "mins" "-164 -20 -139" "maxs" "164 20 139" "teamnum" "3" } trigger_hurt { "targetname" "gatebarrier_cash" "damage" "0" "damagecap" "0" "damagemodel" "0" "damagetype" "0" "nodmgforce" "0" "spawnflags" "1" "StartDisabled" "0" "origin" "-1450 -70 -127" "mins" "-2000 -3000 -420" "maxs" "30 3000 420" } trigger_teleport { "targetname" "outside" "origin" "-16 4828 664" "mins" "-3544 -2708 -600" "maxs" "3544 2708 600" "startdisabled" "1" "spawnflags" "1" "target" "outsidetarget" "onstarttouch" "!activator,$playsoundtoself,physics/wood/wood_panel_impact_hard1.wav,0,-1" "onstarttouch" "shook,startshake,,0,-1" } info_teleport_destination { "targetname" "outsidetarget" "origin" "0 1920 356" "angles" "0 90 0" } filter_activator_class { "targetname" "notplayer" "negated" "1" "filterclass" "player" } trigger_hurt { "targetname" "outside" "origin" "-16 4828 664" "mins" "-3544 -2708 -600" "maxs" "3544 2708 600" "startdisabled" "1" "spawnflags" "64" "filtername" "notplayer" "damage" "99999" } // spawning logic_relay { "targetname" "goliatron_spawn" "ontrigger" "fadeout,fade,,12,-1" "ontrigger" "shook*,startshake,,12,-1" "ontrigger" "siren,playsound,,7.5,-1" "ontrigger" "missileprop,enable,,10,-1" "ontrigger" "stay_away,enable,,8,-1" "ontrigger" "missileparticle,start,,10,-1" "ontrigger" "missileparticle,stop,,10.5,-1" "ontrigger" "missileparticle,start,,10.51,-1" "ontrigger" "missileparticle,stop,,11,-1" "ontrigger" "missileparticle,start,,11.01,-1" "ontrigger" "missileparticle,stop,,11.5,-1" "ontrigger" "missileparticle,start,,11.51,-1" "ontrigger" "missileparticle,stop,,12,-1" "ontrigger" "missilerot,open,,10,-1" "ontrigger" "launch,playsound,,10,-1" "ontrigger" "incoming,playsound,,10.8,-1" "ontrigger" "impact,playsound,,12,-1" "ontrigger" "stay_away,disable,,12,-1" "ontrigger" "missileprop,disable,,12,-1" "ontrigger" "voice,playsound,,16,-1" } env_fade { "targetname" "fadeout" "duration" "2" "renderamt" "127" "rendercolor" "255 255 255" "spawnflags" "1" "holdtime" "1" } env_shake { "origin" "0 1920 356" "targetname" "shook2" "amplitude" "255" "duration" "4" "frequency" "255" "radius" "50000" "spawnflags" "5" } env_shake { "origin" "0 1920 356" "targetname" "shook3" "amplitude" "255" "duration" "4" "frequency" "255" "radius" "50000" "spawnflags" "5" } ambient_generic { "targetname" "siren" "message" "npc/attack_helicopter/aheli_megabomb_siren1.wav" "health" "10" "pitch" "70" "spawnflags" "49" } ambient_generic { "targetname" "siren" "message" "npc/attack_helicopter/aheli_megabomb_siren1.wav" "health" "7" "pitch" "70" "spawnflags" "49" } ambient_generic { "targetname" "launch" "message" "npc/env_headcrabcanister/launch.wav" "health" "10" "pitch" "100" "spawnflags" "49" } ambient_generic { "targetname" "incoming" "message" "npc/env_headcrabcanister/incoming.wav" "health" "10" "pitch" "60" "spawnflags" "49" } ambient_generic { "targetname" "impact" "message" "npc/env_headcrabcanister/explosion.wav" "health" "10" "pitch" "100" "spawnflags" "49" } func_door_rotating { "targetname" "brushrot" "origin" "-1192 2680 32" "distance" "30" "spawnflags" "4110" "speed" "99999" "wait" "-1" "spawnpos" "1" } func_door_rotating { "targetname" "missilerot" "parentname" "brushrot" "origin" "-1192 2680 0" "distance" "180" "spawnflags" "4236" "speed" "72" "wait" "-1" } prop_dynamic { "targetname" "missileprop" "startdisabled" "1" "parentname" "missilerot" "origin" "-3376 2680 1464" "angles" "-55 0 0" "model" "models/props_combine/headcrabcannister01a.mdl" "modelscale" "7" } prop_dynamic { "targetname" "stay_away" "DisableBoneFollowers" "1" "skin" "1" "model" "models/props_mvm/indicator/indicator_circle.mdl" "modelscale" "6" "DefaultAnim" "start" "disableshadows" "1" "origin" "1222 1419 230" "angles" "0 0 0" "StartDisabled" "1" } info_particle_system { "targetname" "missileparticle" "parentname" "missileprop" "origin" "-3560 2680 1176" "angles" "-55 0 0" "effect_name" "rockettrail_doomsday" } ambient_generic { "targetname" "voice" "message" "vo/mvm/mght/soldier_mvm_m_dominationsoldier04.mp3" "health" "10" "pitch" "80" "spawnflags" "49" } ambient_generic { "targetname" "voice" "message" "vo/mvm/mght/soldier_mvm_m_dominationsoldier04.mp3" "health" "10" "pitch" "80" "spawnflags" "49" } // killed logic_relay { "targetname" "goliatron_killed" "onspawn" "soldiermdl2,disable,,0,-1" "onspawn" "midexplode1,setparentattachment,head,0,-1" "onspawn" "midexplode2,setparentattachment,prop_bone,0,-1" "onspawn" "midexplode3,setparentattachment,effect_hand_l,0,-1" "onspawn" "midexplode4,setparentattachment,effect_hand_r,0,-1" "onspawn" "midexplode5,setparentattachment,foot_l,0,-1" "onspawn" "midexplode6,setparentattachment,foot_r,0,-1" "ontrigger" "killallbots,enable,,0,-1" "ontrigger" "hudkys,trigger,,0,-1" "ontrigger" "nospawning,pausebotspawning,,0,-1" "ontrigger" "exprepeat,trigger,,0,-1" "ontrigger" "soldiermdl1,setanimation,primary_death_burning,0,-1" "ontrigger" "soldiermdl2,enable,,0,-1" "ontrigger" "voice1,playsound,,0,-1" "ontrigger" "soldiercam,$enableall,,0,-1" "ontrigger" "sound1,playsound,,0.8,-1" "ontrigger" "voice2,playsound,,5.7,-1" "ontrigger" "hudcomeback,trigger,,9.6,-1" } logic_relay { "targetname" "exprepeat" "spawnflags" "2" "ontrigger" "midcase,pickrandomshuffle,,0,-1" "ontrigger" "!self,trigger,,0.8,-1" } trigger_hurt { "targetname" "killallbots" "mins" "-9999 -9999 -9999" "maxs" "9999 9999 9999" "filtername" "filter_blueteam" "damage" "99999" "startdisabled" "1" "spawnflags" "1" "ontrigger" "!activator,sethealth,0,0,-1" "wait" "0.25" } point_populator_interface { "targetname" "nospawning" } prop_dynamic { "targetname" "soldiermdl1" "origin" "1236 1324 241" "angles" "0 -145 0" "model" "models/player/soldier.mdl" "modelscale" "15" "startdisabled" "1" "rendermode" "10" "disablebonefollowers" "1" "disableshadows" "1" "onanimationbegun" "!self,setplaybackrate,0.45,0,-1" "onanimationdone" "voice3,playsound,,0,-1" "onanimationdone" "soldiermdl2,disable,,0,-1" "onanimationdone" "soldierexplode,start,,0,-1" "onanimationdone" "soldiercam,$disableall,,1.5,-1" "onanimationdone" "exprepeat,cancelpending,,0,-1" } prop_dynamic_ornament { "targetname" "soldiermdl2" "model" "models/bots/soldier/goliatron2022_v3.mdl" "skin" "1" "modelscale" "15" "startdisabled" "1" "disablebonefollowers" "1" "disableshadows" "1" "initialowner" "soldiermdl1" } point_viewcontrol { "wait" "10" "targetname" "soldiercam" "origin" "600 482 722" "angles" "0 62 0" } info_particle_system { "targetname" "soldierexplode" "origin" "416 1024 432" "angles" "16 333 7" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "896 736 432" "angles" "-16 296 7" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "672 896 432" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "868 1080 432" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "1088 1312 368" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "1440 1280 368" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "soldierexplode" "origin" "1184 1568 368" "effect_name" "mvm_hatch_destroy" } info_particle_system { "targetname" "midexplode1" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } info_particle_system { "targetname" "midexplode2" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } info_particle_system { "targetname" "midexplode3" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } info_particle_system { "targetname" "midexplode4" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } info_particle_system { "targetname" "midexplode5" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } info_particle_system { "targetname" "midexplode6" "parentname" "soldiermdl1" "effect_name" "hightower_explosion" } logic_case { "targetname" "midcase" "oncase01" "midexplode1,start,,0,-1" "oncase01" "midexplode1,stop,,0.1,-1" "oncase01" "expcase,pickrandom,,0,-1" "oncase02" "midexplode2,start,,0,-1" "oncase02" "midexplode2,stop,,0.1,-1" "oncase02" "expcase,pickrandom,,0,-1" "oncase03" "midexplode3,start,,0,-1" "oncase03" "midexplode3,stop,,0.1,-1" "oncase03" "expcase,pickrandom,,0,-1" "oncase04" "midexplode4,start,,0,-1" "oncase04" "midexplode4,stop,,0.1,-1" "oncase04" "expcase,pickrandom,,0,-1" "oncase05" "midexplode5,start,,0,-1" "oncase05" "midexplode5,stop,,0.1,-1" "oncase05" "expcase,pickrandom,,0,-1" "oncase06" "midexplode6,start,,0,-1" "oncase06" "midexplode6,stop,,0.1,-1" "oncase06" "expcase,pickrandom,,0,-1" } logic_relay { "targetname" "hudkys" "OnTrigger" "player*,SetHUDVisibility,0,0,-1" } logic_relay { "targetname" "hudcomeback" "OnTrigger" "player*,SetHUDVisibility,1,0,-1" } logic_case { "targetname" "expcase" "oncase01" "exp1,playsound,,0,-1" "oncase02" "exp2,playsound,,0,-1" "oncase03" "exp3,playsound,,0,-1" } ambient_generic { "targetname" "exp1" "message" "ambient/explosions/explode_4.wav" "health" "10" "pitch" "100" "spawnflags" "49" } ambient_generic { "targetname" "exp2" "message" "ambient/explosions/explode_8.wav" "health" "10" "pitch" "100" "spawnflags" "49" } ambient_generic { "targetname" "exp3" "message" "ambient/explosions/explode_3.wav" "health" "10" "pitch" "100" "spawnflags" "49" } ambient_generic { "targetname" "sound1" "message" "mvm/giant_soldier/giant_soldier_step02.wav" "health" "10" "pitch" "70" "spawnflags" "49" } ambient_generic { "targetname" "sound1" "message" "mvm/giant_soldier/giant_soldier_step02.wav" "health" "10" "pitch" "70" "spawnflags" "49" } ambient_generic { "targetname" "voice1" "message" "vo/mvm/mght/soldier_mvm_m_painsevere04.mp3" "health" "10" "pitch" "80" "spawnflags" "49" } ambient_generic { "targetname" "voice1" "message" "vo/mvm/mght/soldier_mvm_m_painsevere04.mp3" "health" "7" "pitch" "80" "spawnflags" "49" } ambient_generic { "targetname" "voice2" "message" "vo/mvm/mght/soldier_mvm_m_paincrticialdeath04.mp3" "health" "10" "pitch" "80" "spawnflags" "49" } ambient_generic { "targetname" "voice2" "message" "vo/mvm/mght/soldier_mvm_m_paincrticialdeath04.mp3" "health" "7" "pitch" "80" "spawnflags" "49" } ambient_generic { "targetname" "voice3" "message" "mvm/giant_soldier/giant_soldier_explode.wav" "health" "10" "pitch" "60" "spawnflags" "49" } ambient_generic { "targetname" "voice3" "message" "mvm/giant_soldier/giant_soldier_explode.wav" "health" "7" "pitch" "60" "spawnflags" "49" } ambient_generic { "targetname" "voice3" "message" "mvm/sentrybuster/mvm_sentrybuster_explode.wav" "health" "10" "pitch" "100" "spawnflags" "49" } } special_thanks { logic_relay { "targetname" "wave_finished_relay" "ontrigger" "cdt_1,settextsize,35,0,-1" "ontrigger" "cdt_2,settextsize,24,0,-1" "ontrigger" "cdt_3,settextsize,30,0,-1" "ontrigger" "cdt_4,settextsize,30,0,-1" "ontrigger" "cdt_5,settextsize,30,0,-1" "ontrigger" "cdt_6,settextsize,30,0,-1" "ontrigger" "cdt_7,settextsize,30,0,-1" "ontrigger" "cdt_8,settextsize,30,0,-1" "ontrigger" "cdt_9,settextsize,30,0,-1" "ontrigger" "cdt_10,settextsize,30,0,-1" } point_worldtext { "targetname" "cdt_1" "origin" "581 -2490 740" "angles" "0 -45 0" "color" "255 255 255" "message" "Thanks For Playing!" "textsize" "35" } point_worldtext { "targetname" "cdt_2" "origin" "525 -2546 717" "angles" "0 -45 0" "rainbow" 1 "message" "Special Thanks!" "textsize" "24" } point_worldtext { "targetname" "cdt_3" "origin" "560 -2511 685" "angles" "0 -45 0" "color" "255 110 36" "message" "Lite" "textsize" "30" } point_worldtext { "targetname" "cdt_4" "origin" "457 -2613 685" "angles" "0 -45 0" "color" "181 17 215" "message" "PDA Expert" "textsize" "30" } point_worldtext { "targetname" "cdt_5" "origin" "560 -2511 655" "angles" "0 -45 0" "color" "255 255 255" "message" "NYS" "textsize" "30" } point_worldtext { "targetname" "cdt_6" "origin" "457 -2613 655" "angles" "0 -45 0" "color" "47 119 186" "message" "Sergeant Table" "textsize" "30" } point_worldtext { "targetname" "cdt_7" "origin" "560 -2511 625" "angles" "0 -45 0" "color" "20 190 51" "message" "Mentrillum" "textsize" "30" } point_worldtext { "targetname" "cdt_8" "origin" "392 -2679 625" "angles" "0 -45 0" "color" "255 0 0" "message" "Sleepykai" "textsize" "30" } point_worldtext { "targetname" "cdt_9" "origin" "560 -2511 595" "angles" "0 -45 0" "color" "94 252 176" "message" "Seelpit" "textsize" "30" } point_worldtext { "targetname" "cdt_10" "origin" "392 -2679 595" "angles" "0 -45 0" "color" "255 255 0" "message" "Snuperbot" "textsize" "30" } } goliatron_title_card { OnSpawnOutput { Target "upper_text" Action "Display" Delay 4 } OnSpawnOutput { Target "middle_text" Action "Display" Delay 4.2 } game_text { "origin" "1984 1984 99999" "targetname" "upper_text" "message" "THE CYBERNETIC TITAN" "x" "-1" "y" "0.4" "spawnflags" "1" "effect" "2" "channel" "2" "color" "255 255 255" "fxtime" "0.2" "fadeout" "1" //"fadein" "0" "holdtime" "5" } game_text { "origin" "1984 1984 99999" "targetname" "middle_text" "message" "GOLIATRON" "x" "-1" "y" "0.45" "channel" "1" "spawnflags" "1" "color" "255 255 255" "fadein" "0.2" "fadeout" "1" "holdtime" "4.8" } } annotation { NoFixup 1 training_annotation { "targetname" "tank_hint1" "display_text" "WARNING! Combat Tanks have entered the area!" "lifetime" "5" "origin" "1565 597 473" } } spawnpoints { NoFixup 1 prop_dynamic { "targetname" "spawn1" "classname" "prop_dynamic" "model" "models/props_mvm/robot_spawnpoint.mdl" "DefaultAnim" "idle" "disableshadows" "1" "DisableBoneFollowers" "1" "solid" "0" "spawnflags" "0" "skin" "1" "modelscale" "1.5" } prop_dynamic { "targetname" "spawn2" "classname" "prop_dynamic" "model" "models/buildables/teleporter_light.mdl" "DefaultAnim" "running" //"rendercolor" "0 0 0" "disableshadows" "1" "DisableBoneFollowers" "1" "solid" "0" "spawnflags" "0" "skin" "1" "modelscale" "1.5" } } spawnpointsgiant { NoFixup 1 prop_dynamic { "targetname" "spawn1" "classname" "prop_dynamic" "model" "models/props_mvm/robot_spawnpoint.mdl" "DefaultAnim" "idle" "disableshadows" "1" "DisableBoneFollowers" "1" "solid" "0" "spawnflags" "0" "skin" "1" "modelscale" "1.5" } prop_dynamic { "targetname" "spawn2" "classname" "prop_dynamic" "model" "models/buildables/teleporter_light.mdl" "DefaultAnim" "running" //"rendercolor" "0 0 0" "disableshadows" "1" "DisableBoneFollowers" "1" "solid" "0" "spawnflags" "0" "skin" "1" "modelscale" "1.5" } } MissionName { logic_relay { "targetname" "name" "OnTrigger" "tf_objective_resource,$SetClientProp$m_iszMvMPopfileName,Goliatron,0,-1" } OnSpawnOutput { Target "name" Action "trigger" Delay 0 } } IconChanger { NoFixUp 1 logic_relay { "targetname" "icon_changon" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,goliatron_nys_homingrocket,0.1,-1" "OnUser1" "!activator,$SetProp$m_iszClassIcon,goliatron_nys_shotgun,0.1,-1" } } tankkiller { NoFixup 1 OnParentKilledOutput { Target "tank_boss" Action "removehealth" Param 100000 } } } PlayerAttributes // Medics can heal buildings { Medic { "medic machinery beam" 3 } } ExtraSpawnPoint { Name "spawnbot_spyfromteamfortress2" TeamNum 3 X "-1297" Y "1308" Z "330" } ExtraSpawnPoint { Name "spawnbot_finalboss" TeamNum 3 X "1253.048461" Y "1402.046264" Z "225.260009" } ExtraSpawnPoint { Name "spawnbot_flank" TeamNum 3 X "-957" Y "1562" Z "416" } ExtraSpawnPoint { Name "spawnbot_main" TeamNum 3 X "16" Y "1877" Z "320" } SpawnTemplate { Name "annotation" } Wave { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay_ironman Action Trigger } InitWaveOutput { Target wave_start_relay Action runscriptcode Param " IncludeScript(`tankextensions_main`, getroottable()) EntFire(`wave_goliatron_relay`,`trigger`) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/minigun`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/railgun`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/fireball`, getroottable()) TankExt.CreatePaths({ tank_path = [ Vector(1655, 630, 315) Vector(1516, 972, 306) Vector(1154, 1755, 295) Vector(544, 1810, 385) Vector(453, 948, 393) Vector(971, 382, 385) Vector(902, -655, 386) Vector(-11, -688, 449) Vector(-92, -1641, 449) Vector(-514, -1685, 443) Vector(-463, -2423, 514) Vector(-418, -2378, 517) ] }) TankExt.StartingPathNames([ `tank_path_1` ]) " } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { WaitForAllDead "finalboss" WaitBeforeStarting 9.5 FirstSpawnOutput { Target "nospawning" Action UnpauseBotSpawning } } WaveSpawn { Name "Finalboss" TotalCurrency 1 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot_finalboss WaitBeforeStarting 12 WaitBetweenSpawns 10 StartWaveWarningSound "music/hl2_song29.mp3" StartWaveOutput { Target goliatron_spawn Action Trigger } DoneOutput { Target goliatron_killed Action Trigger } TFBot { ClassIcon goliatron_alt_nys Class Soldier Name "Goliatron" Skill Expert Health 500000 Scale 15 FastUpdate 1 Attributes UseBossHealthBar Attributes AlwaysFireWeapon Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes IgnoreFlag UseCustomModel "models/bots/soldier/goliatron2022_v3.mdl" DeathSound "empty0.mp3" RocketCustomParticle spell_fireball_small_blue ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "mult projectile scale" 1.7 "is invisible" 1 "custom weapon fire sound" "weapons/airstrike_fire_01.wav" "damage bonus" 1.75 "dmg bonus vs buildings" 3 "clip size upgrade atomic" 20.0 "faster reload rate" 0.23 "fire rate bonus" 0.2 "projectile spread angle penalty" 69 "Projectile speed decreased" 0.4 } ItemAttributes { ItemName "tf_weapon_shotgun_soldier" "custom item model" "models/weapons/c_models/c_defender/c_defender.mdl" "custom weapon fire sound" "weapons/flaregun/fire.wav" "faster reload rate" 0.1 "fire rate bonus" 2.5 "dmg bonus vs buildings" 4 "bullets per shot bonus" 25 "damage bonus" 1.5 } WeaponSwitch { Delay 30 Cooldown 30 Repeats 420 Type "Secondary" } WeaponSwitch { Delay 60 Cooldown 60 Repeats 420 Type "Primary" } CharacterAttributes { "voice pitch scale" 0 "dmg from melee increased" 0 "gesture speed increase" 0.3 "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 } Item "TF_WEAPON_ROCKETLAUNCHER" HomingRockets { IgnoreDisguisedSpies 1 IgnoreStealthedSpies 1 AimTime 4 RocketSpeed 0.6 TurnPower 100 MaxAimError 150 } AddCond { Name TF_COND_TELEPORTED } FireInput { Delay 0.1 Cooldown 60 Target icon_changon Action Trigger Param "" Repeats 999 } FireInput { Delay 30 Cooldown 60 Target icon_changon Action FireUser1 Param "" Repeats 999 } SpawnTemplate goliatron_title_card SpawnTemplate IconChanger SpawnTemplate tankkiller } } WaveSpawn { WaitBeforeStarting 210 Support Limited FirstSpawnWarningSound "hl2ep2_sector_sweep.mp3" } WaveSpawn { Name "critsupport1" TotalCurrency 0 TotalCount 30 MaxActive 9 SpawnCount 3 Where spawnbot_main WaitBeforeStarting 25 WaitBetweenSpawns 3.5 Support Limited FirstSpawnWarningSound "mvm/mvm_tele_activate.wav" Squad { TFBot { ClassIcon demo_bigcrit Health 175 Name "Crit Demoman" Class Demoman Skill Hard Attributes "AlwaysCrit" Tag nav_prefer_flank_right ItemAttributes { ItemName tf_weapon_grenadelauncher "faster reload rate" -0.8 "Projectile speed increased" 2.0 "damage bonus" 2.0 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon heavy_shotgun Class Engineer Name "Engineer Shotgun" Skill Hard WeaponRestrictions PrimaryOnly Action FetchFlag Attributes "AlwaysCrit" ItemAttributes { ItemName "tf_weapon_shotgun_primary" "faster reload rate" 0.1 "fire rate bonus" 2.5 "bullets per shot bonus" 3 "damage bonus" 0.33 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon heavy_shotgun Class Engineer Name "Engineer Shotgun" Skill Hard WeaponRestrictions PrimaryOnly Action FetchFlag Attributes "AlwaysCrit" ItemAttributes { ItemName "tf_weapon_shotgun_primary" "faster reload rate" 0.1 "fire rate bonus" 2.5 "bullets per shot bonus" 3 "damage bonus" 0.33 } AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "critsupport2" WaitForAllDead "critsupport1" TotalCurrency 0 TotalCount 50 MaxActive 18 SpawnCount 6 Where spawnbot_main Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 5 Support Limited RandomChoice { TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 600 Skill Expert Scale 1.4 Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 4329330 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 4329330 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 16738740 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 16738740 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 16777215 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 16777215 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 16750899 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 16750899 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 65280 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 65280 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 10027059 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 10027059 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 6723840 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 6723840 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 11053598 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 11053598 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 200 Skill Hard Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Tyrant's Helm" "set item tint RGB" 3329330 } ItemAttributes { ItemName "the righteous bison" "set item tint RGB" 3329330 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon soldier_bison WeaponRestrictions SecondaryOnly Health 600 Skill Expert Scale 1.4 Name "Bison Soldier" Class Soldier Attributes "AlwaysCrit" Item "Tyrant's Helm" Item "The Righteous Bison" WeaponRestrictions SecondaryOnly AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "critsupport3" WaitForAllDead "critsupport2" TotalCurrency 0 TotalCount 30 MaxActive 9 SpawnCount 3 Where spawnbot_main WaitBeforeStarting 3 WaitBetweenSpawns 3.5 Support Limited TFBot { ClassIcon pyro_lighter_lite Name "Igniter Pyro" Class Pyro Skill Expert WeaponRestrictions PrimaryOnly ItemAttributes { ItemName "the degreaser" "weapon burn time increased" 2 "weapon burn dmg increased" 2 } Item "the degreaser" Item "the backpack broiler" Item "employee of the mmmph" AddCond { Index 51 Duration 3 } } } WaveSpawn { Name "critsupport3" WaitForAllDead "critsupport2" TotalCurrency 0 TotalCount 30 MaxActive 8 SpawnCount 4 Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 4 Support Limited TFBot { ClassIcon heavy Health 300 Name Heavy Class HeavyWeapons Skill Expert AddCond { Index 51 Duration 3 } } } WaveSpawn { Name "critsupport4" WaitForAllDead "critsupport3" TotalCurrency 0 TotalCount 30 MaxActive 10 SpawnCount 2 Where spawnbot_main Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 4 Support Limited Squad { TFBot { ClassIcon heavy_chief Health 1200 Name "Mini Punch" Skill Expert Scale 1.4 Template T_TFBot_Heavyweapons_Fist Item "war head" CharacterAttributes { "damage bonus" 1.75 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon demo_bomber Name "Minor Bomber" Health 750 Skill Expert Scale 1.35 Class Demoman Attributes "AlwaysCrit" Attributes "HoldFireUntilFullReload" Item "prince tavish's crown" ItemAttributes { ItemName tf_weapon_grenadelauncher "fire rate bonus" 0.2 "faster reload rate" 0.3 "clip size penalty" 3.0 "Projectile speed increased" 1.5 } AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "critsupport5" WaitForAllDead "critsupport4" TotalCurrency 0 TotalCount 36 MaxActive 8 SpawnCount 2 Where spawnbot_main WaitBeforeStarting 3 WaitBetweenSpawns 2 Support Limited Squad { TFBot { ClassIcon engineer_frontierjustice_nys_booster Health 125 Name "Crit on Kill Frontier Justice" Class Engineer Skill Expert WeaponRestrictions PrimaryOnly Action FetchFlag Attributes "HoldFireUntilFullReload" Item "the frontier justice" Item "texas ten gallon" Item "duel medal gold" ItemAttributes { ItemName "The Frontier Justice" "critboost on kill" 5 } AddCond { Index 51 Duration 3 } } TFBot { Template T_TFBot_Medic_QuickFix AddCond { Index 51 Duration 5 } } } } WaveSpawn { Name "critsupport5" WaitForAllDead "critsupport4" TotalCurrency 0 TotalCount 30 MaxActive 8 SpawnCount 4 Where spawnbot_main WaitBeforeStarting 4 WaitBetweenSpawns 5 Support Limited TFBot { Class Soldier Skill Expert Attributes "AlwaysCrit" AddCond { Index 51 Duration 3 } } } WaveSpawn { Name "critsupport6" WaitForAllDead "critsupport5" TotalCurrency 0 TotalCount 30 MaxActive 16 SpawnCount 8 Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 4 Support Limited TFBot { ClassIcon heavy_heater_bigcrit Health 300 Name "Crit Heater Heavy" Class HeavyWeapons Skill Expert Attributes "AlwaysCrit" Item "the huo long heatmaker" ItemAttributes { ItemName "the huo long heatmaker" "damage bonus" 2.0 } Item "the bunsen brave" AddCond { Index 51 Duration 3 } } } WaveSpawn { Name "critsupport7" WaitForAllDead "critsupport6" TotalCurrency 0 TotalCount 45 MaxActive 15 SpawnCount 3 Where spawnbot_main Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 3 Support Limited RandomChoice { TFBot { ClassIcon sniper_smg_tind Class Soldier Name "Smg Soldier" Skill Expert WeaponRestrictions SecondaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "TF_WEAPON_SMG" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon sniper_smg_tind Class Soldier Name "Smg Soldier" Skill Expert WeaponRestrictions SecondaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "TF_WEAPON_SMG" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon sniper_smg_tind Class Soldier Name "Smg Soldier" Skill Expert WeaponRestrictions SecondaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "TF_WEAPON_SMG" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon sniper_smg_tind Class Soldier Name "Smg Soldier" Skill Expert WeaponRestrictions SecondaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "TF_WEAPON_SMG" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon sniper_smg_tind Class Soldier Name "Smg Soldier" Skill Expert Scale 1.4 Health 600 WeaponRestrictions SecondaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "TF_WEAPON_SMG" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "critsupport8" WaitForAllDead "critsupport7" TotalCurrency 0 TotalCount 30 MaxActive 10 SpawnCount 2 Where spawnbot_main WaitBeforeStarting 3 WaitBetweenSpawns 2.75 Support Limited Squad { TFBot { ClassIcon demo_sticky_spammer_hyper Name "Hyper Sticky Spam Demo" Class Demoman Skill Hard WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "is_passive_weapon" 1 "override projectile type" 27 } ItemAttributes { ItemName "blood botkiller stickybomb launcher mk.i" "stickybomb charge rate" 0.001 "Projectile range increased" 0.5 "max pipebombs increased" -5 "damage bonus" 2.0 "fire rate bonus" 0.6 "faster reload rate" -1 "stickies detonate stickies" 1 } CharacterAttributes { "no self blast dmg" 1 "cancel falling damage" 1 } Item "blood botkiller stickybomb launcher mk.i" AddCond { Index 51 Duration 3 } } TFBot { ClassIcon scout_burst_hyper Name "Hyper Burst Scatter Scout" Class Scout Skill Normal WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "the back scatter" "damage bonus" 2.0 "fire rate bonus" 0.1 "faster reload rate" 0.4 "clip size penalty" 2.0 "closerange backattack minicrits" 0 } CharacterAttributes { "cancel falling damage" 1 } Item "the back scatter" Item "scout beanie" AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "critsupport9" WaitForAllDead "critsupport8" TotalCurrency 0 TotalCount 420 MaxActive 9 SpawnCount 3 Where spawnbot_main Where spawnbot_flank WaitBeforeStarting 3 WaitBetweenSpawns 3 Support 1 RandomChoice { TFBot { ClassIcon random_lite Class Scout Skill Expert Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Soldier Skill Hard Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Pyro Skill Hard Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Demoman Skill Hard Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Name "Heavy" Class HeavyWeapons Skill Hard Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Engineer Skill Expert WeaponRestrictions PrimaryOnly Action FetchFlag Attributes AlwaysCrit AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Medic Skill Expert WeaponRestrictions PrimaryOnly Action FetchFlag Attributes "AlwaysCrit" AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Class Sniper Skill Normal Attributes "AlwaysCrit" Attributes AlwaysFireWeapon ItemAttributes { ItemName tf_weapon_sniperrifle "reload time increased" 1.25 "sniper fires tracer HIDDEN" 1 "lunchbox adds minicrits" 3 } AddCond { Index 51 Duration 3 } } TFBot { ClassIcon random_lite Health 125 Class Spy Skill Hard WeaponRestrictions PrimaryOnly Action FetchFlag Attributes "AlwaysCrit" CharacterAttributes { "force distribute currency on death" 1 "cannot disguise" 1 } AddCond { Index 51 Duration 3 } } } } WaveSpawn { Name "combattank1" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 35 WaitBetweenSpawns 5 Support Limited FirstSpawnWarningSound "mvm/giant_heavy/giant_heavy_entrance.wav" FirstSpawnOutput { Target tank_hint1 Action Show } Tank { ClassIcon combat_tank_minigun Health 40000 Speed 75 Skin 0 Name "combattank|minigun|minigun" StartingPathTrackNode "tank_path_1" } } WaveSpawn { Name "combattank2" WaitForAllDead "combattank1" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 20 WaitBetweenSpawns 5 Support Limited Tank { ClassIcon combat_tank_railgun Health 45000 Speed 75 Skin 0 Name "combattank|railgun|railgun" StartingPathTrackNode "tank_path_1" } } WaveSpawn { Name "combattank3" WaitForAllDead "combattank2" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 20 WaitBetweenSpawns 5 Support Limited Tank { ClassIcon combat_tank_fury Health 45000 Speed 75 Skin 0 Name "combattank|fireball|fireball" StartingPathTrackNode "tank_path_1" } } WaveSpawn { Name "combattank4" WaitForAllDead "combattank3" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 20 WaitBetweenSpawns 5 Support Limited Tank { ClassIcon combat_tank_rocket Health 40000 Speed 75 Skin 0 Name "combattank|rocketpod|rocketpod" StartingPathTrackNode "tank_path_1" } } WaveSpawn { Name "combattank5" WaitForAllDead "combattank4" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 20 WaitBetweenSpawns 5 Support Limited Tank { ClassIcon combat_tank_fury Health 45000 Speed 75 Skin 0 Name "combattank|fireball|railgun" StartingPathTrackNode "tank_path_1" } } WaveSpawn { Name "combattank6" WaitForAllDead "combattank5" TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot WaitBeforeStarting 25 WaitBetweenSpawns 5 Support Limited Tank { ClassIcon combat_tank_rocket Health 50000 Speed 75 Skin 1 Name "combattank|minigun|rocketpod" StartingPathTrackNode "tank_path_1" } } WaveSpawn { TotalCurrency 0 TotalCount 999 MaxActive 1 SpawnCount 1 Where spawnbot_main WaitBeforeStarting 70 WaitBetweenSpawns 30 Support 1 TFBot { Template T_TFBot_Giant_Scout_Baseball_Armored } } } }