WaveSchedule { PrecacheModel "models/bots/soldier/bot_soldier_gibby.mdl" PrecacheModel "models/bots/soldier_boss/bot_soldier_boss_gibby.mdl" PrecacheModel "models/bots/pyro/bot_pyro_gibby.mdl" PrecacheModel "models/bots/pyro_boss/bot_pyro_boss_gibby.mdl" PrecacheModel "models/bots/demo/bot_demo_gibby.mdl" PrecacheModel "models/bots/demo_boss/bot_demo_boss_gibby.mdl" PrecacheModel "models/bots/heavy/bot_heavy_gibby.mdl" PrecacheModel "models/bots/heavy_boss/bot_heavy_boss_gibby.mdl" PrecacheModel "models/props_forest/cliff_wall_09a.mdl" PrecacheModel "models/kirillian/infected/hank_v3_1.mdl" PrecacheModel "models/props_frontline/generator.mdl" PrecacheModel "models/weapons/c_models/c_the_bolshevik_bomber/c_the_bolshevik_bomber_1.mdl" PrecacheModel "models/weapons/c_models/c_w_chainsaw/c_w_chainsaw.mdl" PrecacheModel "models/weapons/c_models/c_rapidfire/c_rapidfire_1.mdl" PrecacheModel "models/props_gameplay/cap_square_512.mdl" PrecacheModel "models/props_frontline/helicopter_windows.mdl" PrecacheModel "models/weapons/c_models/c_baton/c_baton.mdl" PrecacheSound "shadows/charger_death.mp3" PrecacheSound "shadows/tank_death_01.mp3" PrecacheSound "shadows/tank_death_02.mp3" PrecacheSound "shadows/tank_death_03.mp3" PrecacheSound "shadows/tank_fire_01.mp3" PrecacheSound "shadows/tank_growl_01.mp3" PrecacheSound "shadows/tank_growl_02.mp3" PrecacheSound "shadows/tank_growl_03.mp3" PrecacheSound "shadows/tank_yell_01.mp3" PrecacheSound "shadows/tank_yell_02.mp3" PrecacheSound "shadows/tank_yell_03.mp3" PrecacheSound "shadows/tank_yell_04.mp3" PrecacheSound "shadows/tank_yell_05.mp3" PrecacheSound "shadows/tank_yell_06.mp3" PrecacheSound "shadows/tank_yell_07.mp3" PrecacheSound "shadows/tank_yell_08.mp3" PrecacheSound "shadows/tank_throw_01.mp3" PrecacheSound "shadows/tank_throw_02.mp3" PrecacheSound "shadows/tank_throw_03.mp3" PrecacheSound "shadows/thrown_projectile_hit_01.mp3" PrecacheSound "shadows/tank_punch_1.mp3" PrecacheSound "shadows/rip_up_rock_1.mp3" OverrideSounds { "Heavy.M_MVM_Meleeing01" misc/null.wav "Heavy.M_MVM_Meleeing02" misc/null.wav "Heavy.M_MVM_Meleeing03" misc/null.wav "Heavy.M_MVM_Meleeing04" misc/null.wav "Heavy.M_MVM_Meleeing05" misc/null.wav "Heavy.M_MVM_Meleeing06" misc/null.wav "Heavy.M_MVM_Meleeing07" misc/null.wav "Heavy.M_MVM_Meleeing08" misc/null.wav "Heavy.M_MVM_MoveUp01" shadows/tank_growl_01.mp3 // tank VO "Heavy.M_MVM_MoveUp02" shadows/tank_growl_02.mp3 "Heavy.M_MVM_MoveUp03" shadows/tank_growl_03.mp3 "Heavy.M_MVM_Cheers01" shadows/tank_yell_01.mp3 "Heavy.M_MVM_Cheers02" shadows/tank_yell_02.mp3 "Heavy.M_MVM_Cheers03" shadows/tank_yell_03.mp3 "Heavy.M_MVM_Cheers04" shadows/tank_yell_04.mp3 "Heavy.M_MVM_Cheers05" shadows/tank_yell_05.mp3 "Heavy.M_MVM_Cheers06" shadows/tank_yell_06.mp3 "Heavy.M_MVM_Cheers07" shadows/tank_yell_07.mp3 "Heavy.M_MVM_Cheers08" shadows/tank_yell_08.mp3 "Heavy.M_MVM_NeedDispenser01" shadows/tank_fire_01.mp3 // angry pootis "Heavy.M_MVM_NiceShot01" shadows/tank_throw_01.mp3 "Heavy.M_MVM_NiceShot02" shadows/tank_throw_02.mp3 "Heavy.M_MVM_NiceShot03" shadows/tank_throw_03.mp3 "Heavy.M_MVM_No01" shadows/rip_up_rock_1.mp3 "Heavy.M_MVM_No02" shadows/rip_up_rock_1.mp3 "Heavy.M_MVM_No03" shadows/rip_up_rock_1.mp3 } PlayerAttributes { "crit mod disabled" 0 "min respawn time" 25 Soldier { "max health additive penalty" -199 } Scout { "max health additive penalty" -124 } pyro { "max health additive penalty" -174 } Demoman { "max health additive penalty" -174 } Heavyweapons { "max health additive penalty" -299 } engineer { "building max level" 1 // start at only level 1, must buy upgrades to increase level "mvm sentry ammo" 0.5 // start with less ammo, increases with upgrades "mod teleporter speed boost" 1 "hidden secondary max ammo penalty" 0.18 //nerf dumb 200 ammo to scout's 36 "engineer sentry build rate multiplier" 2 } sniper { "max health additive penalty" -124 } medic { "max health additive penalty" -149 } spy { "max health additive penalty" -124 } } ItemAttributes // makes wrangler not essential { ItemName "The Wrangler" // "max health additive penalty" -55 "disable wrangler shield" 1 } ItemAttributes // makes wrangler not essential { ItemName "The Giger Counter" // "max health additive penalty" -55 "disable wrangler shield" 1 } ItemAttributes { ItemName "The Eureka Effect" "alt fire teleport to spawn" 0 "special taunt" 0 "engy sentry fire rate increased" 0.5 //every 3 ticks "metal_pickup_decreased" 0.5 } CustomWeapon { Name "Incendiary Rifle" OriginalItemName "The Frontier Justice" "special item description" "Ignites enemies on hit and deals minicrits to burning players." "cannot be upgraded" 1 "dmg pierces resists absorbs" 1 "clip size penalty" 1 "add cond on hit duration" 4 "mod sentry killed revenge" 0 "weapon spread bonus" 0.5 "add cond on hit" 126 "Set DamageType Ignite" 1 "minicrit vs burning player" 1 "custom weapon fire sound" "=80|weapons/flaregun/fire.wav" "custom item model" "models/weapons/c_models/c_the_bolshevik_bomber/c_the_bolshevik_bomber_1.mdl" } CustomWeapon // the massacre { Name "ChainSaw" OriginalItemName "The Frontier Justice" "custom item model" "models/weapons/c_models/c_w_chainsaw/c_w_chainsaw.mdl" "clip size penalty" 1 "add cond on hit duration" 4 "mod sentry killed revenge" 0 "cannot be upgraded" 1 "mod max primary clip override" -1 "maxammo primary increased" 6.25 "fire rate bonus hidden" 0.2 "damage bonus hidden" 7 "no damage falloff" 1 "hand scale" 1.35 "max health additive bonus" 100 "particle effect use head origin" 1 "particle effect vertical offset" -5000 "custom weapon fire sound" "=58|denominator/chain_wind_up.wav" "custom hit sound" "=58|denominator/chainsaw1.wav" // no enemy buildings so shouldn't causes crashes... "custom impact sound" "SolidMetal.BulletImpact" "custom kill icon" "skull" "override projectile type" 2 "projectile no deflect" 1 "stay after regenerate" 1 "custom projectile size" 12 "projectile lifetime" 0.05 "blast radius decreased" 0.25 "no self blast dmg" 2 "self dmg push force decreased" -2.5 "no explosion particles" 1 "centerfire projectile" 1 "custom projectile model" "models/empty.mdl" "add damage type" 128 "remove damage type" 64 "alt-fire disabled" 1 "weapon always gib" 1 } CustomWeapon { Name "Texan Mauler" OriginalItemName "Upgradeable TF_WEAPON_WRENCH" "special item description" "Deploys and upgrades buildings almost instantly, but cannot repair." "fire rate bonus hidden" 1.3 "damage bonus" 2 "is_a_sword" 1 "single wep deploy time increased" 2.0 "melee range multiplier" 1.5 "melee bounds multiplier" 1.5 "Construction rate increased" 9999 "upgrade rate decrease" 999 "melee cleave attack" 1 "Repair rate decreased" 0.01 "custom item model" "models/workshop/weapons/c_models/c_rfa_hammer/c_rfa_hammer.mdl" "custom kill icon" "the_maul" } CustomWeapon { Name "Flare Pistol" OriginalItemName "pyroland_pistol_shottohell" "special item description" "Shoots flares which minicrit on hit." "set_item_texture_wear" 0 "crits_become_minicrits" 1 "override projectile type" 6 "set damagetype ignite" 1 "centerfire projectile" 1 "damage bonus HIDDEN" 3 "projectile lifetime" 0.75 "projectile trail particle" "~flaming_slap" "mult projectile scale" 0.85 } CustomWeapon { Name "Heatwave" OriginalItemName "The Rescue Ranger" "special item description" "Fire cannon that lights enemies on fire." "set damagetype ignite" 1 "override projectile type" 2 "damage bonus" 2 "custom projectile model" "models/weapons/w_models/w_drg_ball.mdl" "projectile trail particle" "projectile_fireball" "particle effect use head origin" 1 "projectile speed increased" 2.72 "centerfire projectile" 1 "mod max primary clip override" -1 "maxammo primary increased" 2 // "fire rate bonus" 0.6 "custom kill icon" "dragons_fury_bonus" "weapon burn dmg increased" 1.5 "heal on hit for rapidfire" 15 "penetrate teammates" 1 "custom projectile size" 2 "blast radius decreased" 0.2 "no self blast dmg" 2 "self dmg push force decreased" 0 "custom item model" "models/weapons/c_models/c_flameball/c_flameball.mdl" } ExtraLoadoutItems { Engineer { Primary "ChainSaw" Primary "Incendiary Rifle" Primary "Heatwave" Secondary "Flare Pistol" Melee "Texan Mauler" } } ExtendedUpgrades // from Seelpit { healthup1 { Name "Protective Casing" Description "+25 max health" Attribute "max health additive bonus" Cost 50 Cap 50 //2 ticks, total: 200 hp Increment 25 PlayerUpgrade 1 } upgradetest { Name "Techno Terror" Attribute "faster reload rate" Cap 0.1 Increment -0.45 AllowedWeapons { ItemName "The Pomson 6000" } SecondaryAttributes { "set damagetype ignite" 0.5 } } sentryexp { Name "Destruction Expert" Attribute "engy sentry damage bonus" Cap 1.6 Increment 0.15 Cost 100 description "+15% sentry damage, +20% radius, and +10% rocket fire rate." AllowedWeapons { Slot "Melee" } DisallowedWeapons { ItemName "The Gunslinger" } AllowedMinWave 1 //The wave at which the upgrade is enabled RequiredUpgrade { Upgrade "buildlevel" // Name of the upgrade, as specified in the outer block Level 3 // Minimum level after which the upgrade becomes enabled (Default: 1) } SecondaryAttributes { "mult firerocket rate" -0.1 "engy sentry radius increased" 0.2 } } buildexp { Name "Maintenance Mastery" Attribute "engy building health bonus" Cap 3 Increment 0.5 Cost 100 description "+50% building health, +25% repair rate." AllowedWeapons { Slot "Melee" } DisallowedWeapons { ItemName "Texan Mauler" } AllowedMinWave 1 SecondaryAttributes { "repair rate increased" 0.25 } } buildlevel { Name "Building Level" Attribute "building max level" Cap 3 Increment 1 Cost 200 description "Increases building level." AllowedWeapons { Slot "PDA" } DisallowedWeapons { ItemName "The Gunslinger" } } sentryammo { Name "+25% sentry ammo" Attribute "mvm sentry ammo" Cap 2 Increment 0.25 Cost 100 AllowedWeapons { Slot "PDA" } } metal { Name "+50% metal capacity" Attribute "maxammo metal increased" Cap 3 Increment 0.5 Cost 200 AllowedWeapons { Slot "PDA" } } swinger { Name "Construction Expert" Attribute "melee attack rate bonus" Cap 0.6 Increment -0.1 Cost 100 description "10% faster swing speed, +20% build rate." AllowedWeapons { Slot "Melee" } AllowedMinWave 1 SecondaryAttributes { "Construction rate increased" 0.2 } DisAllowedWeapons { ItemName "Texan Mauler" } } Warriors { Name "Texan Chivalric Code" Attribute "honorbound" Cap 1 Increment 1 Cost 0 SecondaryAttributes { "dmg from ranged reduced" -0.3 "fire rate penalty" 0.3 "minicrits become crits" 1 } Description "-30% damage from ranged reduced +crits when it would normally minicrit -weapon is now honorbound -30% slower swing speed" Tier 1 AllowedWeapons { ItemName "Texan Mauler" } } // pickupintel // { // Name "Carrier" // Attribute "cannot pick up intelligence" // Cap 0 // Increment -1 // Cost 500 // description "You can now pick up the intelligence." // } } ExtraSpawnPoint { Name "spawnbot_healthbar" TeamNum 3 X -56 Y 444 Z -404 } PointTemplates { logic { NoFixup 1 logic_relay { "targetname" "main" // "OnSpawn" "redspawn,Kill,,0,-1" // "OnSpawn" "func_capturezone,Kill,,0,-1" "OnSpawn" "hatch_hurt,Kill,,0,-1" "OnSpawn" "bot_spawn3,Kill,,0,-1" "OnSpawn" "item_healthkit*,Kill,,0,-1" "OnSpawn" "item_ammopack*,Kill,,0,-1" "OnSpawn" "func_upgradestation,AddOutput,targetname station,0,-1" "OnSpawn" "station,Enable,,0.05,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger locker_model*:Disable::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger locker_model*:Enable::0:-1,0,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger locker_model:DisableCollision::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger locker_model:EnableCollision::0:-1,0,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger regenerate:Disable::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger regenerate:Enable::0:-1,0,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger upgradecage:Enable::0:-1,0,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger station:Disable::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger upgradecage:Disable::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger station:Enable::0:-1,0,-1" "OnSpawn" "wave_start_relay,AddOutput,OnTrigger warp_particle:Start::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger warp_particle:Stop::0:-1,0,-1" "OnSpawn" "wave_finished_relay,AddOutput,OnTrigger count_bots:SetValue:0:0:-1,0,-1" } logic_relay { "targetname" "DoorRelay1" "OnTrigger" "spawn_door1,Close,,0,-1" "OnTrigger" "spawn_door2,Close,,0,-1" "OnTrigger" "spawn_door1,Lock,,0.05,-1" "OnTrigger" "spawn_door2,Lock,,0.05,-1" "OnTrigger" "spawn_forcefield,Enable,,0,-1" } logic_relay { "targetname" "DoorRelay2" "OnTrigger" "spawn_forcefield,Disable,,0,-1" "OnTrigger" "spawn_door1,Unlock,,0,-1" "OnTrigger" "spawn_door2,Unlock,,0,-1" "OnTrigger" "spawn_door1,Open,,0.05,-1" "OnTrigger" "spawn_door1,Kill,,0.1,-1" "OnTrigger" "spawn_door2,Open,,0.05,-1" "OnTrigger" "spawn_door2,Kill,,0.1,-1" } prop_dynamic { "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_island/yeti_cell_door.mdl" "modelscale" "1.5" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "StartDisabled" "1" "targetname" "upgradecage" "origin" "792 740 158.085" } } nobuilds { NoFixup 1 func_nobuild { "origin" "812 1700 173" "mins" "-52 -68 -27" "maxs" "52 68 27" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "8 -956 198" "mins" "-200 -196 -128" "maxs" "200 196 128" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "-440 476 328" "mins" "-56 -204 -54" "maxs" "56 204 54" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "-436 1072 214" "mins" "-60 -216 -54" "maxs" "60 216 54" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "-904 1536 -42" "mins" "-60 -216 -54" "maxs" "60 216 54" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "872 120 123" "mins" "-56 -136 -58" "maxs" "56 136 58" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "1052 -32 132" "mins" "-204 -200 -54" "maxs" "204 200 54" "AllowDispenser" "1" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "1144 1548 105" "mins" "-120 -180 -42" "maxs" "120 180 42" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } func_nobuild { "origin" "896 -52 -133" "mins" "-72 -188 -58" "maxs" "72 188 58" "AllowDispenser" "0" "AllowSentry" "0" "AllowTeleporters" "0" "effects" "0" "StartDisabled" "0" "TeamNum" "0" } } Pushblocks { Nofixup 1 trigger_push // no { "alternateticksfix" "0" "filtername" "filter_red" "origin" "812 1676 172.88" "pushdir" "0 0 0" "mins" "-92 -92 -92" "maxs" "92 92 92" "spawnflags" "1" "speed" "40" "StartDisabled" "0" } } PitTeleport { NoFixup 1 filter_activator_tfteam { "targetname" "filter_blue" "Negated" "0" "TeamNum" "3" } trigger_teleport { "origin" "320 880 -2635.5" "spawnflags" "64" "StartDisabled" "0" "target" "failsafe_target" "filtername" "filter_red" "mins" "-3370 -2540 -328.5" "maxs" "3370 2540 328.5" "OnStartTouch" "teleported_particle_maker,FireUser1,,0,-1" } info_teleport_destination { "targetname" "failsafe_target" "origin" "488 752 76" "angles" "0 180 0" } env_entity_maker { "targetname" "teleported_particle_maker" "EntityTemplate" "Teleported_Particle" "OnUser1" "!self,ForceSpawnAtEntityOrigin,failsafe_target,0,-1" } trigger_hurt { "targetname" "trolley" "origin" "320 880 -2655" "mins" "-3370 -2540 -328.5" "maxs" "3370 2540 328.5" "solid" "0" "spawnflags" "1" "damage" "100000000000000" "filtername" "filter_blue" } } Teleported_Particle { OnSpawnOutput { Target "teleported" Action "Kill" Delay 1 } info_particle_system { "origin" "0 0 0" "targetname" "teleported" "effect_name" "eb_tp_player_rope" "flag_as_weather" "0" "start_active" "1" } } cabinet { NoFixup 1 prop_dynamic { "targetname" "locker_model" "model" "models/props_gameplay/resupply_locker.mdl" "solid" "6" "origin" "872 304 64" "angles" "0 90 0" "disableshadows" "1" } func_regenerate { "targetname" "regenerate" "associatedmodel" "locker_model" "TeamNum" "2" "origin" "872 304 64" "mins" "0 -48 0" "maxs" "40 48 128" "OnStartTouchAll" "locker_model,SetAnimation,open,0,-1" "OnEndTouchAll" "locker_model,SetAnimation,close,0,-1" } prop_dynamic { "targetname" "locker_model1" "model" "models/props_gameplay/resupply_locker.mdl" "solid" "6" "origin" "872 1232 64" "angles" "0 270 0" "disableshadows" "1" } func_regenerate { "targetname" "regenerate" "associatedmodel" "locker_model1" "TeamNum" "2" "origin" "872 1232 64" "mins" "0 -48 0" "maxs" "40 48 128" "OnStartTouchAll" "locker_model,SetAnimation,open,0,-1" "OnEndTouchAll" "locker_model,SetAnimation,close,0,-1" } } controlpoint { NoFixup 1 prop_dynamic { "model" "models/props_gameplay/cap_square_512.mdl" "targetname" "cap_base" "solid" "0" "skin" "1" //set this number to 0 for neutral, 1 for red, 2 for blu "origin" "0 0 0" } trigger_capture_area { "classname" "trigger_capture_area" "area_cap_point" "cap_point" "area_time_to_cap" "30" //multiply this number by 2 to get the capture duration in seconds, raising "team_numcap_3" and "team_numcap_2" will also increase the time taken by a factor of the value (e.g. raising it to 2 will multiply the duration by 2) "StartDisabled" "0" "targetname" "cap_area" "team_cancap_2" "0" //setting this number to 0 disables red team from recapturing, 1 enables red team to recapture "team_cancap_3" "1" //1 enables blu team to cap "team_numcap_2" "1" //changing this number will change the number of red players required to stand on the point to finish capturing "team_numcap_3" "1" //changing this number will change the number of blu players required to stand on the point to finish capturing "team_spawn_2" "0" "team_spawn_3" "0" "team_startcap_2" "1" //changing this number will change the number of red players required to stand on the point to begin capturing "team_startcap_3" "1" //changing this number will change the number of blu players required to stand on the point to begin capturing "mins" "-256 -256 -256" "maxs" "256 256 256" "origin" "0 0 128" "spawnflags" "1" "OnCapTeam1" "cap_base,Skin,1,0,-1" //set the first number to 0 for neutral, 1 for red, 2 for blu "OnCapTeam2" "cap_base,Skin,2,0,-1" //set the first number to 0 for neutral, 1 for red, 2 for blu "OnCapTeam2" "gamewin,RoundWin,,0,-1" ////////////////////////////////////////////editable outputs//////////////////////////////////////////// OnStartTeam1,OnBreakTeam1,OnCapTeam1,OnStartTeam2,OnBreakTeam2.OnCapTeam2,OnStartCap,OnBreakCap,OnEndCap,OnNumCappersChanged,OnNumCappersChanged2 //add your outputs here using "OnCapTeam2" for blu team capture, or "OnCapTeam1" for red team capture } team_control_point { "classname" "team_control_point" "angles" "0 0 0" "point_default_owner" "2" //this is the team that the control point will spawn in, set this number to 0 for neutral, 2 for red, 3 for blu "point_group" "0" "spawnflags" "1" "point_index" "0" //if you plan on having multiple control points at once, you must give each one a unique "point_index", spawning more than 8 control points on the map will crash the server "point_printname" "The Building" //this is the name of the control point that will show up in the kill feed "point_start_locked" "0" "point_warn_on_cap" "1" "point_warn_sound" "ControlPoint.CaptureWarn" "random_owner_on_restart" "0" "spawnflags" "6" "targetname" "cap_point" "team_bodygroup_0" "3" "team_bodygroup_2" "1" "team_bodygroup_3" "1" "team_icon_0" "sprites/obj_icons/icon_obj_neutral" //this is the image shown on the hud icon "team_icon_2" "sprites/obj_icons/icon_obj_red" "team_icon_3" "sprites/obj_icons/icon_obj_blu" //"team_model_0" "models/effects/cappoint_hologram.mdl" //this is the model of the hologram that appears above the control point //"team_model_2" "models/effects/cappoint_hologram.mdl" //"team_model_3" "models/effects/cappoint_hologram.mdl" //"team_previouspoint_3_0" "cap_point" //if you want to create a sequence of control points similar to an attack/defense map, this keyvalue determines the order in which they can be captured //it represents the names of the previous control points that must be owned by blu team before this point can be unlocked, if this is the first control point on the map, it must refer to itself or else it will be locked //"team_previouspoint_3_1" "0" //"team_previouspoint_3_2" "0" //"team_previouspoint_2_0" "cap_point" //this allows red to recapture if "team_cancap_2" is set to 1 in the trigger_capture_area //"team_previouspoint_2_1" "0" //"team_previouspoint_2_2" "0" "team_timedpoints_2" "0" "team_timedpoints_3" "0" "origin" "1600 539 -1000" } team_control_point_master { "classname" "team_control_point_master" "cpm_restrict_team_cap_win" "2" //this makes it so the wave does not end when all the points are owned by a team, set this to 0 for neither team (this will end the wave on capture), 1 to restrict both teams, 2 to restrict red team winning, and 3 to restrict blu team winning "custom_position_x" "0.4" //you can change the number here to move the control points on the hud if something is blocking it, accepted values are from 0 to 1 and is expressed as a percentage of the screen from left to right, 0.5 or "-1" will center the hud "custom_position_y" "-1" "partial_cap_points_rate" "0" //this keyvalue allows money to be gained by capturing points, setting it to a number above 0 will allow players who are capturing to receive money, a higher number results in higher revenue, decimals accepted "play_all_rounds" "0" "score_style" "0" "StartDisabled" "0" "switch_teams" "0" "targetname" "cap_master" "team_base_icon_2" "sprites/obj_icons/icon_base_red" "team_base_icon_3" "sprites/obj_icons/icon_base_blu" } OnSpawnOutput //very important to keep this output otherwise the control point will not function { Target cap_area Action SetControlPoint Param cap_point } OnSpawnOutput //this output is optional but it is kept here for debugging purposes, if you do not restrict a team from winning and the control point spawned is not neutral, it will automatically end the wave so make sure you set the restriction { Target cap_master Action RoundSpawn } } Hulk_PT // from shadows { KeepAlive 1 OnParentKilledOutput { Target !activator Action $RemoveOutput Param $OnDeath Delay 1 } OnSpawnOutput { Target "!activator" Action "AddOutput" Param "$OnDeath !activator:SpeakResponseConcept:TLK_MVM_TANK_DEAD:0.7:-1" } OnSpawnOutput { Target "hankerman" Action "SetPlaybackRate" Param 0 Delay 0.01 } OnParentKilledOutput { Target "hankerman" Action "Enable" } OnParentKilledOutput { Target "hankerman" Action "SetPlaybackRate" Param "1" Delay 0.02 } prop_dynamic { "targetname" "hankerman" "angles" "0 0 0" "origin" "0 0 0" "DisableBoneFollowers" "1" "disableshadows" "0" "StartDisabled" "1" "skin" 1 "model" "models\kirillian\infected\hank_v3_1.mdl" "DefaultAnim" "Death" "ModelScale" "1.75" "solid" "0" "OnAnimationDone" "!self,SetAnimation,deathpose_incap,0,-1" "OnAnimationDone" "!self,SetPlaybackRate,0,,-1" "OnAnimationDone" "hanked,start,,,-1" "OnAnimationDone" "hanked,kill,,3,-1" "OnAnimationDone" "!self,Kill,,,-1" } info_particle_system { "targetname" "hanked" "origin" "0 0 48" "effect_name" "skull_island_explosion" } } SmolBuster { KeepAlive 1 OnSpawnOutput { Target "buster_det_checker" Action "Trigger" Delay 0.1 } OnSpawnOutput { Target "smol_buster_explosion" Action "$SetOwner" Param "!activator" Delay 0 } info_particle_system { "targetname" "buster_explosion_particle" "effect_name" "asplode_hoodoo" "flag_as_weather" "0" "start_active" "0" } RemoveIfKilled "buster_explosion_particle" tf_point_weapon_mimic { "targetname" "smol_buster_explosion" "spawnflags" "1" "angles" "0 0 0" "origin" "0 0 0" "teamnum" "3" "Crits" "0" "Damage" "200" "ModelScale" "1" "SpeedMax" "0" "SpeedMin" "0" "SplashRadius" "250" "SpreadAngle" "0" "WeaponType" "3" "OnUser4" "!self,DetonateStickies,,0,-1" } filter_tf_condition { "targetname" "filter_is_taunting" "Negated" "0" "condition" "7" "OnPass" "buster_det_checker,Disable,,-1,-1" "OnPass" "smol_buster_explosion,FireOnce,,1,-1" "OnPass" "buster_explosion_particle,Start,,1,-1" "OnPass" "buster_explosion_particle,Kill,,5,-1" "OnPass" "!activator,$Suicide,,1.01,-1" } logic_relay { "targetname" "buster_det_checker" "spawnflags" "2" "OnTrigger" "buster_det_checker,Trigger,,0.1,-1" "OnTrigger" "filter_is_taunting,TestActivator,!activator,0,-1" } } Raptor_PT { trigger_push { "pushdir" "0 0 0" "spawnflags" "1" "speed" "1000" "filtername" "filter_raptor" "StartDisabled" "1" "targetname" "crawlerpush" "mins" "-24 -24 -24" "maxs" "24 24 24" } logic_timer // do this to eliminate 'desync' issue with jumps { "refiretime" "14" "OnTimer" "crawlerpush,Enable,,0,-1" "OnTimer" "crawlerpush,Disable,,0.7,-1" } filter_tf_bot_has_tag // stop non-crawlers from being pushed { "targetname" "filter_raptor" "require_all_tags" "1" "tags" "bot_raptor" "Negated" "Allow entities that match criteria" } } money { info_particle_system { "targetname" "moneyy" "effect_name" "mvm_cash_embers" "flag_as_weather" "0" "start_active" "1" } } DropsSmallAmmo { Keepalive 1 OnParentKilledOutput { Target smallammo_maker Action ForceSpawnAtEntityOrigin Param "pumpkin" Delay 0.00 } OnParentKilledOutput { Target "pumpkin" Action Kill Delay 0.02 } prop_dynamic { "targetname" "pumpkin" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/harvest/pumpkin/pumpkin_small.mdl" "solid" "0" "rendermode" "9" "renderamt" "0" "spawnflags" "0" "StartDisabled" "0" } } DropsMediumAmmo { Keepalive 1 OnParentKilledOutput { Target medammo_maker Action ForceSpawnAtEntityOrigin Param "pumpkin" Delay 0.00 } OnParentKilledOutput { Target "pumpkin" Action Kill Delay 0.02 } prop_dynamic { "targetname" "pumpkin" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/harvest/pumpkin/pumpkin_small.mdl" "solid" "0" "rendermode" "9" "renderamt" "0" "spawnflags" "0" "StartDisabled" "0" } } DropsLargeAmmo { Keepalive 1 OnParentKilledOutput { Target largeammo_maker Action ForceSpawnAtEntityOrigin Param "pumpkin" Delay 0.00 } OnParentKilledOutput { Target "pumpkin" Action Kill Delay 0.02 } prop_dynamic { "targetname" "pumpkin" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/harvest/pumpkin/pumpkin_small.mdl" "solid" "0" "rendermode" "9" "renderamt" "0" "spawnflags" "0" "StartDisabled" "0" } } smallammopack { KeepAlive 1 item_ammopack_small { "targetname" "small" "AutoMaterialize" "0" "fademaxdist" "0" "fademindist" "-1" "TeamNum" "2" "OnPlayerTouch" "!self,Kill,,0.1,-1" } } medammopack { KeepAlive 1 item_ammopack_medium { "targetname" "medium" "AutoMaterialize" "0" "fademaxdist" "0" "fademindist" "-1" "TeamNum" "2" "OnPlayerTouch" "!self,Kill,,0.1,-1" } } largeammopack { KeepAlive 1 item_ammopack_full { "targetname" "large" "AutoMaterialize" "0" "fademaxdist" "0" "fademindist" "-1" "TeamNum" "2" "OnPlayerTouch" "!self,Kill,,0.1,-1" } } whatever { NoFixup 1 env_entity_maker { "targetname" "smallammo_maker" "EntityTemplate" "smallammopack" } env_entity_maker { "targetname" "medammo_maker" "EntityTemplate" "medammopack" } env_entity_maker { "targetname" "largeammo_maker" "EntityTemplate" "largeammopack" } } FakeIcon { NoFixup 1 logic_auto { "OnMapSpawn" "!self,Kill,,0,-1" "targetname" "yes" } } hurthealthbar { NoFixUp 1 point_hurt { "targetname" "healthbar_hurt" "spawnflags" "2" "damagetype" "0" "DamageTarget" "!activator" "DamageRadius" "256" "DamageDelay" "0" "Damage" "200000" } } progress { NoFixup 1 prop_dynamic { "angles" "0 0 0" "DisableBoneFollowers" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_frontline/generator.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "generator" "origin" "0 1028 67.1864" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "healthbarbot" "targetname" "filter_healthbarbot" } filter_tf_bot_has_tag { "Negated" "1" "require_all_tags" "1" "tags" "healthbarbot" "targetname" "filter_nothealthbarbot" } trigger_hurt { "targetname" "hurthealthbar_trigger" "mins" "-480 -480 -480" "maxs" "480 480 480" "damage" "200000" // damage is half of this "damagecap" "20" "damagemodel" "0" "damagetype" "0" "filtername" "filter_healthbarbot" "nodmgforce" "1" "origin" "-31.5 455 -328.5" "spawnflags" "64" "StartDisabled" "1" } item_teamflag { "angles" "0 0 0" "flag_icon" "../hud/objectives_flagpanel_carried" "flag_model" "models/props_moonbase/powersupply_flag.mdl" "flag_paper" "player_intel_papertrail" "flag_trail" "flagtrail" "GameType" "1" "NeutralType" "1" "ReturnBetweenWaves" "1" "ReturnTime" "999" "skin" "0" "targetname" "powercore_flag1" "TeamNum" "2" "trail_effect" "1" "origin" "-952 576 -185.328" "OnReturn" "!self,Kill,,0,-1" "OnDrop" "!self,FireUser2,,0,-1" "OnDrop" "realtimer,CancelPending,,0,-1" "OnPickup1" "!activator,$DisplayTextCenter,You have 60 seconds before you automatically die!,5,-1" "OnPickup1" "secondhand,SetValue,60,1,-1" "OnPickup1" "realtimer,Trigger,,1,-1" "OnUser2" "!self,AddOutput,OnUser2 !self:SetReturnTime:60:5:1,0,-1" "OnUser2" "!self,AddOutput,!self,AddOutput,OnUser2 !self:FireUser2::5:1,0,-1" } item_teamflag { "angles" "0 0 0" "flag_icon" "../hud/objectives_flagpanel_carried" "flag_model" "models/props_moonbase/powersupply_flag.mdl" "flag_paper" "player_intel_papertrail" "flag_trail" "flagtrail" "GameType" "1" "NeutralType" "1" "ReturnBetweenWaves" "1" "ReturnTime" "999" "skin" "0" "targetname" "powercore_flag2" "TeamNum" "2" "trail_effect" "1" "origin" "416 1464 -360" "OnReturn" "!self,Kill,,0,-1" "OnDrop" "!self,FireUser2,,0,-1" "OnDrop" "realtimer,CancelPending,,0,-1" "OnPickup1" "!activator,$DisplayTextCenter,You have 60 seconds before you automatically die!,5,-1" "OnPickup1" "secondhand,SetValue,60,1,-1" "OnPickup1" "realtimer,Trigger,,1,-1" "OnUser2" "!self,AddOutput,OnUser2 !self:SetReturnTime:60:5:1,0,-1" "OnUser2" "!self,AddOutput,!self,AddOutput,OnUser2 !self:FireUser2::5:1,0,-1" } item_teamflag { "angles" "0 0 0" "flag_icon" "../hud/objectives_flagpanel_carried" "flag_model" "models/props_moonbase/powersupply_flag.mdl" "flag_paper" "player_intel_papertrail" "flag_trail" "flagtrail" "GameType" "1" "NeutralType" "1" "ReturnBetweenWaves" "1" "ReturnTime" "999" "skin" "0" "targetname" "powercore_flag3" "TeamNum" "2" "trail_effect" "1" "origin" "-872 1624 -888" "OnReturn" "!self,Kill,,0,-1" "OnDrop" "!self,FireUser2,,0,-1" "OnDrop" "realtimer,CancelPending,,0,-1" "OnPickup1" "!activator,$DisplayTextCenter,You have 60 seconds before you automatically die!,5,-1" "OnPickup1" "secondhand,SetValue,60,1,-1" "OnPickup1" "realtimer,Trigger,,1,-1" "OnUser2" "!self,AddOutput,OnUser2 !self:SetReturnTime:60:5:1,0,-1" "OnUser2" "!self,AddOutput,!self,AddOutput,OnUser2 !self:FireUser2::5:1,0,-1" } item_teamflag { "angles" "0 0 0" "flag_icon" "../hud/objectives_flagpanel_carried" "flag_model" "models/props_moonbase/powersupply_flag.mdl" "flag_paper" "player_intel_papertrail" "flag_trail" "flagtrail" "GameType" "1" "NeutralType" "1" "ReturnBetweenWaves" "1" "ReturnTime" "999" "skin" "0" "targetname" "powercore_flag4" "TeamNum" "2" "trail_effect" "1" "origin" "-102 1153 -576" "OnReturn" "!self,Kill,,0,-1" "OnDrop" "!self,FireUser2,,0,-1" "OnDrop" "realtimer,CancelPending,,0,-1" "OnPickup1" "!activator,$DisplayTextCenter,You have 60 seconds before you automatically die!,5,-1" "OnPickup1" "secondhand,SetValue,60,1,-1" "OnPickup1" "realtimer,Trigger,,1,-1" "OnUser2" "!self,AddOutput,OnUser2 !self:SetReturnTime:60:5:1,0,-1" "OnUser2" "!self,AddOutput,!self,AddOutput,OnUser2 !self:FireUser2::5:1,0,-1" } func_flagdetectionzone { "alarm" "0" "effects" "0" "StartDisabled" "0" "targetname" "cores_trigger" "TeamNum" "2" "mins" "-100 -100 -100" "maxs" "100 100 100" "origin" "-20 1020 164" "OnPickedUpFlag" "!activator,ForceDrop,,0,-1" "OnStartTouchFlag" "core_remover,Enable,,0,-1" "OnDroppedFlag" "core_remover,Disable,,0.05,-1" "OnStartTouchFlag" "hurthealthbar_relay,Trigger,,0,-1" } logic_relay { "targetname" "hurthealthbar_relay" // "OnTrigger" "healthbar_hurt,Hurt,,0,-1" "OnTrigger" "hurthealthbar_trigger,Enable,,0,-1" "OnTrigger" "hurthealthbar_trigger,Disable,,0.1,-1" } func_respawnflag { "effects" "0" "StartDisabled" "1" "targetname" "core_remover" "mins" "-200 -196 -128" "maxs" "200 196 128" "origin" "-8 956 206" } //timer (courtesy of lite) logic_relay { "targetname" "giant_relay" "startdisabled" "1" "ontrigger" "generic_killgiant,Hurt,,1,-1" "ontrigger" "generic_killgiant,FireUser1,,1,-1" "ontrigger" "realtimer,cancelpending,,2,-1" //"onspawn" "wave_start*,addoutput,ontrigger realtimer:trigger::0:-1,0,-1" //"onspawn" "wave_finish*,addoutput,ontrigger realtimer:cancelpending::0:-1,0,-1" //"onspawn" "wave_finish*,addoutput,ontrigger loserelay:cancelpending::0:-1,0,-1" } math_counter { "targetname" "minutehand" "max" "9999" "outvalue" "timerformat,$setkey$case01,,0,-1" "onhitmin" "giant_relay,enable,,1,-1" } math_counter { "targetname" "secondhand" "max" "60" "outvalue" "timerformat,$setkey$case02,,0,-1" "outvalue" "zerocompare,setvaluecompare,,0,-1" "onhitmin" "giant_relay,trigger,,1,-1" "onhitmin" "giant_relay,enable,,0,-1" //"onhitmin" "!self,setvalue,60,1,-1" //"onhitmin" "minutehand,subtract,1,1,-1" } logic_compare { "targetname" "zerocompare" "comparevalue" "9" "onequalto" "timerformat,$setkey$case16,%:0%,0,-1" "ongreaterthan" "timerformat,$setkey$case16,%:%,0,-1" } logic_case { "targetname" "timerformat" "case16" "%:%" "ondefault" "timertext,$setkey$message,,0,-1" "ondefault" "timertext,display,0,0,-1" } game_text { "targetname" "timertext" "color" "65 155 255" "holdtime" "2" "spawnflags" "1" "x" "0.48" "y" "-0.65" } logic_relay { "targetname" "realtimer" "spawnflags" "2" "ontrigger" "timerformat,$format,,0.01,-1" "ontrigger" "secondhand,subtract,1,0,-1" "ontrigger" "!self,trigger,,1,-1" } point_hurt { "origin" "-32 0 -824" "targetname" "generic_killgiant" "spawnflags" "2" "damagetype" "64" "DamageTarget" "!activator" "DamageRadius" "256" "DamageDelay" "0" "Damage" "99999" "OnUser1" "realtimer,$CancelPending,,0,-1" } } warp { Nofixup 1 OnSpawnOutput { Target formatter Action $Format } filter_activator_tfteam { "targetname" "filter_blue" "Negated" "0" "TeamNum" "3" } info_particle_system { "effect_name" "eyeboss_tp_vortex" "targetname" "warp_particle" "origin" "-2 1021 147" "startactive" "0" } trigger_teleport { "filtername" "filter_blue" "origin" "-20 1020 164" "spawnflags" "64" "StartDisabled" "0" "mins" "-100 -100 -100" "maxs" "100 100 100" "target" "killbox" "targetname" "warp_portal" "OnStartTouch" "count_bots,Add,1,0,-1" } info_teleport_destination { "angles" "0 0 0" "targetname" "killbox" "origin" "3640 868 -2559.49" } math_counter { "max" "10" "startvalue" "0" "targetname" "count_bots" "OutValue" "formatter,$SetKey$Case01,,0,-1" "OutValue" "formatter,$Format,,0.1,-1" "OnHitMax" "gamewin,RoundWin,,1,-1" } logic_case { "targetname" "formatter" "case01" "0" "case16" "Enemies Escaped: %/10" "ondefault" "thetext,$setkey$message,,0,-1" "ondefault" "thetext,display,,0.1,-1" } game_text { "targetname" "thetext" "channel" "3" "color" "255 255 255" "holdtime" "9999" "spawnflags" "1" "x" "0.8" "y" "0.19" } } spawnpoints { Nofixup 1 prop_dynamic { "angles" "0 90 0" "DefaultAnim" "idle" "DisableBoneFollowers" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "1" "solid" "0" "origin" "1216 -192 64" } prop_dynamic { "angles" "0 180 0" "DefaultAnim" "idle" "DisableBoneFollowers" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "1" "solid" "0" "origin" "1104 1584 64" } prop_dynamic { "angles" "0 0 0" "DefaultAnim" "idle" "DisableBoneFollowers" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "1" "solid" "0" "origin" "-880 1656 -85" } prop_dynamic { "angles" "0 0 0" "DefaultAnim" "idle" "DisableBoneFollowers" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "1" "solid" "0" "origin" "-924 -159 -192" } } } }