Hazard Team Compile Tool[/size]
So here’s the thing… When we compile our maps, we have a few options. We can do one of a few things:
- Use Hammer’s built-in compiler (which is awful for anything that takes more than a couple of seconds to compile)
- Invoke the compile tools via command line/batch file (which is incredibly cumbersome)
- Use an external compile tool, such as VBCT (this option is the best option for most cases!)
I love VBCT. It’s an awesomely useful tool! You can do a helluva lot of things with it, and compiling with it is always much more of a joy than using Hammer’s built-in compiler.
However, in my time working with the Hazard Course dev team, me and my teammates have found that we sometimes needed features that weren’t easily done in VBCT, such as running RAD without a full BSP/VIS pass for fast lighting tweaks, or easily swapping configurations without having to go through a bunch of menus setting and unsetting different flags too often.
Most importantly, we needed a way to sequentially run final compiles on each of our maps whenever we put together a new build to give to our testers-- a feature that we didn’t discover in VBCT until too late because it wasn’t an obvious part of the interface. Although we did eventually find the “group compile” feature in VBCT, by then I had already decided to create our own compile tool, built from the ground-up for the needs of our team. Since we feel that it would be quite useful for others as well, I made the decision that we should share it publicly rather than keep it as internal team software.
Aaaaand here’s the result! Introducing, the Hazard Team Compile Tool (HTCT)!
The main distinguishing features of HTCT as a compile tool are:
- It was built to make sequential compiling fast, flexible, and extremely easy.
- It’s slightly less restrictive than VBCT, meaning you can do potentially dangerous things like running RAD without full BSP and VIS (if you really know what you’re doing). This allows for more flexibility in your workflow (again, if you know what you’re doing).
- Changing between different compile settings is as easy as choosing a different preset from a drop-down menu. HTCT comes with many compile presets, but you can always add your own, of course.
- Only a few central parts of HTCT are hard-coded. A lot of values, such as SDK paths, compile tool arguments, and even window text colors are delegated to a config file. Paths, settings, and variables are taken from existing configuration files whenever possible (like gameconfig.txt), and not hard-coded. This means it is hypothetically possible to extend various parts of HTCT to work flexibly with situations that I have not yet thought of.
So far, HTCT supports Source SDK 2007, 2009, 2013 Singleplayer and Multiplayer, HL2, and supposedly (meaning untested) CS:GO, L4D2, Portal, Portal 2, and Alien Swarm. You can also hypothetically modify HTCT’s config file to support other SDK versions, although I haven’t gotten around to trying that myself.
Right now I’ve barely gotten it into Beta stage, and I need an actual userbase to let me know how well it works, so I can iron out all the bugs that might be lurking in it. So without further ado, I release HTCT BETA into the wild…
Download (HTCT Version 0.5.0 BETA):
Note: Chrome may mark the download as “dangerous” due to infrequent download activity… Don’t worry about that; it’s not dangerous, I swear!
Please test this out and let me know of any bugs, which there certainly are many of. Also let me know what other features you’d like for me to implement in the future, should I decide to continue supporting this.