there are four seperate parts to a compile: csg, bsp, vis, and rad... which pass the map to eachother in that order. RAD, the last in line, does the lighting. VIS works out the VISible area (but it doesn't stand for that). If the map is leaky, bsp crashes, so vis and rad never execute. The only compile settings you need to worry about is that you make sure that you are running all of them.
To answer part of your original question, here's how to use console mode to find the leak:
Find the shortcut you use to run the HL executable. To the end of the "Target" directory, add the parameters
?console
and
?dev
eg.
"C:Half-Lifehl.exe" -console -dev
From now on, when you start HL, it will run in console mode. The console will be available to you whenever you press the "~" key in-game.
A few basic console commands are: "map Map_Name_To_Load", "noclip" for no walls/gravity, and "Pointfile" to load the pointfile on to the map.
To find your leak, load the map, the pointfile, and then noclip to play "follow the string" ?it will take you on a cu_razey little adventure about the map, when it passes from the inside to the outside, that's your leak.
Btw, the compiler decides which is "inside" and which is "outside" based on where the entities are placed, so if you place entities outside the map, it will cause leak error.
Other methods of de-leaking include the "big block" method, where you seal off areas of you map to test for leaks compartmentally.
>PHEW<
Seventh: edded at 07:33 25th Mar according to JB's cxns