Left 4 Dead 2/Scripting/Director Scripts/AllowFallenSurvivorItem

From Valve Developer Community
< Left 4 Dead 2‎ | Scripting‎ | Director Scripts
Revision as of 14:19, 18 August 2021 by Orinuse (talk | contribs) (rephrased old edits)
Jump to navigation Jump to search

When its DirectorOptions is loaded, this callback for every spawned item from a Fallen Survivor. Arguments given are strings representing a weapon's classname; returntrueto allow Fallen Survivors to have a chance in equipping the weapon.

With theprintlfunction, the 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
*/
Note.pngNote:Despite the name similarity to the AllowWeaponSpawn callback, this callback can only disallow existing Fallen Survivor items, and allowing new weapons will not work, unless a custom system is built and then initiated in this callback function.

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 Seconds When a Fallen Survivor is killed, how long in seconds should pass before another can spawn.
z_fallen_max_count 1 Arbitrary number 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 Name of a Common's model 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

  • weapon_molotov
  • weapon_pipe_bomb
  • weapon_pain_pills
  • weapon_first_aid_kit
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

L4D2DirectorScript Callbacks-Health-pack-alypseFallens.jpg

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
		}
	}
}