4U{nutscripts/vscriptsneck snapK &txtmodesneck snap8i. addoninfoOp.// The addoninfo.txt file is a metadata file that is required by all Source Engine Add-ons. "AddonInfo" { addonSteamAppID 550 // 500 is the app ID for Left 4 Dead, 550 for Left 4 Dead 2 addontitle "Neck Snap" // Add-on title that shows up in Add-ons list. ~20 chars max addonversion 1.0 // Add-on version. addontagline "another" // Add-on tagline or wrap-up- a short description. ~100 chars max addonauthor "!Chain Gang Of 1974" // Name/alias of the author addonSteamGroupName "" // (Optional) Steam group related to the add-on. We use this to construct a URL to the group page. addonauthorSteamID "" // (Optional) Steam ID of author. We use this to construct a URL to the author's page. addonURL0 "" //An html home page for the add-on that includes a download link. // short description that appears in the Add-on list screen... addonDescription "ha." // Authors can add localized descriptions here. (Not yet supported) //addonDescription_FR "" addonContent_Script 1 // Has Scripts }"Neck Snap" { "base" "coop" "maxplayers" "4" "DisplayTitle" "Neck Snap" "ShortDescription" "How do Chokes kill you" "Description" "Watch out for smokers as they can constrict you regardless of difficulty" "Image" "maps/any" "Author" "!Chain Gang Of 1974" convar { sb_all_bot_game 1 allow_all_bot_survivor_team 1 sb_friend_immobilized_reaction_time_expert 0.0 sb_friend_immobilized_reaction_time_hard 0.0 sb_friend_immobilized_reaction_time_normal 0.0 survivor_limp_walk_speed 210 survivor_revive_health 50 survivor_limp_health 1 survivor_incap_tongued_decay_rate 1 survivor_allow_crawling 1 survivor_crawl_speed 85 survivor_incap_decay_rate 5 tongue_choke_damage_amount 5 tongue_choke_damage_interval 0.33 tongue_victim_max_speed 260 z_gas_health 100 tongue_hit_delay 60 smoker_tongue_delay 0 tongue_miss_delay 60 director_scavenge_item_override 1 director_pain_pill_density 20.22 director_defibrillator_density 18.22 ammo_sniperrifle_max 360 ammo_huntingrifle_max 300 ammo_assaultrifle_max 720 ammo_smg_max 990 ammo_autoshotgun_max 180 ammo_shotgun_max 128 sv_vote_creation_timer 1 sv_rescue_disabled 1 } } //----------------------------------------------------- Msg("Activating Neck Snap\n"); Msg("Made by !Chain Gang of 1974\n"); DirectorOptions <- { ActiveChallenge = 1 cm_CommonLimit = 0 cm_DominatorLimit = 8 cm_MaxSpecials = 8 cm_ProhibitBosses = false cm_SpecialRespawnInterval = 3 cm_AllowPillConversion = 0 SpecialInitialSpawnDelayMin = 0 SpecialInitialSpawnDelayMax = 8 ShouldAllowSpecialsWithTank = true EscapeSpawnTanks = true SurvivorMaxIncapacitatedCount = 5 TankHitDamageModifierCoop = 0.5 SmokerLimit = 8 BoomerLimit = 0 HunterLimit = 0 SpitterLimit = 0 JockeyLimit = 0 ChargerLimit = 0 // convert items that aren't useful weaponsToConvert = { weapon_vomitjar = "weapon_molotov_spawn" weapon_first_aid_kit = "weapon_pain_pills_spawn" } function ConvertWeaponSpawn( classname ) { if ( classname in weaponsToConvert ) { return weaponsToConvert[classname]; } return 0; } weaponsToRemove = { weapon_rifle_m60 = 0 ammo = 0 weapon_pipe_bomb = 0 weapon_chainsaw = 0 weapon_pistol = 0 weapon_grenade_launcher = 0 } function AllowWeaponSpawn( classname ) { if ( classname in weaponsToRemove ) { return false; } return true; } DefaultItems = [ "weapon_pistol_magnum", ] function GetDefaultItem( idx ) { if ( idx < DefaultItems.len() ) { return DefaultItems[idx]; } return 0; } TempHealthDecayRate = 0.001 function RecalculateHealthDecay() { if ( Director.HasAnySurvivorLeftSafeArea() ) { TempHealthDecayRate = 0.001 // pain_pills_decay_rate default } } } function Update() { DirectorOptions.RecalculateHealthDecay(); } disabled_car_alarms <- false; disabled_c1m1_tanks <- false; disabled_c7m1_bosses <- false; gave_l4d1_survivors_pistols <- false; released_l4d1_survivors <- false; removed_common_spawns <- false; removed_impound_instructor <- false; function Update() { if( !removed_common_spawns ) { EntFire( "intro_zombie_spawn", "kill" ); EntFire( "zspawn_lobby_fall_1", "kill" ); EntFire( "zspawn_lobby_fall_2", "kill" ); EntFire( "zspawn_lobby_fall_3", "kill" ); EntFire( "zspawn_lobby_fall_4", "kill" ); EntFire( "zspawn_lobby_fall_5", "kill" ); EntFire( "zspawn_fall_1", "kill" ); EntFire( "zspawn_fall_2", "kill" ); EntFire( "zombie_outro", "kill" ); EntFire( "escape_zombie", "kill" ); EntFire( "zspawn_zombie_safe", "kill" ); EntFire( "zspawn_zombie_safe2", "kill" ); EntFire( "spawn_zombie_van", "kill" ); EntFire( "spawn_zombie_alarm", "kill" ); EntFire( "spawn_zombie_alarm2", "kill" ); EntFire( "zombie_spawn1", "kill" ); EntFire( "spawn_zombie_run", "kill" ); EntFire( "spawn_zombie_end", "kill" ); EntFire( "infected_spawner", "kill" ); EntFire( "infected_spawner2", "kill" ); EntFire( "spawn_zombie_location1", "kill" ); EntFire( "spawn_zombie_location2", "kill" ); EntFire( "spawn_zombie_location3", "kill" ); EntFire( "spawn_zombie_location4", "kill" ); EntFire( "spawn_zombie_location5", "kill" ); EntFire( "spawn_zombie_location6", "kill" ); removed_common_spawns = true; } if( Director.GetCommonInfectedCount() >= 1 ) { z <- null; while( ( z = Entities.FindByClassname( z, "infected" ) ) != null ) { DoEntFire( "!self", "kill", "", 0, null, z ); } } if( !disabled_c1m1_tanks && Entities.FindByName( null, "c1m1_c1m2_changelevel" ) ) { DirectorOptions.TankLimit <- 0; disabled_c1m1_tanks = true; } if( !disabled_c7m1_bosses && Entities.FindByName( null, "spawn_train_tank_coop" ) ) { DirectorOptions.cm_ProhibitBosses <- true; disabled_c7m1_bosses = true; } if( !released_l4d1_survivors && Entities.FindByName( null, "l4d1_survivors_relay" ) && Director.HasAnySurvivorLeftSafeArea() ) { EntFire( "l4d1_spawn_trigger", "kill" ); EntFire( "l4d1_survivors_relay", "trigger" ); EntFire( "!francis", "releasefromsurvivorposition", "", 1 ); EntFire( "!louis", "releasefromsurvivorposition", "", 1 ); EntFire( "!zoey", "releasefromsurvivorposition", "", 1 ); released_l4d1_survivors = true; } if( !gave_l4d1_survivors_pistols && released_l4d1_survivors == true && Entities.FindByName( null, "!francis" ) ) { L4D1Survivors <- [ "!bill" "!francis" "!zoey" "!louis" ] L4D1Survivor <- null; Pistol <- null; Pistol = Entities.FindByClassname( Pistol, "weapon_pistol_spawn" ); foreach(s in L4D1Survivors) { while( L4D1Survivor = Entities.FindByName( L4D1Survivor, s ) ) { DoEntFire( "!self", "use", "", 0, L4D1Survivor, Pistol ); } } gave_l4d1_survivors_pistols = true; } if( !disabled_car_alarms && Director.HasAnySurvivorLeftSafeArea() ) { ent <- null; while( ( ent = Entities.FindByModel( ent, "models/props_vehicles/cara_95sedan_glass_alarm.mdl" ) ) != null ) { DoEntFire( "!self", "kill", "", 0, null, ent ); } ent <- null; while( ( ent = Entities.FindByModel( ent, "models/props_vehicles/cara_95sedan_glass.mdl" ) ) != null ) { DoEntFire( "!self", "enable", "", 0, null, ent ); } EntFire( "prop_car_alarm", "disable" ); EntFire( "instructor_impound", "kill" ); EntFire( "InstanceAuto5-remark_caralarm", "kill" ); EntFire( "alarm1-remark_caralarm", "kill" ); EntFire( "alarm2-remark_caralarm", "kill" ); EntFire( "alarm3-remark_caralarm", "kill" ); EntFire( "alarm4-remark_caralarm", "kill" ); EntFire( "alarm5-remark_caralarm", "kill" ); EntFire( "alarm6-remark_caralarm", "kill" ); EntFire( "alarm7-remark_caralarm", "kill" ); EntFire( "alarm8-remark_caralarm", "kill" ); EntFire( "remark_caralarm-car1_alarm", "kill" ); EntFire( "remark_caralarm-car2_alarm", "kill" ); EntFire( "remark_caralarm-car3_alarm", "kill" ); EntFire( "car_alarm-remark_caralarm", "kill" ); EntFire( "remark_caralarm", "kill" ); EntFire( "InstanceAuto1-remark_caralarm", "kill" ); EntFire( "InstanceAuto2-remark_caralarm", "kill" ); EntFire( "car_alarm1-remark_caralarm", "kill" ); EntFire( "InstanceAuto12-remark_caralarm", "kill" ); EntFire( "remark_caralarm-car1", "kill" ); EntFire( "remark_caralarm-car2", "kill" ); EntFire( "remark_caralarm-car3", "kill" ); EntFire( "remark_caralarm-car4", "kill" ); EntFire( "remark_caralarm-car5", "kill" ); EntFire( "caralarm_1-remark_caralarm", "kill" ); EntFire( "caralarm_2-remark_caralarm", "kill" ); EntFire( "caralarm_3-remark_caralarm", "kill" ); EntFire( "caralarm_4-remark_caralarm", "kill" ); EntFire( "caralarm_6-remark_caralarm", "kill" ); EntFire( "caralarm_7-remark_caralarm", "kill" ); EntFire( "caralarm_8-remark_caralarm", "kill" ); EntFire( "InstanceAuto24-remark_caralarm", "kill" ); EntFire( "InstanceAuto44-remark_caralarm", "kill" ); EntFire( "car1-remark_caralarm", "kill" ); EntFire( "car2-remark_caralarm", "kill" ); EntFire( "car3-remark_caralarm", "kill" ); EntFire( "car4-remark_caralarm", "kill" ); EntFire( "car5-remark_caralarm", "kill" ); EntFire( "InstanceAuto128-remark_caralarm", "kill" ); EntFire( "InstanceAuto4-remark_caralarm", "kill" ); EntFire( "InstanceAuto5-remark_caralarm", "kill" ); EntFire( "alarma1-remark_caralarm", "kill" ); EntFire( "alarma2-remark_caralarm", "kill" ); EntFire( "alarma3-remark_caralarm", "kill" ); EntFire( "alarma4-remark_caralarm", "kill" ); EntFire( "alarma5-remark_caralarm", "kill" ); EntFire( "alarma6-remark_caralarm", "kill" ); EntFire( "alarma7-remark_caralarm", "kill" ); EntFire( "alarma8-remark_caralarm", "kill" ); EntFire( "alarma9-remark_caralarm", "kill" ); disabled_car_alarms = true; } if( !removed_impound_instructor && Entities.FindByName( null, "instructor_impound" ) ) { EntFire( "trigger_multiple", "kill" ); removed_impound_instructor = true; } }