L4D2 Level Design/Weapon and Item Spawning

From Valve Developer Community
Jump to: navigation, search

Weapon placement capability in L4D2 maps has been expanded and enhanced. While you can still place specific weapon and item entities as in L4D1, the new weapon_spawn allows more flexibility by allowing the A.I. Director to procedurally generate your player's arsenal. Another benefit of using these new spawn entities is that they will provide matching items for both versus/scavenge teams.

Placing Weapon Spawners

Activate the the Entity tool Mt-entities.png and select the weapon_spawn entity from the Objects drop-down menu.

Using the 3D view, navigate to the starting area in the map and click to place a weapon spawn on the table. You should see an older weapon spawn in the instance. Just place it next to it.

Weapon spawning Entity

Although it appears in the Hammer viewport as an M16 rifle for placement purposes, what it spawns as during gameplay will vary.

Let's restrict this weapon spawn to tier 1 primary, so we can save tier 2 for later in the map. With the recently placed weapon_spawn entity selected, open the Properties window and click on the Selection field. From the drop down menu, select "Any tier 1 primary".

As you can see from the drop-down, you can similarly limit it to a certain type of weapon, such as any shotgun, any pistol, etc.

Melee weapons

Placing melee weapons procedurally works in much the same way using the weapon_melee spawn entity. Go ahead and place one of these and open up the Properties dialog.

The weapons that you want to allow to spawn at this location have to be included in the text field. Names include:

  • golfclub
  • fireaxe
  • frying_pan
  • machete
  • baseball_bat
  • crowbar
  • cricket_bat
  • tonfa
  • katana
  • electric_guitar
  • riotshield
  • Any – director will place any available melee weapon

You may also list multiple specific melee weapons separated by a comma, and the director will select from among that subset of weapons:


Note: the riot shield lays flat at a different orientation than most of the other weapons: 90 0 0 rather than 0 0 90.

Item spawning

Item spawning works in much the same way, with the weapon_item_spawn providing a way to spawn any one of a set of items. Let's go ahead and add a couple to the arsenal on the table.

Under Properties, you can specify the items that you wish to allow by changing their value to 1. Similarly, laser sights and ammo upgrade packs are placed using the upgrade_spawn entity.

Test run

Item spawning

Go ahead and run your map. Each time you reload it, you should see a different collections of weapons, with the exception of the L4D1 shotgun in the original instance. That will remain the same since it is a weapon_pumpshotgun_spawn.

Note.png Note:  If you want to have that older weapon_pumpshotgun_spawn not appear in the Left 4 Dead 2 version of the map, but still want to keep it in the .VMF, you can create a logic_auto in the L4D2 .VMF and have it kill the pump shotgun.