Skip to content

Half-Life Featureful SDK 2024-10-31

Compare
Choose a tag to compare
@FreeSlave FreeSlave released this 31 Oct 11:43
· 159 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!

This release also includes the custom FGD provided by the community with assets like entity-specific icons and models that might help the level designer.

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

Notice (please read)

When updating to this version you'll need to fix the templates/warpball.json file in your mod. The line "sound2": "debris/beamstart7.wav" should be "sound": "debris/beamstart7.wav" in the "xen" template definition. If you didn't do any changes to the file comparing to the one from the sample mod you may simply copy the corresponding file from the sample mod.

Introducing Object Hint system

The Object Hint system allows to mark usable objects (similar to PS2 version of Half-Life) or important items (e.g. inventory items put on the map with item_pickup). Read the wiki article for more information.

Entity changes

  • Items, ammo and weapon entities now can have a Master to prevent them from being picked up by the player.
  • Dead ally monsters are no longer considered as valid targets for player's Use command.

Other changes

  • The schemas for JSON config files are now more strict and don't allow for unknown properties. This is done to exclude the mistakes/typos related to the property names spelling. This helped to find a mistake in the previously distributed version of templates/warpball.json file.

Sample mod changes

  • Fixed templates/warpball.json file.
  • Removed hud_color.enabled_by_default entry from features/featureful_client.cfg. It wasn't a real option and it did nothing.
  • The file templates/followers.json has been deleted. It was a mistake and the expected filepath for this config is features/followers.json (already exists in the mod).

Notable codebase and repo changes

  • Moved CBaseButton and CMultisource class declarations from dlls/cbase.h to dlls/buttons.cpp.
  • Ninja generator is used instead of Unix Makefiles in the github actions for Linux to improve the build times.