// Ua liaj ua teb. Corrupted Farm in Hmong. // With an extended upgrade system to ~expand~ your options // Follows COD Zombie rules pretty close(?) // // Mission made by Sntr // Edit by FaN Scout (Yes I got permission to do this) // // Thanks go to all these people: // // - Blade x64 > Made the map // - Treyarch > Made the Zombies mode which this mission channels pretty heavily // - Kevin Sherwood > Music used on this mission // - Kirillian > Super Zombie Fortress models for the Special enemies (Does not use zombies. Only robots) // - Hell-met > Massive influence. Both good and bad. // - Eve > Player tracking logic // - Skin King > For finding out every possible way you can think of to cheese the mission with godspots // - Yaki > Logic help for the cash mechanic + gun dumpster // - Lite > Timer logic (repurposed into the round counter) // - Royal > Logic for dropping weapons // - DaMno > Reference for COD Zombies and how things work in it // - Rexy > Made the vending machine model used here // - Emotive > The alternate version of Abracadavre used for the mission end jingle // - Nuclear Waffle > Making the Gravitational Grenadier work // - Oobersli > B.M.M.H's model // - Svdl > Tactigatling's model https://steamcommunity.com/sharedfiles/filedetails/?id=366919683 // - Overpowered > Punch Packer's model https://steamcommunity.com/sharedfiles/filedetails/?id=510691874 // - Donut > Maschinenpistole's model https://steamcommunity.com/sharedfiles/filedetails/?id=500507665 // - Noors > Warsaw Fact model, aka Treadonator's chainsaw https://steamcommunity.com/sharedfiles/filedetails/?id=75492629 (Mission does not use chainsaw model) // - The people who made the majority of the models of base robot_typicalcolors_weapons.pop > Making the models. These models helped pushed my passion for this kind of stuff. // - Reagy! > Injust stats // - DAMN/ > Hammer model https://gamebanana.com/mods/406885 // - B855 > Gibby sentry buster model // - C_TriggerHurt > Gibby models // // // Enemy scaling is as follows: // - Robots gain +100 hp per round until Round 10 // - They also start at 20% movement penalty but become 2% faster until they reach default class speed // - Then they start receiving a +10% health increase, per round // - Every 10 rounds, they also start spawning faster // - TotalCount also increases up to 40 // - Bosses and Tanks have a regular +10% hp increase starting from Round 10, they don't get the +100 hp // // // Server crash count: 2 //#base robot_typicalcolors_weapons.pop WaveSchedule_If_There_Is_A_Tresspasser_Type_Mission_I_Will_Edit_It_With_Permission_Of_Course { StartingCurrency 600 RespawnWaveTime 120 FixedRespawnWaveTime 1 CanBotsAttackWhileInSpawnRoom yes // EventPopfile Halloween // ZombiesNoWave666 1 // NoReanimators 1 NoMvMDeathTune 1 FixedBuybacks 1 BuybacksPerWave 0 TextPrintTime 5 NoThrillerTaunt 1 StuckTimeMultiplier 2 WaveStartCountdown 5 // NoJoinMidwave 1 RobotLimit 26 MaxSpectators 0 // MaxRedPlayers 4 ForceHoliday 2 // SentryBusterFriendlyFire 0 DisplayRobotDeathNotice 0 SniperAllowHeadshots 1 RemoveGrapplingHooks 3 BodyPartScaleSpeed 20 // why is this here? CustomNavFile "mvm_shadows_scarynav" // ScriptSoundOverrides "scripts/shadows_soundscripts.txt" // acts kinda weird LuaScriptFile "scripts/shadowslua2.lua" // """learning""" programming to make missions ExtendedUpgradesOnly 1 // Universal upgrades for everyone. UpgradeStationKeepWeapons 1 // stop players from losing perks BluPlayersAreRobots 1 RedPlayersAreRobots 1 // DisableSound "MVM.BotStep" // DisableSound "MVM.SentryBusterIntro" DisableSound "Weapon_Upgrade.ExplosiveHeadshot" // really loud with groups!! DisableSound "music.mvm_lost_wave" // this works now DisableSound "Game.YourTeamWon" DisableSound "heavy_mvm_giant_robot01" DisableSound "heavy_mvm_giant_robot02" DisableSound "heavy_mvm_giant_robot03" DisableSound "heavy_mvm_giant_robot04" DisableSound "heavy_mvm_sentry_buster02" DisableSound "engineer_mvm_giant_robot01" DisableSound "engineer_mvm_giant_robot02" DisableSound "engineer_mvm_giant_robot03" DisableSound "engineer_mvm_sentry_buster02" DisableSound "soldier_mvm_giant_robot01" DisableSound "soldier_mvm_giant_robot02" DisableSound "soldier_mvm_giant_robot03" DisableSound "soldier_mvm_giant_robot04" DisableSound "soldier_mvm_sentry_buster02" DisableSound "medic_mvm_giant_robot01" DisableSound "medic_mvm_giant_robot02" DisableSound "medic_mvm_giant_robot03" DisableSound "medic_mvm_sentry_buster02" DisableSound "Announcer.MVM_All_Dead" PrecacheModel "models/weapons/c_models/c_packer.mdl" PrecacheModel "models/weapons/c_models/c_mp40/c_mp40.mdl" PrecacheModel "models/weapons/c_models/c_tgat/c_tgat.mdl" PrecacheModel "models/weapons/c_models/c_bmmh/c_bmmh.mdl" PrecacheModel "models/weapons/c_models/c_shotfun/c_shotfun.mdl" // PrecacheModel "models\weapons\c_models\c_frearm\c_frearm.mdl" PrecacheModel "models/props_misc/vending_machine_01.mdl" PrecacheModel "models/props_construction/dumpster_body.mdl" PrecacheModel "models/props_construction/dumpster_lid.mdl" // PrecacheModel "models/kirillian/infected/coomer_v3.mdl" // PrecacheModel "models/kirillian/infected/spyro_v3.mdl" // PrecacheModel "models/kirillian/infected/hank_v3_1.mdl" // PrecacheModel "models/kirillian/infected/scunter_v3.mdl" // PrecacheModel "models/kirillian/infected/wanker_v3.mdl" // PrecacheModel "models/weapons/c_models/c_w_chainsaw/c_w_chainsaw.mdl" // PrecacheModel "models/props_frontline/tank_animated.mdl" PrecacheModel "models/props/mvm_shadows/spawnroom.mdl" PrecacheModel "models/props_trainyard/cart_bomb_separate.mdl" // nuke PrecacheModel "models\weapons\w_models\w_atomball_blu.mdl" // fat boy PrecacheModel "models/weapons/w_models/w_rocketbullet.mdl" // BIG SHOT PrecacheModel "models/weapons/c_models/c_conventional/c_conventional.mdl" PrecacheModel "models/weapons/c_models/c_corkscrew/c_corkscrew.mdl" PrecacheModel "models/workshop/weapons/c_models/c_hornets_nest/c_hornets_nest.mdl" PrecacheModel "models/weapons/c_models/c_spas12/c_spas12.mdl" PrecacheModel "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" PrecacheModel "models/weapons/c_models/c_iron_boarder/c_iron_boarder.mdl" // Textures are broken lol PrecacheModel "models/weapons/c_models/c_ultimatum/c_ultimatum.mdl" PrecacheModel "models/weapons/c_models/c_demo_glock/c_demo_glock.mdl" PrecacheModel "models/weapons/c_models/c_pigeon_medigun/c_pigeon_medigun.mdl" PrecacheModel "models/workshop/weapons/c_models/c_browning/c_browning.mdl" PrecacheModel "models/weapons/c_models/c_maxine/c_maxine.mdl" PrecacheModel "models/weapons/c_models/c_graphite_perisher/c_graphite_perisher.mdl" PrecacheModel "models/weapons/c_models/c_death_blossom/c_death_blossom.mdl" PrecacheModel "models/weapons/c_models/c_screwiatan_7000/c_screwiatan_7000.mdl" PrecacheModel "models/weapons/c_models/c_ak47/c_mmg.mdl" PrecacheModel "models/weapons/c_models/c_big_boris/c_big_boris.mdl" PrecacheModel "models/weapons/c_models/c_m16/c_m16.mdl" PrecacheModel "models/weapons/c_models/c_sub_sandvich/c_sub_sandvich.mdl" PrecacheModel "models/weapons/c_models/c_f-a-sbtsp/c_f-a-sbtsp.mdl" PrecacheModel "models/weapons/c_models/c_stream_shooter/c_stream_shooter.mdl" PrecacheModel "models/weapons/c_models/c_ash_m/c_ash_m.mdl" PrecacheModel "models/weapons/c_models/c_hammer/c_hammer.mdl" PrecacheModel "models/bots/demo/bot_sentry_buster_gibby_v3.mdl" PrecacheModel "models/bots/soldier/bot_soldier_gibby.mdl" PrecacheModel "models/bots/soldier_boss/bot_soldier_boss_gibby.mdl" PrecacheModel "models/bots/heavy/bot_heavy_gibby.mdl" PrecacheModel "models/bots/heavy_boss/bot_heavy_boss_gibby.mdl" PrecacheModel "models/bots/demo/bot_demo_gibby.mdl" PrecacheModel "models/bots/pyro/bot_pyro_gibby.mdl" PrecacheParticle "eye_powerup_green_lvl_2" PrecacheParticle "utaunt_lightning_bolt" PrecacheSound "shadows/countdown.mp3" PrecacheSound "shadows/goodeffort.mp3" PrecacheSound "shadows/youdidit.mp3" PrecacheSound "shadows/bossround_music.mp3" PrecacheSound "shadows/muzzleflashinthedark.mp3" PrecacheSound "shadows/makeitcount.mp3" PrecacheSound "shadows/hubby_shoot.mp3" PrecacheSound "shadows/thundergun_fire.mp3" PrecacheSound "shadows/mystery_open.mp3" PrecacheSound "shadows/mystery_noise.mp3" PrecacheSound "shadows/smoker_idle_01.mp3" PrecacheSound "shadows/smoker_idle_02.mp3" PrecacheSound "shadows/smoker_idle_03.mp3" PrecacheSound "shadows/smoker_death.mp3" PrecacheSound "shadows/smoker_launchtongue_02.mp3" PrecacheSound "shadows/gas_death.mp3" PrecacheSound "shadows/gas_spit.mp3" PrecacheSound "shadows/gas_idle_03.mp3" PrecacheSound "shadows/gas_idle_04.mp3" PrecacheSound "shadows/charger_death.mp3" PrecacheSound "shadows/charger_idle_02.mp3" PrecacheSound "shadows/charger_idle_03.mp3" PrecacheSound "shadows/charger_idle_04.mp3" PrecacheSound "shadows/charger_see01.mp3" PrecacheSound "shadows/charger_see02.mp3" PrecacheSound "shadows/charger_see03.mp3" PrecacheSound "shadows/charger_see04.mp3" PrecacheSound "shadows/charger_see05.mp3" PrecacheSound "shadows/stage_clear.mp3" PrecacheSound "shadows/stage_start.mp3" PrecacheSound "shadows/bossround_start.mp3" PrecacheSound "shadows/bossround_end.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" PrecacheSound "shadows/zombie_rage01.mp3" PrecacheSound "shadows/zombie_rage02.mp3" PrecacheSound "shadows/zombie_rage03.mp3" PrecacheSound "shadows/zombie_rage04.mp3" PrecacheSound "shadows/zombie_rage05.mp3" PrecacheSound "shadows/zombie_rage06.mp3" PrecacheSound "shadows/zombie_rage07.mp3" PrecacheSound "shadows/zombie_rage08.mp3" PrecacheSound "shadows/perk_doubletap.mp3" PrecacheSound "shadows/perk_headrattle.mp3" PrecacheSound "shadows/perk_meraslixir.mp3" PrecacheSound "shadows/perk_regalreserve.mp3" PrecacheSound "shadows/perk_saxton.mp3" PrecacheSound "shadows/perk_usesfx.mp3" PrecacheSound "shadows/powerup_instagib.mp3" PrecacheSound "shadows/powerup_money_01.mp3" PrecacheSound "shadows/powerup_nuke_01.mp3" PrecacheSound "shadows/powerup_resupply_01.mp3" PrecacheSound "shadows/powerup_dud_03.mp3" PrecacheSound "shadows/treadkill_rage.mp3" PrecacheSound "shadows/treadkill_death.mp3" PrecacheSound "shadows/chainsaw_swing.mp3" PrecacheSound "shadows/battlelord_death.mp3" PrecacheSound "weapons/stormbringer_shoot.wav" PrecacheSound "weapons/shotimatum_shoot.wav" PrecacheSound "weapons/ak74_shoot.wav" PrecacheSound "weapons/peacemaker_shoot.wav" OverrideSounds { "Regenerate.Touch" misc/null.wav } ItemBlacklist // making the 9 classes THE 9 classes. { // Classname "tf_weapon_minigun" // Classname "tf_weapon_laser_pointer" // Classname "tf_weapon_buff_item" // Classname "tf_weapon_rocketpack" // Classname "tf_weapon_rocketlauncher" // Classname "tf_weapon_shotgun_primary" // Classname "tf_weapon_sentry_revenge" // Classname "tf_weapon_scattergun" // Classname "tf_weapon_handgun_scout_primary" // Classname "tf_weapon_flamethrower" // Classname "tf_weapon_rocketlauncher_fireball" // Classname "tf_weapon_flaregun" // // Classname "tf_weapon_sniperrifle" // Classname "tf_weapon_sniperrifle_classic" // Classname "tf_weapon_sniperrifle_decap" // Classname "tf_weapon_jar" // Classname "tf_weapon_jar_milk" // Classname "tf_weapon_jar_gas" // Classname "tf_wearable_demoshield" // Classname "tf_weapon_pipebomblauncher" // ClassName "tf_weapon_invis" // ClassName "tf_weapon_pda_spy" // Classname "tf_weapon_sapper" // Classname "tf_weapon_lunchbox" // Classname "tf_weapon_lunchbox_drink" // Classname "tf_weapon_soda_popper" // Name "TF_WEAPON_BUILDER_SPY" // you can't remove spy's sapper so we remove it via other means // Name "The Beggar's Bazooka" // Name "The Black Box" // Name "The Liberty Launcher" // Name "The Direct Hit" // Name "The Rocket Jumper" // Name "The Air Strike" // Name "The Cow Mangler 5000" // Name "The Kritzkrieg" // Name "The Quick-Fix" // stock only // Name "The Eyelander" // Name "The Widowmaker" // Name "Panic Attack Shotgun" // Name "Nessie's Nine Iron" // Name "The Scotsman's Skullcutter" // Name "The Claidheamohmor" // Name "The Horseless Headless Horseman's Headtaker" // swords have that hp penalty that break SaxAle buff // Name "The Gunslinger" // same as above // Name "The Vaccinator" Name "Kritz Or Treat Canteen" Name "Default Power Up Canteen (MvM)" Name "Power Up Canteen (MvM)" Name "Battery Canteens" // Name "Your Eternal Reward" // Name "Conniver's Kunai" // Name "The Big Earner" // Name "The Spy-cicle" // Name "The Razorback" // Name "The Cozy Camper" // Name "Darwin's Danger Shield" // Name "The Short Circuit" // Name "The Flying Guillotine" } // weapon specific tweaks (These stay the same.) // ItemAttributes // Not you // { // ItemName "TF_WEAPON_MEDIGUN" // "uber duration bonus" -3 // } ItemAttributes { ItemName "The Ubersaw" "add uber charge on hit" 0.10 } ItemAttributes { ItemName "The Crusader's Crossbow" "sniper no headshots" 0 "damage bonus HIDDEN" 4 } ItemAttributes { ItemName "Festive Crusader's Crossbow" "sniper no headshots" 0 "damage bonus HIDDEN" 4 } ItemAttributes { ItemName "The Eviction Notice" "mod_maxhealth_drain_rate" 0 "lunchbox adds minicrits" 2 "damage bonus HIDDEN" 2.308 } ItemAttributes { ItemName "Gloves of Running Urgently" "mod_maxhealth_drain_rate" 0 "lunchbox adds minicrits" 2 "damage bonus HIDDEN" 2.308 } ItemAttributes { ItemName "The Shortstop" "damage bonus HIDDEN" 3 } ItemAttributes { ItemName "Pretty Boy's Pocket Pistol" "provide on active" 1 "can headshot" 1 "damage bonus HIDDEN" 3 } ItemAttributes { ItemName "The Air Strike" "damage bonus HIDDEN" 6 } ItemAttributes { ItemName "The Conscientious Objector" "damage bonus HIDDEN" 2.308 } ItemAttributes { ItemName "The Widowmaker" "damage bonus HIDDEN" 3 } ItemAttributes { ItemName "The Ullapool Caber" "damage bonus HIDDEN" 5 // The Caber kinda needs it due to it being a suicide bomb } // broad weapon changes using Classname ItemAttributes { Classname tf_weapon_scattergun "damage bonus HIDDEN" 4 } ItemAttributes // surprisingly many weapons use this { Classname tf_weapon_pistol "damage bonus HIDDEN" 3 } ItemAttributes // surprisingly many weapons use this { Classname tf_weapon_handgun_scout_secondary "damage bonus HIDDEN" 3 "can headshot" 1 } ItemAttributes // explosives do a lot to compensate for no headshots { Classname tf_weapon_rocketlauncher "damage bonus HIDDEN" 6 "blast dmg to self increased" 0.25 } ItemAttributes // surprisingly many weapons use this { Classname tf_weapon_shotgun "damage bonus HIDDEN" 4 } ItemAttributes // fire indeed hot! { Classname tf_weapon_flamethrower "damage bonus HIDDEN" 3 } ItemAttributes // super hot { Classname tf_weapon_rocketlauncher_fireball "damage bonus HIDDEN" 3.5 } ItemAttributes // explosives do a lot to compensate for no headshots { Classname tf_weapon_grenadelauncher "damage bonus HIDDEN" 5.5 "blast dmg to self increased" 0.25 } ItemAttributes // explosives do a lot to compensate for no headshots { Classname tf_weapon_pipebomblauncher "damage bonus HIDDEN" 5.5 "blast dmg to self increased" 0.25 } ItemAttributes // even minigun gets damage bonus { Classname tf_weapon_minigun "damage bonus HIDDEN" 1.5 } ItemAttributes // needs this to work { Classname tf_weapon_smg "revolver use hit locations" 1 "damage bonus HIDDEN" 3 // guns are pretty batshit insane here } ItemAttributes { Classname tf_weapon_sniperrifle "damage bonus HIDDEN" 5 // I'M A BLOODY GOD, MATE } ItemAttributes { Classname tf_weapon_compound_bow "damage bonus HIDDEN" 5 } ItemAttributes // needs this to work { Classname tf_weapon_charged_smg "revolver use hit locations" 1 "damage bonus HIDDEN" 3 } ItemAttributes { Classname tf_weapon_revolver "damage bonus HIDDEN" 5 "revolver use hit locations" 1 } ItemAttributes // spy has the strongest melee weapon { Classname tf_weapon_knife "armor piercing" 50 "damage bonus HIDDEN" 3.75 // should be 150? "dmg max health" 0.05 // spy deserves it because he's pretty rough to play with his limited kit } ItemAttributes // melee weapon buffs, mostly to boost anything that is not spy's knife to 150 dmg { Classname tf_weapon_bat "damage bonus HIDDEN" 4.29 // roughly 150 } ItemAttributes { Classname tf_weapon_bat_wood // sandman "damage bonus HIDDEN" 4.29 } ItemAttributes { Classname tf_weapon_bat_giftwrap // ass wrap "damage bonus HIDDEN" 4.29 } ItemAttributes { Classname tf_weapon_shovel "damage bonus HIDDEN" 2.308 // roughly 150 } ItemAttributes { Classname tf_weapon_fireaxe "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_bottle "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_fists "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_wrench "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_bonesaw "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_club "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname weapon_eyelander "damage bonus HIDDEN" 2.308 } ItemAttributes { Classname tf_weapon_pda_engineer_build "engy sentry fire rate increased" 1.3 "engy sentry damage bonus" 1.2 } // ClassLimit //Limits the number of specified classes (Nah man) // { // Scout 2 // Soldier 2 // Pyro 2 // Demoman 2 // Heavyweapons 2 // Engineer 2 // Medic 2 // Sniper 2 // Spy 2 // } PlayerAttributes { "crit mod disabled" 0 "min respawn time" 60 // disable scout's quick respawn // "continous accuracy mult" 2 // "continous accuracy time" 2.5 "move accuracy mult" 1.33 "duck accuracy mult" 0.5 // "mult_patient_overheal_penalty_active" 0 "mult crit dmg" 0.5 Scout { "hidden maxhealth non buffed" 25 // "move speed penalty" 0.8 "can headshot" 1 // "no double jump" 1 } Soldier { "can headshot" 1 // "hidden primary max ammo bonus" 0.6 // "hidden maxhealth non buffed" -50 } Pyro { // "hidden maxhealth non buffed" -25 "can headshot" 1 // "airblast cost scale hidden" 2 } Demoman { "hidden maxhealth non buffed" -25 // "hidden primary max ammo bonus" 0.75 "can headshot" 1 } Heavyweapons { "maxammo secondary increased" 1.5 "can headshot" 1 } Engineer { "hidden maxhealth non buffed" 25 "building max level" 2 "mult teleporter recharge rate" 0.3 "bidirectional teleport" 1 "can headshot" 1 "hidden secondary max ammo penalty" 0.2 // wtf why do you have so much ammo } Medic { "can headshot" 1 // "hidden maxhealth non buffed" 50 } Sniper { "hidden maxhealth non buffed" 25 "can headshot" 1 } Spy { "hidden maxhealth non buffed" 25 "can headshot" 1 } } CustomWeapon { "The B.M.M.H" { OriginalItemName TF_WEAPON_SHOTGUN_PRIMARY "custom item model" "models\weapons\c_models\c_bmmh\c_bmmh.mdl" "custom weapon fire sound" "=80|shadows/hubby_shoot.mp3" "provide on active" 1 "clip size penalty" 0.5 "damage bonus HIDDEN" 13 "explosive bullets" 116 "fire rate penalty" 1.25 "blast dmg to self increased" 0.25 // lower self damage? "spread penalty" 1.33 "can headshot" -1 } // "The Firearm" // { // OriginalItemName "TF_WEAPON_PISTOL" // use pt to toggle proper bodygroup? // "custom item model" "models\weapons\c_models\c_frearm\c_frearm.mdl" // "custom weapon fire sound" Weapon_WidowMaker.Single // "maxammo primary increased" 1.5 // "provide on active" 1 // "damage bonus HIDDEN" 5 // "mod max primary clip override" 30 // "fire rate bonus HIDDEN" 0.85 // "can headshot" 1 // } "Double Barrel" { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" // secondary weapon "custom item model" "models/weapons/c_models/c_shotfun/c_shotfun.mdl" "custom weapon fire sound" "Weapon_Scatter_Gun_Double.Single" "custom weapon reload sound" "Weapon_DoubleBarrel.TubeClose" "fire full clip at once" 1 "reload full clip at once" 1 "damage bonus HIDDEN" 4 "mod max primary clip override" 2 "reload time increased" 1.5 "custom kill icon" force_a_nature "weapon spread bonus" 1.2 "can headshot" 1 } "The Ray Gun" { OriginalItemName "The C.A.P.P.E.R" "damage bonus HIDDEN" 13 "explosive bullets" 116 "fire rate penalty" 1.5 "mod max primary clip override" 20 "blast dmg to self increased" 0.25 "can headshot" -1 } "Beam Rifle" { OriginalItemName TF_WEAPON_SHOTGUN_HWG "bullets per shot bonus" 0.5 "custom item model" "models/workshop/weapons/c_models/c_drg_pomson/c_drg_pomson.mdl" "custom weapon fire sound" "Weapon_ShootingStar.SingleCharged" "custom kill icon" pomson "sniper fires tracer" 1 "fire rate bonus HIDDEN" 2 "projectile penetration heavy" 1 "reload full clip at once" 1 "reload time increased" 1.65 "damage bonus HIDDEN" 11 "mod max primary clip override" 5 "ragdolls become ash" 1 "can headshot" -1 } "Tactigatling" { OriginalItemName TF_WEAPON_SHOTGUN_HWG "bullets per shot bonus" 1.25 "custom item model" "models\weapons\c_models\c_tgat\c_tgat.mdl" "fire rate bonus HIDDEN" 0.8 "reload time increased" 1 "damage bonus HIDDEN" 4 "mod max primary clip override" 9 "burst fire count" -3 "burst fire rate mult" 2.5 "weapon spread bonus" 1.3 "can headshot" 1 } "Das Maschinenpistole" { OriginalItemName TF_WEAPON_SYRINGEGUN_MEDIC "override projectile type" 1 // bullet "damage bonus HIDDEN" 4.5 "fire rate bonus HIDDEN" 1.1 "custom item model" "models\weapons\c_models\c_mp40\c_mp40.mdl" "custom weapon fire sound" Weapon_SMG.Single // maybe this won't be fucking loud!! "custom kill icon" smg "mod max primary clip override" 15 "hidden primary max ammo bonus" 0.5 "health drain medic" -3 "can headshot" 1 } "The Punch Packer" // beggars scattergun { OriginalItemName "TF_WEAPON_SCATTERGUN" "custom item model" "models\weapons\c_models\c_packer.mdl" "reload time increased hidden" 0.75 "panic_attack" 1 "damage bonus HIDDEN" 4 "fire rate bonus HIDDEN" 0.5 "mod max primary clip override" 4 "auto fires full clip" 1 "mult_spread_scales_consecutive" 1 } "Primary SMG" { OriginalItemName "TF_WEAPON_SCATTERGUN" // the one item that doesn't refpose spy "custom item model" "models/weapons/c_models/c_smg/c_smg.mdl" "custom weapon reload sound" "Weapon_Revolver.WorldReload" "bullets per shot bonus" 0.05 "custom kill icon" smg "bullets per shot bonus" 0.25 "fire rate bonus HIDDEN" 0.25 "reload time increased" 1.5 "weapon spread bonus" 0 "reload full clip at once" 1 "mod max primary clip override" 25 "damage bonus HIDDEN" 3 // single pellet only, so needs a bit more damage } // spy-only weapons because spy is built different "Primary Revolver" { OriginalItemName "The Shortstop" // the one item that doesn't refpose spy "custom item model" "models/weapons/c_models/c_revolver/c_revolver.mdl" "custom weapon fire sound" "Weapon_Revolver.Single" "custom weapon reload sound" "Weapon_Revolver.WorldReload" "bullets per shot bonus" 0.25 "fire rate bonus HIDDEN" 1.5 "mod max primary clip override" 6 "custom kill icon" revolver "damage bonus HIDDEN" 9 // single pellet only, so needs a bit more damage } "Secondary Revolver" // default weapon because spy is really fucking weird { OriginalItemName "TF_WEAPON_PISTOL" // the other item that doesn't refpose spy "custom item model" "models/weapons/c_models/c_revolver/c_revolver.mdl" "custom weapon fire sound" "Weapon_Revolver.Single" "custom weapon reload sound" "Weapon_Revolver.WorldReload" "custom kill icon" revolver "fire rate bonus HIDDEN" 2.7 "mod max primary clip override" 6 "stay after regenerate" 1 "damage bonus HIDDEN" 6.5 // single pellet only, so needs a bit more damage } "Primary Ambassador" { OriginalItemName "The Shortstop" // the one item that doesn't refpose spy "custom item model" "models/weapons/c_models/c_ambassador/c_ambassador.mdl" "custom weapon fire sound" "Weapon_Ambassador.Single" "custom weapon reload sound" "Weapon_Revolver.WorldReload" "custom kill icon" ambassador "bullets per shot bonus" 0.25 "fire rate bonus HIDDEN" 2 "mod max primary clip override" 6 "damage bonus HIDDEN" 12 // single pellet only, so needs a bit more damage } "Big Iron" { OriginalItemName "TTG Sam Revolver" // the one item that doesn't refpose spy "fire rate bonus HIDDEN" 0.9 "mod max primary clip override" 12 "damage bonus HIDDEN" 9.5 // single pellet only, so needs a bit more damage } "BRAINS" { OriginalItemName "Necro Smasher" "damage bonus HIDDEN" 0.77 "is invisible" 1 "alt-fire disabled" 1 // for heavy AI "custom kill icon" unarmed_combat } // uberweapons // generic "Thunder Gun" // box only { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "custom item model" "models\weapons\c_models\c_drg_phlogistinator\c_drg_phlogistinator.mdl" "custom weapon fire sound" "=80|shadows/thundergun_fire.mp3" "special item description" "Fires a lethal charge of electricity" "attach particle effect" 3045 "fire rate bonus HIDDEN" 2.5 "reload time increased" -1 "max bullet range" 12 "maxammo secondary reduced" 0.4 "custom kill icon" phlogistinator "clip size penalty" 0.35 "can headshot" -1 "cannot be upgraded" 1 } "Great Gatsby" // pistol { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "damage bonus" 5 "maxammo secondary increased" 2.5 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "The Pinch Hitter" // Shortstop { OriginalItemName "The Shortstop" "damage bonus" 5 "mod max primary clip override" 12 "maxammo primary increased" 4 "fire rate bonus" 0.3 "faster reload rate" 0.6 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "The Gut Wrecker" // double barrel { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" // secondary weapon "custom item model" "models/weapons/c_models/c_shotfun/c_shotfun.mdl" "custom weapon fire sound" "Weapon_Scatter_Gun_Double.Single" "custom weapon reload sound" "Weapon_DoubleBarrel.TubeClose" "fire full clip at once" 1 "reload full clip at once" 1 "damage bonus" 5 "bullets per shot bonus" 2 "fire rate bonus" 0.8 "mod max primary clip override" 2 "maxammo secondary increased" 1.5 "reload time increased" 1.5 "custom kill icon" force_a_nature "weapon spread bonus" 1.2 "can headshot" 1 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } // scout "Boston Handshake" // scattergun { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 6 "bullets per shot bonus" 2 "fire rate bonus" 0.6 "faster reload rate" 0.75 "maxammo primary increased" 2 "cannot be upgraded" 1 } "Super Shotgun" // Fan/Soda { OriginalItemName "The Force-a-Nature" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 6 "bullets per shot bonus" 1.5 "fire rate bonus" 0.8 "faster reload rate" 0.8 "fire full clip at once" 1 "maxammo primary increased" 2 "cannot be upgraded" 1 } // soldier "Earth Shaker" // rocket { OriginalItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 "damage bonus" 7.5 "fire rate bonus" 0.6 "faster reload rate" -0.8 "maxammo primary increased" 3 "blast dmg to self increased" 0.25 "custom weapon fire sound" MVM.GiantSoldierRocketShoot // "custom impact sound" MVM.GiantSoldierRocketExplode } "Mule Kick" // shotgun { OriginalItemName "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 4 "bullets per shot bonus" 2 "fire rate bonus" 1.3 "faster reload rate" 0.75 "apply z velocity on damage" 112 "apply look velocity on damage" 256 "maxammo secondary increased" 2.5 "cannot be upgraded" 1 } // pyro "Inferno Cannon" // DF { OriginalItemName "The Dragon's Fury" "attach particle effect" 2 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 8 "maxammo primary increased" 1.25 "cannot be upgraded" 1 } "Face Melter" // flamethrower { OriginalItemName "Upgradeable TF_WEAPON_FLAMETHROWER" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 3 "dmg penalty vs players" 3 "maxammo primary increased" 2.5 "cannot be upgraded" 1 } "Burning Love" // shotgun { OriginalItemName "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" // normal one is engineer-only but THIS ONE is multiclass???? "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "damage bonus" 2 "dmg penalty vs players" 3 "bullets per shot bonus" 1.5 "fire rate bonus" 0.8 "faster reload rate" 0.75 "maxammo secondary increased" 2.5 "Set DamageType Ignite" 1 "damage bonus vs burning" 3 "cannot be upgraded" 1 } // demo "The Fat Boy" // grenadelauncher { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "clip size penalty" 0.2 "grenade explode on impact" 1 "damage bonus" 46 "fire rate bonus" 2.5 "dmg falloff decreased" 0.2 "maxammo primary increased" 2.25 "explosion particle" hightower_explosion "custom projectile model" "models\weapons\w_models\w_atomball_blu.mdl" // nice "custom impact sound" "misc/doomsday_missile_explosion.wav" "penetrate teammates" 1 "Blast radius increased" 2 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "The Cactus Blast" // stickies { OriginalItemName "Upgradeable TF_WEAPON_PIPEBOMBLAUNCHER" "damage bonus" 9 "maxammo secondary increased" 3 "Blast radius increased" 1.5 "fire rate bonus" 0.15 "stickybomb stick to enemies" 1 "penetrate teammates" 1 "projectile spread angle penalty" 5 "faster reload rate" 0.65 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } // heavy "Death Machine" // minigun { OriginalItemName "Upgradeable TF_WEAPON_MINIGUN" "damage bonus" 1.5 "bullets per shot bonus" 2 "maxammo primary increased" 2.5 "paintkit_proto_def_index" 296 "aiming movespeed decreased" 2 "penetrate teammates" 1 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "The Grand Slam" // shotgun { OriginalItemName "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" "fire rate bonus" 2.5 "bullets per shot bonus" 10 "paintkit_proto_def_index" 296 "maxammo secondary increased" 2 "penetrate teammates" 1 "damage bonus" 1.5 "reload full clip at once" 1 "set_item_texture_wear" 0 "cannot be upgraded" 1 } // engineer "Dell-OROM's Lament" // shotgun { OriginalItemName "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" "custom item model" "models/workshop/weapons/c_models/c_invasion_sniperrifle/c_invasion_sniperrifle.mdl" "special item description" "Cannot headshot" "override projectile type" 1 "sniper fires tracer" 1 "damage bonus" 8 "bullets per shot bonus" 3 "penetrate teammates" 1 "projectile penetration heavy" 1 "fire rate bonus" 2 "faster reload rate" -1 "can headshot" -1 "ragdolls plasma effect" 1 "custom weapon fire sound" "=80|weapons/cow_mangler_explosion_charge_04.wav" } // medic "DNA Rejuvenator" // syringe gun { OriginalItemName "Upgradeable TF_WEAPON_SYRINGEGUN_MEDIC" "special item description" "Invasively resurrects a Zombie" "special item description 2" "Target dies after 5 seconds" "maxammo primary reduced" 0.2 "clip size penalty" 0.5 "fire rate penalty" 3 "damage penalty" 0.1 "fire input on hit" "popscript^$rejuvenatorHit^" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot upgrade" 1 "special damage type" 1 "penetrate teammates" 1 } "Durchbohren" // crossbow? { "damage bonus" 13 "special item description" "Piercing enemies grants extra damage" "clip size upgrade atomic" 5 "projectile penetration" 1 "fire rate bonus" 0.2 "penetration damage penalty" 1.25 "custom item model" "models/workshop/weapons/c_models/c_crusaders_crossbow/c_crusaders_crossbow_xmas.mdl" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 "reload full clip at once" 1 } // sniper "The Love Tap" // sniper rifle { OriginalItemName "Upgradeable TF_WEAPON_SNIPERRIFLE" "damage bonus" 5 "projectile penetration heavy" 5 "headshot damage increase" 7 "maxammo primary increased" 1.5 "SRifle Charge rate increased" 3 "penetrate teammates" 1 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "The Bristleback" // compound bow { OriginalItemName "The Huntsman" "dmg penalty vs players" 8 "arrow mastery" 3 "maxammo primary increased" 1.5 "projectile penetration" 1 "penetrate teammates" 1 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } // spy "Sally" // you are given both of the two here when either is 'maxed' { OriginalItemName "TF_WEAPON_REVOLVER" "bullets per shot bonus" 0.25 "mod max primary clip override" 12 "maxammo primary increased" 2.5 "custom kill icon" revolver "damage bonus" 15 "override projectile type" 2 "projectile speed increased" 2 "blast dmg to self increased" 0.25 "projectile trail particle" bullet_distortion_trail "custom projectile model" "models/weapons/w_models/w_rocketbullet.mdl" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "Mustang" { OriginalItemName "TF_WEAPON_REVOLVER" "custom kill icon" revolver "fire rate bonus HIDDEN" 2 "mod max primary clip override" 12 "maxammo secondary increased" 2.5 "damage bonus" 15 "override projectile type" 2 "projectile speed increased" 2 "blast dmg to self increased" 0.25 "projectile trail particle" bullet_distortion_trail "custom projectile model" "models/weapons/w_models/w_rocketbullet.mdl" "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } "Kingpin" { OriginalItemName "The Ambassador" "custom item model" "models/weapons/c_models/c_ambassador/c_ambassador_xmas.mdl" "maxammo primary increased" 2.5 "fire rate bonus HIDDEN" 1.5 "mod max primary clip override" 12 "damage bonus" 20 "headshot damage increase" 6 "paintkit_proto_def_index" 296 "set_item_texture_wear" 0 "cannot be upgraded" 1 } //////////// // Others //////////// "Mule Mauler 600" { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "energy weapon no ammo" 1 "energy weapon no hurt building" 1 "fire rate bonus" 0.4 "clip size penalty" 0.75 "bullets per shot bonus" 0.1 "sniper fires tracer" 1 "damage bonus" 10 "CARD: damage bonus" 3 "special item description" "Can't make this thing have unlimited ammo" } "Shotgun Cannon" { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "auto fires full clip" 1 "fire rate bonus" 0.5 "panic_attack" 1 "damage penalty" 0.8 "clip size penalty HIDDEN" 0.75 "damage bonus HIDDEN" 4 } "The Specialist" { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "fire rate bonus" 0.85 "damage penalty" 0.85 "increase player capture value" 1 "clip size bonus" 1.15 "maxammo primary reduced" 0.85 "damage force increase" 1.25 "damage bonus HIDDEN" 4 } "The Conventional" { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "clip size bonus" 1.25 "fire rate bonus" 0.8 "spread penalty" 0.8 "damage penalty" 0.8 "damage bonus HIDDEN" 3 "custom item model" "models/weapons/c_models/c_conventional/c_conventional.mdl" } "Concealed Carry" { OriginalItemName "Pretty Boy's Pocket Pistol" "heal on hit for rapidfire" 0 "clip size penalty" 1 "fire rate bonus" 0.8 "heal on kill" 63 "overheal penalty" 0 "overheal from heal on kill" 1 "damage penalty" 0.7 "overheal decay disabled" 1 "damage bonus HIDDEN" 3 } "Lugermorph Rework" { OriginalItemName "TTG Max Pistol" "damage bonus" 2 "weapon spread bonus" 1.25 "fire rate penalty" 1.7 "Reload time increased" 1.2 "damage bonus HIDDEN" 3 } "Targeter" { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "add cond on hit" 30 "damage bonus" 6 "weapon spread bonus" 0 "damage bonus HIDDEN" 3 } "The Corckscrew" { OriginalItemName "The Force-a-Nature" "scattergun has knockback" 0 "Set DamageType Ignite" 1 "bullets per shot bonus" 1.5 "damage penalty" 0.7 "fire rate bonus" 0.4 "damage bonus vs burning" 1.2 "CARD: damage bonus" 4 "custom item model" "models/weapons/c_models/c_corkscrew/c_corkscrew.mdl" } "Poacher's Pride" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "fire rate bonus" 0.6 "revolver use hit locations" 1 "Reload time increased" 2 "clip size penalty" 0.5 "reload full clip at once" 1 "override projectile type" 1 "damage penalty" 0.49 "can headshot" 1 "Card: damage bonus" 4 } "The Lifeforce Harmonizer" { OriginalItemName "The AWPer Hand" "provide on active" 1 "health drain" -5 "dmg from melee increased" 1.25 "heal on hit for rapidfire" 5 "heal on kill" 20 "damage bonus HIDDEN" 5 } "M16A1 Sniper" { OriginalItemName "TF_WEAPON_SMG" "fire rate bonus" 0.8 "damage penalty" 1.86 "Reload time increased" 2 "maxammo secondary increased" 3.14 "weapon spread bonus" 0.75 "Card: damage bonus" 3 "custom item model" "models/weapons/c_models/c_m16/c_m16.mdl" } "Mann-Cannon" { OriginalItemName "The AWPer Hand" "explosive bullets" 50 "maxammo primary reduced" 0.5 "Reload time increased" 0.75 "fire rate penalty" 1.35 "sniper no headshots" 1 "move speed penalty" 0.9 "aiming movespeed decreased" 0.7 "damage bonus" 1.35 "damage bonus HIDDEN" 4 "custom item model" "models/weapons/c_models/c_rocketlauncher/c_rocketlauncher.mdl" } "The Chaser" { OriginalItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "mod projectile heat follow crosshair" 1 "mod projectile heat seek power" 360 "Blast radius decreased" 0.9 "damage penalty" 0.8 "rocketjump attackrate bonus" 0.2 "mini rockets" 1 "damage bonus HIDDEN" 6 "custom item model" "models/workshop/weapons/c_models/c_hornets_nest/c_hornets_nest.mdl" } "Double Trouble" { OriginalItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "Projectile speed increased" 1.2 "damage penalty" 0.65 "clip size penalty" 0.5 "Blast radius increased" 1.1 "Reload time increased" 1.66 "projectile spread angle penalty" 3 "rocket jump damage reduction" 1.25 "fire rate bonus" -1 "damage bonus HIDDEN" 6 } "M16A1" { OriginalItemName "Upgradeable TF_WEAPON_SMG" "fire rate bonus" 0.8 "damage penalty" 1.86 "Reload time increased" 2 "maxammo secondary increased" 3.14 "weapon spread bonus" 0.75 "Card: damage bonus" 3 "custom item model" "models/weapons/c_models/c_m16/c_m16.mdl" } "The Maverick" { OriginalItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "projectile gravity" 600 "Projectile speed increased" 1.2 "damage bonus" 1.15 "clip size penalty" 0.75 "Blast radius decreased" 0.8 "damage bonus HIDDEN" 6 "special item description" "Rockets arch" } "Mega Destoryer Soldier" { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "clip size bonus" 1.3 "Reload time decreased" 0.70 "bullets per shot bonus" 0.1 "damage bonus" 10 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "CARD: damage bonus" 6 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" } "Mega Destoryer Pyro" { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" "clip size bonus" 1.3 "Reload time decreased" 0.70 "bullets per shot bonus" 0.1 "damage bonus" 10 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "CARD: damage bonus" 6 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" } "Mega Destoryer Engineer" { OriginalItemName "TF_WEAPON_SHOTGUN_PRIMARY" "clip size bonus" 1.3 "Reload time decreased" 0.70 "bullets per shot bonus" 0.1 "damage bonus" 10 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "CARD: damage bonus" 6 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" } "SPAS-12 Soldier" { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "clip size bonus" 1.7 "fire rate bonus" 0.4 "bullets per shot bonus" 1.5 "maxammo secondary increased" 2.8 "Reload time decreased" 0.6 "can headshot" 1 "custom item model" "models/weapons/c_models/c_spas12/c_spas12.mdl" "crit mod disabled" 0 "damage bonus HIDDEN" 3 } "SPAS-12 Pyro" { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" "clip size bonus" 1.7 "fire rate bonus" 0.4 "bullets per shot bonus" 1.5 "maxammo secondary increased" 2.8 "Reload time decreased" 0.6 "can headshot" 1 "custom item model" "models/weapons/c_models/c_spas12/c_spas12.mdl" "crit mod disabled" 0 "damage bonus HIDDEN" 3 } "Incendiary Cannon Demoman" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "Set DamageType Ignite" 1 "mod max primary clip override" -1 "damage penalty" 0.75 "Projectile speed decreased" 0.75 "Blast radius decreased" 0.75 "fire rate penalty" 1.33 "override projectile type" 2 "damage bonus HIDDEN" 6 } "The Peacekeeper" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "clip size bonus" 1.5 "mod mini-crit airborne" 1 "damage penalty" 0.8 "damage bonus HIDDEN" 6 } "Celtic Cluster" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "damage penalty" 0.65 "clip size penalty" 0.25 "Blast radius increased" 1.1 "mult projectile count" 2 "Reload time increased" 1.66 "projectile spread angle penalty" 2 "rocket jump damage reduction" 1.25 "damage bonus" 6 "custom item model" "models/weapons/c_models/c_iron_boarder/c_iron_boarder.mdl" } "Gravitational Grenadier" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "projectile gravity" 200 "blast radius increased" 1.3 "projectile speed decreased" .5 "fuse bonus" 1.3 "grenade bounce speed" 2 "damage bonus HIDDEN" 6 "special item description" "Grenades have heavily slowed falling speed and stick to surfaces." } "The Ultimatum" { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "add cond on hit" 24 "add cond on hit duration" 6 "dmg penalty vs players" 0.65 "Blast radius decreased" 0.33 "damage bonus" 6 "custom item model" "models/weapons/c_models/c_ultimatum/c_ultimatum.mdl" "special item description" "Jarates targets for 6 seconds" } "Scotland's Last Defence" { OriginalItemName "Upgradeable TF_WEAPON_PIPEBOMBLAUNCHER" "override projectile type" 1 "stickybomb charge rate" 0 "explosive bullets" 100 "self dmg push force decreased" 0.6 "damage penalty" 0.8 "damage bonus HIDDEN" 6 "custom item model" "models/weapons/c_models/c_demo_glock/c_demo_glock.mdl" } "Troll Jumper" { OriginalItemName "Stickybomb Jumper" "damage penalty" 0.05 "maxammo secondary increased" 222 "max pipebombs decreased" 123456789 "fire rate bonus" 0.1 "clip size bonus" 500 "sticky arm time bonus" -0.35 "Reload time decreased" -2 "special item description" "And we do a little trolling, just a little bit. A little bit of trolling." } "The Mender" { OriginalItemName "Upgradeable TF_WEAPON_MEDIGUN" "medic machinery beam" 1 "effect cond override" 7450 "heal rate penalty" 0.8 "overheal penalty" 0.7 "ubercharge rate bonus" 1.5 "special item description" "Ubercharge is battalions and conch effect." } "The Secret Ingredient" { OriginalItemName "Upgradeable TF_WEAPON_MEDIGUN" "heal rate bonus" 1.6 "overheal penalty" 0.01 "effect cond override" 64 "ubercharge rate bonus" 2 "custom item model" "models/weapons/c_models/c_pigeon_medigun/c_pigeon_medigun.mdl" "special item description" "Ubercharge is cloak." } "Medispenser" { OriginalItemName "Upgradeable TF_WEAPON_MEDIGUN" "effect add attributes" "Reload time decreased|-1|fire rate bonus|0.75" "effect cond override" 81 "medigun passive attributes" "ammo regen|0.1" "ubercharge rate bonus" 1.5 "uber duration bonus" 4 "special item description" "Heal target receives 10% ammo every 5 seconds." "special item description 2" "Ubercharge is insta-reload + 25% fire rate bonus" "special item description 3" "Taken from CustomTF2 Weapons" } "The Kriubercharge" { OriginalItemName "gentlemanne_medigun_highrollers" "effect cond override" 14625 "ubercharge rate penalty" 0.5 "dmg penalty vs players" 0.6 "special item description" "Ubercharge is stock and crits" } "The Portable Ordnance" { OriginalItemName "Upgradeable TF_WEAPON_MINIGUN" "minigun spinup time decreased" 0 "weapon spread bonus" 0.6 "minigun no spin sounds" 1 "mod minigun can holster while spinning" 1 "bullets per shot bonus" 0.4 "damage bonus" 5 "damage bonus HIDDEN" 1.4 "special item description" "Instant rev up" "custom wind up sound" "misc/null.wav" "custom wind down sound" "misc/null.wav" "custom item model" "models/workshop/weapons/c_models/c_browning/c_browning.mdl" } "The Maxine" { OriginalItemName "The Huo Long Heatmaker" "damage penalty" 1 "ring of fire while aiming" 0 "damage bonus vs burning" 1 "aiming movespeed increased" 1.6 "no primary ammo from dispensers while active" 1 "damage bonus HIDDEN" 1.3 "custom item model" "models/weapons/c_models/c_maxine/c_maxine.mdl" } "Veronika" { OriginalItemName "Upgradeable TF_WEAPON_MINIGUN" "provide on active" 1 "move speed penalty" 0.6 "weapon spread bonus" 0.75 "ammo regen" 0.15 "damage bonus HIDDEN" 1.5 "custom item model" "models/weapons/c_models/c_graphite_perisher/c_graphite_perisher.mdl" } "Big Kill Rework" { OriginalItemName "TTG Sam Revolver" "scattergun has knockback" 1 "damage bonus" 1.15 "fire rate penalty" 1.3 "maxammo primary reduced" 0.75 "apply z velocity on damage" 300 "damage bonus HIDDEN" 3 } "Infltrator's Favorite" { OriginalItemName "Upgradeable TF_WEAPON_REVOLVER" "mark for death" 1 "damage penalty" 0.55 "crit mod disabled" -1 "fire rate penalty" 1.4 "CARD: damage bonus" 3 "custom item model" "models/weapons/c_models/c_death_blossom/c_death_blossom.mdl" } "Quick Draw" { OriginalItemName "Upgradeable TF_WEAPON_REVOLVER" "add cond when active" 12307 "damage penalty" 0.8 "fire rate bonus" 0.7 "weapon spread bonus" 0.5 "reload time increased" 1.2 "clip size penalty" 0.5 "crit mod disabled" -1 "damage bonus HIDDEN" 3 "special item description" "Deal mini crits while taking mini crits while active" } "Fake Pistol" { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "fire rate penalty" 3.8 "bullets per shot bonus" 19 "Paintkit_proto_def_index" 218 "attach particle effect" 702 "clip size bonus" 2 "can headshot" 1 "projectile penetration" 1 "no damage falloff" 1 "collect currency on kill" 1 "maxammo secondary increased" 2 "dmg pierces resists absorbs" 1 "damage bonus HIDDEN" 3 "cannot be upgraded" 1 } "The Shotimatum Engineer" { OriginalItemName "TF_WEAPON_SHOTGUN_PRIMARY" "projectile penetration" 1 "fire rate penalty" 3 "bullets per shot bonus" 2 "sniper fires tracer" 1 "mod max primary clip override" -1 "damage bonus" 3 "can headshot" 1 "no damage falloff" 1 "weapon spread bonus" 0.7 "collect currency on kill" 1 "damage bonus HIDDEN" 3 "custom item model" "models/weapons/c_models/c_screwiatan_7000/c_screwiatan_7000.mdl" "custom weapon fire sound" "weapons/shotimatum_shoot.wav" "cannot be upgraded" 1 } "The Shotimatum Pyro" { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" "projectile penetration" 1 "fire rate penalty" 3 "bullets per shot bonus" 2 "sniper fires tracer" 1 "mod max primary clip override" -1 "damage bonus" 3 "can headshot" 1 "no damage falloff" 1 "weapon spread bonus" 0.7 "collect currency on kill" 1 "damage bonus HIDDEN" 3 "custom item model" "models/weapons/c_models/c_screwiatan_7000/c_screwiatan_7000.mdl" "custom weapon fire sound" "weapons/shotimatum_shoot.wav" "cannot be upgraded" 1 } "Big Boris" { OriginalItemName "TF_WEAPON_SHOTGUN_HWG" "move speed bonus" 3 "damage bonus" 6 "spread penalty" 2 "projectile penetration" 1 "crit kill will gib" 1 "provide on active" 1 "damage bonus HIDDEN" 6 "special item description" "A primary weapon to shred babies in pieces." "custom item model" "models/weapons/c_models/c_big_boris/c_big_boris.mdl" "cannot be upgraded" 1 } "The Stormbringer" { OriginalItemName "The Flare Gun" "override projectile type" 1 "bullets per shot bonus" 4 "Reload time increased" 1.5 "fire rate penalty" 1.25 "damage penalty" 0.5 "reload time increased hidden" 1.5 "force damage falloff" 1 "CARD: damage bonus" 3 "special item description" "Fires incendiary rounds." "custom weapon fire sound" "weapons/stormbringer_shoot.wav" "custom item model" "models/weapons/c_models/c_stormbringer/c_stormbringer.mdl" } "Replenishing Rampager" { OriginalItemName "TF_WEAPON_SHOTGUN_HWG" "damage penalty" 0.8 "Reload time increased" 1.3 "restore health on kill" 33 "damage bonus HIDDEN" 4 "custom item model" "models/weapons/c_models/c_sub_sandvich/c_sub_sandvich.mdl" } "White Phospherous" // Thanks to Nuclear Waffle for letting me turn his template into a weapon. { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "set damagetype ignite" 1 "explode_on_ignite" 1 "add cond on hit" 123 "add cond on hit duration" 5 "dmg pierces resists absorbs" 1 "crit mod disabled" 0 "mod max primary clip override" -1 "fire rate penalty" 1.5 "explosive bullets" 50 "mod no reload DISPLAY ONLY" 1 "can headshot" -1 "damage bonus HIDDEN" 0.75 "custom weapon fire sound" "=80|weapons\flaregun\fire.wav" "custom item model" "models/weapons/c_models/c_stream_shooter/c_stream_shooter.mdl" "special item description" "This is a joke weapon" "cannot be upgraded" 1 } "Old Abe" { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "mod crit while airborne" 1 "damage penalty" 0.75 "clip size penalty" 0.33 "weapon spread bonus" 0.35 "rocketjump attackrate bonus" 0.6 "crit mod disabled" -1 "paintkit_proto_def_index" 217 "damage bonus HIDDEN" 3 "custom item model" "models/workshop/weapons/c_models/c_reserve_shooter/c_reserve_shooter.mdl" } "Force-A-Short Baby To Scatter Pop" { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "closerange backattack minicrits" 1 "scattergun has knockback" 1 "fire rate bonus" 0.18 "Reload time decreased" 0.75 "hype on damage" 1 "boost on damage" 1 "hype resets on jump" 20 "lose hype on take damage" 5 "bullets per shot bonus" 6.2 "spread penalty" 1.2 "crit mod disabled" 0 "clip size penalty" 0.01 "clip size penalty" 0.15 "move speed penalty" 0.9 "damage bonus HIDDEN" 3 "cannot be upgraded" 1 "special item description" "This is a joke weapon" "custom item model" "models/weapons/c_models/c_f-a-sbtsp/c_f-a-sbtsp.mdl" } "Prototype SM2" { OriginalItemName "Upgradeable TF_WEAPON_FLAMETHROWER" "airblast cost decreased" 0.25 "weapon burn time reduced" 0 "damage penalty" 0.75 "mult airblast refire time" 0.5 "damage bonus HIDDEN" 3 "custom item model" "models/weapons/c_models/c_ash_m/c_ash_m.mdl" } "Sufficent Factory" { OriginalItemName "TF_WEAPON_MINIGUN" "drop health pack on kill" 1 "health from healers reduced" 0 "health from packs increased" 1.4 "damage penalty" 0.67 "damage bonus HIDDEN" 6 } "Incendiary Cannon" { OriginalItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "Set DamageType Ignite" 1 "mod max primary clip override" -1 "damage penalty" 0.75 "Projectile speed decreased" 0.75 "Blast radius decreased" 0.75 "maxammo primary reduced" 0.1 "fire rate penalty" 1.33 "damage bonus HIDDEN" 6 "special item description" "Fires rockets" "custom item model" "models/weapons/c_models/c_flameball/c_flameball.mdl" } // Überweapon variants "AK-48" // M16A1 { OriginalItemName "Upgradeable TF_WEAPON_SMG" "fire rate bonus" 0.9 "damage bonus" 2.5 "Reload time increased" 2.5 "maxammo secondary increased" 4 "weapon spread bonus" 0.75 "damage bonus HIDDEN" 4 "clip size bonus" 2 "custom weapon fire sound" "weapons\ak74_shoot.wav" "custom item model" "models/weapons/c_models/c_ak47/c_mmg.mdl" "cannot be upgraded" 1 } "Head Splitter Soldier" // Mega Destoryer { OriginalItemName "TF_WEAPON_SHOTGUN_SOLDIER" "clip size bonus" 1.4 "damage bonus" 8 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "weapon spread bonus" 0.1 "damage penalty on bodyshot" 0.75 "decapitate type" 1 "damage bonus HIDDEN" 2 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" "cannot be upgraded" 1 } "Head Splitter Pyro" { OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" "clip size bonus" 1.5 "damage bonus" 8 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "weapon spread bonus" 0.1 "damage penalty on bodyshot" 0.75 "damage bonus HIDDEN" 2 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" "cannot be upgraded" 1 } "Head Splitter Engineer" { OriginalItemName "TF_WEAPON_SHOTGUN_PRIMARY" "clip size bonus" 1.5 "damage bonus" 8 "revolver use hit locations" 1 "can headshot" 1 "no damage falloff" 1 "weapon spread bonus" 0.1 "damage penalty on bodyshot" 0.75 "decapitate type" 1 "damage bonus HIDDEN" 2 "custom item model" "models/weapons/c_models/c_spas12_v2/c_spas12_v2.mdl" "cannot be upgraded" 1 } "The Cluster Bomber" // Celtic Cluster { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "damage bonus HIDDEN" 3.5 "clip size penalty" 0.25 "Blast radius increased" 1.2 "mult projectile count" 6 "Reload time increased" 2 "projectile spread angle penalty" 4 "rocket jump damage reduction" 1.3 "grenade explode on impact" 1 "damage bonus HIDDEN" 3 "custom item model" "models/weapons/c_models/c_iron_boarder/c_iron_boarder.mdl" "cannot be upgraded" 1 } "Wet Warfare" // Ultimatum { OriginalItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "damage bonus HIDDEN" 6 "add cond on hit" 6936 "add cond on hit duration" 12 "dmg penalty vs players" 0.8 "Blast radius decreased" 0.5 "damage bonus HIDDEN" 3.5 "custom item model" "models/weapons/c_models/c_ultimatum/c_ultimatum.mdl" "special item description" "Jarates/Mad Milks targets for 12 seconds" "cannot be upgraded" 1 } "Automatic Peacemaker" // The Portable Ordnance { OriginalItemName "Upgradeable TF_WEAPON_MINIGUN" "weapon spread bonus" 0.1 "minigun no spin sounds" 1 "mod minigun can holster while spinning" 1 "bullets per shot bonus" 0.4 "damage bonus" 5 "damage bonus HIDDEN" 2 "custom wind up sound" "misc/null.wav" "custom wind down sound" "misc/null.wav" "custom weapon fire sound" "weapons\peacemaker_shoot.wav" "cannot be upgraded" 1 } "Injuste" // Infltrator's Favorite { OriginalItemName "Upgradeable TF_WEAPON_REVOLVER" "damage bonus" 2.5 "mark for death" 1 "crit mod disabled" -1 "bullets per shot bonus" 3 "damage bonus HIDDEN" 8.5 "custom item model" "models/weapons/c_models/c_death_blossom/c_death_blossom.mdl" "cannot be upgraded" 1 } "Horse Harraser 999" // Mule Mauler 600 { OriginalItemName "Upgradeable TF_WEAPON_SCATTERGUN" "energy weapon no ammo" 1 "energy weapon no hurt building" 1 "fire rate penalty" 1.2 "bullets per shot bonus" 0.4 "sniper fires tracer" 1 "damage bonus hidden" 15 "weapon spread bonus" 0.6 "mod max primary clip override" -1 "mod no reload DISPLAY ONLY" 1 "damage bonus" 4 "cannot be upgraded" 1 } "The Boomstick" // The Stormbringer { OriginalItemName "The Flare Gun" "damage bonus" 2 "override projectile type" 1 "bullets per shot bonus" 8 "Reload time increased" 2 "fire rate penalty" 1.25 "reload time increased hidden" 2 "force damage falloff" 1 "damage bonus HIDDEN" 2 "special item description" "Fires incendiary rounds." "custom weapon fire sound" "weapons/stormbringer_shoot.wav" "custom item model" "models/weapons/c_models/c_stormbringer/c_stormbringer.mdl" "cannot be upgraded" 1 } "Hammer Time" // Generic { OriginalItemName "The Freedom Staff" "fire rate bonus" 0.6 "damage bonus" 21 "melee cleave attack" 1 "apply z velocity on damage" 500 "damage causes airblast" 1 "damage bonus HIDDEN" 1.5 "heal on kill" 25 "overheal from heal on kill" 1 "custom impact sound" "=20|misc/halloween/strongman_fast_impact_01.wav" "custom kill icon" "sledgehammer" "custom item model" "models/weapons/c_models/c_hammer/c_hammer.mdl" } } ExtraLoadoutItems // in here so the dumpster can call them into your pockets { AllowEquipOutsideSpawn 1 // needs this to work since bauernhof has no spawn Scout { Primary { Item "Shotgun Cannon" Hidden 1 } Primary { Item "The Specialist" Hidden 1 } Primary { Item "Mule Mauler 600" Hidden 1 } Primary { Item "The Specialist" Hidden 1 } Primary { Item "Force-A-Short Baby To Scatter Pop" Hidden 1 } Primary { Item "The Corckscrew" Hidden 1 } Secondary { Item "The Conventional" Hidden 1 } Secondary { Item "Concealed Carry" Hidden 1 } Secondary { Item "Lugermorph Rework" Hidden 1 } Secondary { Item "Targeter" Hidden 1 } } Soldier { Secondary { Item "Double Trouble" Hidden 1 } Secondary { Item M16A1 Hidden 1 } Primary { Item "The Chaser" Hidden 1 } Primary { Item "The Maverick" Hidden 1 } Secondary { Item "Mega Destoryer Soldier" Hidden 1 } Secondary { Item "Old Abe" Hidden 1 } Secondary { Item "White Phospherous" Hidden 1 } Secondary { Item "SPAS-12 Soldier" Hidden 1 } } Pyro { Primary { Item "Prototype SM2" Hidden 1 } Secondary { Item "Mega Destoryer Pyro" Hidden 1 } Secondary { Item "The Stormbringer" Hidden 1 } Primary { Item "Incendiary Cannon" Hidden 1 } Secondary { Item "The Shotimatum Pyro" Hidden 1 } Secondary { Item "SPAS-12 Pyro" Hidden 1 } } Demoman { Primary { Item "Celtic Cluster" Hidden 1 } Primary { Item "The Ultimatum" Hidden 1 } Primary { Item "Gravitational Grenadier" Hidden 1 } Primary { Item "Incendiary Cannon Demoman" Hidden 1 } Primary { Item "The Peacekeeper" Hidden 1 } Secondary { Item "Scotland's Last Defence" Hidden 1 } Secondary { Item "Tactigatling" Hidden 1 } Secondary { Item "Beam Rifle" Hidden 1 } Secondary { Item "The Ray Gun" Hidden 1 } Secondary { Item "Troll Jumper" Hidden 1 } } Heavyweapons { Secondary { Item "Replenishing Rampager" Hidden 1 } Primary { Item "The Portable Ordnance" Hidden 1 } Primary { Item Veronika Hidden 1 } Primary { Item "The First Responder" Hidden 1 } Primary { Item "The Maxine" Hidden 1 } Primary { Item "Sufficent Factory" Hidden 1 } Secondary { Item "Tactigatling" Hidden 1 } Secondary { Item "Big Boris" Hidden 1 } } Engineer { Primary { Item "The B.M.M.H" Hidden 1 } Secondary { Item "Big Kill Rework" Hidden 1 } Primary { Item "Mega Destoryer Engineer" Hidden 1 } Primary { Item "The Shotimatum Engineer" Hidden 1 } Secondary { Item "Fake Pistol" Hidden 1 } Secondary { Item "Lugermorph Rework" Hidden 1 } Primary { Item "The Punch Packer" Hidden 1 } } Medic { Primary { Item TF_WEAPON_SCATTERGUN Hidden 1 } Primary { Item TF_WEAPON_FLAMETHROWER Hidden 1 } Secondary { Item "The Secret Ingredient" Hidden 1 } Secondary { Item "Medispenser" Hidden 1 } Secondary { Item "The Mender" Hidden 1 } Secondary { Item "The Kriubercharge" Hidden 1 } Primary { Item "Das Maschinenpistole" Hidden 1 } } Sniper { Primary { Item "Poacher's Pride" Hidden 1 } Primary { Item "The Lifeforce Harmonizer" Hidden 1 } Secondary { Item "Double Barrel" Hidden 1 } Primary { Item TF_WEAPON_PIPEBOMBLAUNCHER Hidden 1 } Primary { Item "The Crusader's Crossbow" Hidden 1 } Primary { Item "Mann-Cannon" Hidden 1 } Secondary { Item "The Ray Gun" Hidden 1 } Secondary { Item "Beam Rifle" Hidden 1 } Secondary { Item "The Punch Packer" Hidden 1 } Secondary { Item "M16A1 Sniper" Hidden 1 } } Spy { Secondary { Item "Big Iron" Hidden 1 } Secondary { Item "Big Kill Rework" Hidden 1 } Primary { Item "Primary Ambassador" Hidden 1 } Secondary { Item "Infltrator's Favorite" Hidden 1 } Secondary { Item "Quick Draw" Hidden 1 } Secondary { Item "Kingpin" Hidden 1 } Secondary { Item "The Ray Gun" Hidden 1 } } } ExtendedUpgrades { MaxUpgradesTier { 1 999 2 999 } MinUpgradesTier { 1 4 2 5 } // gun upgrades WU_Clipsize { Name "+25% clip size" Attribute "clip size bonus upgrade" Increment 0.25 Cap 2 Cost 400 Tier 1 AllowedWeapons { Slot Primary Slot Secondary Classname tf_weapon_revolver // you special child, you } DisallowedWeapons { Classname tf_weapon_grenadelauncher Classname tf_weapon_pipebomblauncher Classname tf_weapon_rocketlauncher Classname tf_weapon_minigun Classname tf_weapon_flamethrower Classname tf_weapon_rocketlauncher_fireball Classname tf_weapon_flaregun Classname tf_weapon_jar Classname tf_weapon_jar_milk Classname tf_weapon_jar_gas Classname tf_weapon_sniperrifle Classname tf_weapon_sniperrifle_classic Classname tf_weapon_sniperrifle_decap Classname tf_weapon_compound_bow Classname tf_weapon_mechanical_arm Classname tf_weapon_medigun Classname tf_weapon_lunchbox Classname tf_weapon_lunchbox_drink Classname tf_wearable_demoshield Classname tf_weapon_crossbow ItemName "The B.A.S.E. Jumper" ItemName "Ali Baba's Wee Booties" ItemName "The Bootlegger" ItemName "The Gunboats" ItemName "The Mantreads" ItemName "The Razorback" ItemName "Darwin's Danger Shield" ItemName "The Cozy Camper" } } WU_Clipsize_Soldemo { Name "+1 clip size" Attribute "clip size upgrade atomic" Increment 1 Cap 8 Cost 500 Tier 1 AllowPlayerClass Soldier AllowPlayerClass Demoman AllowedWeapons { Classname tf_weapon_grenadelauncher Classname tf_weapon_pipebomblauncher Classname tf_weapon_rocketlauncher } } WU_Firerate { Name "+10% fire rate" Attribute "fire rate bonus" Increment -0.1 Cap 0.7 Cost 200 Tier 1 AllowedWeapons { Slot Primary Slot Secondary Classname tf_weapon_revolver } DisallowedWeapons { Classname tf_weapon_flamethrower Classname tf_weapon_jar Classname tf_weapon_jar_milk Classname tf_weapon_jar_gas Classname tf_weapon_mechanical_arm Classname tf_weapon_medigun Classname tf_weapon_lunchbox Classname tf_weapon_lunchbox_drink Classname tf_weapon_parachute Classname tf_wearable_demoshield ItemName "The B.A.S.E. Jumper" ItemName "Ali Baba's Wee Booties" ItemName "The Bootlegger" ItemName "The Gunboats" ItemName "The Mantreads" ItemName "The Razorback" ItemName "Darwin's Danger Shield" ItemName "The Cozy Camper" ItemName Tactigatling } } WU_FirerateTgat { Name "+10% fire rate" Attribute "fire rate bonus" Increment -0.1 Cap 0.6 Cost 200 Tier 1 AllowedWeapons { ItemName "Tactigatling" } } WU_AmmoPrim { Name "+50% max ammo" Attribute "maxammo primary increased" Increment 0.5 Cap 2 Cost 250 Tier 1 AllowedWeapons { Slot Primary } DisallowedWeapons { Classname weapon_demoman_boots ItemName "The B.A.S.E. Jumper" ItemName "Ali Baba's Wee Booties" ItemName "The Bootlegger" } } WU_AmmoSecond { Name "+50% max ammo" Attribute "maxammo secondary increased" Increment 0.5 Cap 2 Cost 250 Tier 1 AllowedWeapons { Slot Secondary } DisallowedWeapons { Classname tf_weapon_jar Classname tf_weapon_jar_milk Classname tf_weapon_jar_gas Classname tf_weapon_mechanical_arm Classname tf_weapon_medigun Classname tf_weapon_lunchbox Classname tf_weapon_lunchbox_drink Classname tf_wearable_demoshield ItemName "The B.A.S.E. Jumper" ItemName "Ali Baba's Wee Booties" ItemName "The Bootlegger" ItemName "The Gunboats" ItemName "The Mantreads" ItemName "The Razorback" ItemName "Darwin's Danger Shield" ItemName "The Cozy Camper" } } WU_Revspeed { Name "+10% faster while deployed" Attribute "aiming movespeed decreased" Increment 0.1 Cap 1.5 Cost 250 Tier 1 AllowedWeapons { Classname tf_weapon_minigun } } WU_Reloadspeed { Name "+10% faster reload" Attribute "faster reload rate" Increment -0.1 Cap 0.7 Cost 250 Tier 1 AllowedWeapons { Slot Primary Slot Secondary Classname tf_weapon_revolver } DisallowedWeapons { Classname tf_weapon_flamethrower Classname tf_weapon_minigun Classname tf_weapon_jar Classname tf_weapon_jar_milk Classname tf_weapon_jar_gas Classname tf_weapon_mechanical_arm Classname tf_weapon_medigun Classname tf_weapon_lunchbox Classname tf_weapon_lunchbox_drink Classname tf_wearable_demoshield ItemName "The B.A.S.E. Jumper" ItemName "Ali Baba's Wee Booties" ItemName "The Bootlegger" ItemName "The Gunboats" ItemName "The Mantreads" ItemName "The Razorback" ItemName "Darwin's Danger Shield" ItemName "The Cozy Camper" } } WU_MedicRange { Name "+20% medigun range" Attribute "mult medigun range" Increment 0.2 Cap 2 Cost 150 Tier 1 AllowedWeapons { Classname tf_weapon_medigun } } WU_MedicUber { Name "+20% über charge rate" Attribute "ubercharge rate bonus" Increment 0.2 Cap 2 Cost 200 Tier 1 AllowedWeapons { Classname tf_weapon_medigun } } WU_ArrowMaster { Name "+2 arrows per shot" Attribute "arrow mastery" Increment 1 Cap 2 Cost 400 Tier 1 AllowedWeapons { Classname tf_weapon_compound_bow } } WU_MeleeCleave { Name "Melee cleave attack" Attribute "melee cleave attack" Increment 1 Cap 1 Cost 500 Tier 1 AllowedWeapons { Slot Melee } } // WU_MeleeDmg // Stupid op // { // Name "+10% target max hp as damage" // Attribute "dmg max health" // Increment 0.1 // Cap 0.2 // Cost 200 // Tier 1 // AllowedWeapons // { // Slot Melee // } // } WU_MeleeHoK { Name "+10% lifesteal" Attribute "damage returns as health" Increment 0.1 Cap 0.5 Cost 200 Tier 1 AllowedWeapons { Slot Melee } } WU_FlamerAirblast { Name "+25% airblast strength" Attribute "airblast pushback scale" Increment 0.25 Cap 1.5 Cost 200 Tier 1 AllowedWeapons { Classname tf_weapon_flamethrower } DisallowedWeapons { ItemName "The Phlogistinator" } } WU_FlamerABDmg { Name "+25% afterburn damage bonus" Attribute "weapon burn dmg increased" Increment 0.25 Cap 2 Cost 200 Tier 1 AllowedWeapons { Classname tf_weapon_flamethrower } } WU_EngieBuildingHP { Name "+100% building health" Attribute "engy building health bonus" Increment 1 Cap 8 Cost 1500 Tier 1 AllowPlayerClass Engineer AllowedWeapons { Classname tf_weapon_pda_engineer_build } } WU_EngieBuildSpeed { Name "+20% construction rate" Attribute "Construction rate increased" Increment 0.2 Cap 2 Cost 500 Tier 1 AllowPlayerClass Engineer AllowedWeapons { Slot Melee } } // WU_EngieSentryAmmo // isn't removed properly when refunding // { // Name "+100% Sentry Ammo" // Attribute "mvm sentry ammo" // Increment 1 // Cap 3 // Cost 1500 // Tier 1 // AllowPlayerClass Engineer // AllowedWeapons // { // Classname tf_weapon_pda_engineer_build // } // } WU_EngieDispenserRange { Name "+100% dispenser range" Attribute "engy dispenser radius increased" Increment 1 Cap 11 Cost 100 Tier 1 AllowPlayerClass Engineer AllowedWeapons { Classname tf_weapon_pda_engineer_build } } WU_EngieDispenserHeal { Name "+10% dispenser health/ammo regen" Attribute "mult dispenser rate" Increment 0.1 Cap 1.2 Cost 2000 Tier 1 AllowPlayerClass Engineer AllowedWeapons { Classname tf_weapon_pda_engineer_build } } WU_SniperCharge { Name "+25% charge rate" Attribute "SRifle Charge rate increased" Increment 0.25 Cap 2 Cost 100 Tier 1 AllowedWeapons { Classname tf_weapon_sniperrifle Classname tf_weapon_sniperrifle_classic Classname tf_weapon_sniperrifle_decap } } WU_SniperDmgBonus { Name "+25% headshot damage" Attribute "headshot damage increase" Increment 0.25 Cap 2 Cost 400 Tier 1 AllowedWeapons { Classname tf_weapon_sniperrifle Classname tf_weapon_sniperrifle_classic Classname tf_weapon_sniperrifle_decap Classname tf_weapon_compound_bow ItemName "Secondary Revolver" ItemName "Primary Revolver" ItemName "Primary Ambassador" ItemName "Big Iron" } } WU_MedicMilkbolt { Name "Secondary fire: Milk Bolt" Attribute "fires milk bolt" Increment 5 Cap 5 Cost 300 Tier 1 AllowedWeapons { Classname tf_weapon_crossbow } } WU_MedicClipsize_Crossbow { Name "+1 clip size" Attribute "clip size upgrade atomic" Increment 1 Cap 4 Cost 400 Tier 1 AllowedWeapons { Classname tf_weapon_crossbow } } WU_MedicFireSyringe { Name "Fire Bolts" Attribute "Set DamageType Ignite" Increment 1 Cap 1 Cost 300 Tier 1 AllowPlayerClass Medic AllowedWeapons { Classname tf_weapon_crossbow } DisallowedWeapons { Classname tf_weapon_syringegun_medic ItemName "Das Maschinenpistole" } } WU_ImpactBlast { Name "Grenades explode on impact" Attribute "grenade explode on impact" Increment 1 Cap 1 Cost 500 Tier 1 AllowedWeapons { Classname tf_weapon_grenadelauncher } } WU_SapperRange { Name "Sapper range" Attribute "robo sapper" Increment 1 Cap 3 Cost 400 Tier 1 AllowedWeapons { ItemName TF_WEAPON_BUILDER_SPY ItemName "The Red-Tape Recorder" } } WU_Caber { Name "Regenerate Caber" Attribute "regenerate stickbomb" Increment 1 Cap 1 Cost 400 Tier 1 AllowedWeapons { ItemName "The Ullapool Caber" } } WU_PaP_T3_Generic // for guns that don't support skins save for DF { Name "+100% Damage bonus" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { Slot Primary Slot Secondary } DisallowedWeapons // ban weapons with 'unique' versions { ItemName TF_WEAPON_MINIGUN ItemName TF_WEAPON_MEDIGUN // can't be upgraded all the way ItemName TF_WEAPON_SHOTGUN_PRIMARY ItemName TF_WEAPON_SHOTGUN_HWG ItemName TF_WEAPON_SHOTGUN_PYRO ItemName TF_WEAPON_SHOTGUN_SOLDIER ItemName TF_WEAPON_GRENADELAUNCHER ItemName TF_WEAPON_SCATTERGUN ItemName TF_WEAPON_ROCKETLAUNCHER ItemName TF_WEAPON_FLAMETHROWER ItemName TF_WEAPON_PIPEBOMBLAUNCHER ItemName TF_WEAPON_PISTOL ItemName TF_WEAPON_SNIPERRIFLE Classname tf_weapon_syringegun_medic Classname tf_weapon_bat_giftwrap ItemName "The Flying Guillotine" ItemName "The Gas Passer" // can't be upgraded all the way ItemName "The Dragon's Fury" ItemName "Double Barrel" ItemName "Primary Revolver" ItemName "Secondary Revolver" ItemName "Primary Ambassador" ItemName "The Shortstop" ItemName "The Crusader's Crossbow" } OnApply { Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Pistol { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_PISTOL } OnApply { Output "!activator,$giveitem,Great Gatsby,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_DBarrel { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Double Barrel" } OnApply { Output "!activator,$giveitem,The Gut Wrecker,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Scatter { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SCATTERGUN } OnApply { Output "!activator,$giveitem,Boston Handshake,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_FaN { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Force-a-Nature" } OnApply { Output "!activator,$giveitem,Super Shotgun,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Rocket { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_ROCKETLAUNCHER } OnApply { Output "!activator,$giveitem,Earth Shaker,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_ShotgunSold { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SHOTGUN_SOLDIER } OnApply { Output "!activator,$giveitem,Mule Kick,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Flamer { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_FLAMETHROWER } OnApply { Output "!activator,$giveitem,Face Melter,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_DF { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Dragon's Fury" } OnApply { Output "!activator,$giveitem,Inferno Cannon,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_ShotgunPyro { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SHOTGUN_PYRO } OnApply { Output "!activator,$giveitem,Burning Love,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Grenadelauncher { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_GRENADELAUNCHER } OnApply { Output "!activator,$giveitem,The Fat Boy,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Stickies { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_PIPEBOMBLAUNCHER } OnApply { Output "!activator,$giveitem,The Cactus Blast,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Minigun { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_MINIGUN } OnApply { Output "!activator,$giveitem,Death Machine,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_ShotgunHeavy { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SHOTGUN_HWG } OnApply { Output "!activator,$giveitem,The Grand Slam,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_EngieShotgun { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SHOTGUN_PRIMARY } OnApply { Output "!activator,$giveitem,Dell-OROM's Lament,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Syringegun { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { Classname tf_weapon_syringegun_medic } OnApply { Output "!activator,$giveitem,DNA Rejuvenator,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Crossbow { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Crusader's Crossbow" ItemName "Festive Crusader's Crossbow" // can't even use this but ehhhhhh } OnApply { Output "!activator,$giveitem,Durchbohren,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Sniper { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName TF_WEAPON_SNIPERRIFLE } OnApply { Output "!activator,$giveitem,The Love Tap,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Bow { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { Classname tf_weapon_compound_bow } OnApply { Output "!activator,$giveitem,The Bristleback,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Revolvers { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "TF_WEAPON_REVOLVER" } OnApply { Output "!activator,$giveitem,Sally,0" // Output "!activator,$giveitem,Mustang,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Amby { Name "Überweapon Upgrade" Attribute "dmg penalty vs players" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Ambassador" } OnApply { Output "!activator,$giveitem,Kingpin,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_M16A1 { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "M16A1" ItemName "M16A1 Sniper" } OnApply { Output "!activator,$giveitem,AK-48,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_MegaDestroy_Soldier { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Mega Destoryer Soldier" } OnApply { Output "!activator,$giveitem,Head Splitter Soldier,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_MegaDestroy_Pyro { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Mega Destoryer Pyro" } OnApply { Output "!activator,$giveitem,Head Splitter Pyro,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_MegaDestroy_Engi { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Mega Destoryer Engineer" } OnApply { Output "!activator,$giveitem,Head Splitter Engineer,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_ClusterBomb { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Celtic Cluster" } OnApply { Output "!activator,$giveitem,The Cluster Bomber,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Ultimatum { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Ultimatum" } OnApply { Output "!activator,$giveitem,Wet Warfare,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_PortableOrdnance { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Portable Ordnance" } OnApply { Output "!activator,$giveitem,Automatic Peacemaker,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Infltrator { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Infltrator's Favorite" } OnApply { Output "!activator,$giveitem,Injuste,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_MuleMaluer { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "Mule Mauler 600" } OnApply { Output "!activator,$giveitem,Horse Harraser 999,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } WU_PaP_T3_Stormbringer { Name "Überweapon Upgrade" Attribute "damage bonus HIDDEN" Increment 1 Cap 2 Cost 5000 Tier 2 AllowedWeapons { ItemName "The Stormbringer" } OnApply { Output "!activator,$giveitem,The Boomstick,0" Output "!activator,speakresponseconcept,TLK_MVM_LOOT_ULTRARARE,0,-1" } } } ExtraSpawnPoint { Name "spawnbot_tank" StartDisabled 0 TeamNum 3 X "-8192" Y "0" Z "-60" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "2379" Y "675" Z "52" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "1867" Y "1168" Z "52" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "2400" Y "-192" Z "52" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "2124" Y "-771" Z "52" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "646" Y "-1960" Z "52" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-1483" Y "-3004" Z "164" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-3006" Y "-1472" Z "48" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-3373" Y "-107" Z "44" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-3200" Y "1153" Z "44" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-1665" Y "2538" Z "84" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "-938" Y "2877" Z "72" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "45" Y "3057" Z "115" } ExtraSpawnPoint { Name "spawnbot_zombie" StartDisabled 0 TeamNum 3 X "1148" Y "2960" Z "116" } PointTemplates { corelogic // this shit also needs to be here so things work properly { NoFixup 1 logic_auto { "targetname" "mainrelay" "OnMapSpawn" "wave_finished_relay,Kill,,0,-1" // this relay is causing all kinds of shit!!! "OnMapSpawn" "trigger_multiple,Kill,,0,-1" "OnMapSpawn" "door_red_large_win_*,Open,,0,-1" "OnMapSpawn" "trigger_push,Kill,,0,-1" "OnMapSpawn" "ufo_*,Kill,,0,-1" "OnMapSpawn" "trigger_catapult,Kill,,0,-1" "OnMapSpawn" "red_respawnroom1,Kill,,0,-1" "OnMapSpawn" "bombpath_arrows_*,Kill,,0,-1" "OnMapSpawn" "m0*,Kill,,0,-1" "OnMapSpawn" "m10,Kill,,0,-1" "OnMapSpawn" "@bb144 -584 0 472 384 160@func_respawnroomvisualizer,Kill,,0,-1" "OnMapSpawn" "relay_attributes,Kill,,0,-1" "OnMapSpawn" "relay_invisible,Kill,,0,-1" "OnMapSpawn" "player,$RemoveOutput,effects,1,-1" "OnMapSpawn" "player,$RemoveOutput,effects,2,-1" "OnMapSpawn" "player,$RemoveOutput,renderfx,0,-1" // trying to undo shadows shit again "OnMapSpawn" "merasmus_*,Kill,,0,-1" "OnMapSpawn" "item_ammopack_*,Kill,,0,-1" // nerf the kits, first they have to get out the way "OnMapSpawn" "item_healthkit_*,Kill,,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger gameover:Enable:0:-1" "OnMapSpawn" "realtimer,trigger,,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger respawn_relay:Trigger:0:-1" // for those people who commit suicide during wave pause "OnMapSpawn" "fog_controller,AddOutput,spawnflags 1:0:-1" "OnMapSpawn" "fog_controller,AddOutput,farz -1:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger LMA:Enable:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger tutorial_relay2:Disable:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger hints_*:Kill:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger tutorial_*:Kill:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger navman:RecomputeBlockers:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger navman:RecomputeBlockers:1:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger navman:RecomputeBlockers:2:-1" } tf_point_nav_interface { targetname navman } game_forcerespawn { targetname respawner } logic_relay // only for testing, never really use this { targetname respawn_relay "OnTrigger" "respawner,ForceTeamRespawn,2,0,-1" } logic_relay // clear money logic as a failsafe against stacking { targetname wave_output_clear OnTrigger "player,$RemoveOutput,$OnDamageReceived,0,-1" OnTrigger "player,$RemoveOutput,$OnDeath,0,-1" OnTrigger "fog_controller,SetStartDist,600,,-1" OnTrigger "fog_controller,SetEndDist,4000,,-1" OnTrigger "fog_controller,SetColor,0 0 0,,-1" } math_counter { "targetname" "roundscleared" "startvalue" 0 "outValue" "survivalcheck,SetValueCompare,,0,-1" // "outValue" "player,$DisplayTextChat,,0,-1" } logic_compare { "targetname" "survivalcheck" "initialValue" 0 "CompareValue" 5 // get a bonus four times for that 'start getting OP' money "OnEqualTo" "player,$AddCurrency,2000,,-1" "OnEqualTo" "player,$DisplayTextCenter,You've received a 2000 Survival Bonus!,,-1" "OnEqualTo" "roundscleared,SetValue,0,,-1" "OnEqualTo" "survivalcheck,SetValue,0,,-1" } } Spawn_things { NoFixup 1 prop_dynamic // spawnroom { model "models/props/mvm_shadows/spawnroom.mdl" disableshadows 1 solid 6 // come on propper origin "320 -32 32" angles "0 270 0" } // prop_dynamic // Fuck off // { // model "models/props_gameplay/door_grate003_bottom.mdl" // disableshadows 1 // solid 6 // origin "133 0 -6" // angles "90 0 0" // } // prop_dynamic // { // model "models/props_gameplay/door_grate003_bottom.mdl" // disableshadows 1 // solid 6 // origin "59 0 -6" // angles "90 180 0" // } prop_dynamic { model "models/props_viaduct_event/fog_plane03.mdl" disableshadows 1 solid 0 modelscale 2 rendercolor "103 103 103" origin "-838 -2608 1634" angles "0 0 -180" } prop_dynamic { model "models/props_viaduct_event/fog_plane03.mdl" disableshadows 1 solid 0 modelscale 2 rendercolor "103 103 103" origin "-854 2690 1634" angles "0 0 -180" } func_forcefield // spawn ceiling { StartDisabled 0 TeamNum 3 mins "-240 -608 -8" maxs "240 608 8" origin "256 16 768" } // func_regenerate // { // StartDisabled 0 // teamnum 2 // targetname spawn_sup // associatedmodel cap_hatch_destroy_delete_prop // avoid errors // mins "-289 -448 -96" // maxs "289 448 96" // origin "256 -96 96" // // OnStartTouchAll "!activator,$RefillAmmo,,-1" // } // prop_dynamic // { // model "models/props_gameplay/resupply_locker.mdl" // disableshadows 1 // solid 6 // origin "478 -188 0" // angles "0 180 0" // targetname resupply // } trigger_teleport { StartDisabled 1 filtername filter_redteam spawnflags 1 target warp_target targetname red_spawn_warp mins "-232 -448 -16" maxs "232 448 3000" origin "264 -96 0" } trigger_add_tf_player_condition // add uber + refill health on quickrevivers { targetname red_spawn_warp duration 3 filtername filter_redteam spawnflags 1 StartDisabled 1 condition 5 mins "-232 -448 -16" maxs "232 448 3000" origin "264 -96 0" "OnStartTouchAll" "!activator,SetHealth,100,-1" } trigger_teleport { StartDisabled 1 filtername filter_redteam spawnflags 1 target warp_target targetname red_spawn_warp mins "-240 -136 -16" maxs "240 136 3000" origin "256 488 224" } func_nobuild // don't build in spawn { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-232 -448 -16" maxs "232 448 17" origin "264 -96 0" } info_teleport_destination { targetname warp_target angles "0 270 0" origin "322 -629 40" } info_teleport_destination { targetname warp_target angles "0 90 0" origin "258 428 40" } ambient_generic { health 8 message "ambient\atmosphere\thunder1.wav" radius 20 spawnflags 49 targetname atmos_1 } ambient_generic { health 8 message "ambient\atmosphere\thunder2.wav" radius 20 spawnflags 49 targetname atmos_2 } ambient_generic { health 8 message "ambient\atmosphere\thunder3.wav" radius 20 spawnflags 49 targetname atmos_3 } logic_case { targetname thunderpick "OnCase01" "atmos_1,PlaySound,,0,-1" "OnCase02" "atmos_2,PlaySound,,0,-1" "OnCase03" "atmos_3,PlaySound,,0,-1" } logic_timer { userandomtime 1 lowerrandombound 10 upperrandombound 25 "OnTimer" "thunderpick,PickRandom,,0,-1" } logic_relay // get out of here, you fucks { targetname stage_start "OnTrigger" "powerup_timer,Enable,,0,-1" "OnTrigger" "roundtext,AddOutput,color 255 65 65:0:-1" "OnTrigger" "roundcounter,add,1,0,-1" "OnTrigger" "realtimer,trigger,,0,-1" "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "navman,RecomputeBlockers,,2,-1" "OnTrigger" "navman,RecomputeBlockers,,3,-1" "OnTrigger" "navman,RecomputeBlockers,,4,-1" } logic_relay // make it count { targetname stage_start_finale "OnTrigger" "powerup_timer,Enable,,0,-1" "OnTrigger" "finale_snd,PlaySound,,0,-1" "OnTrigger" "roundtext,AddOutput,color 255 65 65:0:-1" "OnTrigger" "roundcounter,add,1,0,-1" "OnTrigger" "realtimer,trigger,,0,-1" "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "navman,RecomputeBlockers,,2,-1" "OnTrigger" "navman,RecomputeBlockers,,3,-1" "OnTrigger" "navman,RecomputeBlockers,,4,-1" } logic_relay // interval timer { targetname stage_clear "OnTrigger" "player,$PlaySoundToSelf,#*shadows/stage_clear.mp3,0,-1" "OnTrigger" "respawner,ForceTeamRespawn,2,0,-1" "OnTrigger" "roundtext,AddOutput,color 222 222 222:0:-1" // lets give it a go "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "powerup_timer,Disable,,0,-1" "OnTrigger" "hologram_*,Disable,,0,-1" "OnTrigger" "plate,skin,0,0,-1" "OnTrigger" "roundscleared,Add,1,0,0" } logic_relay // interval timer { targetname stage_clear_finale "OnTrigger" "player,$PlaySoundToSelf,#*shadows/stage_clear.mp3,0,-1" "OnTrigger" "respawner,ForceTeamRespawn,2,0,-1" "OnTrigger" "roundtext,AddOutput,color 222 222 222:0:-1" // lets give it a go "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "powerup_timer,Disable,,0,-1" "OnTrigger" "hologram_*,Disable,,0,-1" "OnTrigger" "plate,skin,0,0,-1" "OnTrigger" "roundscleared,Add,1,0,0" } prop_dynamic // fog dome { model "models/props_viaduct_event/underworld_sky01.mdl" targetname bossfog_dome disableshadows 1 startdisabled 1 solid 0 scale 1 // mess with later to ensure scale? angles "0 90 0" origin "0 0 0" } env_fog_controller // boss fog { targetname fog_bossround // angles "0 143 0" // use_angles 1 // fogblend 1 fogcolor "129 130 180" fogcolor2 "131 132 177" fogenable 1 fogstart -1000 fogend 9000 } env_fade { targetname bossfog_fadein duration 5 // hold 7.2 // doesn't work with alpha rendercolor "34 38 33" renderamt 255 // alpha } env_fade { targetname bossfog_fadeout duration 5 // hold 7.2 // doesn't work with alpha rendercolor "34 38 33" spawnflags 1 renderamt 255 // alpha } logic_relay { targetname bossstage_start "OnTrigger" "door_red_large_win_*,Close,,0,-1" "OnTrigger" "red_spawn_warp,Enable,,0,-1" "OnTrigger" "roundtext,AddOutput,color 255 65 65:0:-1" "OnTrigger" "roundcounter,add,1,0,-1" "OnTrigger" "realtimer,trigger,,0,-1" "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "bossfog_fadein,Fade,0,-1" "OnTrigger" "bossfog_fadeout,Fade,,5,-1" "OnTrigger" "bossfog_dome,Enable,,5,-1" "OnTrigger" "fog_controller,SetStartDist,-15000,5,-1" "OnTrigger" "fog_controller,SetEndDist,6000,5,-1" "OnTrigger" "fog_controller,SetColor,34 38 33,5,-1" "OnTrigger" "fog_controller,SetColorSecondary,34 38 33,5,-1" "OnTrigger" "navman,RecomputeBlockers,,2,-1" "OnTrigger" "navman,RecomputeBlockers,,3,-1" "OnTrigger" "navman,RecomputeBlockers,,4,-1" "OnTrigger" "player,$PlaySoundToSelf,shadows/announcer_bossround.mp3,7,-1" "OnTrigger" "tankround_snd,PlaySound,,14,-1" "OnTrigger" "player,SpeakResponseConcept,TLK_MVM_TANK_CALLOUT,17.5,-1" "OnTrigger" "player,SpeakResponseConcept,TLK_MVM_ATTACK_THE_TANK ,35,-1" } logic_relay { targetname bossstage_start_tread "OnTrigger" "door_red_large_win_*,Close,,0,-1" "OnTrigger" "red_spawn_warp,Enable,,0,-1" "OnTrigger" "roundtext,AddOutput,color 255 65 65:0:-1" "OnTrigger" "roundcounter,add,1,0,-1" "OnTrigger" "realtimer,trigger,,0,-1" "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "bossfog_fadein,Fade,0,-1" "OnTrigger" "bossfog_fadeout,Fade,,5,-1" "OnTrigger" "bossfog_dome,Enable,,5,-1" "OnTrigger" "fog_controller,SetStartDist,-15000,5,-1" "OnTrigger" "fog_controller,SetEndDist,6000,5,-1" "OnTrigger" "fog_controller,SetColor,34 38 33,5,-1" "OnTrigger" "fog_controller,SetColorSecondary,34 38 33,5,-1" "OnTrigger" "navman,RecomputeBlockers,,2,-1" "OnTrigger" "navman,RecomputeBlockers,,3,-1" "OnTrigger" "navman,RecomputeBlockers,,4,-1" "OnTrigger" "player,$PlaySoundToSelf,shadows/announcer_chuckle.mp3,7,-1" } logic_relay // no more boss { targetname bossstage_clear "OnTrigger" "player,$PlaySoundToSelf,#*shadows/bossround_end.mp3,0,-1" "OnTrigger" "respawner,ForceTeamRespawn,2,0,-1" "OnTrigger" "tankround_snd,volume,0,0,-1" "OnTrigger" "bossfight_snd,volume,0,0,-1" "OnTrigger" "bossround_music,volume,0,0,-1" "OnTrigger" "roundtext,AddOutput,color 222 222 222:0:-1" // lets give it a go "OnTrigger" "realtimer,trigger,,0.23,-1" "OnTrigger" "powerup_timer,Disable,,0,-1" "OnTrigger" "hologram_*,Disable,,0,-1" "OnTrigger" "plate,skin,0,0,-1" "OnTrigger" "red_spawn_warp,Disable,,0,-1" "OnTrigger" "door_red_large_win_*,Open,,0,-1" "OnTrigger" "bossfog_fadein,Fade,0,-1" "OnTrigger" "bossfog_fadeout,Fade,,5,-1" "OnTrigger" "bossfog_dome,Disable,,5,-1" "OnTrigger" "roundscleared,Add,1,0,0" "OnTrigger" "fog_controller,SetStartDist,600,5,-1" "OnTrigger" "fog_controller,SetEndDist,4000,5,-1" "OnTrigger" "fog_controller,SetColor,0 0 0,5,-1" "OnTrigger" "fog_controller,SetColorSecondary,255 255 255,5,-1" } logic_branch { targetname tgun_check // does someone already have thundergun InitialValue 0 OnFalse "!activator,$AwardAndGiveExtraItem,Thunder Gun,-1" OnFalse "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnFalse "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnFalse "!activator,$DisplayTextChat,You've received an Überweapon: The Thunder Gun!,0,-1" OnFalse "tgun_check,Toggle,,-1" // nothing toggles this back, so thundergun is a one-time-only UW OnTrue "!activator,$AwardAndGiveExtraItem,Double Barrel,-1" OnTrue "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnTrue "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnTrue "!activator,$DisplayTextChat,You've received: The Double Barrel!,0,-1" } prop_dynamic // stairs at stable { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 180 0" origin "928 1544 96" } prop_dynamic // stairs at stable { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 180 0" origin "-571 1924 87" } prop_dynamic // stairs at stable { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 0 0" origin "-568 1914 87" } prop_dynamic // stairs next to barn tank { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 0 0" origin "-846 -1790 60" } prop_dynamic // stairs next to barn tank { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 12 0" origin "-1483 -1834 60" } prop_dynamic // stairs next to barn tank { model "models/props_forest/wood_stairs96.mdl" disableshadows 1 solid 6 angles "0 192 0" origin "-1492 -1827 60" } } Plate_Big // spawn powerups here { NoFixup 1 prop_dynamic { model "models/props_gameplay/cap_point_base.mdl" disableshadows 1 solid 6 targetname plate origin "-540 -0 -182" } func_rotating { spawnflags 65 // nice maxspeed 48 solidbsp 0 rendermode 10 targetname powerup_spinner origin "-540 -0 -164" } prop_dynamic // nuke { model "models/props_trainyard/cart_bomb_separate.mdl" disableshadows 1 solid 0 targetname hologram_nuke rendermode 1 // hologram renderfx 16 startdisabled 1 rendercolor "255 0 0" parentname powerup_spinner angles "0 90 0" origin "-540 -0 -128" } env_shake { amplitude 16 duration 3 frequency 40 radius 48 spawnflags 1 targetname nuke_shake } env_fade { targetname nuke_fade duration 1.3 spawnflags 1 rendercolor "255 255 255" } trigger_add_tf_player_condition { targetname hologram_nuke duration 1 filtername filter_redteam spawnflags 1 StartDisabled 1 condition 23 origin "-540 2 -128" mins "-26 -26 -26" maxs "26 26 26" "OnStartTouchAll" "hologram_nuke,Disable,,-1" "OnStartTouchAll" "hologram_nuke_snd,PlaySound,,-1" "OnStartTouchAll" "nuke_shake,StartShake,,-1" "OnStartTouchAll" "nuke_fade,Fade,,-1" "OnStartTouchAll" "hologram_nuke_hurt,Enable,,0,-1" "OnStartTouchAll" "hologram_nuke_hurt,Disable,,0.7,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,shadows/powerup_nuke_01.mp3,1,-1" "OnStartTouchAll" "powerup_timer,Enable,,-1" "OnStartTouchAll" "plate,skin,0,-1" "OnStartTouchAll" "!activator,$AddCurrency,500,3,-1" } ambient_generic { health 10 message )misc/doomsday_missile_explosion.wav radius 20 pitch 100 spawnflags 49 targetname hologram_nuke_snd } trigger_hurt { damage 27500 spawnflags 1 mins "-9999 -9999 -9999" maxs "9999 9999 9999" startdisabled 1 targetname hologram_nuke_hurt filtername filter_notred origin "0 0 0" } filter_activator_tfteam { targetname filter_notred teamnum 2 negated 1 // anyone who isnt red passes } prop_dynamic // instakill { model "models\props_mvm\mvm_human_skull.mdl" disableshadows 1 skin 1 solid 0 modelscale 3 targetname hologram_instakill rendermode 1 // hologram renderfx 16 startdisabled 1 parentname powerup_spinner rendercolor "255 0 0" angles "0 0 0" origin "-540 -0 -134" } trigger_add_tf_player_condition { targetname hologram_instakill duration 1 filtername filter_redteam spawnflags 1 StartDisabled 1 condition 23 origin "-540 2 -128" mins "-26 -26 -26" maxs "26 26 26" "OnStartTouchAll" "hologram_instakill,Disable,,-1" "OnStartTouchAll" "powerup_timer,Enable,,-1" "OnStartTouchAll" "plate,skin,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,items/powerup_pickup_crits.wav,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,shadows/powerup_instagib.mp3,1,-1" "OnStartTouchAll" "!activator,$AddPlayerAttribute,dmg current health|5,,-1" "OnStartTouchAll" "!activator,$AddCond,11,,-1" // redundant but for visual feedback "OnStartTouchAll" "!activator,$RemovePlayerAttribute,dmg current health,45,-1" "OnStartTouchAll" "!activator,$RemoveCond,11,45,-1" } prop_dynamic // resupply { model "models\props_gameplay\resupply_locker.mdl" disableshadows 1 skin 1 solid 0 modelscale 1 targetname hologram_maxammo rendermode 1 // hologram renderfx 16 startdisabled 1 parentname powerup_spinner rendercolor "255 0 0" angles "0 0 0" origin "-540 -0 -134" } trigger_add_tf_player_condition { targetname hologram_maxammo duration 1 filtername filter_redteam spawnflags 1 StartDisabled 1 condition 23 origin "-540 2 -128" mins "-26 -26 -26" maxs "26 26 26" "OnStartTouchAll" "hologram_maxammo,Disable,,-1" "OnStartTouchAll" "powerup_timer,Enable,,-1" "OnStartTouchAll" "plate,skin,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,items/powerup_pickup_agility.wav,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,shadows/powerup_resupply_01.mp3,1,-1" "OnStartTouchAll" "!activator,$RefillAmmo,,-1" } prop_dynamic // free money { model "models\items\currencypack_large.mdl" disableshadows 1 skin 1 solid 0 modelscale 1 targetname hologram_money rendermode 1 // hologram renderfx 16 startdisabled 1 parentname powerup_spinner rendercolor "255 0 0" angles "0 0 0" origin "-540 -0 -134" } trigger_add_tf_player_condition { targetname hologram_money duration 1 filtername filter_redteam spawnflags 1 StartDisabled 1 condition 23 origin "-540 2 -128" mins "-26 -26 -26" maxs "26 26 26" "OnStartTouchAll" "hologram_money,Disable,,-1" "OnStartTouchAll" "powerup_timer,Enable,,-1" "OnStartTouchAll" "plate,skin,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,items/powerup_pickup_agility.wav,0,-1" "OnStartTouchAll" "!activator,$PlaySoundToSelf,shadows/powerup_money_01.mp3,1,-1" "OnStartTouchAll" "!activator,$AddCurrency,3000,-1" } ambient_generic { targetname powerup_snd spawnflags 48 health 10 radius 8000 pitch 80 message )weapons\buffed_on.wav } logic_timer { targetname powerup_timer // easier disable since this is still under thinking StartDisabled 1 UseRandomTime 1 LowerRandomBound 60 UpperRandomBound 100 "OnTimer" "powerup_case,PickRandomShuffle,,-1" "OnTimer" "powerup_timer,Disable,,-1" "OnTimer" "powerup_snd,PlaySound,,-1" "OnTimer" "plate,Skin,1,-1" } logic_case { targetname powerup_case "OnCase01" "hologram_instakill,Enable,,0,-1" "OnCase02" "hologram_money,Enable,,0,-1" "OnCase03" "hologram_maxammo,Enable,,0,-1" // "OnCase04" "hologram_ghost,Enable,,0,-1" "OnCase05" "hologram_nuke,Enable,,0,-1" } } BuildingBlocks // no buildy { NoFixup 1 func_nobuild // concrete blocks near fields { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-42 -160 -99" maxs "42 160 99" origin "698 488 63" } func_nobuild // concrete blocks near fields { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-70 -58 -99" maxs "70 58 99" origin "914 98 63" } func_nobuild // concrete blocks near fields { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-62 -214 -99" maxs "62 214 99" origin "1046 -58 63" } func_nobuild // concrete blocks near fields { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-20 -48 -99" maxs "20 48 99" origin "964 -224 63" } func_nobuild // concrete blocks near fields { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-110 -157 -99" maxs "110 157 99" origin "969 -928 63" } func_nobuild // more blocks { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-157 -38 -99" maxs "157 38 99" origin "-465 -560 92" } func_nobuild // one block near shack { AllowDispenser 0 AllowSentry 0 AllowTeleporters 0 StartDisabled 0 Teamnum 2 mins "-59 -59 -61" maxs "59 59 61" origin "-1525 -1141 59" } func_nav_avoid // near the tank at the barn { tags bigguyalert mins "-106 -288 -26" maxs "106 288 26" origin "-738 -1622 18" } func_nav_avoid // jump spot, the boxes near stables { tags bigguyalert mins "-84 -68 -48" maxs "84 68 48" origin "-556 -1916 50" } func_nav_avoid // jump spot, the barbfence { tags bigguyalert mins "-384 -68 -48" maxs "384 68 48" origin "-912 -1788 45" } func_nav_avoid // beams at stables { tags bigguyalert mins "-116 -24 -72" maxs "166 24 72" origin "-220 1842 144" } func_nav_avoid // beams at stables { tags bigguyalert mins "-116 -32 -72" maxs "166 32 72" origin "-220 1192 144" } func_forcefield // level boundaries { StartDisabled 0 TeamNum 3 mins "-64 -1472 -3168" maxs "64 1472 3168" origin "-5184 0 2912" } func_forcefield // level boundaries, vertical { StartDisabled 0 TeamNum 3 mins "-4575 -4384 -32" maxs "4575 4384 32" origin "-671 96 1344" } func_forcefield // clipping for rooftop { StartDisabled 0 TeamNum 3 mins "-191.5 -209 -514" maxs "191.5 209 514" origin "-800 -702 798" } func_forcefield // clipping for rooftop { StartDisabled 0 TeamNum 3 mins "-96 -201.5 -480" maxs "96 201.5 480" origin "-1088 -694 832" } func_forcefield // clipping for rooftop { StartDisabled 0 TeamNum 3 mins "-192 -112 -560" maxs "192 112 560" origin "192 -720 752" } func_forcefield // clipping for stables { StartDisabled 0 TeamNum 3 mins "-736 -384 -8" maxs "736 384 8" origin "256 1536 392" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-12 -132 -72" maxs "12 132 72" origin "-1036 692 72" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-80 -4 -72" maxs "80 4 72" origin "-960 556 72" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-48 -4 -48" maxs "48 4 48" origin "-824 556 48" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-4 -88 -48" maxs "4 88 48" origin "-780 648 48" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-20 -12 -48" maxs "20 12 48" origin "-796 748 48" } func_forcefield // clipping for connector room, L-walk { StartDisabled 0 TeamNum 3 mins "-40 -12 -58" maxs "40 12 58" origin "-856 748 58" } func_forcefield // clipping for spawn window { StartDisabled 0 TeamNum 3 mins "-9 -192 -96" maxs "9 192 96" origin "7 0 96" } func_forcefield // clipping for rooftop { StartDisabled 0 TeamNum 3 mins "-194 -608 -414" maxs "194 608 414" origin "128 -1856 900" } } Pushblocks // all the pushing to stop godspots because customnav can't fix them all { trigger_push // spawn window { pushdir "0 180 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1 0 194" mins "-1 -192 -2" maxs "1 192 2" } trigger_push // tank at field { pushdir "0 180 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "994 992 160" mins "-32 -110 -11" maxs "32 110 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "696 472 158" mins "-32 -72 -11" maxs "32 72 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "696 364 85" mins "-32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "696 596 85" mins "-32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "966 88 83" mins "-32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "892 107 83" mins "-32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1024 -32 83" mins "-32 -72 -11" maxs "32 72 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1056 -172 97" mins "32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1000 -220 97" mins "32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "973 -915 163" mins "32 -28 -11" maxs "32 28 11" } trigger_push // concrete blocks at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "917 -963 163" mins "32 -28 -11" maxs "32 28 11" } trigger_push // woodfence at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "652 -468 276" mins "-10 -181 -12" maxs "10 181 12" } trigger_push // barricade at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1248 1516 204" mins "-224 -12 -12" maxs "224 12 12" } trigger_push // barricade at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1680 1500 196" mins "-208 -28 -20" maxs "208 28 20" } trigger_push // barricade at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1880 1724 196" mins "-16 -196 -20" maxs "16 196 20" } trigger_push // barricade at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "1908 2120 188" mins "-12 -200 -28" maxs "12 200 28" } trigger_push // lights at field { pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "522 -45 396" mins "-10 -483 -12" maxs "10 483 12" } trigger_push // lampposts around hatch { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1256 488 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1278 1475 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1747 1473 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1713 798 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-2112 -574 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1577 -1785 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-729 -1737 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-320 -2530 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // lampposts around hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "738 -2496 524" mins "-48 -48 -12" maxs "48 48 12" } trigger_push // top of shack { pushdir "0 45 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-2226 -726 232" mins "-175 -175 -48" maxs "175 175 48" } trigger_push // blocks near hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-479 -560 157" mins "-81 -38 -12" maxs "81 38 12" } trigger_push // security fence near hatch { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-1660 1920 274" mins "-900 -3 -26" maxs "900 3 26" } trigger_push // fence near barn { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-400 -978 146" mins "-136 -9.5 -12" maxs "136 9.5 12" } trigger_push // fence near barn { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-272 -908 146" mins "-8 -60 12" maxs "8 60 12" } trigger_push // fence near barn { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-68 -864 146" mins "-68 -48 12" maxs "68 48 12" } trigger_push // harvester near stables { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "123 2342 205" mins "-56 -78 -24" maxs "56 78 24" } trigger_push // top of barn door { pushdir "0 90 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "128 -1276 220" mins "-256 -4 -12" maxs "256 4 12" } trigger_push // wood fence in barn { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "108 -1688 390" mins "-68 -8 -4" maxs "68 8 4" } trigger_push // wood fence in barn { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "168 -1648 390" mins "-8 -32 -4" maxs "8 32 4" } trigger_push // top of barn roof { pushdir "0 270 0" spawnflags 1 speed 512 StartDisabled 0 filtername filter_redteam origin "-72.5 -1856 890.5" mins "-10.5 -608 -421.5" maxs "10.5 608 421.5" } } Thekits // gimme the kits { item_ammopack_medium // blocks at field { teamnum 2 // so grays don't pick them up origin "944 -0 30" } item_healthkit_medium // blocks at field { teamnum 2 origin "944 -88 30" } item_ammopack_medium // stables { teamnum 2 origin "384 1496 230" } item_healthkit_medium // stables { teamnum 2 origin "320 1496 230" } item_ammopack_medium // behind hatch { teamnum 2 origin "64 32 -167" } item_healthkit_medium // behind hatch { teamnum 2 origin "64 -40 -167" } item_ammopack_medium // next to containers { teamnum 2 origin "-1048 1096 18" } item_healthkit_medium // next to containers { teamnum 2 origin "-1112 1096 18" } item_ammopack_medium // barn { teamnum 2 origin "440 -1866 20" } item_healthkit_medium // barn { teamnum 2 origin "-192 -1864 20" } item_ammopack_full // shack can keep its full kits, risky place { teamnum 2 origin "-2208 -808 18" } item_healthkit_full { teamnum 2 origin "-2248 -640 18" } } PlayersLeftLogic { NoFixup 1 math_counter { "targetname" "playersLeftAlive" "startvalue" 0 // "outValue" "player,$DisplayTextChat,,0,-1" "outValue" "wipeCheck,SetValueCompare,,0,-1" } logic_compare { "targetname" "wipeCheck" "initialValue" 0 "CompareValue" 0 "OnEqualTo" "gameover,Trigger,,0,-1" //fires when player count hits 0 "OnGreaterThan" "gameover,CancelPending,,0,-1" } ambient_generic { health 10 message #*shadows/goodeffort.mp3 radius 20 spawnflags 49 targetname fail_snd } ambient_generic { health 10 message #*shadows/youdidit.mp3 radius 20 spawnflags 49 targetname win_snd } ambient_generic { health 10 message #*shadows/muzzleflashinthedark.mp3 radius 20 spawnflags 49 targetname bossfight_snd } ambient_generic { health 10 message #*shadows/makeitcount.mp3 radius 20 spawnflags 49 targetname finale_snd } ambient_generic { health 10 message #*shadows/bossround_music.mp3 radius 20 spawnflags 49 targetname tankround_snd } } PlayerTracker { NoFixup 1 OnSpawnOutput { Target "playersLeftAlive" Action "add" Param "1" } logic_relay { "$OnKilled" "playersLeftAlive,Subtract,1,0,0" } } EnemyTracker // shoot enemy, get money { OnParentKilledOutput // avoid stacking outputs { Target "!activator" Action "$RemoveOutput" Param "$OnDamageReceived" } OnParentKilledOutput // avoid stacking outputs { Target "!activator" Action "$RemoveOutput" Param "$OnDeath" } OnSpawnOutput // money for kill { Target "!activator" Action "AddOutput" Param "$OnDeath !activator:$AddCurrency:100:0:-1" } OnSpawnOutput { Target "!activator" Action "AddOutput" Param "$OnDamageReceived !self:$SetVar$CurrencyOnDamage::0:-1" } // OnSpawnOutput // probably not even worth it but bleed/ab is no longer free money // { // Target "!activator" // Action "AddOutput" // Param "$OnDamageReceived !activator:$AddCurrency:$$=int(clamp(!caller.$CurrencyOnDamage,10,10)):0:-1" // } OnSpawnOutput { Target "!activator" Action "AddOutput" Param "$OnDamageReceived !activator:$AddCurrency:20:0:-1" // Param "$OnDamageReceived !activator:$AddCurrency:$$=int(test(!caller.$CurrencyOnDamage >= 10,!caller.$CurrencyOnDamage,0)):0:-1" } logic_relay // only here so the pt can spawn { } } Hulk_PT { 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 } } Crawler_PT // push the crawler { // NoFixup 1 trigger_push { pushdir "0 0 0" spawnflags 1 speed 1000 filtername filter_crawler 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_crawler require_all_tags 1 tags crawler Negated "Allow entities that match criteria" } } Charger_PT // call lua function on spawn { OnSpawnOutput { Target "popscript" Action "$chargerLogic" } } Soldier_Tank { NoFixup 1 // no!!!!!!!!!!!!!!!!!! KeepAlive 1 OnSpawnOutput { Target autotank_turret_weapon Action $SetOwner } prop_dynamic // tank { angles "0 0 0" origin "0 0 -8" DisableBoneFollowers 1 disableshadows 0 model "models/props_frontline/tank_animated.mdl" DefaultAnim "move_slow" ModelScale 0.55 solid 0 skin 1 targetname autotank_body } prop_dynamic // gibby~ { angles "0 0 0" origin "0 0 -8" DisableBoneFollowers 1 disableshadows 0 StartDisabled 1 model "models\bots\soldier\bot_soldier.mdl" DefaultAnim "PRIMARY_stun_middle" ModelScale 1.75 solid 0 skin 1 targetname autotank_gibby parentname autotank_body } info_particle_system { angles "0 0 0" origin "0 0 0" effect_name cinefx_goldrush start_active 0 targetname autotank_blast parentname autotank_body } ambient_generic { targetname autotank_deathsound spawnflags 17 health 10 // this is volume radius 18000 pitch 100 message ")shadows/treadkill_death.mp3" parentname autotank_body } ambient_generic { targetname autotank_explosionsound spawnflags 17 health 10 // this is volume radius 18000 pitch 100 message ")mvm\mvm_tank_explode.wav" parentname autotank_body } info_particle_system { angles "0 180 0" origin "-70 38 52" effect_name kartdamage_smoke4 start_active 1 targetname autotank_smoke parentname autotank_body } info_particle_system { angles "0 180 0" origin "-70 -39 52" effect_name kartdamage_smoke4 start_active 1 targetname autotank_smoke parentname autotank_body } env_shake { amplitude 16 duration 1.5 frequency 2.5 radius 1500 spawnflags 1 targetname autotank_shake } ambient_generic // turret ready { targetname autotank_turret_ready spawnflags 48 health 10 // this is volume radius 18000 pitch 100 message ")vehicles/tank_readyfire1.wav" parentname autotank_body } ambient_generic // revving with fury { targetname autotank_ragemode spawnflags 48 health 10 radius 18000 pitch 100 message ")shadows/treadkill_rage.mp3" parentname autotank_body } ambient_generic // turret fire { targetname autotank_turret_shoot spawnflags 48 health 10 radius 18000 pitch 100 message ")player\taunt_tank_shoot.wav" parentname autotank_body } tf_point_weapon_mimic { origin "125 0 59" damage 150 speedmin 4000 speedmax 4000 splashradius 216 targetname autotank_turret_weapon // firesound player\taunt_tank_shoot.wav parentname autotank_body } logic_relay { targetname autotank_turretshoot "OnTrigger" "autotank_turret_ready,PlaySound,,0,-1" "OnTrigger" "autotank_body,SetAnimation,shoot_forward,1,-1" "OnTrigger" "autotank_turret_weapon,Fireonce,,1.3,-1" "OnTrigger" "autotank_turret_shoot,PlaySound,,1.3,-1" } logic_relay { targetname autotank_death "OnTrigger" "autotank_idle,StopSound,,0,-1" "OnTrigger" "autotank_gibby,Enable,,0,-1" "OnTrigger" "autotank_smoke,Stop,,0,-1" "OnTrigger" "autotank_gibby,SetAnimation,PRIMARY_Stun_begin,0,-1" "OnTrigger" "autotank_gibby,SetPlaybackRate,0.36,0.3,-1" // stun animation has that blend that doesn't work "OnTrigger" "autotank_deathsound,PlaySound,,0,-1" "OnTrigger" "autotank_gibby,Disable,,3,-1" "OnTrigger" "autotank_body,Disable,,3,-1" "OnTrigger" "autotank_explosionsound,PlaySound,,3,-1" "OnTrigger" "autotank_blast,Start,,3,-1" "OnTrigger" "autotank_shake,StartShake,,3,-1" "OnTrigger" "autotank_*,Kill,,8,-1" } } Heavy_Boss // pretty death animation { NoFixup 1 KeepAlive 1 prop_dynamic_ornament { InitialOwner blord spawnflags 256 DisableBoneFollowers 1 disableshadows 1 solid 0 targetname battlelord_cosmetics model "models/workshop/player/items/soldier/hwn2015_hellmet/hwn2015_hellmet.mdl" } prop_dynamic_ornament { InitialOwner blord spawnflags 256 DisableBoneFollowers 1 disableshadows 1 solid 0 targetname battlelord_cosmetics model "models/workshop/player/items/demo/sf14_deadking_pauldrons/sf14_deadking_pauldrons.mdl" } prop_dynamic_ornament { InitialOwner blord spawnflags 256 DisableBoneFollowers 1 disableshadows 1 solid 0 targetname battlelord_cosmetics model "models/workshop/weapons/c_models/c_iron_curtain/c_iron_curtain.mdl" } logic_relay { targetname battlelord_cosmetics_relay "OnTrigger" "battlelord_cosmetics,TurnOff,,2,-1" } prop_dynamic { angles "0 0 0" origin "0 0 0" DisableBoneFollowers 1 disableshadows 0 StartDisabled 1 model "models\bots\heavy_boss\bot_heavy_boss.mdl" DefaultAnim "primary_death_01" ModelScale 1.75 solid 0 skin 1 targetname blord } ambient_generic { targetname blord_deathsound spawnflags 17 health 10 // this is volume radius 18000 pitch 100 message ")shadows/battlelord_death.mp3" parentname blord } info_particle_system { angles "0 0 0" origin "0 0 0" effect_name cinefx_goldrush start_active 0 targetname blord_blast parentname blord } env_shake { amplitude 16 duration 1.5 frequency 2.5 radius 1500 spawnflags 1 targetname blord_shake } ambient_generic { targetname blord_explosionsound spawnflags 17 health 10 // this is volume radius 18000 pitch 100 message ")mvm\mvm_tank_explode.wav" parentname blord } logic_relay { targetname blord_death "OnTrigger" "blord,Enable,,0,-1" "OnTrigger" "battlelord_cosmetics,TurnOn,,0,-1" "OnTrigger" "blord,SetAnimation,primary_death_01,0,-1" "OnTrigger" "blord_deathsound,PlaySound,,0,-1" "OnTrigger" "blord,Disable,,3.4,-1" "OnTrigger" "battlelord_cosmetics,kill,,3.4,-1" "OnTrigger" "blord_explosionsound,PlaySound,,3.4,-1" "OnTrigger" "blord_blast,Start,,3.4,-1" "OnTrigger" "blord_shake,StartShake,,3.4,-1" "OnTrigger" "blord_*,Kill,,8,-1" } } tutorial { NoFixup 1 logic_relay { "spawnflags" "2" "targetname" "tutorial_relay" "OnTrigger" "hints_1,Show,,0,-1" "OnTrigger" "hints_2,Show,,4,-1" "OnTrigger" "hints_3,Show,,8,-1" "OnTrigger" "hints_4,Show,,12,-1" "OnTrigger" "hints_5,Show,,16,-1" "OnTrigger" "hints_6,Show,,20,-1" "OnTrigger" "hints_7,Show,,24,-1" "OnTrigger" "hints_8,Show,,28,-1" "OnTrigger" "hints_9,Show,,32,-1" "OnTrigger" "hints_10,Show,,36,-1" "OnTrigger" "hints_11,Show,,40,-1" "OnTrigger" "hints_12,Show,,44,-1" "OnTrigger" "hints_13,Show,,48,-1" "OnTrigger" "hints_14,Show,,52,-1" "OnTrigger" "hints_15,Show,,56,-1" "OnTrigger" "tutorial_relay2,Trigger,,60,-1" } logic_relay { "spawnflags" "2" "targetname" "tutorial_relay2" "OnTrigger" "tutorial_relay,Trigger,,0,-1" } training_annotation { "targetname" "hints_1" "display_text" "Money is earned only by dealing damage and killing enemies." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_2" "display_text" "Enemies become faster and stronger each round." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_3" "display_text" "You can purchase Perk Bonuses from vending machines around the map." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_4" "display_text" "Perk Bonuses are not permanent and are lost on death." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_5" "display_text" "Perk Bonuses stack with your weapon upgrades." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_6" "display_text" "Perk Bonuses do not stack per additional purchase." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_7" "display_text" "You can also receive random weapons from your local Weapons Dumpster." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_8" "display_text" "Weapons you carry are dropped on death." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_9" "display_text" "Moving and crouching both affect your accuracy." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_10" "display_text" "Powerups will spawn here during rounds." "lifetime" "4" "origin" "-524 -0 -128" } training_annotation { "targetname" "hints_11" "display_text" "Powerups despawn when the round ends." "lifetime" "4" "origin" "-524 -0 -128" } training_annotation { "targetname" "hints_12" "display_text" "You can refund your upgrades at any point during the mission." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_13" "display_text" "This returns all money used on weapons and reverts any Überweapon upgrades purchased." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_14" "display_text" "Players cannot join the game once it begins because HAHAHAHAHAHAHAHAHAHAHAHAHAHA." "lifetime" "4" "origin" "328 -150 52" } training_annotation { "targetname" "hints_15" "display_text" "Join during a break to spawn. If you can't, type retry in the console." "lifetime" "4" "origin" "328 -150 52" } OnSpawnOutput { Target "tutorial_relay" Action "Trigger" Delay 4 } } Mission_HUDText { NoFixup 1 OnSpawnOutput // thanks, Yaki { Target "tf_objective_resource" Action "$SetProp$m_iszMvMPopfileName" Param "bauernhof der toten" // can only be written in allcaps anyway } } Mission_HUDText_Clear // so mission resets correctly { NoFixup 1 OnSpawnOutput // thanks, Yaki { Target "tf_objective_resource" Action "$SetProp$m_iszMvMPopfileName" Param "mvm_shadows_b3_adv_bauernhof" } } Vending_Jugg // SAXTON { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 0 // red targetname vm_jug } prop_dynamic { origin "0 0 164" // ?? angles "0 270 0" disableshadows 0 model "models/effects/medicyell.mdl" modelscale 2 solid 0 parentname vm_jug } func_button { targetname vm_jugbutton parentname vm_jug damagefilter filter_juggmulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 1 sounds 3 origin "0 -12 128" mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_jugg,trigger,0,-1" } $filter_sendprop // OnFail will never fire as damagefilter doesn't allow for a Fail condition { targetname filter_juggmoney $name m_nCurrency negated 0 $value 2000 $compare "greater than or equal" } filter_multi { targetname filter_juggmulti filtertype 0 negated 0 filter01 filter_juggmoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } filter_damage_type // OOPS THIS KILLS THE SERVER (Lol) { targetname filter_melee negated 0 damagetype 134221952 } trigger_multiple { origin "0 0 50" targetname vm_jugmsg parentname vm_jug filtername filter_redteam spawnflags 1 mins "-128 -128 0" maxs "128 128 128" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the machine to buy Saxton Ale for $2000,0,-1" } ambient_generic { targetname vm_jugsfx spawnflags 48 health 10 // this is volume radius 15000 pitch 100 message "shadows/perk_saxton.mp3" parentname vm_jug } logic_relay { targetname perkbuff_jugg OnTrigger "!activator,$RemoveCurrency,2000,-1" // testing OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" OnTrigger "vm_jugsfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,max health additive bonus|200,2.2,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Extra max health!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Vending_Speed // Meraslixir { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 0 // red targetname vm_speed } prop_dynamic { origin "0 0 164" // ?? angles "0 270 0" disableshadows 0 model "models/props_halloween/merasmus_skull_island.mdl" solid 0 parentname vm_speed } func_button { targetname vm_speedbutton parentname vm_speed damagefilter filter_speedmulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 origin "0 -12 128" mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_speed,trigger,0,-1" // testing } $filter_sendprop { targetname filter_speedmoney $name m_nCurrency negated 0 $value 2500 $compare "greater than or equal" } filter_multi { targetname filter_speedmulti filtertype 0 negated 0 filter01 filter_speedmoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } trigger_multiple { origin "0 0 50" targetname vm_speedmsg parentname vm_speed filtername filter_redteam spawnflags 1 mins "-128 -128 0" maxs "64 64 128" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the machine to buy Meraslixir for $2500,0,-1" } ambient_generic { targetname vm_speedsfx spawnflags 48 health 10 // this is volume radius 15000 pitch 100 message "shadows/perk_meraslixir.mp3" parentname vm_speed } logic_relay { targetname perkbuff_speed OnTrigger "!activator,$RemoveCurrency,2500,-1" // testing OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" OnTrigger "vm_speedsfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,faster reload rate|0.4,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,move speed bonus|1.35,2.2,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Increased movement and reload speed!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Vending_Blaster // Head Rattle { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 1 // blue targetname vm_blaster } func_button { origin "0 -12 128" targetname vm_blasterbutton parentname vm_blaster damagefilter filter_blastermulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_blaster,trigger,0,-1" // testing OnPressed "filter_blastermoney,TestActivator,0,-1" } $filter_sendprop { targetname filter_blastermoney $name m_nCurrency negated 0 $value 1000 $compare "greater than or equal" } filter_multi { targetname filter_blastermulti filtertype 0 negated 0 filter01 filter_blastermoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } trigger_multiple { origin "0 0 50" targetname vm_blastermsg parentname vm_blaster filtername filter_redteam spawnflags 1 mins "-32 -16 -50" maxs "192 192 128" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the machine to buy Head Rattle for $1000,0,-1" } ambient_generic { targetname vm_blastersfx spawnflags 48 health 10 // this is volume radius 15000 pitch 100 message "shadows/perk_headrattle.mp3" parentname vm_blaster } logic_relay { targetname perkbuff_blaster OnTrigger "!activator,$RemoveCurrency,1000,-1" // testing OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" OnTrigger "vm_blastersfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,explosive sniper shot|3,2.2,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Explosive Headshot!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Vending_Doubletap // Untapped Vintage { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 0 // red targetname vm_dt } prop_dynamic { origin "-24 -16 132" // ?? angles "-15 0 0" disableshadows 0 model "models/weapons/c_models/c_shotgun/c_shotgun.mdl" modelscale 2 solid 0 parentname vm_dt } func_button { origin "0 -12 128" targetname vm_dtbutton parentname vm_dt damagefilter filter_dtmulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_dt,trigger,0,-1" // testing OnPressed "filter_dtmoney,TestActivator,0,-1" } $filter_sendprop { targetname filter_dtmoney $name m_nCurrency negated 0 $value 1500 $compare "greater than or equal" } filter_multi { targetname filter_dtmulti filtertype 0 negated 0 filter01 filter_dtmoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } trigger_multiple { origin "0 0 50" targetname vm_dtmsg parentname vm_dt filtername filter_redteam spawnflags 1 mins "-128 -128 0" maxs "128 128 128" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the machine to buy Double Tap for $1500,0,-1" } ambient_generic { targetname vm_dtsfx spawnflags 48 health 10 // this is volume radius 15000 pitch 100 message "shadows/perk_doubletap.mp3" parentname vm_dt } logic_relay { targetname perkbuff_dt OnTrigger "!activator,$RemoveCurrency,1500,-1" // testing OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" OnTrigger "vm_dtsfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,fire rate bonus|0.5,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Increased fire rate!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Vending_Quickrevive // Ostarion's Reserve { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 0 // red targetname vm_quickrev } prop_dynamic { origin "0 0 155" // ?? angles "0 270 0" disableshadows 0 model "models/props_mvm/mvm_human_skull.mdl" modelscale 2.5 solid 0 parentname vm_quickrev } func_button { origin "0 -12 128" targetname vm_quickrevbutton parentname vm_quickrev damagefilter filter_quickrevmulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_quickrev,trigger,0,-1" // testing OnPressed "filter_quickrevmoney,TestActivator,0,-1" } $filter_sendprop { targetname filter_quickrevmoney $name m_nCurrency negated 0 $value 1500 // probably needs to be higher $compare "greater than or equal" } filter_multi { targetname filter_quickrevmulti filtertype 0 negated 0 filter01 filter_quickrevmoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } math_counter { "targetname" "vm_quickrevcount" "startvalue" 10 "startdisabled" 0 "min" 0 "max" 9 "onhitmin" "vm_quickrev*,Kill,,2,-1" } trigger_multiple { origin "0 0 50" targetname vm_quickrevmsg parentname vm_quickrev filtername filter_redteam spawnflags 1 mins "-128 -128 0" maxs "128 128 128" OnStartTouchAll "!activator,$DisplayTextCenter,Hold Action key to buy Ostarion's Reserve for $1500,0,-1" } ambient_generic { targetname vm_quickrevsfx spawnflags 48 health 10 // this is volume radius 15000 pitch 100 message "shadows/perk_regalreserve.mp3" parentname vm_quickrev } logic_relay { targetname perkbuff_quickrev OnTrigger "!activator,$RemoveCurrency,1500,-1" // testing OnTrigger "vm_quickrevcount,Subtract,1,,-1" OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" OnTrigger "vm_quickrevsfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddCond,70,-1" // ensure player doesn't just die before effect goes off OnTrigger "!activator,$AddCond,129,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Survive one fatal attack!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Vending_Flop // Steelshin Lager { NoFixup 1 prop_dynamic { origin "0 0 50" // ?? disableshadows 0 model "models/props_misc/vending_machine_01.mdl" solid 6 skin 0 // red targetname vm_flop } prop_dynamic { origin "-0 -0 148" // ?? angles "0 270 0" disableshadows 0 model "models/player/items/all_class/cowboyboots_soldier.mdl" modelscale 2 solid 0 parentname vm_flop } func_button { origin "0 -12 128" targetname vm_flopbutton parentname vm_flop damagefilter filter_dtmulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 mins "-24 -8 -44" maxs "24 8 44" OnPressed "perkbuff_flop,trigger,0,-1" // testing OnPressed "filter_flopmoney,TestActivator,0,-1" } $filter_sendprop { targetname filter_flopmoney $name m_nCurrency negated 0 $value 1000 $compare "greater than or equal" } filter_multi { targetname filter_flopmulti filtertype 0 negated 0 filter01 filter_flopmoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } trigger_multiple { origin "0 0 50" targetname vm_flopmsg parentname vm_flop filtername filter_redteam spawnflags 1 mins "-128 -128 0" maxs "128 128 128" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the machine to buy Steelshin Lager for $1000,0,-1" } // ambient_generic // { // targetname vm_flopsfx // spawnflags 48 // health 10 // this is volume // radius 15000 // pitch 100 // message "shadows/perk_flop.mp3" // parentname vm_flop // } logic_relay { targetname perkbuff_flop OnTrigger "!activator,$RemoveCurrency,1000,-1" OnTrigger "!activator,$PlaySoundToSelf,shadows/perk_usesfx.mp3,0,-1" // OnTrigger "vm_flopsfx,PlaySound,0,2.2,-1" OnTrigger "!activator,$AddPlayerAttribute,cancel falling damage|1,-1" OnTrigger "!activator,$AddPlayerAttribute,blast dmg to self increased|0,-1" OnTrigger "!activator,$PlaySoundToSelf,weapons/buffed_on.wav,2.2,-1" OnTrigger "!activator,$DisplayTextCenter,Perk Bonus activated: Self and fall damage immunity!,2.2,-1" OnTrigger "!activator,SpeakResponseConcept,TLK_PLAYER_SPELL_PICKUP_RARE,2.45,-1" } } Roundtimer // where we at { NoFixup 1 OnSpawnOutput { Target roundcounter Action SetValue Param 0 } game_text { "targetname" "roundtext" "color" "255 65 65" // 222 222 222 breaktime color "color2" "0 0 0" // scan color "fxtime" "2.3" // how "holdtime" "36000" "spawnflags" "1" "effect" 2 "channel" 1 "x" "0.1" "y" "0.05" // mess with later to find proper spot } math_counter { "targetname" "roundcounter" "max" "255" // lol you'll never get to round 255 "outvalue" "roundformat,$setkey$case01,,0,-1" "outvalue" "gameoverformat,$setkey$case01,,0,-1" } logic_case { "targetname" "roundformat" "case16" "Round %" // who knows, maybe this is how it works "ondefault" "roundtext,$setkey$message,,0,-1" "ondefault" "roundtext,display,0,0,-1" } logic_relay { "targetname" "realtimer" "spawnflags" "2" "ontrigger" "roundformat,$format,,0.01,-1" "OnUser2" "gameoverformat,$format,,0.01,-1" } } DumpsterBox // check out this gun I found in the dumpster { NoFixup 1 OnSpawnOutput { Target dumpster_warp_roulette Action PickRandomShuffle } $filter_sendprop { targetname filter_dumpstermoney $name m_nCurrency negated 0 $value 500 $compare "greater than or equal" OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" // testing } filter_multi { targetname filter_dumpstermulti filtertype 0 negated 0 filter01 filter_dumpstermoney filter02 filter_melee OnFail "!activator,$PlaySoundToSelf,buttons/button8.wav,0,-1" } filter_damage_type // OOPS THIS KILLS THE SERVER { targetname filter_melee negated 0 damagetype 134221952 // what the fuck is this number??? } info_particle_system { origin "0 0 24" effect_name eyeboss_tp_vortex targetname dumpster_warp_eff parentname dumpster_prop } info_particle_system { origin "0 0 24" effect_name teleporter_mvm_bot_persist targetname dumpster_warp_beam parentname dumpster_prop } trigger_multiple { origin "0 0 50" targetname dumpster_msg parentname dumpster_prop filtername filter_redteam spawnflags 1 mins "-128 -128 -128" maxs "96 96 96" OnStartTouchAll "!activator,$DisplayTextCenter,Punch the dumpster to receive a weapon for $500,0,-1" } trigger_push // push people away so they don't get stuck { origin "0 0 0" pushdir "0 0 0" spawnflags 1 speed 512 StartDisabled 0 targetname dumpster_push mins "-12 -64 -16" maxs "12 64 16" } logic_relay // you got the dud! { targetname dumpster_dud OnTrigger "!activator,$AddCurrency,500,-1" OnTrigger "player,$PlaySoundToSelf,misc/happy_birthday_tf_10.wav,,0,-1" OnTrigger "dumpsterbutton,Lock,,0,-1" OnTrigger "dumpster_dudprop,Enable,,0,-1" OnTrigger "player,$PlaySoundToSelf,shadows/powerup_dud_03.mp3,1,-1" OnTrigger "dumpster_warp_eff,Start,,3,-1" OnTrigger "player,$PlaySoundToSelf,misc/halloween/merasmus_disappear.wav,3,-1" OnTrigger "dumpster_tele_out,Teleport,,4,-1" OnTrigger "dumpster_warp_eff,Stop,,4.2,-1" OnTrigger "dumpster_dudprop,Disable,,8,-1" OnTrigger "dumpster_prop,AddOutput,solid 0,9,-1" OnTrigger "dumpster_push,Enable,,24,-1" OnTrigger "dumpster_warp_roulette,PickRandomShuffle,,25,-1" OnTrigger "dumpster_warp_eff,Start,,25,-1" OnTrigger "dumpsterbutton,Unlock,,26,-1" OnTrigger "dumpster_push,Disable,,26,-1" OnTrigger "dumpster_prop,AddOutput,solid 6,26,-1" OnTrigger "player,$PlaySoundToSelf,misc/halloween/merasmus_appear.wav,26,-1" OnTrigger "dumpster_warp_eff,Stop,,27.2,-1" } logic_case { targetname dumpster_warp_roulette OnCase01 "dumpster_tele_1,Teleport,,-1" OnCase01 "dumpster_warp_beam,Start,,-1" OnCase01 "dumpster_warp_beam,Stop,,5,-1" OnCase02 "dumpster_tele_2,Teleport,,-1" OnCase02 "dumpster_warp_beam,Start,,-1" OnCase02 "dumpster_warp_beam,Stop,,5,-1" OnCase03 "dumpster_tele_3,Teleport,,-1" OnCase03 "dumpster_warp_beam,Start,,-1" OnCase03 "dumpster_warp_beam,Stop,,5,-1" OnCase04 "dumpster_tele_4,Teleport,,-1" OnCase04 "dumpster_warp_beam,Start,,-1" OnCase04 "dumpster_warp_beam,Stop,,5,-1" OnCase05 "dumpster_tele_5,Teleport,,-1" OnCase05 "dumpster_warp_beam,Start,,-1" OnCase05 "dumpster_warp_beam,Stop,,5,-1" } point_teleport { targetname dumpster_tele_out target dumpster_prop origin "-512 -25 -1008" angles "0 0 0" } point_teleport { targetname dumpster_tele_1 target dumpster_prop origin "447 -2322 8" angles "0 0 0" } point_teleport { targetname dumpster_tele_2 target dumpster_prop origin "-399 -1380 -1" angles "0 270 0" } point_teleport { targetname dumpster_tele_3 target dumpster_prop origin "986 1338 96" angles "0 0 0" } point_teleport { targetname dumpster_tele_4 target dumpster_prop origin "-788 1016 -1" angles "0 180 0" } point_teleport { targetname dumpster_tele_5 target dumpster_prop origin "-548 -2216 3" angles "0 0 0" } logic_case { targetname dumpster_case Case01 1 // scout Case02 2 // sniper Case03 3 // soldier Case04 4 // demo Case05 5 // medic Case06 6 // heavy Case07 7 // pyro Case08 8 // spy Case09 9 // engineer OnCase01 "dumpster_picker_scout,PickRandomShuffle,,2.5,-1" OnCase02 "dumpster_picker_sniper,PickRandomShuffle,,2.5,-1" OnCase03 "dumpster_picker_soldier,PickRandomShuffle,,2.5,-1" OnCase04 "dumpster_picker_demo,PickRandomShuffle,,2.5,-1" OnCase05 "dumpster_picker_medic,PickRandomShuffle,,2.5,-1" OnCase06 "dumpster_picker_heavy,PickRandomShuffle,,2.5,-1" OnCase07 "dumpster_picker_pyro,PickRandomShuffle,,2.5,-1" OnCase08 "dumpster_picker_spy,PickRandomShuffle,,2.5,-1" OnCase09 "dumpster_picker_engie,PickRandomShuffle,,2.5,-1" } prop_dynamic { origin "0 0 104" angles "90 0 180" disableshadows 0 model "models/workshop/player/items/all_class/mvm_memes_player/mvm_memes_player_heavy.mdl" solid 0 startdisabled 1 modelscale 3 targetname dumpster_dudprop parentname dumpster_prop } prop_dynamic { origin "0 0 0" disableshadows 0 model "models/props_construction/dumpster_body.mdl" solid 6 skin 2 targetname dumpster_prop } prop_dynamic { origin "0 0 0" disableshadows 0 model "models/props_construction/dumpster_lid.mdl" solid 0 skin 2 parentname dumpster_rotdoor } func_door_rotating // open up! { targetname dumpster_rotdoor parentname dumpster_prop origin "28 -24 60" // 28 -2 64 ?? distance 90 speed 160 wait 5 disableshadows 1 forceclosed 1 spawnflags 128 noise1 shadows/mystery_open.mp3 // open sound startclosesound misc/null.wav closesound doors\door_metal_medium_close1.wav mins "-2 -2 -2" maxs "2 2 2" } func_button // check player's class when they pass dumpster check { origin "-32 -0 24" targetname dumpsterbutton parentname dumpster_prop damagefilter filter_dumpstermulti rendermode 10 movedir "0 180 0" spawnflags 513 speed 5 wait 3 sounds 3 mins "-4 -44 -20" maxs "4 44 20" OnPressed "!activator,$PlaySoundToSelf,shadows/mystery_noise.mp3,0,-1" OnPressed "!activator,$RemoveCurrency,500,-1" // testing OnPressed "dumpster_rotdoor,Open,,0,-1" OnPressed "dumpster_case,InValue,$$=!activator.m_iClass,,-1" OnPressed "dumpster_rotdoor,Close,,3.4,-1" } logic_case // test roulette { targetname dumpster_picker_scout OnCase01 "!activator,$AwardAndGiveExtraItem,Shotgun Cannon,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Shotgun Cannon!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,The Specialist,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Specialist!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Mule Mauler 600,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Mule Mauler 600!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,The Force-a-Nature,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Force-a-Nature!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Conventional,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Conventional!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,Concealed Carry,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Concealed Carry!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Lugermorph Rework,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received: The Lugermorph!,0,-1" OnCase08 "!activator,$AwardAndGiveExtraItem,Targeter,-1" OnCase08 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase08 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARAREE,0.6,-1" OnCase08 "!activator,$DisplayTextChat,You've received an Überweapon: The Targeter!,0,-1" OnCase09 "!activator,$AwardAndGiveExtraItem,Force-A-Short Baby To Scatter Pop,-1" OnCase09 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase09 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase09 "!activator,$DisplayTextChat,You've received an Überweapon: The Force-A-Short Baby To Scatter Pop!,0,-1" OnCase10 "!activator,$AwardAndGiveExtraItem,The Corckscrew,-1" OnCase10 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase10 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase10 "!activator,$DisplayTextChat,You've received an Überweapon: The Corckscrew!,0,-1" OnCase11 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase11 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase11 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase11 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase12 "dumpster_dud,Trigger,-1" // case 7 for rare or Wonder Weapons? } logic_case // test roulette { targetname dumpster_picker_sniper OnCase01 "!activator,$AwardAndGiveExtraItem,Poacher's Pride,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Poacher's Pride!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,The Lifeforce Harmonizer,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Lifeforce Harmonizer,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Double Barrel,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Double Barrel!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,TF_WEAPON_PIPEBOMBLAUNCHER,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Stickybomb Launcher!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Crusader's Crossbow,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Crusader's Crossbow!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,The Ray Gun,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Ray Gun!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Beam Rifle,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received: The Beam Rifle!,0,-1" OnCase08 "!activator,$AwardAndGiveExtraItem,The Punch Packer,-1" OnCase08 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase08 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase08 "!activator,$DisplayTextChat,You've received: The Punch Packer!,0,-1" OnCase09 "!activator,$AwardAndGiveExtraItem,M16A1 Sniper,-1" OnCase09 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase09 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase09 "!activator,$DisplayTextChat,You've received: M16A1!,0,-1" OnCase10 "!activator,$AwardAndGiveExtraItem,Mann-Cannon,-1" OnCase10 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase10 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase10 "!activator,$DisplayTextChat,You've received an Überweapon: The Mann-Cannon!,0,-1" OnCase11 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase11 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase11 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase11 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase12 "dumpster_dud,Trigger,-1" } logic_case // test roulette { targetname dumpster_picker_soldier OnCase01 "!activator,$AwardAndGiveExtraItem,The Chaser,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Chaser!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,Double Trouble,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Double Trouble!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,M16A1,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The M16A1!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,The Maverick,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Maverick!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,Mega Destoryer Soldier,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: Mega Destoryer!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,Old Abe,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Old Abe!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,White Phospherous,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: White Phospherous!,0,-1" OnCase08 "!activator,$AwardAndGiveExtraItem,SPAS-12 Soldier,-1" OnCase08 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase08 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase08 "!activator,$DisplayTextChat,You've received an Überweapon: The SPAS-12!,0,-1" OnCase09 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase09 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase09 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase09 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase10 "dumpster_dud,Trigger,-1" } logic_case { targetname dumpster_picker_demo OnCase01 "!activator,$AwardAndGiveExtraItem,Celtic Cluster,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Celtic Cluster,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,The Ultimatum,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Ultimatum!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Gravitational Grenadier,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Gravitational Grenadier,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,Incendiary Cannon Demoman,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Incendiary Cannon!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Peacekeeper,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Peacekeeper!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,Scotland's Last Defence,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Scotland's Last Defence,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Tactigatling,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received: The Tactigatling!,0,-1" OnCase08 "!activator,$AwardAndGiveExtraItem,Beam Rifle,-1" OnCase08 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase08 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase08 "!activator,$DisplayTextChat,You've received: The Beam Rifle!,0,-1" OnCase09 "!activator,$AwardAndGiveExtraItem,The Ray Gun,-1" OnCase09 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase09 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase09 "!activator,$DisplayTextChat,You've received: The Ray Gun!,0,-1" OnCase10 "!activator,$AwardAndGiveExtraItem,Troll Jumper,-1" OnCase10 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase10 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase10 "!activator,$DisplayTextChat,You've received an Überweapon: The Troll Jumper!,0,-1" // Fucks with eyelander // OnCase11 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" // OnCase11 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" // OnCase11 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" // OnCase11 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase11 "dumpster_dud,Trigger,-1" } logic_case // give medic some 'class-specific' shit because of medigun { targetname dumpster_picker_medic OnCase01 "!activator,$AwardAndGiveExtraItem,TF_WEAPON_SCATTERGUN,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Scattergun!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,TF_WEAPON_FLAMETHROWER,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Flamethrower!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Das Maschinenpistole,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: Das Maschinenpistole!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,Medispenser,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Medispenser!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Mender,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Mender!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,The Secret Ingredient,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Secret Ingredient!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,The Kriubercharge,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: The Kriubercharge!,0,-1" OnCase08 "dumpster_dud,Trigger,-1" OnCase09 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase09 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase09 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase09 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" } logic_case { targetname dumpster_picker_heavy OnCase01 "!activator,$AwardAndGiveExtraItem,Tactigatling,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Tactigatling!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,Veronika,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Veronika!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,The First Responder,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The First Responder!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,Replenishing Rampager,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Replenishing Rampager!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Portable Ordnance,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Portable Ordnance!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,The Maxine,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Maxine!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Sufficent Factory,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: The Sufficent Factory!,0,-1" OnCase08 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase08 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase08 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase08 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase09 "dumpster_dud,Trigger,-1" OnCase10 "!activator,$GivAwardAndGiveExtraItemeItem,Big Boris,-1" OnCase10 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase10 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase10 "!activator,$DisplayTextChat,You've received an Überweapon: The Big Boris!,0,-1" } logic_case { targetname dumpster_picker_pyro OnCase01 "!activator,$AwardAndGiveExtraItem,Prototype SM2,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Prototype SM2!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,Mega Destoryer Pyro,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Mega Destoryer!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Incendiary Cannon,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Incendiary Cannon!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,The Stormbringer,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Stormbringer!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Shotimatum Pyro,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received an Überweapon: The Shotimatum!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,SPAS-12 Pyro,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received an Überweapon: The SPAS-12!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Hammer Time,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: Hammer Time!,0,-1" OnCase08 "dumpster_dud,Trigger,-1" } logic_case { targetname dumpster_picker_spy OnCase01 "!activator,$AwardAndGiveExtraItem,Big Kill Rework,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The Big Kill!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,Infltrator's Favorite,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Infltrator's Favorite!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,The Ambassador,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Ambassador!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,Big Iron,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Big Iron!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,The Ray Gun,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Ray Gun!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,Quick Draw,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received: The Quick Draw!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Kingpin,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: The Kingpin!,0,-1" OnCase08 "dumpster_dud,Trigger,-1" } logic_case // test roulette { targetname dumpster_picker_engie OnCase01 "!activator,$AwardAndGiveExtraItem,The B.M.M.H,-1" OnCase01 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase01 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase01 "!activator,$DisplayTextChat,You've received: The B.M.M.H!,0,-1" OnCase02 "!activator,$AwardAndGiveExtraItem,Mega Destoryer Engineer,-1" OnCase02 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase02 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase02 "!activator,$DisplayTextChat,You've received: The Mega Destoryer!,0,-1" OnCase03 "!activator,$AwardAndGiveExtraItem,Lugermorph Rework,-1" OnCase03 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase03 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase03 "!activator,$DisplayTextChat,You've received: The Lugermorph!,0,-1" OnCase04 "!activator,$AwardAndGiveExtraItem,The Punch Packer,-1" OnCase04 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase04 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_RARE,0.6,-1" OnCase04 "!activator,$DisplayTextChat,You've received: The Punch Packer!,0,-1" OnCase05 "!activator,$AwardAndGiveExtraItem,Big Kill Rework,-1" OnCase05 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase05 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_COMMON,0.6,-1" OnCase05 "!activator,$DisplayTextChat,You've received: The Big Kill!,0,-1" OnCase06 "!activator,$AwardAndGiveExtraItem,The Shotimatum Engineer,-1" OnCase06 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase06 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase06 "!activator,$DisplayTextChat,You've received an Überweapon: The Shotimatum!,0,-1" OnCase07 "!activator,$AwardAndGiveExtraItem,Fake Pistol,-1" OnCase07 "!activator,$PlaySoundToSelf,items/gunpickup2.wav,-1" OnCase07 "!activator,SpeakResponseConcept,TLK_MVM_LOOT_ULTRARARE,0.6,-1" OnCase07 "!activator,$DisplayTextChat,You've received an Überweapon: The Fake Pistol!,0,-1" OnCase08 "dumpster_dud,Trigger,-1" } } TankTeleport { NoFixup 1 trigger_teleport { targetname tank_warper spawnflags 1 target tank_spawnroulette filtername filter_tank "mins" "-9999 -9999 -9999" "maxs" "9999 9999 9999" } trigger_multiple { targetname tank_spawnroulette spawnflags 1 filtername filter_tank origin "-2168 40 13604" "mins" "-24 -24 -36" "maxs" "24 24 36" OnStartTouchAll "tank_spawn_picker,PickRandomShuffle,,-1" } trigger_bot_tag { targetname tank_spawnroulette spawnflags 1 filtername filter_tank tags swooce add 0 // remove swooce so tank can't get warped twice origin "-2168 40 13604" "mins" "-128 -128 -128" "maxs" "128 128 128" } // tank spawn points filter_tf_bot_has_tag { targetname filter_tank require_all_tags 1 tags swooce Negated "Allow entities that match criteria" } point_teleport { targetname tank_spawn_01 target !activator origin "-2048 -2432 24" } info_particle_system // spawnpoint's particle effect { targetname tank_spawn_01_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-2048 -2432 24" } info_particle_system // spawnpoint's particle effect { targetname tank_spawn_01_eff2 effect_name utaunt_lightning_bolt origin "-2048 -2432 24" } point_teleport { targetname tank_spawn_02 target !activator origin "-352 -3064 8" } info_particle_system { targetname tank_spawn_02_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-352 -3064 8" } info_particle_system { targetname tank_spawn_02_eff2 effect_name utaunt_lightning_bolt origin "-352 -3064 8" } point_teleport { targetname tank_spawn_03 target !activator origin "1376 -945 24" } info_particle_system { targetname tank_spawn_03_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "1376 -945 24" } info_particle_system { targetname tank_spawn_03_eff2 effect_name utaunt_lightning_bolt origin "1376 -945 24" } point_teleport { targetname tank_spawn_04 target !activator origin "1376 1120 16" } info_particle_system { targetname tank_spawn_04_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "1376 1120 16" } info_particle_system { targetname tank_spawn_04_eff2 effect_name utaunt_lightning_bolt origin "1376 1120 16" } point_teleport { targetname tank_spawn_05 target !activator origin "-8 1556 224" } info_particle_system { targetname tank_spawn_05_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-8 1556 224" } info_particle_system { targetname tank_spawn_05_eff2 effect_name utaunt_lightning_bolt origin "-8 1556 224" } point_teleport { targetname tank_spawn_06 target !activator origin "-792 2280 16" } info_particle_system { targetname tank_spawn_06_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-792 2280 16" } info_particle_system { targetname tank_spawn_06_eff2 effect_name utaunt_lightning_bolt origin "-792 2280 16" } point_teleport { targetname tank_spawn_07 target !activator origin "-3136 1272 24" } info_particle_system { targetname tank_spawn_07_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-3136 1272 24" } info_particle_system { targetname tank_spawn_07_eff2 effect_name utaunt_lightning_bolt origin "-3136 1272 24" } point_teleport { targetname tank_spawn_08 target !activator origin "-2296 -264 24" } info_particle_system { targetname tank_spawn_08_eff1 effect_name utaunt_electricity_cloud_parent_WB origin "-2296 -264 24" } info_particle_system { targetname tank_spawn_08_eff2 effect_name utaunt_lightning_bolt origin "-2296 -264 24" } logic_case { targetname tank_spawn_picker "OnCase01" "tank_spawn_01_eff1,Start,,-1" "OnCase01" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase01" "tank_spawn_01_eff2,Start,,1.75,-1" "OnCase01" "tank_spawn_01,Teleport,,1.75,-1" "OnCase01" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase01" "tank_spawn_01_eff1,Stop,,1.8,-1" "OnCase01" "tank_spawn_01_eff2,Stop,,2,-1" "OnCase02" "tank_spawn_02_eff1,Start,,-1" "OnCase02" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase02" "tank_spawn_02_eff2,Start,,1.75,-1" "OnCase02" "tank_spawn_02,Teleport,,1.75,-1" "OnCase02" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase02" "tank_spawn_02_eff1,Stop,,1.8,-1" "OnCase02" "tank_spawn_02_eff2,Stop,,2,-1" "OnCase03" "tank_spawn_03_eff1,Start,,-1" "OnCase03" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase03" "tank_spawn_03_eff2,Start,,1.75,-1" "OnCase03" "tank_spawn_03,Teleport,,1.75,-1" "OnCase03" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase03" "tank_spawn_03_eff1,Stop,,1.8,-1" "OnCase03" "tank_spawn_03_eff2,Stop,,2,-1" "OnCase04" "tank_spawn_04_eff1,Start,,-1" "OnCase04" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase04" "tank_spawn_04_eff2,Start,,1.75,-1" "OnCase04" "tank_spawn_04,Teleport,,1.75,-1" "OnCase04" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase04" "tank_spawn_04_eff1,Stop,,1.8,-1" "OnCase04" "tank_spawn_04_eff2,Stop,,2,-1" "OnCase05" "tank_spawn_05_eff1,Start,,-1" "OnCase05" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase05" "tank_spawn_05_eff2,Start,,1.75,-1" "OnCase05" "tank_spawn_05,Teleport,,1.75,-1" "OnCase05" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase05" "tank_spawn_05_eff1,Stop,,1.8,-1" "OnCase05" "tank_spawn_05_eff2,Stop,,2,-1" "OnCase06" "tank_spawn_06_eff1,Start,,-1" "OnCase06" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase06" "tank_spawn_06_eff2,Start,,1.75,-1" "OnCase06" "tank_spawn_06,Teleport,,1.75,-1" "OnCase06" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase06" "tank_spawn_06_eff1,Stop,,1.8,-1" "OnCase06" "tank_spawn_06_eff2,Stop,,2,-1" "OnCase07" "tank_spawn_07_eff1,Start,,-1" "OnCase07" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase07" "tank_spawn_07_eff2,Start,,1.75,-1" "OnCase07" "tank_spawn_07,Teleport,,1.75,-1" "OnCase07" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase07" "tank_spawn_07_eff1,Stop,,1.8,-1" "OnCase07" "tank_spawn_07_eff2,Stop,,2,-1" "OnCase08" "tank_spawn_08_eff1,Start,,-1" "OnCase08" "player,$PlaySoundToSelf,misc/halloween_eyeball/book_spawn.wav,,-1" "OnCase08" "tank_spawn_08_eff2,Start,,1.75,-1" "OnCase08" "tank_spawn_08,Teleport,,1.75,-1" "OnCase08" "player,$PlaySoundToSelf,ambient/halloween/thunder_04.wav,1.75,-1" "OnCase08" "tank_spawn_08_eff1,Stop,,1.8,-1" "OnCase08" "tank_spawn_08_eff2,Stop,,2,-1" } } Camera_Crew_Death // roll the cameras when the players die { NoFixup 1 point_viewcontrol { angles "12 315 0" origin "1011 1139 471" acceleration 0 deceleration 0 spawnflags 0 targetname camera_gameover_1 wait 5 interpolatepositiontoplayer 0 speed 0 } game_text { "targetname" "gameovertext" "color" "222 222 222" "color2" "240 110 0" // scan color "fxtime" "8" // how "holdtime" "30" "spawnflags" "1" "channel" 2 "effect" 2 "x" "0.4" "y" "0.37" } logic_case { "targetname" "gameoverformat" "case16" "You survived % rounds" // who knows, maybe this is how it works "ondefault" "gameovertext,$setkey$message,,0,-1" "ondefault" "gameovertext,display,0,0,-1" } point_viewcontrol { angles "23 298 0" origin "-2349 1008 479" acceleration 0 deceleration 0 spawnflags 0 targetname camera_gameover_2 wait 5 interpolatepositiontoplayer 0 speed 0 } env_fade // make the transition less abrupt { targetname fade_out duration 2 holdtime 0.5 rendercolor "0 0 0" // 100% black } env_fade { targetname fade_in duration 2 holdtime 0.5 spawnflags 1 rendercolor "0 0 0" } logic_relay { targetname gameover startdisabled 1 // stop going off too early // "OnTrigger" "roundtext,AddOutput,color 0 0 0:3:-1" "OnTrigger" "youwin,Disable,,1.5,-1" "OnTrigger" "player,$PlaySequence,victory,3,-1" "OnTrigger" "bossstage_start,CancelPending,,3,-1" "OnTrigger" "bossstage_start_tread,CancelPending,,3,-1" "OnTrigger" "stage_clear_finale,CancelPending,,3,-1" "OnTrigger" "stage_clear,CancelPending,,3,-1" "OnTrigger" "player,$DisplayTextCenter,Game over,3,-1" "OnTrigger" "roundformat,FireUser2,,3,-1" "OnTrigger" "realtimer,FireUser2,,3,-1" "OnTrigger" "realtimer,FireUser2,,3.7,-1" "OnTrigger" "finale_snd,volume,0,3,-1" "OnTrigger" "bossfight_snd,volume,0,3,-1" "OnTrigger" "tankround_snd,volume,0,3,-1" "OnTrigger" "fail_snd,PlaySound,,3,-1" "OnTrigger" "fade_out,Fade,,6,-1" "OnTrigger" "camera_gameover_1,$EnableAll,,8,-1" "OnTrigger" "player,$PlaySequence,victoryb,8,-1" "OnTrigger" "fade_in,Fade,,8,-1" "OnTrigger" "fade_out,Fade,,13,-1" "OnTrigger" "camera_gameover_2,$EnableAll,,15,-1" "OnTrigger" "player,$PlaySequence,victory,15,-1" "OnTrigger" "fade_in,Fade,,15,-1" "OnTrigger" "bots_win,RoundWin,,18.5,-1" } logic_relay { targetname youwin // "OnTrigger" "roundtext,AddOutput,color 0 0 0:0:-1" "OnTrigger" "finale_snd,volume,0,0,-1" "OnTrigger" "player,$DisplayTextCenter,Game over,0,-1" "OnTrigger" "gameover,Disable,,-1" "OnTrigger" "roundformat,FireUser2,,0,-1" "OnTrigger" "realtimer,FireUser2,,0,-1" "OnTrigger" "realtimer,FireUser2,,0.7,-1" "OnTrigger" "win_snd,PlaySound,,0,-1" "OnTrigger" "fade_out,Fade,,13,-1" "OnTrigger" "camera_gameover_1,$EnableAll,,15,-1" "OnTrigger" "fade_in,Fade,,15,-1" "OnTrigger" "fade_out,Fade,,20,-1" "OnTrigger" "camera_gameover_2,$EnableAll,,22,-1" "OnTrigger" "fade_in,Fade,,22,-1" "OnTrigger" "hologram_nuke_hurt,Enable,,25.5,-1" } } SpyPlayerPt // give Spy guns { OnSpawnOutput { Target !activator Action $giveitem Param "Primary Revolver" // fake revolver because his actual revolver causes problems } OnSpawnOutput { Target !activator Action $giveitem Param "Secondary Revolver" // ditto } OnSpawnOutput // I forgot what is this for but I don't want to touch it { Target !activator Action StripItemSlot Param 4 } } FrearmPT // bodygroup shit { OnSpawnOutput { Target !activator Action $giveitem Param "Secondary Revolver" } } ThundergunPT { OnSpawnOutput { Target thundergun_effect Action Start } OnSpawnOutput { Target thundergun_hurt Action $SetOwner Param !activator } OnSpawnOutput { Target thundergun* Action Kill Delay 0.35 } info_particle_system { targetname thundergun_effect effect_name utaunt_lightning_bolt angles "0 90 90" } info_particle_system { targetname thundergun_effect effect_name utaunt_lightning_bolt angles "0 65 90" } info_particle_system { targetname thundergun_effect effect_name utaunt_lightning_bolt angles "0 115 90" } trigger_hurt { damage 18500 damagetype 4194304 targetname thundergun_hurt spawnflags 1 nodmgforce 0 filtername filter_blueteam mins "-128 -48 -24" maxs "128 48 24" } } TGunDrop // drop thunder gun on death { logic_relay {} // only here so pt spawns OnParentKilledOutput { Target !activator Action $DropItem Param 1 // secondary? Delay -1 } } } PlayerSpawnTemplate "PlayerTracker" SpawnTemplate "corelogic" SpawnTemplate "Spawn_things" SpawnTemplate "PlayersLeftLogic" SpawnTemplate "tutorial" SpawnTemplate "BuildingBlocks" SpawnTemplate "Plate_Big" // SpawnTemplate "Mission_HUDText" // doing this also removes rights which I still need SpawnTemplate "Camera_Crew_Death" // PlayerSpawnTemplate // No // { // Name SpyPlayerPt // Class Spy // } PlayerShootTemplate { Name ThundergunPT // OverrideShoot 1 Offset "36 0 0" ItemName "Thunder Gun" } PlayerItemEquipSpawnTemplate { Name "TGunDrop" ItemName "Thunder Gun" } Templates // More simple to change the templates with out changing the template names. { T_Zombie_Heavy { Class Heavy Skill Expert Health 150 // base hp, goes up 100 per round, becomes +10% mult after round 9. bring a calculator! WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" UseCustomModel "models/bots/heavy/bot_heavy_gibby.mdl" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.9 "voice pitch scale" 0.8 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Sniper { Class Sniper Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "move speed bonus" 0.9 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "dmg taken mult from special damage type 1" -1 "voice pitch scale" 0.8 } } T_Zombie_Soldier { Class Soldier Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" UseCustomModel "models/bots/soldier/bot_soldier_gibby.mdl" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "move speed bonus" 0.9 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "voice pitch scale" 0.8 } } T_Zombie_Demo { Class Demoman Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" UseCustomModel "models/bots/demo/bot_demo_gibby.mdl" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "voice pitch scale" 0.75 "move speed bonus" 0.9 "dmg taken from fire reduced" 1.05 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Medic { Class Medic Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "dmg taken from fire reduced" 1.05 "move speed bonus" 0.9 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "voice pitch scale" 0.8 } } T_Zombie_Scout { Class Scout Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.9 "voice pitch scale" 0.8 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Pyro { Class Pyro Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" UseCustomModel "models/bots/pyro/bot_pyro_gibby.mdl" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.9 "voice pitch scale" 0.8 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Engineer { Class Engineer Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon soldier_gib_lite Name Corrupted CustomEyeGlowColor "255 0 0" SpawnTemplate "EnemyTracker" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.9 "voice pitch scale" 0.8 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Special_Exploder { Class Demoman Name "Corrupted Sentry Buster" Skill Expert Health 2500 Item "The Ullapool Caber" WeaponRestrictions MeleeOnly ClassIcon sentry_buster Attributes MiniBoss Action SuicideBomber UseBusterModel 1 UseCustomModel "models/bots/demo/bot_sentry_buster_gibby_v3.mdl" CharacterAttributes { "move speed bonus" 2 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 7 } } T_Zombie_Special_Burner // Unused template { Class Soldier Skill Expert Health 275 Action Mobber Attributes MiniBoss Attributes DisableDodge Attributes AlwaysFireWeapon WeaponRestrictions MeleeOnly ExtAttr IgnoreBuildings ClassIcon soldier_shovel_ignited StripItemSlot 0 StripItemSlot 1 Scale 1 NoIdleSound 1 Item "The Space Bracers" Name "Burning Zombie" DeathSound =80|player\flame_out.wav SpawnTemplate "EnemyTracker" Sequence { Name run_LOSER Cooldown 0.5 Delay 2 Repeats 0 } FireInput { Target "!activator" Action "$IgnitePlayerDuration" Param "8" Delay 1 Cooldown 8 Repeats 0 } ItemAttributes { ItemName "The Space Bracers" "attach particle effect" 2 } ItemAttributes { ItemName TF_WEAPON_SHOVEL "gesture speed increase" 0 "is invisible" 1 "fire rate penalty" 0.5 "damage bonus" 0.4 "Set DamageType Ignite" 1 "bombinomicon effect on death" 1 "custom hit sound" misc/null.wav "custom kill icon" firedeath "ragdolls become ash" 1 } CharacterAttributes { "move speed bonus" 1.5 "voice pitch scale" 0 "cancel falling damage" 1 "increased jump height" 1.3 //"cannot be sapped" 1 "attach particle effect" 2 // "fire retardant" 1 // "dmg taken from fire reduced" 0.2 "mult stun resistance" 0 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Zombie_Special_Hulk // Standarad giant deflector heavy { Class Heavyweapons Skill Expert Name "Giant Corrupted Deflector Heavy" Health 8000 // only %hp increase MaxVisionRange 1000 Attributes MiniBoss Attributes DisableDodge Action Mobber Tag bigguyalert Tag swooce ClassIcon heavy_deflector AdditionalStepSound "MVM.SentryBusterStep" Item "The U-clank-a" Item "Deflector" UseCustomModel "models/bots/heavy_boss/bot_heavy_boss_gibby.mdl" SpawnTemplate "EnemyTracker" //SpawnTemplate "Hulk_PT" ItemAttributes { ItemName "Deflector" "attack projectiles" 1 } CharacterAttributes { "voice pitch scale" 1 "cancel falling damage" 1 "override footstep sound set" 7 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "mult stun resistance" 0 "dmg taken mult from special damage type 1" -1 //"cannot be sapped" 1 "no_duck" 1 "increased jump height" 1.3 "move speed penalty" 1.05 "dmg taken from crit reduced" 0.5 "override footstep sound set" 2 "move speed bonus" 0.5 } } T_Zombie_Special_Grappler //Repourposed into a support scout { Class Scout Skill Hard Name Corrupted Health 650 Action Mobber Attributes DisableDodge ClassIcon scout_shortstop_milky ExtAttr IgnoreBuildings MaxVisionRange 500 Item "The Shortstop" Item "Mad Milk" Item "The Milkman" Scale 1.3 SpawnTemplate "EnemyTracker" CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "Mad Milk" "effect bar recharge rate increased" 0.2 } CharacterAttributes { "move speed bonus" 0.7 "voice pitch scale" 0.6 "cancel falling damage" 1 "override footstep sound set" 0 "mult stun resistance" 0 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "damage penalty" 0.8 } } T_Zombie_Special_Crawler // he flops and he hops (Nah man. He leaps) { Class Demoman Name "Corrupted Samurai Demo" ClassIcon demoknight_samurai Skill Expert Item "The Half-Zatoichi" Item "The Splendid Screen" Action Mobber ItemAttributes { ItemName "The Splendid Screen" "Attack not cancel charge" 1 } Item "Demo Kabuto" Scale "1.3" Health 650 CustomEyeGlowColor "255 0 0" WeaponRestrictions MeleeOnly Attributes AirChargeOnly Attributes AutoJump AutoJumpMin 10 AutoJumpMax 10 UseCustomModel "models/bots/demo/bot_demo_gibby.mdl" SpawnTemplate "EnemyTracker" CharacterAttributes { "charge time increased" 2 "charge recharge rate increased" 7 "increased jump height" 2.3 "bot custom jump particle" 1 //"damage bonus" 1.5 // Barely dodgeable "force distribute currency on death" 1 } } T_Zombie_Special_Superfist // Spee { Class Spy Skill Expert Health 500 Action Mobber ExtAttr IgnoreBuildings WeaponRestrictions MeleeOnly Name "SpySheriff Copy" Item "The Stealth Steeler" Item "your eternal reward" ClassIcon vex_spy_disguise SpawnTemplate "EnemyTracker" CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "your eternal reward" "damage bonus" 2.5 "fire rate bonus" 0.75 } CharacterAttributes { "cancel falling damage" 1 "override footstep sound set" 0 "mult stun resistance" 0 "increased jump height" 1.3 //"cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "move speed bonus" 1.12 "sapper damage bonus" 1.5 "sapper health bonus" 1.5 } } T_Zombie_Special_Corroder //Scorch shot { Class Pyro Skill Expert Health 650 Name "Corrupted Scorch Shot Pyro" StripItemSlot 0 Action Mobber ClassIcon pyro_scorch Scale 1.3 WeaponRestrictions SecondaryOnly Item "The Scorch Shot" SpawnTemplate "EnemyTracker" UseCustomModel "models/bots/pyro/bot_pyro_gibby.mdl" CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "The Scorch Shot" "damage causes airblast" 1 } CharacterAttributes { "move speed bonus" 0.7 "cancel falling damage" 1 "override footstep sound set" 0 "mult stun resistance" 0 "increased jump height" 1.3 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 } } T_Robot_Boss_Treadkill // spawns in round 16, takes tank round's place { Name "Chief Homing Blackbox" Class Soldier ClassIcon soldier_blackbox_homing_nys Scale 2 Health 80000 Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes UseBossHealthBar Skill Expert WeaponRestrictions PrimaryOnly Action Mobber Item "The Black Box" Item "The War Pig" Item "Patriot's Pouches" Tag bot_giant RocketCustomParticle "eyeboss_projectile" SpawnTemplate "EnemyTracker" UseCustomModel "models/bots/soldier_boss/bot_soldier_boss_gibby.mdl" CustomEyeGlowColor "255 0 0" ItemColor //Set item color { ItemName "The Black Box" Red 255 Green 50 Blue 255 } ItemAttributes { ItemName "The Black Box" //"damage bonus" 4.5 // No way to resist this "fire rate bonus" 0.001 "faster reload rate" 0.6 "blast radius increased" 1.25 "projectile spread angle penalty" 6 "heal on hit for slowfire" 350 "Projectile speed decreased" 0.25 "mod rage damage boost" 2.5 } HomingRockets { IgnoreDisguisedSpies 1 // Default: 1 IgnoreStealthedSpies 1 // Default: 1 RocketSpeed 2 // Multiplier of rocket speed. (Default: 1) TurnPower 20 //How fast should the rocket rotate to face the target (Default: 10) MaxAimError 200 //Max angle between rocket and the target (Default: 105) AimTime 9999 //How long should the rocket be aiming (Default: 9999) Acceleration 750 //Acceleration in hu (Default: 0) AccelerationTime 1000 //How long should the rocket accelerate (Default: 9999) } CharacterAttributes { "move speed bonus" 0.4 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 7 "rage giving scale" 0.1 } } T_Robot_Boss_Battlelord // spawns with tread { Name "Infinite Heavy Bullets" Class Heavyweapons ClassIcon heavy_shotgun_infinite Scale 2 Health 80000 Attributes MiniBoss Attributes UseBossHealthBar Skill Expert WeaponRestrictions SecondaryOnly Action Mobber Tag bot_giant Item "warbird_shotgun_redbear" Item "The Holiday Headcase" Item "The Apparatchik's Apparel" UseCustomModel "models/bots/heavy_boss/bot_heavy_boss_gibby.mdl" CustomEyeGlowColor "255 0 0" SpawnTemplate "EnemyTracker" ItemAttributes { ItemName "warbird_shotgun_redbear" "damage penalty" 0.5 "revolver use hit locations" 1 "bullets per shot bonus" 5 "spread penalty" 0.5 "attach particle effect" 701 "health on radius damage" 500 "fire rate bonus" 0.4 "mod max primary clip override" -1 } CharacterAttributes { "move speed bonus" 0.6 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 7 "rage giving scale" 0.1 } } } ///////////////////////////////////////////////////////////////////////////////////// // Shadows Advanced (Ua Liaj Ua Teb) // Cash given at start: $600 ///////////////////////////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_output_clear Action Trigger } DoneOutput { Target checkpoint_relay Action Trigger } Explanation { Line "{yellow}Take on the hordes of the corrupted." Line "{yellow}Clear 20 rounds to win!" Line "{red}WARNING: {yellow}!!!Mission is DEPRECATED! PLAY THIS AT YOUR OWN RISK!!!" } SpawnTemplate "Pushblocks" // in here so 'corelogic' doesn't delete them while wiping Shadows things SpawnTemplate "Thekits" SpawnTemplate "Roundtimer" SpawnTemplate "TankTeleport" SpawnTemplate "DumpsterBox" SpawnTemplate // spawned here as safeguard against corelogic wipe { Name "Vending_Jugg" Origin "477 -2103 -44" Angles "0 270 0" } SpawnTemplate { Name "Vending_Quickrevive" Origin "-1794 1236 -52" Angles "0 270 0" } SpawnTemplate { Name "Vending_Speed" Origin "-1157 -597 -248" Angles "0 90 0" } SpawnTemplate { Name "Vending_Blaster" Origin "197 -2659 -42" Angles "0 0 0" } SpawnTemplate { Name "Vending_Doubletap" Origin "-19 1893 156" Angles "0 0 0" } SpawnTemplate { Name "Vending_Flop" Origin "129 -1307 206" Angles "0 0 0" } WaveSpawn { Name "stage_01" Where spawnbot_zombie TotalCount 12 MaxActive 12 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1.7 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper CharacterAttributes { "move speed bonus" 0.8 } } TFBot { Template T_Zombie_Soldier CharacterAttributes { "move speed bonus" 0.8 } } TFBot { Template T_Zombie_Demo CharacterAttributes { "move speed bonus" 0.8 } } } } WaveSpawn { Name "stage_02" Where spawnbot_zombie TotalCount 21 MaxActive 21 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.7 WaitForAllDead "stage_01" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 250 CharacterAttributes { "move speed bonus" 0.82 } } TFBot { Template T_Zombie_Soldier Health 250 CharacterAttributes { "move speed bonus" 0.82 } } TFBot { Template T_Zombie_Heavy Health 250 CharacterAttributes { "move speed bonus" 0.82 } } TFBot { Template T_Zombie_Demo Health 250 CharacterAttributes { "move speed bonus" 0.82 } } } } WaveSpawn { Name "stage_03" Where spawnbot_zombie TotalCount 29 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.7 WaitForAllDead "stage_02" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Soldier Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Heavy Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Demo Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Medic Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Scout Health 350 CharacterAttributes { "move speed bonus" 0.84 } } TFBot { Template T_Zombie_Demo Health 350 CharacterAttributes { "move speed bonus" 0.84 } } } } WaveSpawn { Name "stage_04" Where spawnbot_zombie TotalCount 37 MaxActive 26 // bot cap SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.7 WaitForAllDead "stage_03" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Soldier Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Heavy Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Demo Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Medic Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Scout Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Pyro Health 450 CharacterAttributes { "move speed bonus" 0.86 } } TFBot { Template T_Zombie_Special_Grappler Health 450 } } } WaveSpawn { Name "stage_05" Where spawnbot_zombie TotalCount 45 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_04" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Soldier Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Heavy Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Demo Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Medic Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Soldier Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Scout Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Pyro Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Engineer Health 550 CharacterAttributes { "move speed bonus" 0.88 } } TFBot { Template T_Zombie_Special_Grappler Health 550 } } } WaveSpawn { Name "stage_06" Where spawnbot_zombie TotalCount 50 // spawn cap MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_05" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Soldier Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Heavy Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Demo Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Medic Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Soldier Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Scout Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Pyro Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Engineer Health 650 CharacterAttributes { "move speed bonus" 0.9 } } TFBot { Template T_Zombie_Special_Corroder Health 650 } } } WaveSpawn // first tank round { Name "stage_07_transition" Where spawnbot_tank WaitBeforeStarting 12 WaitForAllDead "stage_06" TotalCurrency 0 FirstSpawnWarningSound "shadows\bossround_start.mp3" FirstSpawnOutput { Target bossstage_start Action Trigger } } WaveSpawn { Name "stage_07" Where spawnbot_tank TotalCount 8 MaxActive 8 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 6.5 WaitForAllSpawned "stage_07_transition" TotalCurrency 0 DoneOutput { Target bossstage_clear Action Trigger } TFBot { Template T_Zombie_Special_Hulk } } WaveSpawn { Name "stage_08" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_07" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Soldier Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Heavy Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Demo Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Medic Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Soldier Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Scout Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Pyro Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Engineer Health 850 CharacterAttributes { "move speed bonus" 0.94 } } TFBot { Template T_Zombie_Special_Grappler Health 850 } TFBot { Template T_Zombie_Special_Corroder Health 850 } } } WaveSpawn { Name "stage_09" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_08" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Soldier Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Heavy Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Demo Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Medic Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Soldier Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Scout Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Pyro Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Engineer Health 950 CharacterAttributes { "move speed bonus" 0.96 } } TFBot { Template T_Zombie_Special_Grappler Health 950 } TFBot { Template T_Zombie_Special_Corroder Health 950 } } } WaveSpawn { Name "stage_10" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_09" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 1045 } TFBot { Template T_Zombie_Soldier Health 1045 } TFBot { Template T_Zombie_Heavy Health 1045 } TFBot { Template T_Zombie_Demo Health 1045 } TFBot { Template T_Zombie_Medic Health 1045 } TFBot { Template T_Zombie_Soldier Health 1045 } TFBot { Template T_Zombie_Scout Health 1045 } TFBot { Template T_Zombie_Pyro Health 1045 } TFBot { Template T_Zombie_Engineer Health 1045 } TFBot { Template T_Zombie_Special_Grappler Health 1045 } TFBot { Template T_Zombie_Special_Corroder Health 1045 } } } WaveSpawn { Name "stage_11" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_10" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 1149 } TFBot { Template T_Zombie_Soldier Health 1149 } TFBot { Template T_Zombie_Heavy Health 1149 } TFBot { Template T_Zombie_Demo Health 1149 } TFBot { Template T_Zombie_Medic Health 1149 } TFBot { Template T_Zombie_Soldier Health 1149 } TFBot { Template T_Zombie_Scout Health 1149 } TFBot { Template T_Zombie_Pyro Health 1149 } TFBot { Template T_Zombie_Engineer Health 1149 } TFBot { Template T_Zombie_Special_Grappler Health 1149 } TFBot { Template T_Zombie_Special_Corroder Health 1149 } } } WaveSpawn { Name "stage_12_transition" Where spawnbot_tank WaitBeforeStarting 12 WaitForAllDead "stage_11" TotalCurrency 0 FirstSpawnWarningSound "shadows\bossround_start.mp3" FirstSpawnOutput { Target bossstage_start Action Trigger } } WaveSpawn { Name "stage_12" Where spawnbot_tank TotalCount 9 MaxActive 9 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 5 WaitForAllSpawned "stage_12_transition" TotalCurrency 0 DoneOutput { Target bossstage_clear Action Trigger } TFBot { Template T_Zombie_Special_Hulk Health 9680 } } WaveSpawn { Name "stage_13" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_12" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 1389 } TFBot { Template T_Zombie_Demo Health 1389 } TFBot { Template T_Zombie_Medic Health 1389 } TFBot { Template T_Zombie_Soldier Health 1389 } TFBot { Template T_Zombie_Scout Health 1389 } TFBot { Template T_Zombie_Pyro Health 1389 } TFBot { Template T_Zombie_Engineer Health 1389 } TFBot { Template T_Zombie_Special_Grappler Health 1389 } TFBot { Template T_Zombie_Special_Corroder Health 1389 } TFBot { Template T_Zombie_Special_Crawler Health 1389 } TFBot { Template T_Zombie_Special_Superfist Health 1389 } } } WaveSpawn { Name "stage_14" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_13" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 1527 } TFBot { Template T_Zombie_Demo Health 1527 } TFBot { Template T_Zombie_Medic Health 1527 } TFBot { Template T_Zombie_Soldier Health 1527 } TFBot { Template T_Zombie_Scout Health 1527 } TFBot { Template T_Zombie_Pyro Health 1527 } TFBot { Template T_Zombie_Engineer Health 1527 } TFBot { Template T_Zombie_Special_Corroder Health 1527 } TFBot { Template T_Zombie_Special_Crawler Health 1527 } TFBot { Template T_Zombie_Special_Superfist Health 1389 } } } WaveSpawn { Name "stage_15" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_14" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Special_Grappler Health 1679 } } } WaveSpawn // boss round { Name "stage_16_transition" Where spawnbot_tank WaitBeforeStarting 12 WaitForAllDead "stage_15" TotalCurrency 0 FirstSpawnWarningSound "shadows\bossround_start.mp3" FirstSpawnOutput { Target bossstage_start_tread Action Trigger } } WaveSpawn { Name "stage_16" Where spawnbot_right TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15.5 WaitBetweenSpawns 0 WaitForAllSpawned "stage_16_transition" TotalCurrency 0 FirstSpawnWarningSound "vo/mvm/mght/taunts/soldier_mvm_m_taunts20.mp3" DoneWarningSound "vo/mvm/mght/soldier_mvm_m_paincrticialdeath02.mp3" // FirstSpawnOutput // { // Target battlelord_cosmetics_relay // Action Trigger // } // DoneOutput // { // Target autotank_death // Action Trigger // } Squad { Squad { TFBot { Template T_Robot_Boss_Treadkill } } } } WaveSpawn { Name "stage_16" Where spawnbot_left TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 0 WaitForAllSpawned "stage_16_transition" TotalCurrency 0 FirstSpawnWarningSound "vo/mvm/mght/taunts/heavy_mvm_m_taunts02.mp3" DoneWarningSound "vo/mvm/mght/heavy_mvm_m_paincrticialdeath01.mp3" // FirstSpawnOutput // { // Target bossfight_snd // Action PlaySound // } // DoneOutput // { // Target blord_death // Action Trigger // } Squad { Squad { TFBot { Template T_Robot_Boss_Battlelord } } } } WaveSpawn { Name "stage_16" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 1.5 WaitForAllDead "stage_16_transition" TotalCurrency 0 RandomChoice { TFBot { Template T_Zombie_Special_Exploder Health 2000 } } } WaveSpawn // marked so the round ends properly { Name "stage_16_end" Where spawnbot_tank WaitBeforeStarting 0 WaitForAllDead "stage_16" TotalCurrency 0 StartWaveOutput { Target bossstage_clear Action Trigger } } WaveSpawn { Name "stage_17" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_16_end" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 2030 } TFBot { Template T_Zombie_Soldier Health 2030 } TFBot { Template T_Zombie_Demo Health 2030 } TFBot { Template T_Zombie_Medic Health 2030 } TFBot { Template T_Zombie_Soldier Health 2030 } TFBot { Template T_Zombie_Scout Health 2030 } TFBot { Template T_Zombie_Pyro Health 2030 } TFBot { Template T_Zombie_Engineer Health 2030 } TFBot { Template T_Zombie_Special_Grappler Health 2030 } TFBot { Template T_Zombie_Special_Corroder Health 2030 } TFBot { Template T_Zombie_Special_Superfist Health 2030 } TFBot { Template T_Zombie_Special_Crawler Health 2030 } TFBot { Template T_Zombie_Special_Exploder } } } WaveSpawn { Name "stage_17" Where spawnbot_tank TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 35 WaitBetweenSpawns 13 WaitForAllDead "stage_16_end" TotalCurrency 0 TFBot { Template T_Zombie_Special_Hulk Health 15590 } } WaveSpawn // marked so the round ends properly { Name "stage_17_end" Where spawnbot_tank WaitBeforeStarting 0 WaitForAllDead "stage_17" TotalCurrency 0 StartWaveOutput { Target stage_clear Action Trigger } } WaveSpawn { Name "stage_18" Where spawnbot_zombie TotalCount 50 MaxActive 26 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_17_end" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } DoneOutput { Target stage_clear Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 2233 } TFBot { Template T_Zombie_Soldier Health 2233 } TFBot { Template T_Zombie_Heavy Health 2233 } TFBot { Template T_Zombie_Demo Health 2233 } TFBot { Template T_Zombie_Medic Health 2233 } TFBot { Template T_Zombie_Soldier Health 2233 } TFBot { Template T_Zombie_Scout Health 2233 } TFBot { Template T_Zombie_Pyro Health 2233 } TFBot { Template T_Zombie_Engineer Health 2233 } TFBot { Template T_Zombie_Special_Grappler Health 2233 } TFBot { Template T_Zombie_Special_Corroder Health 2233 } TFBot { Template T_Zombie_Special_Superfist Health 2233 } TFBot { Template T_Zombie_Special_Crawler Health 2233 } TFBot { Template T_Zombie_Special_Exploder Health 2750 } } } WaveSpawn { Name "stage_19" Where spawnbot_zombie TotalCount 50 MaxActive 24 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.5 WaitForAllDead "stage_18" TotalCurrency 0 FirstSpawnWarningSound "shadows\stage_start.mp3" FirstSpawnOutput { Target stage_start Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 2456 } TFBot { Template T_Zombie_Soldier Health 2456 } TFBot { Template T_Zombie_Demo Health 2456 } TFBot { Template T_Zombie_Medic Health 2456 } TFBot { Template T_Zombie_Scout Health 2456 } TFBot { Template T_Zombie_Pyro Health 2456 } TFBot { Template T_Zombie_Engineer Health 2456 } TFBot { Template T_Zombie_Special_Grappler Health 2456 } TFBot { Template T_Zombie_Special_Corroder Health 2456 } TFBot { Template T_Zombie_Special_Superfist Health 2456 } TFBot { Template T_Zombie_Special_Crawler Health 2456 } TFBot { Template T_Zombie_Special_Exploder Health 3025 } } } WaveSpawn { Name "stage_19" Where spawnbot_tank TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 35 WaitBetweenSpawns 13 WaitForAllDead "stage_18" TotalCurrency 0 RandomChoice { TFBot { Template T_Zombie_Special_Hulk Health 18863 } } } WaveSpawn // marked so the round ends properly { Name "stage_19_end" Where spawnbot_tank WaitBeforeStarting 0 WaitForAllDead "stage_19" TotalCurrency 0 StartWaveOutput { Target stage_clear_finale Action Trigger } } WaveSpawn // finale { Name "stage_20" Where spawnbot_zombie TotalCount 86 MaxActive 24 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 1.3 WaitForAllDead stage_19 TotalCurrency 0 FirstSpawnOutput { Target stage_start_finale Action Trigger } RandomChoice { TFBot { Template T_Zombie_Sniper Health 2701 } TFBot { Template T_Zombie_Soldier Health 2701 } TFBot { Template T_Zombie_Demo Health 2701 } TFBot { Template T_Zombie_Medic Health 2701 } TFBot { Template T_Zombie_Sniper Health 2701 } TFBot { Template T_Zombie_Medic Health 2701 } TFBot { Template T_Zombie_Scout Health 2701 } TFBot { Template T_Zombie_Pyro Health 2701 } TFBot { Template T_Zombie_Engineer Health 2701 } TFBot { Template T_Zombie_Special_Grappler Health 2701 } TFBot { Template T_Zombie_Special_Corroder Health 2701 } TFBot { Template T_Zombie_Special_Superfist Health 2701 } TFBot { Template T_Zombie_Special_Crawler Health 2701 } TFBot { Template T_Zombie_Special_Exploder Health 3328 } } } WaveSpawn // finale { Name "stage_20" Where spawnbot_zombie TotalCount 6 MaxActive 2 SpawnCount 1 WaitBeforeStarting 35 WaitBetweenSpawns 40 WaitForAllDead stage_19 TotalCurrency 0 TFBot { Template T_Zombie_Special_Hulk Health 20750 } } WaveSpawn { Name "stage_20" WaitForAllDead stage_19 Where spawnbot_right TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 50 WaitBetweenSpawns 0 TotalCurrency 0 FirstSpawnWarningSound "vo/mvm/norm/taunts/medic_mvm_taunts15.mp3" DoneWarningSound "vo/mvm/norm/medic_mvm_PainCrticialDeath01.mp3" Squad { Squad { TFBot { Name "Lead Overdose" Class Medic ClassIcon medic_syringe_milk_spammer Health 90000 Attributes MiniBoss Attributes UseBossHealthBar Action Mobber Attributes DisableDodge ExtAttr IgnoreBuildings Skill Expert WeaponRestrictions PrimaryOnly Tag bot_giant Item "The Overdose" Item "The Surgeon's Stahlhelm" Item "Practitioner's Processing Mask" CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "The Overdose" "fire rate bonus" 0.1 "Reload time increased" 1.25 "add uber charge on hit" 0.01 "mad milk syringes" 1 } CharacterAttributes { "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 4 "rage giving scale" 0.1 } } } } } WaveSpawn { Name "stage_20" WaitForAllDead stage_19 Where spawnbot_left TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 55 WaitBetweenSpawns 0 TotalCurrency 0 FirstSpawnWarningSound "vo/mvm/mght/taunts/soldier_mvm_m_taunts15.mp3" DoneWarningSound "vo/mvm/mght/soldier_mvm_m_paincrticialdeath03.mp3" Squad { Squad { TFBot { Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Name "Major Gold" Item "The Team Captain" Item "The Black Box" Item "Fancy Dress Uniform" Item "The Gunboats" ClassIcon soldier_atomic_golden_lite Health 90000 Scale 2 Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes SpawnWithFullCharge ExtAttr IgnoreBuildings Action Mobber UseCustomModel "models/bots/soldier_boss/bot_soldier_boss_gibby.mdl" CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "The Black Box" "killstreak idleeffect" 1 "is australium item" 1 "item style override" 1 "turn to gold" 1 "damage bonus" 1.5 "damage causes airblast" 1 "faster reload rate" 1.5 "fire rate penalty" 1.5 "projectile spread angle penalty" 1 "blast radius increased" 2.5 "Projectile speed increased" 2.5 "dmg falloff decreased" 0.25 "fire rate bonus with reduced health" 0.6 "heal on hit for rapidfire" 50 "health on radius damage" 100 } CharacterAttributes { "health regen" 50 "move speed bonus" 0.4 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 } Item "lord cockswain's novelty mutton chops and pipe" Item "duel medal gold" } } } } WaveSpawn { Name "stage_20" WaitForAllDead stage_19 Where spawnbot_zombie TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 60 WaitBetweenSpawns 0 TotalCurrency 0 FirstSpawnWarningSound "vo/mvm/norm/engineer_mvm_dominationheavy02.mp3" DoneWarningSound "vo/mvm/norm/engineer_mvm_paincrticialdeath02.mp3" RandomChoice { RandomChoice { TFBot { Class Engineer Item "Upgradeable TF_WEAPON_WRENCH" Skill Expert Action Mobber Attributes IgnoreFlag Attributes MiniBoss Attributes UseBossHealthBar Name "Off Limits" ClassIcon engineer_golden_lite WeaponRestrictions MeleeOnly Health 99999 //HideIcon 1 Tag bigguyalert Tag swooce SpawnTemplate "EnemyTracker" ItemAttributes { ItemName "Upgradeable TF_WEAPON_WRENCH" "is_festivized" 1 "attach particle effect" 702 "attach particle effect static" 4 "is australium item" 1 "item style override" 1 "move speed bonus" 99 "fire rate bonus" 0.6 "bleeding duration" 100 "damage bonus" 3 "heal on kill" 10000 "dmg bonus vs buildings" 1000 "Construction rate increased" 500 "engy building health bonus" 1000000 "Repair rate increased" 10000000 "engy sentry damage bonus" 51 "engy sentry fire rate increased" -1 "engy sentry radius increased" 5000 "engy dispenser radius increased" 99998 "engineer building teleporting pickup" 1 "building cost reduction" 0 "maxammo metal increased" 1001 } CharacterAttributes { "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 2 "rage giving scale" 0.05 "health regen" 1000 "jarate backstabber" 1 "mult stun resistance" 0.1 "no_jump" 1 "dmg taken from crit reduced" 0 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 } } } } } WaveSpawn { Name "theend" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 0 WaitForAllDead stage_20 TotalCurrency 9999 StartWaveOutput { Target youwin Action Trigger } Squad { Squad { TFBot { Class Heavyweapons WeaponRestrictions MeleeOnly Attributes IgnoreFlag CharacterAttributes { "move speed bonus" 0.08 } Health 30000 } } } } } } /////////////// // Version 1: // Realease /////////////// // Version 1.1: // AAAAAAAAAAAHHHHHHHHHHHHHHHHH // BUGS EVERYWHERE /////////////// // Version 1.2: // New Uberweapon (Hammer Time) /////////////// // Version 1.3: // Removed the gates blocking off spawn /////////////// // Version 1.4: // You can carry dumpster weapons now /////////////// // Version 1.5 // Added sentry busters to Round 16 // Added 2 more bosses to round 20 /////////////// // Version 1.6 // Gibby models ///////////////