Releases: FreeSlave/halflife-featureful
Half-Life Featureful SDK 2025-01-25
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
Bugfixes
- Fixed delays between monster's consecutive attacks being longer than expected. Thanks @Drayce0 for reporting.
- Fixed
func_pushable
not behaving truthfully to HL 25 anniversary behavior. - Monsters use the classic path finding again in order to actively try to get to the goal (e.g. scripted sequence) even if they can't reach it at the moment. This fixes some issues that rose from the previous path finding changes. Thanks @Alex-98X for reporting.
- Fixed JSON schema for configurable Visuals.
- Fixed JSON parsing errors not being cleared up when server JSON files get reparsed.
- Fixed Desert Eagle shell being ejected at wrong place and direction (original Half-Life: Opposing Force bug). Thanks MariusMaximus for reporting.
Monster changes
- Heavy weapon grunt performs a suppressing fire when enemy hides behind an obstacle. He also can break
func_breakable
if his target uses it as a cover. - Heavy weapon grunt now needs his gun to cool off after shooting for some time. That allows player to have a window of opportunity to run through.
- Fixed panthereye size. Increased the panthereye melee distance.
Entities
- The pickable
item_
andammo_
now can use an own visual defined in the entity template. - Added
trigger_changemaxclip
that allows to change the max clip for the certain player weapon.
Inventory system changes
- Inventory item types in templates/inventory.json now can define an entity template used by default for the
item_pickup
of specified inventory item type. The property ispickup_template
. item_pickup
definition in fgd no longer defines the model or pickup sound by default.- New soundscript
Inventory.Pickup
that allows to set a default sound for picking up theitem_pickup
or to change it via entity template.
Entity templates changes
- New property
collision_box
to define an object collisition box. In general it is not the same assize
.
New configurable visuals
- Added configurable visuals for
monster_flybee
. - Added configurable visuals for
monster_robocop
.
New cvars
- Setting
npc_get_to_enemy_nearest
to 1 makes melee-focused monsters try to get to their enemy closer even if they can't build a path to the enemy. For example, this might help them to target the player standing on the small elevation (e.g. table). - Setting
npc_trace_hull_attack_retry
to 1 makes melee monsters more likely to hit the target when it's on some small elevation.
64-bit support
- Some fixes and improvements for 64-bit build support (for Xash3D-FWGS). Thanks @a1batross
- Fixed reading the node graph files in 64-bit build.
Codebase changes
- Implemented the better weapons system. This allows less boilerplate when adding a new weapon. Now weapons must be linked with
LINK_WEAPON_TO_CLASS
macro, notLINK_ENTITY_TO_CLASS
.
Half-Life Featureful SDK 2025-01-14
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
JSON configs reloading
- In the developer mode (when
developer
cvar is 1 or higher) the .json configuration files are reloaded automatically on the save-restore or level transition. This allows for easier testing that doesn't require the full game restart.
Bugfixes
- Fixed a bug that prevented usage of temporary
func_wall_toggle
hack in node graph generation (used in Blue Shift, e.g. on the mapba_tram2
). Thanks @Alex-98X for reporting. - Monsters can open named doors again (like in vanilla Half-Life). The ability of monsters to open named doors was disabled in previous versions in order to fight the exploit that allowed to open doors that were missing the
Monsters can't
spawnflag by pushing npcs to them on some Half-Life maps. However some maps legitimately rely on this behavior (e.g.ba_security2
in Blue Shift), so we're returning to the vanilla behavior by default. Thanks @Alex-98X for reporting. - Fixed corpses blocking npc path finding when the corpse lies at the top of the stairs and the npc is going up the stairs (original Half-Life bug).
- Added an attempt to fight the engine bug when the brush entities wrongfully get player as their blocker while the player stands on the corpse nearby (example: if player stands on the barney's dead body near the fan on the
c1a2
map in Half-Life, the player will be killed by a fan even though he doesn't touch the fan). Addedcorpse_player_collision_fix
server feature and cvar that controls whether the fix is applied.
New entity parameters
Continue moving if blocker is crushed
parameter for doors - allows to configure the behavior per door instance. Previously it was only available to configure globally viadoors_blocked_recheck
feature.If locked, play locked sound on use
parameter for doors - allows to enable playing the locked sounds for usable doors when the door is locked by a master. In Half-Life usable doors don't play the locked sounds.Track position updates
spawnflag forenv_dlight
- makes the dynamic light update the position when the calculatedPosition
is changing.Position is Locus Entity
spawnflag forenv_dlight
- makes treating thePosition
parameter as Locus Entity instead of Locus Position. The resulting light position is the entity origin. WhenTrack position updates
is ticked using the entity as a reference point may produce better results (smooth movement of the dynamic light), at the expense of not letting to set the arbitrary position.Disallow changelevel and autosave
spawnflag forplayer_loadsaved
. Whenplayed_loadsaved
is active, the presence of this spawnflag ensures that the player won't trigger changelevel or autosave. The usable changelevels become unusable and touchabletrigger_changelevel
entities become solid.
New featureful_server.cfg features
monsters_open_named_doors
- when monsters can open doors with a targetname unlessMonsters can't
is set on the door (true by default).corpse_player_collision_fix
- when player stands on the monster's dead body, the nearby brush entities like func_door, func_rotating and func_train might get "blocked" by the player. This is an engine bug. Set this feature to true to enable the game library side fix.hev_dead_requires_suit
- whether the suit is required to playHEV_DEAD
sentence group (the beeping alarm when player dies). In Half-Life it plays even if player doesn't have a suit.
New soundscripts
- Added Player.Death and Player.DeathUnderwater soundscripts (empty by default). When defined, the Player.Death will play on player's death (along with
HEV_DEAD
sentence). Player.DeathUnderwater will play if player dies underwater.
The demo maps changes
- Added the examples of attachable
env_dlight
to the featureful_demo map. - The blocked_demo map is now bundled with a sample mod. It demonstrates some issues with entities being blocked by others in Half-Life and ways to fix these issues.
Half-Life Featureful SDK 2025-01-07
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
Bugfixes
- Fixed poison time-based damage effect wearing off on reloading or level transition (original Half-Life bug).
- Fixed wrong spray decal being painted after reloading the save if tempdecal.wad file doesn't exist (original Half-Life bug).
- Fixed crowbar applying breakable glass decals to pushable objects of unbreakable glass material (original Half-Life bug).
- Fixed weapons dropped from some NPCs (e.g. human grunts) ending up in the solid geometry on some occasions (original Half-Life bug).
- The
controller
entvar property is now properly handled again. - Fixed
player_weaponstrip
not precaching its sound (if set).
Door changes
- New feature
doors_blocked_fade_corpses
in featureful_server.cfg - when set to true the monster's corpses will fade away if they block the door movement. - New parameter
Collision with corpses
forfunc_door
andfunc_door_rotating
allows to ignore collision with dead monsters. This will ensure that the dead body won't block the door.
Pushable changes
- New parameter
Collision with corpses
forfunc_pushable
allows to ignore collision with dead monsters. This will ensure that the dead body won't block the pushable. - The parameter
Hull Size
has been removed from fgd, as it didn't work anyway (the feature was never implemented properly in original Half-Life).
scripted_sentence changes
- Now the player must be in the range of the talking monster if
scripted_sentence
hasRequire listener
spawnflag (before this rule was applied only to monsters). - New parameter
Apply search radius
to do the radius check when searching for monster by itstargetname
. - New parameter
Speaker Search Origin
to set a different entity to search the speaker around instead of thescripted_sentence
itself. Listener type
now supports!activator
as a parameter.- New parameter
Allow use during speech
to allow monster start or stop following the player when +use is pressed while the monster is speaking its scripted sentence.
Gonarch (Big Momma) changes
- Added
Forget enemies
spawnflag forinfo_bigmomma
- to make Big Momma forget all its enemies once it reaches the node. - Added
Lay Crabs Policy
parameter forinfo_bigmomma
- to control the giving birth behavior depending on the node progression. - New feature
bigmomma_lastnode_fix
in featureful_server.cfg to fix Big Momma being able to utilize the last node two or more times.
New soundscripts
- Added soundscripts HAssassin.Pain and HAssassin.Die for female assassins pain and death sounds. The soundscripts are empty by default, but they allow to add pain and death sounds to the assassins.
Half-Life Featureful SDK 2024-12-31
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
Bugfixes
- Fixed joystick support on HL 25 anniversary version of the engine.
weapon_satchel
is not getting packed into the weaponbox on player's death in multiplayer if the player has thrown all satchels before.- Fixed
sk_plr_hand_grenade
not affecting the hand grenade damage (original Half-Life bug) player_weaponstrip
doesn't turn off the flashlight anymore (unless it strips off the flashlight). This behavior was an oversight. The spawnflagDon't turn off suit light
has been removed.- Fixed crossbow bolts not pushing the func_pushables.
- Crossbow bolts don't stay on brush entities anymore. Instead they disappear like in original Half-Life. Crossbow bolts staying on brush entities led to situations when bolts remained in the air if the brush entity has been moved or rotated.
New entities
player_stash
- allows to stash the player's weapons and inventory, and unstash (give back) them on the subsequent use.
Half-Life Featureful SDK 2024-12-19
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
New animation events
Introduced more animation events:
- 1012 - expects a sound path. Plays the sound on the voice channel with normal attenuation. Opposing Force compatible.
- 1013 - expects a sound path. Plays the sound on the weapon channel with normal attenuation. Opposing Force compatible.
- 1014 - expects a soundscript name. Plays the soundscript according to its parameters.
NPC changes
- Female assassins now check for potential friendly fire before shooting and throwing grenades.
- Made voltigore and voltigore's projectile behave closer to the Opposing Force implementation.
- Removed precaching of some unused NPC sounds in order to reduce the number of precached resources a bit.
- Xen plants now have configurable models.
Weapon changes
- Increased the maximum number of weapons from 32 to 64 (actually 63 as the first one is used as no weapon). The new weapons themselves will be added in future updates.
- Dropping the last weapon is now allowed in multiplayer.
- If previously thrown satchels were crashed by the door and player still have some satchels in the inventory, the satchel view model will be drawn automatically instead of the radio view model.
New soundscripts and visuals
- Added visuals for the voltigore's beam effects and the bolt projectile.
- Added soundcripts for flashlight and NVG:
Player.FlashlightOn
,Player.FlashlightOff
,Player.NVGOn
andPlayer.NVGOff
. Note that soundscripts for NVG supersede thenvg_sound_on
andnvg_sound_off
entries in the features/featureful_server.cfg. The latter features are now deprecated and will be removed in future. - Added
XenLight.Glow
visual for thexen_plantlight
. If the visual is missing color, alpha or renderfx, these parameters for the glow sprite are still taken from thexen_plantlight
itself (compatibility with default behavior).
New properties for entity templates
sound_replacement
- an alternative to sound list files. Now sound replacemnet can be defined for the entity template. The old sound replacement system will probably be deprecated and removed in future in favor of templated approach.precached_sounds
- the array of sound paths to precache for the entity with this template. This is useful if you use a custom model with custom sound events and want to tell the game code which sounds should be precached.precached_soundscripts
- the array of soundscript names to precache for the entity with this template. This is useful if you use a the new 1014 animation event in the model and want to tell the game code which soundscripts should be precached.autoprecache_sounds
- an option to automatically precache sounds defined in the animation events of the entity model. Events 1004, 1008, 1011, 1012 and 1013 are considered for sound autoprecaching. This is an alternative to otherwise manualprecached_sounds
.autoprecache_soundscripts
- an option to automatically precache soundscripts defined in the animation events of the entity model (event 1014). This is an alternative to otherwise manualprecached_soundscripts
.
Bugfixes
- Fixed animation events sometimes playing again after the attack animation ends (observable on gonome and pitdrone attacks). As this is an experimental fix, it's controlled by
anim_attack_reset_fix
cvar for now. - Fixed gonome playing melee sounds on the wrong channel.
- Fixed redifinitions of soundscripts and visuals in entity templates being processed incorrectly if the entity template is named after the entity classname (e.g.
monster_gonome
). - Fixed flybees not finishing their death schedule if they fall into water.
Disabling standard Half-Life weapons
Now it's possible to remove the standard Half-Life weapons from the mod. This is configured via features/featureful_weapons.cfg. Disabling the standard Half-Life weapons can help to reduce the number of precached resources (as player weapons are always getting precached). E.g. if your mod campaign doesn't feature the hornetgun and gluon gun (egon) you can add the following lines:
-egon
-hornetgun
Console command changes
- Now
dump_precached_sounds
anddump_precached_models
can take arguments which are processed as path prefixes for filtering. Examples:dump_precached_sounds items/
will show all precached sounds from the items/ directory.dump_precached_models models/w_
will show all precached models starting withw_
.dump_precached_models sprites/
will show all precached sprites.
impulse 103
now also reports the current sequence name and illumination value of the monster.
Sample mod changes
- The
flyers_demo
map has been updated to include ichthyosaur and leeches. delta.lst
has been updated for the increased max weapons limit.
Some models distributed with the sample mod got few changes:
- massn.mdl - set the head hitgroup for the head hitbox (the original Opposing Force model didn't set the proper hitgroup for the assassin's head).
- strooper.mdl - replaced
shocktrooper/shock_trooper_attack
withshocktrooper/shock_trooper_attack.wav
in thefrontkick
animation event (the event data in the original Opposing Force model was missing the.wav
extension). - voltigore.mdl - removed
voltigore/voltigore_die2
andvoltigore/voltigore_die3
sound events from death sequences (the event data in the original Opposing Force model was missing the.wav
extension). The death sound is played via theVoltigore.Die
soundscript independent of the sequence. - zombie_soldier.mdl - set appropriate hitgroups for the hitboxes (the original Opposing Force model had all hitgroups set to 0, i.e. generic).
Codebase changes
This version introduces pretty big changes to the codebase. So if you maintain a fork of Featureful SDK it's better if you read this.
- Removed
m_iId
data member from theCBasePlayerWeapon
class. Now weapons must define theWeaponId()
override. - The weapon bits now should be accessed via the
m_WeaponBits
instead ofpev->weapons
. The helper functionsHasWeaponBit
,SetWeaponBit
andClearWeaponBit
have been added - they accept the weapon id as a parameter. - Matching the actual C++ data type with field type in the save-data is now enforced at compile time.
- Completely got rid off
BOOL
typedef andTRUE
andFALSE
definitions for non-Windows systems. All instances ofBOOL
in the game library code are replaced with standardbool
.TRUE
andFALSE
are replaced withtrue
andfalse
. TheFIELD_BOOLEAN
now expects the data variable to bebool
. As some virtual functions usedBOOL
either in return type or in the arguments, their interface now has been changed to usebool
. This should be taken into account if you forked the Featureful SDK and override some of the virtual functions:CBaseEntity
functions:IsAlive
,IsAllowedToSpeak
,IsBSPModel
,IsInWorld
,IsNetClient
,IsPlayer
,OnControls
,PlayScriptedSentence
,ReflectGauss
.CBaseToggle
functions:IsAllowedToSpeak
,PlayScriptedSentence
CBaseMonster
functions:CanPlaySentence
,CanPlaySequence
,CheckEnemy
,CheckRangeAttack1
,CheckRangeAttack2
,CheckMeleeAttack1
,CheckMeleeAttack2
,FCanCheckAttacks
,FInViewCone
,FVisible
,HasTarget
,IsMoving
,ShouldFadeOnDeath
,StopFollowing
CBasePlayerWeapon
functions:CanDeploy
,CanHolster
,Deploy
,IsUseable
,PlayEmptySound
,ShouldWeaponIdle
,UseDecrement
CItem
functions:MyTouch
- Following globals changed from
BOOL
/int
tobool
:g_fGameOver
gDisplayTitle
gInitHUD
gTouchDisabled
Half-Life Featureful SDK 2024-12-08
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
Configurable materials system
Now new texture material types can be added and predefined ones can be customized. This includes configuring of the footstep and hit sounds, wallpuff color and some other parameters. The sample mod includes the features/materials_example.json demonstrating the addition of the new material type.
Read wiki page on Materials.
Removed features
- Removed the compatibility with the old
trigger_compare
entity interaface (specifically the support for thetarget
parameter) that has been deprecated 7 months ago.
Player changes
- When exiting
noclip
the sound of emerging from water is not played anymore.
Changes to soundscripts and visuals
- The
decay
parameter now can be configured via visuals for dynamic lights and entity lights. - Added configurable visuals for the torch effect used by the HECU engineer.
- Added configurable visuals for floater's effects.
- Added soundscripts for soda cans. Now you can configure the 'drink' sound played on soda pickup.
- Added soundscripts for
item_airtank
. - Added sounscripts for
env_extinguisher
. - Added the soundcript for the player spray.
- Added soundscript for the spark sound that is played along with spark effect when player hits the computer material.
- Added configurable visuals for Nihilanth and its projectiles.
Bugfixes
- Fixed the game crash when using a custom model for the HECU engineer which doesn't have the 4th attachment. Thanks White Liquid for reporting.
- Fixed gonome's guts projectile being invisible. Thanks gameaddict117o7 for reporting.
Half-Life Featureful SDK 2024-11-26
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
Bugfixes
- Fix playing and stopping some sounds.
New soundscripts
- Added soundscripts for health and suit chargers (both brush-based and model-based).
- Added soundscript for
func_pushable
when it's moving. - Added some soundscripts related to player being underwater and emerging from water.
Codebase changes
- Added symbolic constants for water levels and used them instead of "magic" numbers.
Repository changes
- The libraries for Linux are now built in the latest Scout Steam Runtime container.
Half-Life Featureful SDK 2024-11-21
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
New visuals and soundscripts
- Added visuals and soundscripts for the Displacer Ball projectile. Now the look and the sounds of the Displacer Ball are configurable.
Changes to entities
- Added
No camera punch
spawnflag forenv_beam
andenv_laser
to disable player's camera "punching" when the beam deals damage to the player (trigger_hurt
andtrigger_hurt_remote
already have the spawnflag with the same name). Thanks paperboy for suggestion. - Added
Start Sprite
parameter forenv_laser
. - The footstep sounds of
monster_human_assassin
now have longer delays between them if assassin is walking. In original Half-Life assassins play footstep sounds with same frequency independent of whether they run or walk.
Bugfixes
- Fixed Pitworm's eye blast soundscript not being precached (thanks @Alex-98X for reporting).
- Fixed
trigger_xen_return
not choosing the rightinfo_earth_target
(thanks @Alex-98X for reporting). - Fixed some mistakes in JSON schemas.
Sample mode changes
- Floater and Flybee monsters are now enabled by default. The skill values for them have been added to the skill.cfg shipped with the sample mod.
Repository changes
- Automated tests for some functions and data structures now run along with the autobuild. The number of tests will grow with each release to cover as much code as possible.
Half-Life Featureful SDK 2024-10-31
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
andCMultisource
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.
Half-Life Featureful SDK 2024-10-18
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
Introducing Entity Templates
A new concept called Entity Templates allows to define custom defaults for some entities (currently mostly monsters).
Read the wiki article on entity templates
delta.lst included
delta.lst is now included in the sample mod. Thanks @down23 for pointing out this overlooked mistake.
This version fixes potential problems with attachments (sprites, beams) on maps with large numbers of entities. It's recommended to add this file to your mod folder.
Visuals
Added configurable visuals for pitdrone, shock trooper, shock beam (the shockrifle projectile), spore (sporelauncher projectile) and apache.
Bugfixes
- Fixed crash when using
trigger_teleport
with the random destination, but no destination exists. - Fixed crash when
game_score
is called without an activator (original Half-Life bug). - Fixed missing precache when spawning dead monsters (e.g.
monster_barney_dead
, etc.). - Fixed
env_beam
incorrect beam direction on save-restore when theenv_beam
is set to be its own Start Entity (original Half-Life bug). Thanks @down23 for reporting. - Fixed monsters not spawning gibs if the monster is set to
Don't Bleed
but normally has blood. - Fixed the pitdrone spike scale (was half of its size).
Other changes
impulse 103
now also reports the monster's entity template, the gib model, the bounding box, the the grapple target type and render properties.- Removed precaching of some unused resources.
- The map flyers_demo has been updated to include flying monsters. Note that you need to enable
floater
andflybee
monsters in order to have them on that map. - The female civilian NPC is now made via Entity Template instead of manually set parameters in the entity parameters and sound replacement file.
Codebase and repository changes
- Linux artifacts are now built with Ninja instead of Make (to speed up the autobuild).
- Added build instructions using
podman
. Thanks @L-P