9203 In-game now on Steam

On Xbox 360 and PC
Get it now on Steam
or the original Left 4 Dead
Blog Home

Doubling Down On the Updates

May 23, 2013 - L4D Team

This week we updated both the L4D2 Beta and L4D2. As we get closer to the Linux release, we will continue to merge in some outstanding bug fixes and issues we have been working on.

Thanks to everyone playing the Beta and helping us test. The update today consists of changes that were tested in the Beta. Check here for the complete change list for the Beta and the patch notes for today’s L4D2 update are available here.

We have seen some discussions about some of the sample Mutations with shipped with the Beta. Some of these like Holdout are fully formed game modes. Others are tests or example code for other people to play around with.

A good example is with the L4D1 Mutation. It is a sample Mutation to show how easy it is to change the game. Don’t like some of the choices? Change them. The code below is the script file for that mode – 52 lines of script. You can see how simple, yet powerful the new scripting mode is. For more information visit the L4D2 EMS Wiki.

Msg("Activating Mutation L4D1\n");
DirectorOptions <-
    ActiveChallenge = 1
    SpitterLimit = 0
    JockeyLimit = 0
    ChargerLimit = 0
    weaponsToConvert =
        weapon_shotgun_spas                = "weapon_autoshotgun_spawn"
        weapon_defibrillator           = "weapon_first_aid_kit_spawn"
        weapon_ammo_pack          = "weapon_first_aid_kit_spawn"
        weapon_sniper_awp           = "weapon_hunting_rifle_spawn"
        weapon_sniper_military       = "weapon_hunting_rifle_spawn"
        weapon_sniper_scout          = "weapon_hunting_rifle_spawn"
        weapon_vomitjar                = "weapon_molotov_spawn"
        weapon_adrenaline             = "weapon_pain_pills_spawn"
        weapon_pistol_magnum      = "weapon_pistol_spawn"
        weapon_shotgun_chrome    = "weapon_pumpshotgun_spawn"
        weapon_rifle_ak47              = "weapon_rifle_spawn"
        weapon_rifle_desert            = "weapon_rifle_spawn"
        weapon_rifle_m60               = "weapon_rifle_spawn"
        weapon_rifle_sg552             = "weapon_rifle_spawn"
        weapon_smg_mp5               = "weapon_smg_spawn"
        weapon_smg_silenced          = "weapon_smg_spawn"
    function ConvertWeaponSpawn( classname )
        if ( classname in weaponsToConvert )
            return weaponsToConvert[classname];
        return 0;
    weaponsToRemove =
        weapon_grenade_launcher = 0
        weapon_chainsaw = 0
        weapon_melee = 0
        weapon_upgradepack_explosive = 0
        weapon_upgradepack_incendiary = 0
        upgrade_item = 0
    function AllowWeaponSpawn( classname )
        if ( classname in weaponsToRemove )
            return false;
        return true;