- A new "snippets" system allows FGD files to easily repeat descriptions and other small sections.
- Add ability to randomise output delay to
comp_relayandcomp_adv_output. - Added
comp_vactube_sensor, which allows detecting the presence of vactube objects. - Added a value mode option to
comp_kv_setterandcomp_adv_outputto more clearly control which key is used. - Added textures for 4 rendertargets (camera, water reflection/refraction, full framebuffer). These give a nice preview in Hammer.
- Added three keyvalues to
ambient_generic, giving a more user friendly interface to the confusing spawnflags. This also allows them to be configured via fixup values easily. - Allow
comp_entity_finderto rotate the target in addition to teleporting. - Allow configuring various shadow/fast reflection options for vactube object ents.
- Boolean keyvalues (yes/no) can now be set to
!$var, to invert the value of the variable. - Propcombine will now preserve prop fade distances, by calculating a new distance which encloses the original fade spheres.
- Warn if propcombine or packing was disabled via command line.
- Add option to
comp_adv_outputto have it expand target searches itself.
- Fix a compile failure if prop ropes were placed in a group with no connections.
- Fix various incorrect usages of the FGD
frustum()helper. - Normals are now correctly calculated when generating propcombined models. This requires all previous models to be rebuilt, unfortunately.
- Fix overlays not functioning with
material_modify_controlparent searching. - Make RunScriptCode ` handling occur after everything else.
- #274, #277: Force required keyvalue casing for
light_environment'sSunSpreadAngleandlua_run'sCodekeys.
- #163: Added
comp_adv_output, which allows adding a single output with complex behaviour. - Added
comp_case, a version oflogic_casethat is collapsed into callers likecomp_relay. - Vactube props can now be generated with glass/frames seperately, and with bezier curves instead of catmul-romm. (Authored by asd417)
- Added
--verboseparameter, for showing DEBUG messages. - Added
--regenerateparameter, to force all models to be regenerated from scratch. - Added ability to specify alt skins when using
comp_prop_cable_dynamic. - Weapon scripts are now packed along with the models/sounds they use.
- #210: Add
OnFinishedoutput tocomp_numeric_transition. Add an option to specify the maximum distance for automatic combined props. - Allow combining models containing
$collisionjoints. - Add missing
buntingkeyvalue tocomp_prop_cable. - Areaportal windows will automatically force the brushes used to nonsolid, and clear some physics data.
- Propcombine will no longer merge props found in different areaportal areas. This allows props on the outside of a building to be culled when inside, or vice versa.
- Automatically set the "transmit to client" flag for
info_targets used as particle system destinations. - Change
sky_cameramodel to be more visible withtools/toolsskyboxbehind it. - Allow physboxes to completely override their mass.
- The postcompiler can now automatically handle custom models for various Portal 2 entities.
comp_pack_renamewill now automatically also include the auxiliary.mdlfiles.- #10: The center of the axis helper used for sprites can now be clicked on.
- #232: Readd missing
OnFizzledoutput onprop_weighted_cube. - Limit the size of propcombined groups to avoid hitting vertex limits.
- Prevent automatically packing models specified only as Hammer previews in various entities.
- Fix propcombine sometimes removing collisions entirely from component props.
- Add an option to allow the sources for compiled models to be preserved.
- Improve description of
waitandOnTriggeroptions intrigger_multiple. - Fix #192: Use both specified model and cube type field to find matching cubes for vactubes.
- Restore missing projected texture shadow keyvalues.
- Fix
comp_precache_soundnot handling sound characters at the start of raw filenames. - Allow
comp_vactube_startto be set to have a timer which starts disabled. - If required, add various QC flags like
$mostlyopaqueto propcombined props. - Set Precache/OnPostSpawn in generated VScript, to prevent double-firing functions already in Entity Scripts.
- Added new
srctools_paths.vdfconfig, allowing specifying the base location for all paths in the main config. This separation allows mod projects to synchronise the main config, while customising the new path config for installation locations on each computer. - Fix
scriptlistbeing used in pre-L4D2 branches. - Fix an issue causing a single brush face in the map to be "missing" a triangle.
- Add some support for Portal 2 Educational Version and The Stanley Parable (via @Adrthegamedev).
- Clarify that Portal 2 uses
maps/map_name_particles.txt. - Ensure culled bases are replaced by their own bases (fixes
Item, for example). - Update to Mapbase 7.1, and add Entropy Zero 2 entities.
- Added icon for
npc_heli_avoidsphere. - Change propcombine/geocable to log just the number of culled models, not every single file.
- TF2 now has VScript support, updated FGDs to include the corresponding options.
- Added new blocklist/allowlist options to permit fine-grained control of which files get packed.
- A specific option was added to strip existing cubemap files from the map, if this is necessary to fix crashes while building cubemaps.
- Add transform to allow using
/ningame_textmessages to produce multiline ones. - #167: Add
comp_player_input_helper, an entity to trick Hammer into autocompleting player inputs. - Transforms should now use
EntityDef.engine_def(), notctx.fgdto allow partially parsing the database.
- Tweak
comp_prop_ropeandcomp_vactube_junction"Group" descriptions to make it clear they're optional. - Tweak
comp_vactube_junction"Override" description to make it clear they're optional. - Tweak
comp_propcombine_set/_volume"Model Filter" description to make it more clear. - Add additional log messages for propcombine.
- Add
comp_relay's "Control Type"/"Control Value" option to most comp_ entities, to allow disabling them via fixup values. - Make
point_viewcontroldefaults to be more useful. - Change the editor model for
prop_testchamber_doorto use a dashed line. - The config format for additional plugins has changed - an ID is now required, allowing for a consistent import path to be used.
- Fix issues where
comp_flickermay run indefinitely. - Fix the
use_comma_sepconfig option. - Compilation of prop ropes, propcombine models, and decompilation will now all be done concurrently, using all CPU cores.
- Added a config option (
propcombine_pack) to control whether propcombined models will be packed. - Tweak the distance
comp_trigger_p2_gooplaces the physics trigger below the surface. - Correctly handle "only once" when collapsing outputs in entities such as
comp_relay. - Improve matching behaviour for the Entity Handle mode in
comp_scriptvar_setter, and add aQangle()mode for L4D2/Mapbase. - Ensure propcombine entities are deleted from the BSP in all cases.
- The generated vactube animation prop is now textured with a valid material.
- New entity sprites:
npc_vehicledriver,comp_numeric_transition,point_broadcastclientcommand. - (#154): Add scale keyvalue to hammer_notes.
- (#42): Add editor models for Black Mesa health and suit chargers.
- (#76): Make all weapon entities include
CBaseAnimatingI/O and keyvalues. - (#120): Fix
env_bubbles,env_embers,func_precipitationandfunc_smokevolumehaving anoriginkeyvalue. These entities break if their origin is not0 0 0. - Indicate the allowed combine ball sizes -
1-12. - Snap propcombine props to within 45 degrees, not 15.
- Remove
--showgroupscommand line option. Source provides ther_staticpropinfoconvar which performs the same function. - Use a cache file to avoid needing to reparse particle system files every run.
- Fix two issues causing produced BSPs to be potentially corrupt. If your maps are mysteriously crashing on load, this may fix the issue.
- Particle systems will now be detected and packed along with their dependencies. This needs configuration in the config file, since different games use different filenames.
- Optionally, the postcompiler can collapse and remove
func_instance_io_proxyfrom maps entirely to save ents. - Add
comp_sequential_call: finds a sequence of entities (by distance or numeric suffix), then fires inputs delayed in order. - Add
comp_flicker: fires on/off and skin inputs repeatedly to simulate a flicker-on effect. comp_scriptvar_settercan now set global variables also.prop_paint_bombwill now show its collision mesh (futbols).- Fix .ani files for models not being detected.
- Fix propcombine not working if blacklist is not set.
- Handle VPKs with non-ASCII bytes in filenames.
- BINK videos will now never be packed.
- When generating a default config, running from a sourcemod will be properly handled.
- Added
comp_prop_rope_dynamicandcomp_prop_cable_dynamic, for generating 3D ropes as dynamic props. - Added
comp_prop_rope_bunting, for positioning other props along a rope (could be used for lights, supports, decoration, etc). - Prop ropes may be configured to generate a collision mesh.
- Added
comp_propcombine_volume&tools/toolspropcombine, which allows specifing propcombine regions with brushwork. This does leave remmnants of the brush in the map, so the point entity may still need to be used if near brush limits. - Added
comp_vactube_spline, which generates Portal 2 vactube models following a path. - Add an editor model for decals, like overlays have.
- Added ability to specify rotation seed for vactubes.
- Add
comp_prop_rope/comp_prop_cable: These allow generating 3D static prop versions of cables, like in Source 2. Place them down, choose a material, then connect them together like regularmove_rope/keyframe_rope. - The postcompiler is now able to properly handle pre-L4D entity outputs.
- Added "plugin" support to the compiler - directories can be specified which contain scripts to be run on the map in addition to the existing ones.
- Vactubes now have a "next junction" option for manually specifying the next location, and have a 45 degree curve variant.
- Add a pile of new entity sprites by @lazyRares.
- Propcombine can now use a bundled copy of Crowbar to decompile models if the sources are not available.
- Add a set of cubedropper instances for Portal 2.
- Vactube enhancements:
- cross-junction splitter for vactubes
- Support for frankenturrets
- Allow having different object sets for each vactube
- Add
comp_relay, a simplified version of relays which is collapsed into the callers. - Update to Mapbase 4.1
- Add
UniqueStateinputs tologic_branch_listener, which creates alogic_branchfor each unique input entity. - Sprites for
skybox_swapper,comp_pack_replace_soundscript,env_portal_creditsandinfo_ping_detectorby Luke.
- Fix triggers not having a "Clients" spawnflag
- Add the vactube dropper instance
- Make the postcompiler more forgiving - it will now skip soundscripts it can't find/parse.
- Merge in Black Mesa and latest Mapbase changes.
- Add in vastly expanded visgroup sets for most entities.
- Add a lot of internal or otherwise hidden entities, improve HL2 related support.
- Add a lot of entities to internal packing database, allowing packing resources these use in code.
- Fix vactube system not working properly with multiple source points.
- Fix some incorrect math in
comp_propcombine_setshape checks. - Add
--showgroupsoption, which randomly tints each propcombine group to let you see which props have been combined.
- Fix vactube system not functioning when only decorative objects are provided.
- Fix packing system always not packing from VPKs
- Fix
logic_player_slowtimeappearing in all games. - Set
trigger_portal_cleanserto default to clients and physics. - Add some new options to
comp_trigger_p2_goo, designed for bottomless pits. - Add icon for
comp_entity_mover. - Automatically detect
pak02_dir.vpketc folders.
- Upload the correct compiler version.
- Add
comp_numeric_transition: this allows transitioning an entity option gradually from one value to another over time. - Add
comp_scriptvar_setter: a tool for copying positions or similar configuration to a VScript instance. - For Portal 2, add a vactube animation system for building decorative tube networks.
- Fix a few icons being missing.
-
Fix
func_dustmoteshaving extra keyvalues which break it. -
Fix several classnames being present or absent which should not.
-
Add back
rendermode/rendercolortoenv_lightglow,env_sprite*,env_spritetrail,env_steamandenv_sun. -
Add "Invert" option to
comp_kv_setter. -
Make
move_ropeandkeyframe_ropeinterchangeable/identical, as they are ingame. -
Fix Portal 1's Hammer having a few syntax errors.
- Fix an issue where brushes have stray bounding boxes and may break maps.
- Combine FGD files from all engine branches into a tagged, unified database.
- Implement postcompiler allowing many features including auto-packing and static prop combine
- Add lots of new editor sprites.