Skip to content
This repository was archived by the owner on May 3, 2026. It is now read-only.

Commit e82b47e

Browse files
authored
Merge pull request #21 from TeamSpen210/dev
Update from TeamSpen210/HammerAddons
2 parents eafdcce + 81f2bc2 commit e82b47e

1,197 files changed

Lines changed: 58242 additions & 17144 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build-fgds.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- name: Setup Python
2626
uses: actions/setup-python@v5
2727
with:
28-
python-version: '3.11'
28+
python-version: '3.13'
2929
cache: 'pip'
3030
cache-dependency-path: 'requirements.txt'
3131
- name: Install srctools
@@ -47,7 +47,7 @@ jobs:
4747
- name: Setup Python
4848
uses: actions/setup-python@v5
4949
with:
50-
python-version: '3.11'
50+
python-version: '3.13'
5151
cache: 'pip'
5252
cache-dependency-path: 'requirements.txt'
5353
- name: Install srctools

.github/workflows/build-postcompiler.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ jobs:
2424
matrix:
2525
include:
2626
# We want 3.8 because it works on Windows 7.
27-
- artifact-name: 'win32'
28-
python-version: '3.8.10'
29-
arch: 'x86'
30-
os: 'windows-latest'
27+
# - artifact-name: 'win32'
28+
# python-version: '3.8.10'
29+
# arch: 'x86'
30+
# os: 'windows-latest'
3131
- artifact-name: 'win64'
32-
python-version: '3.11'
32+
python-version: '3.13'
3333
arch: 'x64'
3434
os: 'windows-latest'
3535
- artifact-name: 'linux64'
36-
python-version: '3.11'
36+
python-version: '3.13'
3737
arch: 'x64'
3838
os: 'ubuntu-latest'
3939
runs-on: ${{ matrix.os }}

.gitignore

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ __pycache__/
6464
*.blend1
6565

6666
# These should never be committed.
67-
srctools_paths.vdf
68-
srctools_*_data.dmx
67+
hammeraddons_paths.vdf
68+
hammeraddons_*_data.dmx
6969

7070
# This shouldn't be shipped, but it is useful to have to allow using studiomdl/vtex.
7171
hammer/gameinfo.txt
@@ -74,8 +74,9 @@ hammer/gameinfo.txt
7474
_version.py
7575

7676
# Ignore config in the examples folder.
77-
examples/srctools.vdf
77+
examples/hammeraddons.vdf
7878

7979
# Random extra things
8080
output.fgd
8181
build_for_testing.bat
82+
reports/

CHANGELOG.md

Lines changed: 78 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,83 @@
1-
# Version Dev
1+
# Version (dev)
22

3-
# Enhancements
3+
## New Features
4+
* Added `comp_movie_fitter`, which calculates UVs for `vgui_movie_display`.
5+
* Added `comp_multi_command`, which allows executing console commands in bulk more conveniently.
6+
7+
## Enhancements
8+
* Upgraded config handling:
9+
* Files have been renamed to `hammeraddons.vdf` etc, instead of `srctools`. Old names are still loaded.
10+
* Config files will no longer be rewitten. Instead any changes will produce a new file, which
11+
should be merged with any comments in the old one, then copied over.
12+
* Plugin scripts can now register their own config options, in addition to builtin ones.
13+
* Searchpaths 'nopack' option now allows wildcards for disabling locations in bulk.
14+
* Moved options specifying the behaviour of the current game branch to a dedicated file,
15+
so users only need to pick from presets.
16+
* Update internal Crowbar to version 0.75. This is used decompile models for propcombine.
17+
* Added 1/16 scale skybox mode for vactube system. You'll need to provide your own models or use prop scaling.
18+
* Added vactube curves 7-16. You'll need to provide your own models though.
19+
* `comp_entity_finder`s can now use `@names` for replace outputs, so they work in HL2.
20+
* Allow `<appid>` references to be used everywhere `|srctools_paths|` references can be used.
21+
* `env_tonemap_controller` options can be set by keyvalues, generating a `logic_auto` automatically.
22+
* Added rotation, scale, animation, and bodygroup keyvalues to `hammer_model`. Some of these require a custom Hammer fork (e.g. Hammer++) to be visible.
23+
* Added a 'version number' to all postcompiler entities. This allows backwards-incompatible changes to occur in the future.
24+
* Added `OnPressedPlayer`/`OnPressedCube` outputs to Portal 2 floor button entities, implemented by spawning a filter entity.
25+
26+
## Bugfixes
27+
* Fix vactube objects appearing to rapidly move from end to start positions in some cases.
28+
* Fix an issue where vactube objects might have the wrong model, overlap each other, etc.
29+
* Improved handling of more complex `gameinfo.txt` files like Mapbase's.
30+
* Automatically remove old generated vactube animation models.
31+
* Fix an issue where prop ropes generated with slight angles on straight sections.
32+
* Fix prop ropes not reusing existing compiled versions.
33+
* Fix `trigger_vphysics_motion`/`trigger_wind` having `OnStartTouch` etc outputs, which they don't have.
34+
35+
-----------------------
36+
37+
# Version 2.6.0
38+
39+
The postcompiler now requires Windows 8+.
40+
41+
## New Features
42+
* Added `comp_vactube_sensor`, which allows detecting the presence of vactube objects.
43+
* Added `comp_piston_platform`, which generates the logic for Portal-style piston platforms.
44+
* Added option to `trigger_hurt` to create the logic for 'forgiving laserfields'.
45+
* Added `hammer_model` entity to allow placing reference models in Hammer that don't appear in-game.
46+
47+
## Enhancements
48+
* Update to Mapbase 7.3.
449
* A new "snippets" system allows FGD files to easily repeat descriptions and other small sections.
550
* Add ability to randomise output delay to `comp_relay` and `comp_adv_output`.
6-
* Added `comp_vactube_sensor`, which allows detecting the presence of vactube objects.
751
* Added a value mode option to `comp_kv_setter` and `comp_adv_output` to more clearly control which key is used.
852
* Added textures for 4 rendertargets (camera, water reflection/refraction, full framebuffer). These give a nice preview in Hammer.
953
* 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.
54+
* Added line helpers to `env_microphone`, `scripted_sequence`, `path_track`, and `item_item_crate`.
55+
* Added Source 2013's `SetModelScale` input to all animating entities,
56+
* Added undocumented `ChangeLevelPostFade` input to `point_changelevel`.
57+
* Added Portal: Still Alive features (not currently included in releases, but can be built by including the `PSA` tag),
58+
* Added "singular" and "remove" modes to `comp_kv_setter`.
1059
* Allow `comp_entity_finder` to rotate the target in addition to teleporting.
60+
* `comp_kv_setter`s can now lookup the flags mask based on the name in the FGD.
1161
* Allow configuring various shadow/fast reflection options for vactube object ents.
1262
* Boolean keyvalues (yes/no) can now be set to `!$var`, to invert the value of the variable.
63+
* Consistently seed the RNG for compiler entities, to produce consistency across compiles.
64+
Relevant entities now all have `seed` parameters to further adjust.
1365
* Propcombine will now preserve prop fade distances, by calculating a new distance which encloses the original fade spheres.
14-
* Warn if propcombine or packing was disabled via command line.
66+
* Propcombined models will try and use group names for the filename, if specified.
67+
* Warn in the log if propcombine or packing was disabled via command line, so this is easier to diagnose.
68+
* Add SFX to the Old Aperture cubedropper to simulate the new cube landing.
69+
* Multiple prop ropes with the same shape and configuration will now properly share models.
1570
* Add option to `comp_adv_output` to have it expand target searches itself.
71+
* Refer to the "Gravity Gun" in descriptions instead of physgun/physcannon.
72+
* Floor buttons with `solid=6` will automatically be fixed, since this unintentionally makes them non-solid.
73+
* The postcompiler will now detect and error if a loop of parents/filters is detected. These will just crash the game in a non-obvious manner.
74+
* Included a copy of the "Obsolete" sprite used for missing entities, for games that don't include it by default such as Portal 2.
75+
* Improved `game_text` keyvalue descriptions and added Mapbase's font keyvalue,
76+
* Updated the icon for `skybox_swapper`.
77+
* Removed `info_paint_sprayer` keyvalues which are set in some Valve maps, but don't actually exist.
78+
* Removed Hammer preview from Mapbase's `vgui_text_display` as it did not actually match the in-game appearance.
79+
* Removed `skybox_swapper` in Mapbase as it doesn't actually work.
80+
* Removed `playtest_manager` entity as it doesn't actually exist in-game.
1681

1782
## Bugfixes
1883
* Fix a compile failure if prop ropes were placed in a group with no connections.
@@ -21,6 +86,15 @@
2186
* Fix overlays not functioning with `material_modify_control` parent searching.
2287
* Make RunScriptCode \` handling occur after everything else.
2388
* #274, #277: Force required keyvalue casing for `light_environment`'s `SunSpreadAngle` and `lua_run`'s `Code` keys.
89+
* Fix hammer_notes text size/color parameters being missing for games before CS:GO.
90+
* Fix an issue with `func_instance_io_proxy` and `comp_` entities.
91+
* Fix mismatched numbering between `logic_random_outputs` KVs and inputs.
92+
* Fix `comp_kv_setter`/`comp_adv_output` position keyvalues not getting transformed by instances in Source 2013.
93+
* Fix `comp_adv_output` string keyvalues getting transformed as entity names.
94+
* Fix not being able to scale props with ctrl+scrollwheel in Hammer++.
95+
* Fix turret FOV preview being incorrect - it's 120 degrees, not 90.
96+
* Fix item entities not rotating their hitboxes in Hammer.
97+
* Fix typos in some movie filenames.
2498

2599

26100
--------------------

CREDITS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
- [ZPS: Supplemental Hammer Icons](http://www.necrotalesgames.com/tools/index.php) (some icons)
44
- [ts2do's HL2 FGDs](http://halflife2.filefront.com/file/HalfLife_2_Upgraded_Base_FGDs;48139) (some more icons)
55
- [Ficool2's FGD pack](https://tf2maps.net/downloads/ficool2s-overhauled-fgd-all-entities-documentated-icons.7209/) (several icons)
6+
- Ashanderite (comp\_multi\_command icon)

0 commit comments

Comments
 (0)