KatsBits Community

Error: map compile "Leak" but there is no 'leak'

kat · 1 · 23844

0 Members and 1 Guest are viewing this topic.

Offline kat

  • Administrator
  • Hero Member
  • *
    • Posts: 2721
    • KatsBits
When compiling a level for idTech an error keeps appearing saying there's a "Leak" where there isn't one.

Open the level in GtkRadiant or other *.map editor and inspect the brushwork for obvious cracks, splits, gaps or holes. For ease of use doing this, during compile a "Pointfile" is generate outlining the path to the 'leak' from the point of view of the entity that was being processed at the time the leak was discovered. This is displayed in the editors Camera view as a thick red line. To load it; after compile from Radiants "File" menu click "Pointfile..." (e.g. "File » Pointfile..."). The red 'trace' line will appear. Simply follow this to discover the exit point (note: the line isn't always direct, more often its quite a meander around the level as a result of areas being open or closed to each other).

Pointfile showing path to a leak

Non-solid volumes
If that produces no errors then check to see if any of the levels structure volumes have not inadvertently been assigned a shader with a 'non-solid' surface property, or have not been converted to "Detail", both are considered to be non-structural in that they do not seal the internal workings of a level from the Void, thus they cause leaks.

Buried Entity
Alternatively, although the following may not actually produce a "Leak" error, they do cause "Leak" issues for other aspects of the compilation process, especially where AI are used; check to make sure there are no game entities, models or brush-based entities buried in structural brush volumes. Check light entities, AI spawn markers, target_[names] and any other entities placed around the map. Note: depending on the entity type, differing amounts of burial may cause a leak; a model (mesh) needs to be buried beyond its origin point (the cross-hair marking its point of rotation/origination), whereas the base of an info_player_start being buried may be sufficient.

Game entity buried in brush volume

Duplicate Plane
Finally if none of the above are an issue its likely the level contains a broken brush volumes which, whilst it continues to be visible, is broken to the compiler causing a gap and leak to occur. To fix these types of issue use brush cleanup, which highlight for removal any defunct brush volume. To do this from Radiants "Plugins" menu select "bobToolz » Brush Cleanup". If this still doesn't fix the problem start a new level and then import the old one - make sure to "Import" rather than "Open" the map.