Your First Left 4 Dead Map: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (restructured)
Line 1: Line 1:
<center>
'''This article is currently a work in progress'''
</center>
This tutorial will cover the basics of [[Left 4 Dead]] map creation. It will explain the required entities, such as the director, weapons, and spawns. It will also answer some of the questions that Left 4 Dead mappers will have.
This tutorial will cover the basics of [[Left 4 Dead]] map creation. It will explain the required entities, such as the director, weapons, and spawns. It will also answer some of the questions that Left 4 Dead mappers will have.
This tutorial is not intended for new mappers: [[Your_First_Map|Basic level construction]] is already covered in other topics.
This tutorial is not intended for new mappers: [[Your_First_Map|Basic level construction]] is already covered in other topics.
Line 6: Line 10:




== Introduction ==
== Introduction sequences ==
* <code>logic_choreographed_scene</code>
* <code>logic_choreographed_scene</code>
* <code>point_viewcontrol_survivor</code>
* <code>point_viewcontrol_survivor</code>
Line 24: Line 28:
Creating areas for the infected to spawn.
Creating areas for the infected to spawn.
* <code>info_director</code>
* <code>info_director</code>
:<code>director_stop</code>
:<code>director_start</code>


The director will spawn zombies that are out of the LOS. Sometimes this is outside the normal player boundary. To let the zombies into the playable area, there must be a <code>func_simpleladder</code> (with team set to 2) on the back side of the barrier, for them to climb over.
The director will spawn zombies that are out of the line of sight. Sometimes this is outside the normal player boundary. To let the zombies into the playable area, there must be a <code>func_simpleladder</code> (with team set to 2) on the back side of the barrier, for them to climb over.


== Building the navigation mesh ==
=== Basic ===
This should only be used for testing. A nav mesh should be thoroughly examined and edited.
:<code>nav_edit 1</code>
:<code>nav_generate</code>
:<code>nav_analyze</code>
:<code>nav_edit 0</code>
=== Advanced ===
:This tutorial does not cover advanced mesh creation. Please refer to [[Navigation Meshes]]


== Item and weapon caches ==
== Item and weapon caches ==
Line 65: Line 60:
* <code>ambient_generic</code>
* <code>ambient_generic</code>
* <code>logic_timer</code>
* <code>logic_timer</code>
<br>
 
* '''Examples'''
* '''Examples'''
** Car alarms
** Car alarms
** Metal detectors
** Metal detectors


== Crescendo events ==
== Crescendo events ==
Line 84: Line 80:
* <code>info_landmark</code>
* <code>info_landmark</code>
* <code>info_changelevel</code>
* <code>info_changelevel</code>
== Building the navigation mesh ==
Save building the navigation mesh until after the map's layout is complete. The build sequence below should only be used for testing. A nav mesh should be thoroughly examined and edited before releasing a map.
:<code>sv_cheats 1</code>
:<code>nav_edit 1</code>
:<code>nav_mark_walkable</code>
:<code>nav_generate</code>
:<code>nav_analyze</code>
:<code>nav_edit 0</code>
:<code>sv_cheats 0</code>
For more advanced mesh creation and editing, please refer to [[Navigation Meshes]].




== Finale ==
== Finale ==
'''Work in progress'''
Ending the campaign.
 


== Notes ==
== Notes ==
Line 101: Line 111:
== FAQ ==
== FAQ ==


=== Common issues ===
* How do I make the infected spawn?  
* How do I make the infected spawn?  
** Your map must have a [[info_director]] that is enabled.
** Your map must have a [[info_director]] that is enabled.
Line 115: Line 124:




=== Error messages ===
== Error messages and what they mean ==
* NAV ERRORS - Map is unplayable!
* NAV ERRORS - Map is unplayable!
** Missing [[Navigation Meshes|nav file]].
* Missing [[Navigation Meshes|nav file]].
** The nav file was built for an older compile.
* The nav file was built for an older compile.
<br>
* Missing Battlefield check found N areas
* Missing Battlefield check found N areas
* WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!
* WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!  
* GetGoalArea: Cannot find SPAWN_RESCUE_CLOSET area in FINALE, thus cannot guarantee reachability of goal area.  
* GetGoalArea: Cannot find SPAWN_RESCUE_CLOSET area in FINALE, thus cannot guarantee reachability of goal area.
* GetGoalArea: Cannot find end area - no checkpoint or finale located.
* GetGoalArea: Cannot find end area - no checkpoint or finale located.  
* ComputeFlowDistances: ERROR - Cannot compute flow.
* ComputeFlowDistances: ERROR - Cannot compute flow.


== See also ==
== See also ==
* [[Left 4 Dead Level Creation]]
* [[Left 4 Dead Level Creation]]
* [[Navigation Meshes]]
* [[Navigation Meshes]]

Revision as of 19:03, 30 November 2008

This article is currently a work in progress

This tutorial will cover the basics of Left 4 Dead map creation. It will explain the required entities, such as the director, weapons, and spawns. It will also answer some of the questions that Left 4 Dead mappers will have. This tutorial is not intended for new mappers: Basic level construction is already covered in other topics.


Tut title.png


Introduction sequences

  • logic_choreographed_scene
  • point_viewcontrol_survivor
  • point_viewcontrol_multiplayer
  • env_fade


Spawn area

  • info_survivor_position
  • weapon_first_aid_kit_spawn
  • weapon_ammo_spawn
  • weapon_smg_spawn
  • weapon_pumpshotgun_spawn


The Director

Creating areas for the infected to spawn.

  • info_director
director_stop
director_start

The director will spawn zombies that are out of the line of sight. Sometimes this is outside the normal player boundary. To let the zombies into the playable area, there must be a func_simpleladder (with team set to 2) on the back side of the barrier, for them to climb over.


Item and weapon caches

Set spawn flags to randomize

  • weapon_molotov_spawn
  • weapon_pipe_bomb_spawn
  • weapon_pistol_spawn
  • weapon_pain_pills_spawn
  • weapon_ammo_spawn
  • weapon_smg_spawn
  • weapon_first_aid_kit_spawn
  • weapon_hunting_rifle_spawn
  • weapon_rifle_spawn
  • weapon_autoshotgun_spawn
  • weapon_pumpshotgun_spawn


Rescue closets

Bringing dead players back into the game.

  • info_survivor_rescue
    • rescueEyePos


Panic events

Triggering the info_director and summoning the horde.

  • info_game_event_proxy
  • ambient_generic
  • logic_timer
  • Examples
    • Car alarms
    • Metal detectors


Crescendo events

Intermediate objectives

  • func_button
  • filter_activator_team
  • info_game_event_proxy


Safe houses

  • prop_door_rotating_checkpoint


Changing levels

  • info_landmark
  • info_changelevel


Building the navigation mesh

Save building the navigation mesh until after the map's layout is complete. The build sequence below should only be used for testing. A nav mesh should be thoroughly examined and edited before releasing a map.

sv_cheats 1
nav_edit 1
nav_mark_walkable
nav_generate
nav_analyze
nav_edit 0
sv_cheats 0

For more advanced mesh creation and editing, please refer to Navigation Meshes.


Finale

Ending the campaign.


Notes

Doors

Type: prop_door_rotating
Frame Dimensions: width: 56, height: 104
World Model: models/props_doors/doormainmetal01.mdl


FAQ

  • How do I make the infected spawn?


  • Why won't the survivor bots move?


  • Why is the molotov fire / Smoker's smoke not visible in-game?
    • (not answered)


  • Why won't my rescue closets work?
    • (not answered)


Error messages and what they mean

  • NAV ERRORS - Map is unplayable!
  • Missing nav file.
  • The nav file was built for an older compile.
  • Missing Battlefield check found N areas
  • WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!
  • GetGoalArea: Cannot find SPAWN_RESCUE_CLOSET area in FINALE, thus cannot guarantee reachability of goal area.
  • GetGoalArea: Cannot find end area - no checkpoint or finale located.
  • ComputeFlowDistances: ERROR - Cannot compute flow.


See also