What the ZHLT compile tools do

Back to the Index

There are seven programs included in this release. HLCSG, HLBSP, HLVIS and HLRAD together build and light your map and are generally all used every time you compile your map (unless you are doing only partial compiles after an initial full compile).

HLCSG

Does constructive solid geometry calculations to the map, effectively breaking up complex brushes into simpler polygons, and makes 4 hull files for HLBSP to use. It replaces QCSG/CSG (qcsg.exe) from the original compile tools. See the list of commands for HLCSG.

HLBSP

Generates the BSP trees for the map and creates a runnable BSP. It replaces QCSG/CSG (qbsp2.exe) from the original compile tools. See the list of commands for HLBSP.

HLVIS

Generates the visibility matrix (specifies which polygons the player can't or might be able to see) for the map and helps speed up its rendering. It replaces QVIS/VIS (vis.exe) from the original compile tools. See the list of commands for HLVIS.

HLRAD

Generates and applies all lighting effects for the map, such as light entities and the sky, and makes it look good. This is usually the slowest of the four tools to run. It replaces QRAD/RAD (qrad.exe) from the original compile tools. See the list of commands for HLRAD.

Ripent

Ripent is a tool for importing and exporting a list of entities to and from BSP files. It can be used to obtain a list of entities in a BSP map file, which can then be edited and imported back into the BSP.

Available command line options are:

-import | -export Import or export an entity list to/from a BSP.
-texdata # Alter maximum texture memory limit. For more information see the -texdata switch in the command reference in the shared options list here.

count_ents

This tool counts the number of entities in a map.

Available command line options are:

-nopause Skip keypress prompt on completion.
-entityfile entity_filename File containing weights to assign to each entity; unlisted entities have a weight of zero.
-logfile log_filename Specify file log_filename to use for logging screen output.

opt_plns

This is a BSP optimizer. It examines the finished BSP file and removes any planes which are not referenced by other planes, thus reducing the total amount of planes in the BSP. It generally results in around a 60% reduction in planes, although lower and higher values have been observed.

The functionality provided with this tool is included in ZHLT 3, and it is not required when these tools are used. It can be used to optimise maps compile with ZHLT versions before XP-Cagey's p14 build, when this functionality was included in the main compile tools. If using an up-to-date version of ZHLT, you do not need to use opt_plns.

This tool is generally only used for map releases (unless you are using more than 32767 planes before optimization), as it breaks HLCSG -onlyents and HLRAD, so after using it any changes will require a full recompile. Make opt_plns the final step when you're compiling.

Available command line options are:

-nopause Skip keypress prompt on completion.
-logfile log_filename Specify file log_filename to use for logging screen output.

Back to the Index