Common L4D Mapping Problems: Difference between revisions
Jump to navigation
Jump to search
(The model precache can be fixed by making a prop_dynamic with the modelname or by putting the modelname in a .LST file) |
(Fixed area where I wrote this) |
||
Line 38: | Line 38: | ||
: N/A, but this error can be safely ignored | : N/A, but this error can be safely ignored | ||
; <nowiki>WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!</nowiki> | ; <nowiki>WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!</nowiki> | ||
: {{todo}} | |||
; <nowiki>Engine Error: 81/ - weapon_ammo_spawn: UTIL_SetModel: not precached: models/props_unique/spawn_apartment/coffeeammo.mdl</nowiki> | |||
: Can be fixed by spawning a prop_dynamic with the modelname or by listing the model in the reslist (.LST) file. MAY need textures mentioned as well! | : Can be fixed by spawning a prop_dynamic with the modelname or by listing the model in the reslist (.LST) file. MAY need textures mentioned as well! | ||
; Steam Validation Rejected | ; Steam Validation Rejected | ||
: Make sure that you have "+sv_lan 1" set in your game's launch options. | : Make sure that you have "+sv_lan 1" set in your game's launch options. |
Revision as of 12:52, 4 April 2011
This article is a convenient place to discuss and post common mapping problems found in the Left 4 Dead series. Feel free to edit the article with your findings or update existing information.
- How do I make the infected spawn?
In most cases, this is from not having a navigation mesh. A navigation mesh is crucial in the L4D series. Your map also must have a info_director that is enabled, you also may have to use the console command "director_start" if "director_stop" was used during anytime during a session. For wandering zombies to be spawned when you load the map, the director needs to be able to compute a path from the start to the finish. See Navigation Meshes and the official L4D Level Design Docs for more info
Todo: desribe the the "bare minimum". test with recent build of game.- Why won't the survivor bots move?
- The most likely cause is a faulty or missing ".nav" file. See Navigation Meshes
- Why is the molotov fire / Smoker's smoke cloud not visible in-game?
This is usually due to the lack of a
env_fog_controller
entity. Also, check to make sure there were no errors generated during the map's compile process.- Why won't my rescue closets work?
- Rescue closets will not function correctly if there are any nav errors present in the map (the "NAV ERRORS - Map is unplayable!" message appears in game). You will want to make sure the map's nav mesh is properly set-up. Todo: test with recent build of game for accuracy
- How do I play my map in Versus Mode or Survival Mode?
To play your map in Versus or Survival mode, first set the CVAR "mp_gamemode" to "versus" or "survival" (respectively), then load your map using the "map" command. So if you wanted to play your map "warehouse.bsp" in survival mode, you would type in the console (while on the main menu) "mp_gamemode survival; map warehouse". Similarly, if you wanted to switch back to regular campaign mode, type "mp_gamemode coop; map warehouse". (Note 1: "coop" and "campaign" are synonymous when using the mp_gamemode command) (Note 2: If you're already in a game running locally, you can switch gametypes by using the "mp_gamemode" command, then the "changelevel" command.)
Use console command
map <MAP NAME> MODE (survival, coop, versus, or scavenge)
. When the client is first started,map <MAP NAME>
will load in coop mode.- Why doesn't my custom map load when using in tools mode loaded from the Authoring Tools menu?
When loading the tools mode version of L4D, press F10 to switch to the game, bring down the console and set sv_lan 1.
Todo: needs confirmation for l4d1The console is available in the lower-left corner of window. Set sv_lan 1.
- Why is the rain particles splash when hitting the floor/objects nearly impossible to see / very transparent?
- You must compile your map with HDR enabled for the rain splash effect to be clearly visible.
- Why doesn't the game recognise/play custom sounds I place in the sound directory even though they are in the correct format?
The sound cache (sound.cache) needs to be generated with
snd_buildsoundcachefordirectory
. For, sound.cache can be each individual sound directory.
The sound cache needs to be generated with
snd_buildsoundcachefordirectory
, whether it is the official sound directory or add-on. The add-on also must be packed with the updated sound.cache in order for sounds to work. Testing for working sounds can be done via console (with or without a map loaded) and in-game. Please see L4D2 Custom Sound and Music Tutorial.- After compiling my map without vrad to quickly test small changes, the map became full bright, but now even when I compile with vrad, my map is still fully lit up.
The game engine automatically sets mat_fullbright 1 when loading a map that hasn't been compiled with vrad. However, L4D does not turn it off automatically when loading a map that has been compiled with vrad. If you leave L4D open during development in a window and reload your map after a full vrad compile, you must manually set mat_fullbright 0. After setting mat_fullbright to "0", you may need to reload your map for it to display correctly.
- Why does L4D ignore my info_survivor_position? I can only use info_player_start?
- There is a bug with logic_auto's onmapspawn in conjunction with using it to call an info_directors forcesurvivor input which does not allow it to function properly unless your map is loaded as a campaign. Instead, set up the info_director to have a name then in the info_directors output, have it trigger itself once to call forcesurvivorpositions with 0.00 delay, then again with releasesurvivorpositions with 0.01 delay. Todo: test with latest build of both games.
- How do I get music to play like in official L4D campaigns?
L4D has what is known as the Music Director. The music director will play music based on certain 'Events' occuring througout the campaign. You can learn how to add default music to your campaign, as well as how to customize your own music by following the guide here: L4D Custom Music Tutorial
- Why does the grass textures have misaligned/floating detail props (grass, bushes) when I compile and run my map?
- This is a bug with the default detail type. For now, you can use the rural detail sprites as an alternative. To use them, simply open your map in Hammer, go to Map on the top menu, and select Map Properties. From here, find the Detail Material File entry and change it from detail/detailsprites to detail/ruraldetailsprites Compile and test ingame to see the changes.
- Why does the game randomly crash to desktop only when my campaign is ran as a VPK?
- There are two common reasons for this. One is that you have custom content in your map that you either forgot to include with the VPK or is pathed wrong. As an example a single custom sprite missing from your VPK directory when referenced in the map, will crash L4D to desktop. The other common reason is having custom models in your map. There is a bug where sometimes custom models will crash the game to desktop with an error in shader.dll as soon as the model is within your PVS (is being drawn by the engine). Valve is working on this issue, but in the meantime the work around is to bspzip your custom models into the BSP files themself, instead of leaving them within the VPK directory struture.
- When all the players die, they respawn in the ending safe house, any ideas?
- As long as your info_landmarks are named and referenced correctly by coresponding info_changelevels, the reason for this bug is usually that you are marking the NAV MESH with PLAYER_START on maps that are NOT the very first map in your campaign, as well, you must have 2 areas on your map marked as CHECKPOINT (Minus the finale map), the start area of your current map, and the ending safehouse. Even the very first map which has an area marked PLAYER_START, must ALSO be marked CHECKPOINT. What is happening here, is that when you only have the end safe house marked as CHECKPOINT, the director when reloading the map looks for the nearest CHECKPOINT to the info_player_start, thus you must make sure you have the area with your info_player_start marked as CHECKPOINT as well.
Error messages and what they mean
General
- ***VPK: FindFile Attempting to use full path with VPK file!
- N/A, but this error can be safely ignored
- WARN: CL4DBasePanel::UpdateProgressBar called outside of level loading, discarded!
- [Todo]
- Engine Error: 81/ - weapon_ammo_spawn: UTIL_SetModel: not precached: models/props_unique/spawn_apartment/coffeeammo.mdl
- Can be fixed by spawning a prop_dynamic with the modelname or by listing the model in the reslist (.LST) file. MAY need textures mentioned as well!
- Steam Validation Rejected
- Make sure that you have "+sv_lan 1" set in your game's launch options.
- Engine Error: CModelLoader::FindModel: NULL name
- This can be caused due to compiling the map using an outdated FGD. Older FGDs do not have the new values for the
env_fog
andlight_environment
entities, therefore you are compiling a BSP with missing information. Some people (AKA me) also experienced this crash with certain props. For example, the Howitzer Handle from Crash Course (models/props_vehicles/m119howitzer_01_handle.mdl). When Default Animation is filled with a valid animation (ie: idle), the game crashes with this message. - Assert, File: U:\dev\terror\src\tier0\memstd.cpp, Line: 1623, Assert: ***: OUT OF MEMORY! attempted allocation size: 536873088 ****
- If the map crashed once, you can try relaunching L4D and load your map again. It should load up fine the second time. Also try turning Multicore Rendering off, if turned on.
Note:If you're compiling without the official SDK, the 2 errors below are likely due to the BSP missing a "stringtable_dictionary.dct" file. For more information on fixing this, see "Why does a newly compiled map crash after being loaded in L4D?" above.
These nav errors will all cause the message "NAV ERRORS - Map is unplayable!" to be displayed in game when the map is loaded.
- The nav file was built for an older compile.
- This error message means the ".nav" file for a map is older then the ".bsp" itself. This should not be a problem unless the map's layout was changed after the ".nav" file was created. This can be remedied by running
nav_analyze
in the console after changes are made to the ".bsp". - Missing nav file.
- [Todo]
- Missing Battlefield check found N areas
- [Todo]
- GetGoalArea
- Cannot find SPAWN_RESCUE_CLOSET area in FINALE, thus cannot guarantee reachability of goal area.
- Regarding respawn closets; there are 2 essential steps for making them work properly. Place 3 Info survivor position entities in a room or closet then in game use the
mark RESCUE_CLOSET
console command to identify the closet/room as a rescue area. This process is explained in Navigation Meshes. Equally important is labeling the "player start" and checkpoint meshes usingmark CHECKPOINT
andmark PLAYER_START
respectively. - GetGoalArea: Cannot find end area - no checkpoint or finale located.
- This error is due to lack of one of the following:
- A missing Prop door rotating checkpoint entity.
- Not identifying a navigation mesh with
mark CHECKPOINT
. - Not identifying a navigation mesh with
mark FINALE
. - Not properly using a trigger_changelevel with its correct info_landmark or not using it at all.
- ComputeFlowDistances: ERROR - Cannot compute flow.
- The "Flow" of the map refers to the ability of the AI to travel from the spawn location to the designated Saferoom/finale checkpoint. If there are any breaks in the navigation mesh (meshes that are not connected via
nav_connect
ornav_splice
), L4D cannot compute the path necessary to travel the map. The map need to be fully playable for the game to compute the flow. Which means a fully working spawn room and a fully working safe room are mandatory.Note:
Nav_generate
can leave certain essential meshes from being connected, sometimes manual connection is required.Note:It is possible to remove the "NAV ERRORS - Map is unplayable!" error message. One method found is to make sure your map has an
info_player_start
,info_director
, and a nav mesh, then follow the steps in "The safe house and changing levels " and "Building the navigation mesh" in Your First Left 4 Dead Map. - The game crashes when using nav_delete?
- Use director_stop and then nb_delete_all to make sure all survivor bots and infected are removed before editing your nav mesh.