Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/twhl-community/halflife-unified-sdk/llms.txt

Use this file to discover all available pages before exploring further.

The Content Installer is a .NET tool that prepares your Half-Life game content for use with the Unified SDK. It copies campaign, training, and multiplayer maps from all supported games into your mod directory, then applies the same upgrades and bug fixes that MapUpgrader provides. It also installs a default config.cfg with correct key bindings if one does not already exist in the mod directory. The tool is included in the hlu/tools directory of every Unified SDK release.
Content Installer is a .NET tool. On Windows you can run it as ContentInstaller.exe [options] or dotnet ContentInstaller.dll [options]. On Linux use dotnet ContentInstaller.dll [options].

Command line usage

Usage:
  ContentInstaller [options]

Options:
  --mod-directory <mod-directory>            Path to the mod directory
  --dry-run                                  If provided no file changes will be written to disk
  --diagnostics-level <All|Common|Disabled>  The diagnostics level to set [default: Disabled]
  --version                                  Show version information
  -?, -h, --help                             Show help and usage information

Options

--mod-directory should point to your local copy of the mod installation — typically the hlu folder inside your Half-Life game directory (for example C:/Program Files (x86)/Steam/steamapps/common/Half-Life/hlu). --dry-run performs a complete pass without writing any files to disk. Use this to preview which files would be copied or modified before committing to the operation. --diagnostics-level controls how much information is printed during the run:
ValueDescription
DisabledNo diagnostics output (default)
CommonPrint commonly useful diagnostic messages
AllPrint all available diagnostic messages

Running Content Installer

Run Content Installer directly on the command line:
ContentInstaller.exe --mod-directory "C:/Program Files (x86)/Steam/steamapps/common/Half-Life/hlu"
Preview what would be copied without making any changes:
ContentInstaller.exe --mod-directory "C:/Program Files (x86)/Steam/steamapps/common/Half-Life/hlu" --dry-run

Using a script

Because the arguments are the same each time, it is recommended to wrap the command in a script so you can re-run the installer without retyping the options.
Place this .bat file in the directory that contains your Half-Life installation (typically the Half-Life folder):
dotnet "path/to/ContentInstaller.dll"^
    --mod-directory "C:/Program Files (x86)/Steam/steamapps/common/Half-Life/hlu"
Double-click the batch file, or run it from the command line, to install content without entering the full command each time.

Error reporting

If any errors occur, Content Installer logs the details to the console and stops execution immediately. Check that the --mod-directory path exists and that none of the files in it are read-only before retrying.

Build docs developers (and LLMs) love