Difference between revisions of "Navigation Mesh Attributes (L4D)"

From Valve Developer Community
Jump to: navigation, search
(added Should be used extensively across your finale area)
(corrected many descriptions, better explained others, added more detail etc)
Line 9: Line 9:
 
|- valign="top"
 
|- valign="top"
 
| '''BATTLEFIELD'''
 
| '''BATTLEFIELD'''
| Marks the area in which a crescendo event is played out. This includes where the survivors can be located during the panic event and where zombie mobs should spawn. Inside of the battlefield, a BATTLESTATION should be marked to tell the survivor bots where to defend during the event.
+
| Designates a region where a planned crescendo event will play out. Mobs will spawn and swarm dynamically inside this area. Should be a large region of the map, capable of containing a BATTLESTATION, and many spawn-friendly/mob-related areas within it.  Survivors should be located inside this area at the time of the panic event - it is essential to the effect this attribute is intended to create.
 
|- valign="top"
 
|- valign="top"
 
| '''BATTLESTATION'''
 
| '''BATTLESTATION'''
| Seems to be used to mark defense areas near crescendo events.
+
| Indicates a strong defensive area that contains supplies/weapons for use during a panic event.  Survivor bots will consider this area as important, and will use or protect it as long as other survivors are nearby.  It is intended to be used in carefully selected locations of BATTLEFIELD and FINALE regions.
 
|- valign="top"
 
|- valign="top"
 
| '''CHECKPOINT'''
 
| '''CHECKPOINT'''
| This is used in both the starting and ending checkpoints (safe rooms). This is how the game knows whether the survivors have left the safe room or not, and whether they have reached the end of a level or not.
+
| Designates the start/safe-room areas of the map. The round starts when a survivor leaves this area, and ends when the door is closed at the ending checkpoint with only the survivors inside.  Infected are prohibited from spawning inside this area at all times.
 
|- valign="top"
 
|- valign="top"
 
| '''CROUCH'''
 
| '''CROUCH'''
| Forces the bots and infected to crouch (in order to walk under low obstacles for example). Usually automatically added by the game during a nav_analyze.
+
| Indicates that the use of crouch is required to navigate the area. Usually automatically added by the game during a nav_analyze.
 
|- valign="top"
 
|- valign="top"
 
| '''CLIFF'''
 
| '''CLIFF'''
Line 27: Line 27:
 
|- valign="top"
 
|- valign="top"
 
| '''DONT_HIDE'''
 
| '''DONT_HIDE'''
|  
+
| Marks area unsafe, and ensures that bots travel through the area with minimal hesitation.
 
|- valign="top"
 
|- valign="top"
 
| '''EMPTY'''
 
| '''EMPTY'''
| Prevents wandering-infected from being populated in this location.  Useful for places outside the survivors playable area, or any other place you do not want wandering/sleeping infected to spawn. Does not affect the behavior or spawning of special-infected and mobs.
+
| Prevents wandering infected from being populated in this location.  Useful for places outside the survivors playable area, or any other place you do not want wandering/sleeping infected to spawn (e.g. rooftops & surfaces infected fall off of).{{note|Does not affect mobs/special-infected.}}
 
|- valign="top"
 
|- valign="top"
 
| '''ESCAPE_ROUTE'''
 
| '''ESCAPE_ROUTE'''
Line 36: Line 36:
 
|- valign="top"
 
|- valign="top"
 
| '''FINALE'''
 
| '''FINALE'''
| Indicates a finale area, and controls the spawning of mobs and infected during a Finale Sequence.  Once the sequence has been started, only areas marked with FINALE will be able to spawn infected.  Should be used extensively across your finale area. When a survivor reaches a FINALE area for the first time, they will trigger scripted dialogue announcing "We're almost out of here." or similar.
+
| Indicates a finale area, and controls the spawning of '''ALL''' infected during a Finale Sequence.  Once the sequence has been started, only areas marked with FINALE will spawn infected.  Should be used extensively across your finale area, and contain a BATTLESTATION within it.
 
|- valign="top"
 
|- valign="top"
 
| '''JUMP'''
 
| '''JUMP'''
Line 42: Line 42:
 
|- valign="top"
 
|- valign="top"
 
| '''NOT_CLEARABLE'''
 
| '''NOT_CLEARABLE'''
| When you "look" at a nav square and clear the square of all wandering infected, infected will no longer spawn there if you come back to the area later. Usually used in areas that the survivors can't see (usually with OBSCURED) to ensure that the engine never "clears" that square (which would prevent zombies from spawning there)
+
| Prevents an area from being cleared, and allows infected to spawn here indefinitely. Used in the outer-most areas survivors are able to attack or have line-of-sight to, but can't really see (e.g. through fog); use in conjunction with OBSCURED.
|- valign="top"
+
{{note|Nav-squares are 'cleared' once survivors view and remove them of all infected. Cleared areas cannot spawn infected.}}
 +
|- valign="top"
 
| '''NO_MOBS'''
 
| '''NO_MOBS'''
| Prevents infected-mobs from spawning in this location.  Commonly used to help mobs spawn further away from survivors and in more secluded areas of the map.  Also used to keep sources of mobs from appearing unnatural or odd, such as spawning on rooftops of certain buildings.  A clever example of NO_MOBS is in the "drainage" level of the Death Toll campaign.  It is used in the long pipes so that infected must spawn in the upper areas and run at you down the lengths of the pipe, rather than just around the corners.
+
| Prevents infected mobs from spawning in this location.  Commonly used to help mobs spawn further away from survivors and in more secluded areas of the map.  Also used to keep sources of mobs from appearing unnatural or odd, such as spawning on rooftops of certain buildings.  A clever example of NO_MOBS is in the "drainage" level of the Death Toll campaign.  It is used in the long pipes so that infected must spawn in the upper areas and run at you down the lengths of the pipe, rather than just around the corners.
  
 
|- valign="top"
 
|- valign="top"
Line 63: Line 64:
 
There are two primary uses:
 
There are two primary uses:
  
* Indicates that the area is not viewable by survivors, and allows the director to spawn flowing, or large waves of mobs.  It is often used in blocked alleyways and other areas that survivors cannot view. The director can still create effective mobs without the use of OBSCURED, but they will usually be further outside the survivor [[PVS]] so as to maintain believability.   
+
* Indicates that the area is not viewable by survivors, and allows the director to spawn flowing, or large waves of mobs.  It is often used in blocked alleyways and other areas that survivors cannot view. The director can still create effective mobs without the use of OBSCURED, but they will usually be further outside the survivor [[PVS]].   
*Allows infected to spawn even when there is line-of-sight to a survivor. Useful in areas that have props which do not block a line-of-sight in the engine, yet still obscure the survivors view on all sides (if they did not block view on all sides, infected could spawn in plain sight). These are usually passable areas/props that have no collisions enabled (mostly bushes and leafy-trees).  Bot line-of-sight is also blocked which will prevent an omniscient behavior.
+
*Allows infected to spawn even when there is line-of-sight to a survivor. Useful in areas that have props which do not block a line-of-sight in the engine, but still obscure the survivors view on all sides (e.g. bushes & leafy trees).  Bot line-of-sight is also blocked to prevent omniscient behavior.{{tip|Props that have collisions disabled are always unable to block line-of-sight and will need the help of OBSCURED}}
 
|- valign="top"
 
|- valign="top"
 
| '''OBSTACLE_TOP'''
 
| '''OBSTACLE_TOP'''
Line 73: Line 74:
 
|- valign="top"
 
|- valign="top"
 
| '''PRECISE'''
 
| '''PRECISE'''
| Used to mark narrow pathways such as the ticket counters in the subway area of No Mercy.
+
| Used to mark narrow pathways such as the ticket counters and exposed support-beams in the subway/generator area of No Mercy.
 
|- valign="top"
 
|- valign="top"
 
| '''RESCUE_CLOSET'''
 
| '''RESCUE_CLOSET'''
Line 79: Line 80:
 
|- valign="top"
 
|- valign="top"
 
| '''RESCUE_VEHICLE'''
 
| '''RESCUE_VEHICLE'''
| Marks where survivors should be during rescue.  Used only in a Finale sequence and remains locked until "FinaleEscapeVehicleReadyForSurvivors" is fired.  Area covered in RESCUE_VEHICLE should be where survivors go once the rescue-vehicle is in-position.
+
| Marks where survivors should go to during rescue.  Used only in a Finale sequence and remains locked until "FinaleEscapeVehicleReadyForSurvivors" is fired.  Area covered in RESCUE_VEHICLE should be the location of the rescue vehicle once it is in position.  In some cases, a lead-in must be made to make the path onto the vehicle navigable (see 'No Mercy' finale).
  
 
|- valign="top"
 
|- valign="top"
Line 86: Line 87:
 
|- valign="top"
 
|- valign="top"
 
| '''STOP_SCAN'''
 
| '''STOP_SCAN'''
| This does not appear to be used.  
+
| Rarely used.  Function unknown.  
 
|- valign="top"
 
|- valign="top"
 
| '''STOP'''
 
| '''STOP'''
Line 98: Line 99:
 
|- valign="top"
 
|- valign="top"
 
| '''THREAT'''
 
| '''THREAT'''
| Added automatically by the game during a nav_analyze. Special Infected like Smokers and Boomers doesn't spawn in these areas.
+
| Added automatically by the game during a nav_analyze. Special Infected will not spawn in these areas.
 
|- valign="top"
 
|- valign="top"
 
| '''TRANSIENT'''
 
| '''TRANSIENT'''

Revision as of 11:28, 23 July 2009

Available attributes for marking areas in Navigation Mesh editing mode.

Attribute Name Description
AVOID Informs NPCs to avoid the area when possible.
BATTLEFIELD Designates a region where a planned crescendo event will play out. Mobs will spawn and swarm dynamically inside this area. Should be a large region of the map, capable of containing a BATTLESTATION, and many spawn-friendly/mob-related areas within it. Survivors should be located inside this area at the time of the panic event - it is essential to the effect this attribute is intended to create.
BATTLESTATION Indicates a strong defensive area that contains supplies/weapons for use during a panic event. Survivor bots will consider this area as important, and will use or protect it as long as other survivors are nearby. It is intended to be used in carefully selected locations of BATTLEFIELD and FINALE regions.
CHECKPOINT Designates the start/safe-room areas of the map. The round starts when a survivor leaves this area, and ends when the door is closed at the ending checkpoint with only the survivors inside. Infected are prohibited from spawning inside this area at all times.
CROUCH Indicates that the use of crouch is required to navigate the area. Usually automatically added by the game during a nav_analyze.
CLIFF Could be used to determine whether falling in this area triggers the hanging script that prevents survivors from falling great heights. Usually marked during automatic generation.
DOOR Marks areas in which a door is located. Usually located in door frames. Usually automatically added by the game during a nav_analyze.
DONT_HIDE Marks area unsafe, and ensures that bots travel through the area with minimal hesitation.
EMPTY Prevents wandering infected from being populated in this location. Useful for places outside the survivors playable area, or any other place you do not want wandering/sleeping infected to spawn (e.g. rooftops & surfaces infected fall off of).
Note:Does not affect mobs/special-infected.
ESCAPE_ROUTE Basic guideline path of map from start to finish by linking spawns/checkpoints to the ending checkpoint/finale. It should be found using the nav_analyze command, and may not work properly if drawn manually. This path helps the game/AI to make decisions based on routes and level progression.
FINALE Indicates a finale area, and controls the spawning of ALL infected during a Finale Sequence. Once the sequence has been started, only areas marked with FINALE will spawn infected. Should be used extensively across your finale area, and contain a BATTLESTATION within it.
JUMP (Probably not L4D Specific) One area was found in a map marked as "jump" - on top of a subway car only reachable by infected who could jump. This area likely signifies a place you must jump to somehow in order to reach.
NOT_CLEARABLE Prevents an area from being cleared, and allows infected to spawn here indefinitely. Used in the outer-most areas survivors are able to attack or have line-of-sight to, but can't really see (e.g. through fog); use in conjunction with OBSCURED.
Note:Nav-squares are 'cleared' once survivors view and remove them of all infected. Cleared areas cannot spawn infected.
NO_MOBS Prevents infected mobs from spawning in this location. Commonly used to help mobs spawn further away from survivors and in more secluded areas of the map. Also used to keep sources of mobs from appearing unnatural or odd, such as spawning on rooftops of certain buildings. A clever example of NO_MOBS is in the "drainage" level of the Death Toll campaign. It is used in the long pipes so that infected must spawn in the upper areas and run at you down the lengths of the pipe, rather than just around the corners.
NO_JUMP  
NO_HOSTAGES  
NO_MERGE  
OBSCURED Affects the amount and manner of which infected can spawn. This is a very important navigation attribute, use both wisely and with caution.


There are two primary uses:

  • Indicates that the area is not viewable by survivors, and allows the director to spawn flowing, or large waves of mobs. It is often used in blocked alleyways and other areas that survivors cannot view. The director can still create effective mobs without the use of OBSCURED, but they will usually be further outside the survivor PVS.
  • Allows infected to spawn even when there is line-of-sight to a survivor. Useful in areas that have props which do not block a line-of-sight in the engine, but still obscure the survivors view on all sides (e.g. bushes & leafy trees). Bot line-of-sight is also blocked to prevent omniscient behavior.
    Tip:Props that have collisions disabled are always unable to block line-of-sight and will need the help of OBSCURED
OBSTACLE_TOP  
PLAYER_START This attribute is used in the exact nav mesh area(s) that the players spawn in. This appears to only be used in the very first level of each campaign - likely because after the first level it cannot be guaranteed where a player will spawn into the game (since you load relative to the landmark).
PRECISE Used to mark narrow pathways such as the ticket counters and exposed support-beams in the subway/generator area of No Mercy.
RESCUE_CLOSET Marks off the location of rescue closets inside the level. Usually automatically added by the game during a nav_analyze.
RESCUE_VEHICLE Marks where survivors should go to during rescue. Used only in a Finale sequence and remains locked until "FinaleEscapeVehicleReadyForSurvivors" is fired. Area covered in RESCUE_VEHICLE should be the location of the rescue vehicle once it is in position. In some cases, a lead-in must be made to make the path onto the vehicle navigable (see 'No Mercy' finale).
RUN  
STOP_SCAN Rarely used. Function unknown.
STOP  
STAND  
STAIRS  
THREAT Added automatically by the game during a nav_analyze. Special Infected will not spawn in these areas.
TRANSIENT This area may not always be navigable, as it could become blocked.
WALK  

See also