Skip to content

Half-Life Featureful SDK 2024-05-24

Pre-release
Pre-release
Compare
Choose a tag to compare
@FreeSlave FreeSlave released this 24 May 16:47
· 188 commits to featureful since this release

The mod sample is included in the archive, with the test map and assets

The provided FGD has an extended format used by J.A.C.K. and won't work with Valve Hammer Editor!

Note: zhlt entities are not included in the FGD. You must add zhlt.fgd to your game profile configuration in the map editor.

If you already have a mod in development based on Half-Life Featureful read this article to get the idea how to apply the new SDK version for your project.

Changelog

Warpball templates

Warpball templates for monstermakers are now defined in the templates/warpball.json file. The old entity-based approach is still working but now is considered deprecated.

Configuring save titles

The save titles (the ones shown in the Load game menu) are now configurable via external file save_titles.txt (in original Half-Life they're hardcoded in the engine).

Entities

  • Added player_capabilities - allows to disable/enable player's capabilities such as jumping, crouching, attacking and using (+use).
  • Added player_speed - allows to change the maximum player speed.
  • trigger_configure_monster now can dynamically change the monster's blood color.
  • Add Ignored by classify parameter for monsters. E.g. one may set barney to be ignored by Alien prey class (which headcrabs belong to), so headcrabs won't see barney as an enemy while barney will still shoot them.

New configurable features

  • dying_monsters_block_player - whether monsters block player movement while in dying animation. This is standard Half-Life behavior which becomes problematic when the dying animation is too long (e.g. bullsquid's one). This is standard Half-Life behavior which becomes problematic when the dying animation is too long (e.g. bullsquid's one).
  • player_maxhealth and player_maxarmor to set the default maximum values for health and armor used in the mod. Alternative way is to set maxhealth and maxarmor in the map .cfg file. game_player_settings now also is capable of changing the maximum health and armor values.

Bugfixes

  • Fixed monsters sometimes not finding the nearest node when they're on stairs. This is a bug from original Half-Life. Whether the fix is applied depends on the value of findnearestnodefix cvar (set to 1 by default, which means the fix is enabled).

Codebase changes

  • ALLOC_STRING called on the same data won't request the string allocation again. Instead it will reuse the cached value if such string has been already allocated on the map.
  • UnpackRGB is now shared between client and server code. Added PackRGB.