// Mission designer: Lyney // Map Designer: Bazooks (https://steamcommunity.com/profiles/76561198158093750/) #base robot_giant.pop #base robot_standard.pop #base robot_lyney.pop #base judge_restricts_v2.pop // Spawnbot Name // spawnbot // spawnbot_left // spawnbot_right // spawnbot_topflank // spawnbot_mission_sniper // spawnbot_mission_spy // Tank Path // boss_path_left_1 // boss_path_middle_1 // boss_path_right_1 // SUBWAVE 1 (6 Subwaves) Current Money: 2300$ // SUBWAVE 2 (5 Subwaves) Current Money: 2300$ + 2000$ = 4300$ // SUBWAVE 3 Current Money: 4300$ + 1700$ = 6000$ // Total Possible Money: WaveSchedule { StartingCurrency 7000 RespawnWaveTime 3 FixedRespawnWaveTime Yes CanBotsAttackWhileInSpawnRoom no EventPopfile Halloween BotsAreHumans 1 NoCritPumpkin 1 ForceHoliday 2 NoRomevisionCosmetics 1 PrecacheSound "beautyofannihilation_main.mp3" PrecacheSound "beautyofannihilation_loop.mp3" PrecacheSound "shadows/bossround_end.mp3" DisableSound "Game.YourTeamWon" LuaScriptFile "scripts/bot_pale_burst.lua" // Missions Mission // Sentrybuster { Objective DestroySentries InitialCooldown 10 Where spawnbot BeginAtWave 1 RunForThisManyWaves 9 CooldownTime 45 TFBot { Template T_TFBot_SentryBuster Attributes DisableDodge } } Mission // Sniper - Wave 1 { Objective Sniper InitialCooldown 30 Where spawnbot_mission_sniper BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 75 DesiredCount 2 TFBot { Class Sniper Skill Hard } } Mission // Spy - Wave 1 { Objective Spy InitialCooldown 45 Where spawnbot_mission_spy BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 2 TFBot { Class Spy Skill Hard } } Templates { T_TFBot_Giant_Soldier_Pale_Boss { Class Soldier Name "Elder God Soldier" ClassIcon soldier_shotgun2_hyper Health 66666 Skill Expert Action Mobber Attributes IgnoreFlag Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes UseBossHealthBar Attributes AutoJump AutoJumpMin 30 AutoJumpMax 30 AlwaysGlow 1 Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" Item "Wings of Purity" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "paintkit_proto_def_index" 420 "set_item_texture_wear" 0 "damage bonus" 2 "faster reload rate" 0.8 "fire rate bonus" 0.25 } ItemAttributes { ItemName "Upgradeable TF_WEAPON_SHOTGUN_PRIMARY" "paintkit_proto_def_index" 420 "set_item_texture_wear" 0 "passive reload" 1 "fire rate bonus" 0.7 "attack projectiles" 1 "faster reload rate" -0.8 } CharacterAttributes { "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "cannot pick up intelligence" 1 "increased jump height" 3 "move speed bonus" 0.7 } SpawnTemplate { Name "PaleBurst" } } } PointTemplates { PaleBurst { OnSpawnOutput { Target "popscript" Action "$PaleBurstLogic" Delay 0.01 } } BossMusic { ambient_generic { "targetname" "startmusicplay" "message" "#beautyofannihilation_main.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } ambient_generic { "targetname" "extended" "message" "#beautyofannihilation_loop.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } ambient_generic { "targetname" "endmusicplay" "message" "#shadows/bossround_end.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } ambient_generic { "targetname" "startmusicplay" "message" "#beautyofannihilation_main.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } ambient_generic { "targetname" "extended" "message" "#beautyofannihilation_loop.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } ambient_generic { "targetname" "endmusicplay" "message" "#shadows/bossround_end.mp3" "health" "10" "pitch" "100" "volume" "10" "spawnflags" "17" } logic_relay { "targetname" "musicplay" "spawnflags" "2" "OnTrigger" "startmusicplay,PlaySound,,0,-1" "OnTrigger" "startmusicplay,StopSound,,208,-1" "OnTrigger" "musicloop,Trigger,,209,-1" } //Loop logic_relay { "targetname" "musicloop" "spawnflags" "2" "OnTrigger" "extended,PlaySound,,0,-1" "OnTrigger" "musiclooper,Trigger,,157,-1" } //Loop handler logic_relay { "targetname" "musiclooper" "spawnflags" "2" "OnTrigger" "extended,StopSound,,0.2,-1" "OnTrigger" "musicloop,Trigger,,0.22,-1" } //Music Stop logic_relay { "targetname" "musicstop" "OnTrigger" "endmusicplay,PlaySound,,0,-1" "OnTrigger" "musicloop,Disable,,0,-1" "OnTrigger" "musiclooper,Disable,,0,-1" "OnTrigger" "extended,StopSound,,0,-1" "OnTrigger" "startmusicplay,StopSound,,0,-1" } } EnemyTracker // shoot enemy, get money { OnParentKilledOutput // avoid stacking outputs { Target "!activator" Action "$RemoveOutput" Param "$OnDeath" } OnParentKilledOutput // avoid stacking outputs { Target "relay_enemycount_subtract" Action "trigger" } OnSpawnOutput { Target "relay_enemycount_add" Action "trigger" } OnSpawnOutput { Target "popscript" Action "$OnWaveSpawnBot" } // OnSpawnOutput // money for kill // { // Target "!activator" // Action "AddOutput" // Param "$OnDeath !activator:$AddCurrency:100: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 // apparently crashes servers // { // 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_v4.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 } } } SpawnTemplate BossMusic //WAVE 1 Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`bombpath_choose_random_relay`, `Kill`) EntFire(`bombpath_choose_middle_relay`, `TurnOn`) EntFire(`intel`, `Disable`) EntFire(`intel_ironman`, `Enable`) EntFire(`bombpath_nav_avoid_left`, `TurnOff`) EntFire(`bombpath_holograms_left`, `TurnOff`) EntFire(`bombpath_nav_avoid_middle`, `TurnOn`) EntFire(`bombpath_holograms_middle`, `TurnOn`) EntFire(`bombpath_nav_avoid_right`, `TurnOff`) EntFire(`bombpath_holograms_right`, `TurnOff`) " } Explanation { Line "{green}This mission, The bomb will take a unique path for each wave!" Line "{green}45 seconds for each break" } WaveSpawn { Name 1.1 Where spawnbot TotalCount 9 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 17.1 TotalCurrency 300 TFBot { Template T_TFBot_Giant_Soldier_Escape_Conch Action Mobber Attributes IgnoreFlag Attributes AlwaysCrit ClassIcon soldier_giant } } //SUBWAVE 1 (2000$) WaveSpawn { Name 1.1 Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 51.3 WaitBetweenSpawns 0 TotalCurrency 0 StartWaveOutput { Target musicplay Action Trigger } TFBot { Template T_TFBot_Giant_Soldier_Pale_Boss } } WaveSpawn { Name Stopmusic WaitForAllDead 1.1 StartWaveOutput { Target musicstop Action Trigger } } } } // music loop at 51.334 // music end 208.3