|---------------------------|
TeamSpen's Hammer Addons |
---|
- Auto-packing - filtered based on search paths in gameinfo, and based on a FGD database +
comp_pack
entities. - Static prop combining - merges together adjacent props to allow them to be efficently drawn in batches.
- A unified FGD database allowing keyvalues to be shared among games, and accurately defining when features were added and removed.
- Many many upgrades to entity options and layouts.
- New sprites for almost all entities, both custom made and from a number of sources:
- Adds lots more AutoVisgroups for easily hiding entities.
- Several
comp_
entities with additional features. These are mainly intended for use in instances, allowing modifying entities outside of the instance to conform or doing normally impossible things like positioning things in the void. To use, decompile props and configure the folder & studioMDL's path then placecomp_propcombine_set
entities. - For games supporing VScript:
- In any
RunScriptCode
input, backticks can be used for string literals, instead of the disallowed"
character. - In addition to the normal
Entity Scripts
section, a newInit Code
field can be used to write code that's packed and added to those scripts. Useful for setting configuration options etc. Backticks can be used here too.
- In any
- Download the release from the releases tab.
- Use the provided FGD instead of the vanilla one. (Issues/PRs welcome for any entity improvements.)
- Add the
hammer/
folder to gameinfo.txt, to provide sprites for the compiler. - Add the postcompiler to the compile commands:
- Create a new command after VBSP, using the "Executable" type and choosing the postcompiler EXE.
- In the parameters, enter
--propcombine $path/$file
.
- Compile a map once, which should produce the config file
Game Folder/srctools.vdf
(this can be placed in any parent folder of the VMF). - Configure the file as desired, then compile your maps to apply the changes.
- If using BEEMOD2.4, change Hammer -> Options -> Build Programs to use
vrad_original.exe
.
This implements a dynamic vactube system in a similar way to Valve's system, including randomised objects, complex junctions and dropper support.
- To use, place and configure
comp_vactube_object
entities to specify which items can appear in tubes. - To build paths a comp_vactube_start entity at the beginning of the track, and a
comp_vactube_end
at the end. - Then at each corner/junction place a
comp_vactube_junction
ent, picking the appropriate type. These all need to be rotated appropriately so the arrows point in the correct direction to be matched up by the compiler. - To split a path into multiple tubes, you'll need to use one of the "splitter" junction types.
- To join multiple back into a single pipe, simply overlap two junctions such that their outputs both point down the same route.
- For droppers, simply place the supplied
instances/cubedropper/dropper_vactube.vmf
instance, and run a path up to the vactube end entity in the top. Place aprop_weighted_cube
inside the dropper to specify which cube type it will spawn. The specific route leading to the dropper will be detected and only replacement cubes will be sent this way. You'll want to add a splitter just before the dropper, so the tube can have decorative items flowing through it constantly. - To place the vactube scanner TVs, simply add a "straight"-type junction inside the model, then place the
prop_dynamic
s for the screen and optionally the spinner. The screen will need the supplied_new
model, so both orientations have all the skins. They will automatically be detected and flash on when objects pass. - To avoid visual collisions, you may want to turn off the automatic spawning on one or more spawn points, then use the outputs on a junction to manually spawn objects in sync with another path.
- Mapbase's FGDs have been imported as a submodule, to track which version has been merged into this repo.