Left 4 Dead 2/Scripting/Director Scripts/AllowFallenSurvivorItem
A callback for the DirectorOptions table. When its DirectorOptions is registered, this function receives callbacks on the spawning of all items from a Fallen Survivor. Arguments with the callback are strings representing a weapon's classname; returntruefor that string to allow Fallen Survivors to have a chance of equipping the weapon.
With usage of theprintlfunction, the exposed arguments are:
Msg("VSCRIPT: Running director_base_addon.nut; VDC's!\n")
DirectorOptions <-
{
 	function AllowFallenSurvivorItem( classname )
 	{
 		printl(classname)
 	}
}
//----------------------------------------------
/*Output:
** VSCRIPT: Running director_base_addon.nut; VDC's!
** weapon_molotov
** weapon_pipe_bomb
** weapon_pain_pills
** weapon_first_aid_kit
*/
Debugging
Not only that Fallen Survivors spawn in certain maps only, likec10m4_mainstreet(Death Toll - Streets) orc6m2_bedlam(The Passing - Bedlam), they also are too rare to reliably debug any code with them on those maps. With these commands, once set up properly can be used to debug Fallen Survivors efficiently:
| Cvar/Command | Parameters or default value | Descriptor | Effect | 
|---|---|---|---|
| z_fallen_kill_suppress_time | 300 | When a Fallen Survivor is killed, how long in seconds should pass before another can spawn. | |
| z_fallen_max_count | 1 | How many Fallen Survivors can be active at once. | |
| z_forcezombiemodel | 0 | 0 disables, 1 enables | Determines ifz_forcezombiemodelnameis allowed to be used. | 
	
| z_forcezombiemodelname | common_male01 | infected model name | Whenz_forcezombiemodelis active, force all Common Infected to use this model. If the model isn't precached, ignore. | 
	
Parameters
bool AllowFallenSurvivorItem(string classname)
| Type | Name | Arguments | Description | 
|---|---|---|---|
| string | classname | 
  | 
Name of a weapon's classname; Only 4 are given. | 
Expected Returns
| Type | Description | 
|---|---|
| bool | Return true to allow the respective weapon from spawning; false or none is otherwise. | 
Code Samples
Health-pack-alypse Fallens
When ran, Fallen Survivors will sometimes only spawn with a weapon_first_aid_kit equipped, and never spawn equipped with any other gear.
// its now a Health-pack-alypse from the Fallens!
DirectorOptions <-	
{
  	function AllowFallenSurvivorItem(classname)
	{
		if( classname == "weapon_first_aid_kit" )
		{
			printl("Allowed "+classname);
			return true
		}
		else
		{
			printl("Disallowed "+classname);
			return false
		}
	}
}