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

From Valve Developer Community
Jump to: navigation, search
(further improved FINALE first sentence)
(Completely re-wrote OBSCURED, gave details and listed uses)
Line 58: Line 58:
 
|- valign="top"
 
|- valign="top"
 
| '''OBSCURED'''
 
| '''OBSCURED'''
| The players cannot see this area at all (or hardly at all). The game uses these locations to spawn the massive hordes (if possible) - otherwise it will use areas that are far out of players' potentially visible sets of visleaves. (I think)
+
| 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]] so as to maintain believability. 
 +
*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.
 
|- valign="top"
 
|- valign="top"
 
| '''OBSTACLE_TOP'''
 
| '''OBSTACLE_TOP'''

Revision as of 18:49, 14 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 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.
BATTLESTATION Seems to be used to mark defense areas near crescendo events.
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.
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.
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  
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.
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 mobs and infected during a Finale Sequence. Once the sequence has been started, only areas marked with FINALE will be able to spawn infected. 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.
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 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)
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 so as to maintain believability.
  • 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.
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 in the subway 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 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.
RUN  
STOP_SCAN This does not appear to be used.
STOP  
STAND  
STAIRS  
THREAT Added automatically by the game during a nav_analyze. Special Infected like Smokers and Boomers doesn't spawn in these areas.
TRANSIENT This area may not always be navigable, as it could become blocked.
WALK  

See also