I'm having an issue with leaks. It seems every entity in my my is causing a leak. In order to solve this, I tried deleting whichever entity is causing one, but then I'm smacked with another.
The second problem is with optimization. I created a hint block (with skip in the appropriate places) and an areaportal (configured to func_areaportal). And they do absolutely nothing. Could have something to do with the leaks mentioned above, but I hope not
"Aim towards enemy"-printed on the side of a U.S. Rocket Launcher.
Loading PointFile is of course the best way to find the leak. Follow the Red Line from the entity to the void. At some point it'll pass through a gap in the wall. If it goes through a brush, make sure that brush is not a brush-entity. Seal the map by closing this gap. Deleting the entity will not solve it, unless you delete them all, and then there is no entity in the map to leak from. There will also be no PlayerStart and therefore the map won't work.
That's the most common, but no, that wasn't what I was seeing.
I was seeing the pointfile line passing through walls, no gaps. I made absolutely sure of that. I know, it sounds impossible, but apparently it isn't. I kind of wish I had taken a screenshot before I fixed it. I didn't delete ALL of the entities, just the ones that were causing a leak until it asked me to load a .lin file from my harddrive.
BYTHEWAY, I already know about all the gaps and poo-poo like that, but gaps were NOT the case here.
BYTHEWAYWAY, I love how the C.R.A.P. word changes to poo-poo.
Deleting the entities does NOT fix the problem! The one's you did not delete but compile fine with must have had no connection to the area of the map which the leak occurred. IE they were in self sealed areas. All the entities which were in the zone where there was a leak, would throw the error. Usually only once, for the first entity in the list. Deleting it just makes it pick the next entity, not solving the problem. From the wiki: developer.valvesoftware.com/wiki/Leak
Often the mentioned entity is not the cause of the leak - it's the one that the leak trace originated from. Deleting it will simply make the report mention another entity, it won't solve the problem! There is one situation when deleting an entity does solve the leak: when it's placed outside the playable area. This is covered later in this article.
When it asks you to find a .lin, that means the file was not created because there was no leaks. Just for side info.
Since it was going through a wall, i guess that wall was a brush entity, like func_detail. This would not seal the map as entities do not. You would need to turn that wall into a world geometry to seal the map.
There is a very easy way to find leaks using the visgroup options.
Click the Auto Tab. Untick "Auto" Tick "World Geometry" Untick "Displacements" Untick "Tool Brushes" Untick "Water"
You should be left with the brushes which break visleafs, ie world geometry brushes. Only these seal maps. Then load your PointFile, and see where the Red Line goes.
The other way (ie not a gap in the world geometry) for a leak to occur is by an entity touching the void via either it's containing/bounding box or the helper nodes associated with it. There is no other way to have a leak other than to do with Area Portals, which is a different type of leak (portal leak).
EDIT Actually there is another way, if the texture you used has transparent properties. It may be very hard to see it in the texture in game or in hammer. When you pick the material from the texture browser, in the thumbnail of it in the bottom left is a few symbols. One of these is the letter 'T' which means it has transparent attributes.