Compiling and Packaging
with CompilePal
and then adapting it to your workflow
with CompilePal
and then adapting it to your workflow
CompilePal is a great way of automating the process of compiling and packaging maps. It is also made easy to build upon, you are encouraged to mod it to match your workflow. Where CompilePal truly shines is with its asset dependency detection which is second to none. CompilePal will look for content under the custom/ folder without trouble. It will find all materials, models, particles, soundscapes, sounds, skyboxes, color correction, nav files, menu photos etc... it does it all*. CompilePal doesn't stop there too, oh no... it will track all the model skins used in your map and only include those being used. It will also look inside particle files for custom materials. Soundscape/soundscript files will be scanned for custom sounds to be included, all dependencies are dealt with in a single click. There are no reason to not use CompilePal in your workflow unless you have a weird kink for hammer's compile window.
Download
Get it here.
Advanced use
Retrieving the asset list to be used with bspzip.exe - CompilePal has a folder called CompileLogs, in it you will find files.txt. It is the list of assets paked for the last map compiled with the pack option. That file is fed to bspzip.exe for packaging. (additionnaly, you can run the packing utility with the -verbose option)
Adding compile options that do not appear in the interface - we try to keep the interface clean by not having every possible options but you can always add missing options by yourself. To do so, you need to manually edit the chosen preset via text editor. In the "Parameters" folder, you will find several .csv file containing the parameters for each process. From a text editor, this is where you can add in any parameter you want. The formatting should be fairly straightforward. Alternatively you can also directly edit your presets with a text editor.
Adding executables in your compile process - For those times when vbsp, vvis and vrad are not enough... if you want to add an other step in your compile (vmfii for example) you can do so by adding files to the "Parameters" folder. You'll need to add a .json file to reference the executable and a .csv file to list your executable's parameters.
Troubleshooting
I am one of the developer for this tool so you can report any problems directly to me or via comment. Alternatively, you can report problems on our GitHub page.
Last edited: