(MvM Map Issues) Soundscapes and Pathing!

Shaeam

L1: Registered
Aug 19, 2011
42
20
Greetings, as you may be aware from my post counter -- I am a recent addition to this site; I've been working on this MvM map for about... A week or two now; it'll be my first one; anyway; back on topic...

First, There have been many versions of the map; I think it was version _a4 (I think, cannot be entirely sure without checking through a list of versions.) that I added soundscapes to my map; now here comes the strange part -- They worked...! But alas, a few versions later they stopped working; entirely. Kaput. I didn't even make any changes to them; so i'm not quite sure what caused this change; I am aware that you cannot see env_soundscapes through Areaportals -- and now that I think about it; it seems that that was the update that broke them, though I placed soundscapes on BOTH sides of the doorways; and they still didn't work. Anyone who could help me on this topic would have my gratitude.

Finally, we come to the Issue with pathing i'm having; well let's get this straight -- I'm pretty damn sure I know WHY it's happening, i'm just not sure how to fix it. I've looked into the issue and apparently bots get stuck on Func_detail brushes -alot-, well on my map theres a few fences and walls bots just love to get stuck on; I tried added a func_nav_avoid brush ontop of the fence and about 1 hammer unit to either side (To hopefully prevent them from clustering around and getting stuck) but it was to no avail; unfortunately.

To anyone who could help me with these issues; or even took the time to listen to my rambling, I thank you for your time and bide you a good day.

P.S; if you want to see screenshots, i'll gladly submit them and show you where the areas they get stuck on are.

Edit: I seemed to have found a small minor lighting bug; upon further inspection. Heres some screenshots;
8CETdTO.jpg
VGmAvo4.jpg
 
Last edited:

henke37

aa
Sep 23, 2011
2,075
515
Check the navigation mesh using the nav_edit console variable. There is probably something silly going on.
 

Turbo Lover

Fight me under Glasgow Central Station
aa
Feb 15, 2011
333
344
In order for func_nav_avoid to work, it must cover the entire nav area, you can see this by going into console and typing "sv_cheats 1; nav_edit 1" then edit your brush so that it covers the entirety of the nav area(s) around your fence. In short, make your nav_avoid brush bigger.

Feel free to ask about anything else you may need to know, it's why we're here, after all.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
About that door: You wouldn't happen to be using Linux, would you? I've noticed that the Linux version of some Source games do that to certain dynamic props.
 

UKCS-Alias

Mann vs Machine... or... Mapper vs Meta?
aa
Sep 8, 2008
1,264
816
About the pathing. Its in some cases recommended to have clipping on the floor. It in some cases makes nav meshes smoother and will make sure paths that should be connected get connected. Its also making it easier for bots to walk on. If you watched decoy youll notice allmost all displacements having a nodraw directly below them and many times equal.

There is also a console comamnd like tf_show_blocked (dont know the exact name but typing 'find blocked' will show it up). This command will show all paths that block bots. This could be a teamcolor (red/blue) or purple which means both. Purple shows a section that needs its nav fixed as these will give nav issues to bots.

Also, clip ALL fences or very detailed walls. Try to prevent them from having to touch any details at all. a flat clip wall is more effective than a fence. And to note, specificly giants can get stuck on such areas. If you looked at any valve map youll notice them going mad with clipping at some areas. If you do the clipping in a clean way players wont even notice its there yet it makes it much easier for the bots.

I had the same issue on skullcove and as result i clipped allmost all objects that are near a path they commonly take.
In short, make your nav_avoid brush bigger.
Or just make sure you use nav_split in nav_edit mode to split up the section to the size of the avoid area. Too many of the nav meshes are far to big to decently work with avoid areas. Still, in the case of fences this shouldnt be done as its the most ugly fix. Clipping is the way to go there. Nav avoid is better used for making them forced to take the left or right path.
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
@Turbo Lover: I'll check into the navmesh and UKCS's suggestion, too. I appreciate the help, guys. I've been having trouble with their pathing for a while now.

@stevethepocket; Nope, I run Windows 7; and I don't seem to have any issues with any other prop (or map with the same exact prop on it.) the prop is also a prop_static; could that have anything to do with the strange lighting?

Edit: Awesome!!! The pathing works, thanks alot guys; I greatly appreciate it; they're no longer getting stuck. Now the only issues are the irritating lighting glitches and the soundscapes.
 
Last edited:

Shaeam

L1: Registered
Aug 19, 2011
42
20
I tried to turn the shadows off of the prop -- and swapped it to a dynamic prop; and it didn't work. I couldnt get the lighting bug to go away; unfortunately.

As far as the soundscapes go; I tried copying the ones over from the version of the map where they worked and compiled -- it didn't fix them; they still don't seem to be playing at all.
I even tried soundscape_debug 1

Edit: Er, sorry about double post.
 

UKCS-Alias

Mann vs Machine... or... Mapper vs Meta?
aa
Sep 8, 2008
1,264
816
For lighting you can use an info_lighting entity and place it at the location that does show the correct light. Note however, this method if you do it wrong could give the same result as you posted. (you are able to make something much brigther than needed or even more dark). However, generaly placing it near the object in plain light does enough (dont place it too close to lights as it might in that case ignore them again).

On the prop you then set that entity as light origin. It can be done on a static prop.
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
For lighting you can use an info_lighting entity and place it at the location that does show the correct light. Note however, this method if you do it wrong could give the same result as you posted. (you are able to make something much brigther than needed or even more dark). However, generaly placing it near the object in plain light does enough (dont place it too close to lights as it might in that case ignore them again).

On the prop you then set that entity as light origin. It can be done on a static prop.

Oh, I see. Do I just plop the info_lighting next to the prop then? I'll try that and see if it works.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
Wait, I thought those screenshots were near and far views of the same door. I'm a dumb. The real solution is to not worry about it right now because you're still in alpha; once you hit beta, you should start using advanced compiling and include the -staticproplighting parameter. This prevents the props from being lit based on their origins and instead will apply lighting to every vertex individually, for a much more accurate look. I recommend you disable self-shadowing in the props' properties, though, because it tends to mess with the lighting on those door props.
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
Wait, I thought those screenshots were near and far views of the same door. I'm a dumb. The real solution is to not worry about it right now because you're still in alpha; once you hit beta, you should start using advanced compiling and include the -staticproplighting parameter. This prevents the props from being lit based on their origins and instead will apply lighting to every vertex individually, for a much more accurate look. I recommend you disable self-shadowing in the props' properties, though, because it tends to mess with the lighting on those door props.

Ohhhhhhhh, I see; thanks for the help, i'm pretty sure you're correct because I recall before I turned off some options while compiling (to compile the map quicker) I think the doors worked just fine; I didn't think much of it though.

Welp; that fixes all of my problems but one -- arguably the most strangest question; which is difficult to provide evidence of but basically I added soundscapes to my map in version _a4; and they stopped working like... 8 versions later in _b4.

The strange thing is though; they worked for 8 versions -- its just when I redid all the displacements (Due to a little bit of stupidity on my end; I initally forgot to place nodraw textures under the displacements; but I learned this was... a terrible idea shortly after) the soundscapes just stopped working. For seemingly no reason.

I looked at version _b3 and then compare it to _b4 so that I could give as much detail as possible... But honestly; theres nothing that changed from _b3 to _b4 -- except for me re-doing ALL the displacements (meaning; I destroyed their faces and then redid them; I didn't delete the brushes themselves.)

In-case it matters I was using 2 env_soundscapes near all of the doors; I did not use env_soundscape_triggerables, or env_soundscape_proxies; I also didn't do anything with the console. Do you need to rebuild soundscapes or something like you need to rebuild cubemaps? Because that might be an issue.
 

UKCS-Alias

Mann vs Machine... or... Mapper vs Meta?
aa
Sep 8, 2008
1,264
816
Wait, I thought those screenshots were near and far views of the same door. I'm a dumb. The real solution is to not worry about it right now because you're still in alpha; once you hit beta, you should start using advanced compiling and include the -staticproplighting parameter. This prevents the props from being lit based on their origins and instead will apply lighting to every vertex individually, for a much more accurate look. I recommend you disable self-shadowing in the props' properties, though, because it tends to mess with the lighting on those door props.
Ofcourse, i completely forgot about that. This is indeed the best solution. The info_lighting is only for props are have their origin below the surface and even with that staticproplighting parameter still turn out black.

Its mostly depricated but often ideal for test situations where an object turns out completely black where with those parameters they dont. Also, is -staticproppolys also needed for this or was that just for its shadows?
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
-staticproppolys is for using the mesh instead of the collision model for shadows. Stuff like the minecart tracks and piles of rocks, although I think most people just disable shadows for those anyway like they do for fences.
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
Argh; i'm afraid it didn't work.

It's so strange; its only these three doors that are giving me issue~

I tried both -staticproppolys and -staticproplighting
I also disabled shadows on the door. Theres three other options down at the very bottom of the properties prompt -- should I turn them off as well?
 

UKCS-Alias

Mann vs Machine... or... Mapper vs Meta?
aa
Sep 8, 2008
1,264
816
Can you give a screenshot of how you did set it up and a compile log of what it did?

I think the setting has a small issue which breaks it for the compile.

For reference on how mine looks (and yes, im aware i also have set it up the ugly way - but it works because i know what it translates to):
staticproplighting%20compile.png
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
Lxunepi.jpg




** Executing...
** Command: "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\vbsp.exe"
** Parameters: -game "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\tf" "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6.vmf"

Valve Software - vbsp.exe (Jul 24 2013)
2 threads
materialPath: C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\tf\materials
Loading C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6.vmf
ConVarRef mat_reduceparticles doesn't point to an existing ConVar
Patching WVT material: maps/mvm_ironworks_b6/nature/blendgroundtograss008_wvt_patch
fixing up env_cubemap materials on brush sides...
ProcessBlock_Thread: 0...1...2...3...4...5...6...7...8...9...10 (0)
**** leaked ****
Entity prop_static (-1088.00 -2920.00 96.00) leaked!

FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 3584.0 736.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 3584.0 104.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 3584.0 -128.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 3584.0 1328.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2560.0 4096.0 520.0)
Leaf 0 contents:
Leaf 1 contents: CONTENTS_SOLID
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (3072.0 3584.0 520.0)
Leaf 0 contents:
Leaf 1 contents: CONTENTS_SOLID
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 2560.0 -128.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:


FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (2048.0 2560.0 736.0)
Leaf 0 contents: CONTENTS_SOLID
Leaf 1 contents:
viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
Candidate brush IDs:

*** Suppressing further FindPortalSide errors.... ***
Processing areas...done (0)
Building Faces...done (0)
Chop Details...done (0)
Find Visible Detail Sides...
Merged 338 detail faces...done (0)
Merging details...done (0)
FixTjuncs...
PruneNodes...
WriteBSP...
NODRAW on terrain surface!
NODRAW on terrain surface!
NODRAW on terrain surface!
NODRAW on terrain surface!
NODRAW on terrain surface!
done (0)
*** Error: Skybox vtf files for skybox/sky_alpinestorm_01 weren't compiled with the same size texture and/or same flags!
Can't load skybox file skybox/sky_alpinestorm_01 to build the default cubemap!
*** Error: Skybox vtf files for skybox/sky_alpinestorm_01 weren't compiled with the same size texture and/or same flags!
Can't load skybox file skybox/sky_alpinestorm_01 to build the default cubemap!
Finding displacement neighbors...
Found a displacement edge abutting multiple other edges.
Finding lightmap sample positions...
Displacement Alpha : 0...1...2...3...4...5...6...7...8...9...10
Building Physics collision data...
done (1) (554268 bytes)
Static prop models/props_barnblitz/window009_ext.mdl outside the map (-848.00, -3840.00, 256.00)
Placing detail props : 0...1...2...3...4...5...6...7...8...9...10
Compacting texture/material tables...
Reduced 1745 texinfos to 1224
Reduced 64 texdatas to 58 (1491 bytes to 1315)
Writing C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6.bsp
5 seconds elapsed

** Executing...
** Command: "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\vvis.exe"
** Parameters: -game "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\tf" -fast "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6"

Valve Software - vvis.exe (Jul 24 2013)
fastvis = true
2 threads
reading c:\program files (x86)\steam\steamapps\common\team fortress 2\content\tf\mapsrc\mvm_ironworks_b6.bsp
reading c:\program files (x86)\steam\steamapps\common\team fortress 2\content\tf\mapsrc\mvm_ironworks_b6.prt
LoadPortals: couldn't read c:\program files (x86)\steam\steamapps\common\team fortress 2\content\tf\mapsrc\mvm_ironworks_b6.prt


** Executing...
** Command: "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\vrad.exe"
** Parameters: -game "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\tf" "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6"

Valve Software - vrad.exe SSE (Jul 24 2013)

Valve Radiosity Simulator
2 threads
[Reading texlights from 'lights.rad']
[34 texlights parsed from 'lights.rad']

Loading c:\program files (x86)\steam\steamapps\common\team fortress 2\content\tf\mapsrc\mvm_ironworks_b6.bsp
No vis information, direct lighting only.
Setting up ray-trace acceleration structure... Done (4.47 seconds)
4856 faces
1220530 square feet [175756400.00 square inches]
287 Displacements
186116 Square Feet [26800772.00 Square Inches]
sun extent from map=0.000000
sun extent from map=0.087156
44 direct lights
BuildFacelights: 0...1...2...3...4...5...6...7...8...9...10 (46)
Build Patch/Sample Hash Table(s).....Done<0.0239 sec>
FinalLightFace: 0...1...2...3...4...5...6...7...8...9...10 (8)
FinalLightFace Done
Computing detail prop lighting : 0...1...2...3...4...5...6...7...8...9...10
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0...1...2...3...4...5...6...7...8...9...10 (38)
Writing leaf ambient...done
Ready to Finish

Object names Objects/Maxobjs Memory / Maxmem Fullness
------------ --------------- --------------- --------
models 34/1024 1632/49152 ( 3.3%)
brushes 1488/8192 17856/98304 (18.2%)
brushsides 10506/65536 84048/524288 (16.0%)
planes 4590/65536 91800/1310720 ( 7.0%)
vertexes 8131/65536 97572/786432 (12.4%)
nodes 2512/65536 80384/2097152 ( 3.8%)
texinfos 1224/12288 88128/884736 (10.0%)
texdata 58/2048 1856/65536 ( 2.8%)
dispinfos 287/0 50512/0 ( 0.0%)
disp_verts 23247/0 464940/0 ( 0.0%)
disp_tris 36736/0 73472/0 ( 0.0%)
disp_lmsamples 650920/0 650920/0 ( 0.0%)
faces 4856/65536 271936/3670016 ( 7.4%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 3778/65536 211568/3670016 ( 5.8%)
leaves 2547/65536 81504/2097152 ( 3.9%)
leaffaces 6119/65536 12238/131072 ( 9.3%)
leafbrushes 3201/65536 6402/131072 ( 4.9%)
areas 8/256 64/2048 ( 3.1%)
surfedges 37753/512000 151012/2048000 ( 7.4%)
edges 23560/256000 94240/1024000 ( 9.2%)
LDR worldlights 43/8192 3784/720896 ( 0.5%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 450/32768 4500/327680 ( 1.4%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 7920/65536 15840/131072 (12.1%)
cubemapsamples 9/1024 144/16384 ( 0.9%)
overlays 22/512 7744/180224 ( 4.3%)
LDR lightdata [variable] 3760880/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 0/16777216 ( 0.0%)
entdata [variable] 87000/393216 (22.1%)
LDR ambient table 2547/65536 10188/262144 ( 3.9%)
HDR ambient table 2547/65536 10188/262144 ( 3.9%)
LDR leaf ambient 16072/65536 450016/1835008 (24.5%)
HDR leaf ambient 2547/65536 71316/1835008 ( 3.9%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/1658120 ( 0.0%)
dtl prp lght [variable] 1/4 (25.0%)
HDR dtl prp lght [variable] 1/4 (25.0%)
static props [variable] 1/22820 ( 0.0%)
pakfile [variable] 925/0 ( 0.0%)
physics [variable] 554268/4194304 (13.2%)
physics terrain [variable] 119625/1048576 (11.4%)

Level flags = 0

Total triangle count: 12912
Writing c:\program files (x86)\steam\steamapps\common\team fortress 2\content\tf\mapsrc\mvm_ironworks_b6.bsp
2 minutes, 2 seconds elapsed

** Executing...
** Command: Copy File
** Parameters: "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\content\tf\mapsrc\mvm_ironworks_b6.bsp" "C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\tf\maps\mvm_ironworks_b6.bsp"
 

henke37

aa
Sep 23, 2011
2,075
515
You have a leak and nodraw on displacements.
 

Shaeam

L1: Registered
Aug 19, 2011
42
20
You have a leak and nodraw on displacements.

Wow. I can't believe one single tiny little leak would cause me so much trouble as to fuck up my soundscapes so badly.

Thank you, so much; you've fixed my soundscapes.
 

UKCS-Alias

Mann vs Machine... or... Mapper vs Meta?
aa
Sep 8, 2008
1,264
816
About the extra parameters, that box is the wrong one. Its parameters for launching the game. The parameter cant be done in the simple compile.

Staticproplighting should be done on the expert method of compiling in the light section. Try to set it on expert once. Pick default (this equals setting all 3 things to normal - fast isnt recommended as that also gives you cheap lighting which makes the whole compile useless on that part) and click on $light_exe.
On the right side you should see the same thing as i showed except that staticlighting parameter isnt there. Add it the same way as i did (its case sensitive!). This only has to be done once and will be saved for all later versions. In my example i also have the proppolys behind it but that one isnt needed and can be ignored.

Turn off the $game_exe to imitate the 'Dont stat game after compiling' checkbox. Dont remove anything, turning things off is safer.

If you did it wrong the compile will show a list of parameters and not perform the conversion. If you did it correctly that step will take a little longer.

Note that vvis will take (much) longer on this (on poorly optimized maps this could take hours!). Also, this breaks on leaks.
 

henke37

aa
Sep 23, 2011
2,075
515
Uhm, parameters goes in the parameters field. Not in the command name field.