Left 4 Dead Infected Populations
Infected populations control which kinds of common infected can be spawned in the different sections of your map.
For example, infected populations can cause:
- patients, nurses, and surgeons to spawn in a hospital
- military personnel to spawn in a military base
- rural citizens to spawn on a farm
- police officers to spawn on a street filled with police cars
Contents
The basics
Each defined population has a name and a list of model names with associated percentages. The percentages within each population add up to 100% and define how frequently each type of infected should be spawned within the area.
For example, the "hospital
" population is defined as:
hospital { common_male01 15 common_patient_male01 40 common_worker_male01 15 common_female_nurse01 15 common_surgeon_male01 10 }
This means that any areas with the name "hospital
" would spawn approximately:
- 15% common_male01
- 40% common_patient_male01
- 15% common_worker_male01
- 15% common_female_nurse01
- 10% common_surgeon_male01
Additionally, the populations may also allow certain special infected to spawn. This is typically used in conjunction with Info_zombie_spawn. Currently only hunters, boomers, and smokers can be spawned through infected populations.
To specify a default population for the whole map, set "z_population" to the name of the desired population entry.
To specify populations within your map, your nav mesh areas must be given place names corresponding to those defined in population.txt, located within the "scripts" directory of your Left 4 Dead installation.
How To Use Them In a Map
- Load your map in Left 4 Dead.
- Enable cheats by typing "
sv_cheats 1
" into the console. - Type "
nav_edit 1
" in the console to see the nav mesh. - Type "
nav_toggle_place_mode
" into the console and hit enter (or use "nav_set_place_mode
"). You should hear a beep signaling it was turned on. There is a different sound when you disable this. - Type "
nav_use_place <place name>
" in the console. This is like picking the color of a paintbrush in an image editing program. It decides what place name will be used for all of the place commands. This place name will be referred to as your chosen place name. - Paint your nav areas.
- Type "
nav_place_floodfill
" in the console to flood fill, using the chosen place name, all areas that can be reached from the nav area at which your cursor is pointed (as well as the area at which your cursor is pointed). You should use this first to set your map's default spawn type. For instance, if you're making a Hospital map but want to fine-tune a few areas, you want to set the entire map to use "hospital
" so that there are no remaining nav areas using "default
". - You can paint areas individually using "
nav_place_set
". - You can also turn on a special painting mode with "
nav_toggle_place_painting
". This command will paint every nav area you look at with the chosen place name. - You can use "
nav_place_pick
" as a sort of eyedropper for your chosen place name. It will pick the place name from the area you are looking at at and use it as your new chosen place name.
- Type "
- Type "
nav_toggle_place_mode
" into the console and hit enter (or use "nav_set_place_mode
") to turn place mode off. You'll hear a different sound signifying that it has been turned off. - Save the navigation mesh by typing "
nav_save
" into the console. - Use "
nav_edit 0
" to turn off the nav grid display.
List of Useful Commands
z_population
- Sets the default population for all nav areas that do not specify a place name.
nav_set_place_mode <0/1>
- Sets the editor into or out of place mode. Place mode allows labeling of area with place names.
nav_toggle_place_mode
- Toggle the editor into and out of place mode. Place mode allows labeling of area with place names.
nav_toggle_place_painting
- Toggles place painting mode. When place painting, pointing at an area will 'paint' it with the chosen place name.
nav_place_list
- Lists all place names used in the map.
nav_mark_unnamed
- Marks all areas with no place name. Useful for finding stray areas missed while place painting.
nav_use_place <optional: place name>
- If used without arguments, all available place names will be listed. If a place name argument is given, it becomes the chosen place name.
nav_place_floodfill
- Sets the place name of the area at which your cursor is pointed to the chosen place name, and 'flood-fills' the chosen place name to all areas that can be reached from the area at which your cursor is pointed.
nav_place_pick
- Changes the chosen place name to the place of the area under the cursor.
nav_place_replace
- Replaces all instances of the first place name with the second place name.
nav_place_set
- Sets the place name of all selected areas to the chosen place name.
List of Left 4 Dead Population Names
Urban
defaulturban
-
- 30% common_male01
- 25% common_female01
- 15% common_male_suit
- 10% common_police_male01
- 10% common_military_male01
- 10% common_worker_male01
police
-
- 50% common_police_male01
- 20% common_male01
- 20% common_female01
- 10% common_military_male01
maintenance
-
- 35% common_worker_male01
- 25% common_male01
- 20% common_female01
- 20% common_military_male01
hospitalgrounds
-
- 20% common_male01
- 20% common_female01
- 15% common_police_male01
- 15% common_military_male01
- 15% common_worker_male01
- 15% common_male_suit
hospital
-
- 40% common_patient_male01
- 15% common_male01
- 15% common_worker_male01
- 15% common_female_nurse01
- 10% common_surgeon_male01
hospitalconstruction
-
- 30% common_worker_male01
- 20% common_patient_male01
- 20% common_female_nurse01
- 20% common_male01
- 10% common_surgeon_male01
airport
-
- 20% common_female01
- 20% common_male_suit
- 15% common_worker_male01
- 15% common_male_baggagehandler_01
- 15% common_tsaagent_male01
- 15% common_male_pilot
airportfinale
-
- 30% common_male_baggagehandler_01
- 20% common_tsaagent_male01
- 20% common_male_pilot
- 10% common_female01
- 10% common_male_suit
- 10% common_worker_male01
Rural
defaultrural
-
- 50% common_male_rural01
- 20% common_female_rural01
- 10% common_police_male01
- 10% common_military_male01
- 10% common_worker_male01
Special
church
Note: This is used with the Info_zombie_spawn located inside of the safe room in the church of Death Toll 3 to spawn a random special infected once the crescendo event is finished.
- 50% boomer
- 25% hunter
- 25% smoker
Default and Others
default
-
- 30% common_male01
- 25% common_female01
- 15% common_police_male01
- 10% common_military_male01
- 10% common_worker_male01
- 10% common_male_suit
test_common_male_suit
-
- 100% common_male_suit
zoo
-
- 20% common_male01
- 10% common_female01
- 10% common_male_rural01
- 10% common_male_suit
- 5% common_female_rural01
- 5% common_female_nurse01
- 5% common_male_baggagehandler_01
- 5% common_male_pilot
- 5% common_military_male01
- 5% common_patient_male01
- 5% common_police_male01
- 5% common_surgeon_male01
- 5% common_TSAAgent_male01
- 5% common_worker_male01
List of Left 4 Dead 2 Population Names
Defaults
default
-
- 30% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 15% common_male_dressShirt_jeans
- 15% common_female_tankTop_jeans
- 20% common_female_tshirt_skirt
defaultcemetery
-
- 55% common_male_tankTop_jeans
- 45% common_female_tankTop_jeans
Dead Center
c1streets
-
- 20% common_male_tshirt_cargos
- 25% common_male_tankTop_jeans
- 10% common_male_dressShirt_jeans
- 20% common_female_tankTop_jeans
- 20% common_female_tshirt_skirt
- 5% common_male_ceda
The Passing
riverbank
-
- 35% common_male_tshirt_cargos
- 45% common_male_tankTop_jeans
- 20% common_male_fallen_survivor (1 at a time max, this makes it more likely to happen quick)
riverbank_police
-
- 5% common_male_riot
- 40% common_female_tshirt_skirt
- 55% common_male_tankTop_jeans
riverbank_wedding
-
- 40% common_male_formal
- 50% common_female_formal
- 10% common_male_dressShirt_jeans
redlight
-
- 32% common_female_tankTop_jeans
- 24% common_male_tankTop_jeans
- 24% common_male_biker
- 20% common_male_fallen_survivor (1 at a time max, to make it more likely to happen quick)
redlight_bikers
-
- 100% common_male_biker
port
-
- 45% common_female_tshirt_skirt
- 45% common_male_tankTop_jeans
- 10% common_male_dressShirt_jeans
Dark Carnival
whisperingoaks
-
- 20% common_male_tshirt_cargos
- 45% common_female_tankTop_jeans
- 8% common_male_polo_jeans
- 25% common_male_tanktop_jeans
- 2% common_male_clown
Swamp Fever
defaultswamp
-
- 30% common_male_tshirt_cargos
- 30% common_male_tankTop_overalls
- 30% common_female_tankTop_jeans
- 10% common_female_tshirt_skirt
deepswamp
-
- 25% common_male_tshirt_cargos_swamp
- 40% common_male_tankTop_overalls_swamp
- 25% common_female_tshirt_skirt_swamp
- 10% common_male_mud
gatorpark
-
- 30% common_male_tshirt_cargos
- 30% common_male_tankTop_jeans
- 40% common_female_tshirt_skirt
Hard Rain
defaultmilltown
-
- 69% common_male_tankTop_jeans
- 30% common_female_tankTop_jeans
- 1% common_male_roadcrew
defaultmilltown_mob
-
- 70% common_male_tankTop_jeans
- 20% common_female_tankTop_jeans
- 10% common_male_roadcrew
defaultsugarmill
-
- 89% common_male_tankTop_overalls
- 8% common_female_tankTop_jeans
- 3% common_male_roadcrew
defaultsugarmill_mob
-
- 80% common_male_tankTop_overalls
- 20% common_male_roadcrew
defaultmilltown_rain
-
- 69% common_male_tankTop_jeans_rain
- 30% common_female_tankTop_jeans_rain
- 1% common_male_roadcrew_rain
defaultmilltown_rain_mob
-
- 70% common_male_tankTop_jeans
- 20% common_female_tankTop_jeans
- 7% common_male_roadcrew
- 3% common_male_mud
defaultsugarmill_rain
-
- 89% common_male_tankTop_overalls_rain
- 8% common_female_tankTop_jeans_rain
- 3% common_male_roadcrew_rain
defaultsugarmill_rain_mob
-
- 80% common_male_tankTop_overalls_rain
- 15% common_male_roadcrew_rain
- 5% common_male_mud
The Parish
crescentcity
-
- 30% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 13% common_male_dressShirt_jeans
- 15% common_female_tankTop_jeans
- 20% common_female_tshirt_skirt
- 2% common_male_riot
busstation
-
- 30% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 10% common_male_dressShirt_jeans
- 15% common_female_tankTop_jeans
- 20% common_female_tshirt_skirt
- 5% common_male_riot
frenchquarter
-
- 58% common_male_tankTop_jeans
- 40% common_female_tshirt_skirt
- 2% common_male_riot
ceda
-
- 55% common_male_tankTop_jeans
- 40% common_female_tshirt_skirt
- 5% common_male_riot
The Sacrifice
river
-
- 35% common_male_tshirt_cargos
- 35% common_male_tankTop_jeans
- 30% common_female_tankTop_jeans
river_docks_trap
-
- 100% tank
riverintro
-
- 15% common_male_tankTop_jeans
- 10% common_female_tankTop_jeans
- 75% common_male_ceda
riverarena
-
- 20% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 10% common_female_tankTop_jeans
- 50% common_male_ceda
riveratrium
-
- 30% common_male_dressShirt_jeans
- 20% common_male_tshirt_cargos
- 15% common_male_tankTop_jeans
- 20% common_female_tankTop_jeans
- 15% common_male_ceda
riverfreighter
-
- 30% common_male_tshirt_cargos
- 30% common_male_tankTop_jeans
- 20% common_female_tankTop_jeans
- 20% common_male_roadcrew
riverport
-
- 20% common_female_tshirt_skirt
- 20% common_female_tankTop_jeans
- 10% common_male_dressShirt_jeans
- 20% common_male_tanktop_jeans
- 20% common_male_tshirt_cargos
- 10% common_male_ceda
No Mercy (L4D2 Version)
hospital
-
- 30% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 15% common_male_dressShirt_jeans
- 10% common_female_tankTop_jeans
- 15% common_female_tshirt_skirt
- 35% common_patient_male01_l4d2
hospital_test
-
- 100% common_patient_male01_l4d2
Dead Air (L4D2 Version)
airport
-
- 30% common_male_tshirt_cargos
- 20% common_male_tankTop_jeans
- 20% common_male_dressShirt_jeans
- 10% common_female_tankTop_jeans
- 15% common_female_tshirt_skirt
- 10% common_male_roadcrew
airportfinale
SAME AS AIRPORT
List of Population-Supported Infected Types
Common Infected
Here are all names you could use in a population without encountering unwanted bugs. More models exist, but those are unfinished or just buggy.
Left 4 Dead
Female
- common_female01
- common_female_nurse01
- common_female_rural01
Male
- common_male01
- common_male_baggagehandler_01
- common_male_pilot
- common_male_rural01
- common_male_suit
- common_military_male01
- common_patient_male01_l4d2
- common_police_male01
- common_surgeon_male01
- common_tsaagent_male01
- common_worker_male01
Left 4 Dead 2
Female
- common_female_formal
- common_female_tanktop_jeans
- common_female_tanktop_jeans_rain
- common_female_tshirt_skirt
- common_female_tshirt_skirt_swamp
Male
- common_male_biker
- common_male_dressshirt_jeans
- common_male_formal
- common_male_polo_jeans
- common_male_tanktop_jeans
- common_male_tanktop_jeans_rain
- common_male_tanktop_jeans_swamp
- common_male_tanktop_overalls
- common_male_tanktop_overalls_rain
- common_male_tanktop_overalls_swamp
- common_male_tshirt_cargos
- common_male_tshirt_cargos_swamp
Uncommon Infected
- common_male_ceda (hazmat suit)
- common_male_clown (clown)
- common_male_fallen_survivor (infected Survivor)
- common_male_jimmy (Jimmy Gibbs, Jr.)
- common_male_mud (mudman)
- common_male_riot (police with riot gear and armor)
- common_male_roadcrew (worker with helmet)
- common_male_roadcrew_rain (worker with helmet, wet)
Special Infected
- boomer
- hunter
- smoker
- jockey (Left 4 Dead 2 only)
- charger (Left 4 Dead 2 only)
- spitter (Left 4 Dead 2 only)
- witch_bride (Left 4 Dead 2 only)

witch
" or "tank
" in a population will result in a common infected with the witch or tank model and animations unless it is used in Left 4 Dead 2.
witch_bride
" in a population will result in game crash due to no precached bride witch model. To avoid it you either need to spawn one bride witch model using prop_dynamic entity at some unreachable part of the map plus giving the entity a name, seconds later have the bride witch spawned using info_zombie_spawn entity with witch_bride population and make the logic_auto remove the entity. Another way is to add the following lines to your "reslists\mapname.lst if you think about using Content Streaming, only works for official games. Also removing the need of placing a prop_dynamic entity with the Witch Bride model. "left4dead2_dlc1\models\infected\witch_bride.ani" "left4dead2_dlc1\models\infected\witch_bride.dx90.vtx" "left4dead2_dlc1\models\infected\witch_bride.mdl" "left4dead2_dlc1\models\infected\witch_bride.phy" "left4dead2_dlc1\models\infected\witch_bride.vvd" "left4dead2_dlc1\materials\models\infected\witch\witch_bride_dress.vmt" "left4dead2_dlc1\materials\models\infected\witch\witch_bride_dress.vtf" "left4dead2_dlc1\materials\models\infected\witch\witch_bride_veil.vmt" "left4dead2_dlc1\materials\models\infected\witch\witch_bride_veil.vtf"
Creating a User-Defined Population
In order to create a custom population, you need to edit the population.txt file, and place it in an addon VPK to override the original file. When creating populations for a custom campaign, placing the population file in the same addon VPK as the campaigns mission file will make it only load it for the specific campaign.

If you read the site you will understand how the population file works, and how you can use a specific population on a map. All you have to do now is to open the correct population.txt in a text editor, scroll to the very bottom and add this after the last population entry, and before the final closing curly bracket:
custom_population_1 { common_male_tankTop_jeans 55 common_male_riot 45 }
You can use as many model names as you want.
The nav mesh nav_use_place
command will only allow using the populations from the currently loaded population file. To enable custom populations to be placed into the nav mesh, temporarily pack the custom population file into an addon VPK and make sure it is enabled in-game before editing the nav mesh.