October 2018 Update

Crash fixes and minor improvements across the board

17 October 2018

This update brings a bunch of smaller changes while we are working on bigger things.

We have made many small improvements to the Lua API as well as the Half-Life campaign compatibility with Garry's Mod, and fixed a bunch of crashes.

There are multiple improvements to Half-Life NPCs, such as fixing Combine Snipers not shooting at players in some cases, a fix for Barnacles not picking up players from vehicles and a fix for a bunch of effects not working in multiplayer in some cases on NPCs like the Combine Gunship's.

We have also added Half-Life: Source turrets to the game, so they will now appear on Half-Life: Source maps.

We also improved the game's disk space usage, so over time less files will be created from things like spawnicons of error models, and Worskhop Addons no longer store both the compressed and uncompressed versions of each addon downloaded from servers you play on.

There's also support for the $treesway shader parameter, which should enable addon creators to make more immersive maps:

You will find full changelist below.

2018.10.17 October 17 2018
  • Game Changes
  • new

    Added quick search to Material tool

  • new

    You can now ignite ragdolls

  • new

    Restored Half-Life 1 turret entities

  • new

    Added support for $treesway shader paramters, which is affected by env_wind entities on existing maps

  • fixed

    Downloading workshop items when joining servers now deletes the useless .compressed files that waste space

  • fixed

    npc_sniper no longer becomes pacifist after one player kill

  • fixed

    Fixed a crash issue with monster_flyer

  • fixed

    Fixed a crash issue with Half-Life: Source monster_*_dead NPCs

  • fixed

    Fixed model of monster_hevsuit_dead

  • fixed

    Fixed HL2 barney appearing on HL1 map c1a1

  • fixed

    Fixed HL1 and HL2 episodes not displaying their chapter titles and other on-screen text

  • fixed

    Fixed purple blood color on HL1 alien NPCs

  • fixed

    Fixed a crash on srcds when combine soldiers with smg1 die and there isn't a player in first server slot

  • fixed

    Fixed a rare crash with npc_combie_s trying to shoot a gun they don't have

  • fixed

    Fixed a potential AI pathfinding crash

  • fixed

    Reenabled monster_bigmomma hp recovery system

  • fixed

    Fixed npc_barnacle not picking up players from vehicles

  • fixed

    Fixed chatbox filters looking weird

  • fixed

    Fixed default join messages not working on dedicated servers

  • fixed

    Fixed some scenes not playing

  • fixed

    Smooth scrape sounds are no longer repalced by rough scrape sounds for glass and tile textures

  • fixed

    Fixed flashlight sound stopping weapon sounds

  • fixed

    Fixed some effects (mostly on NPCs) not working in multiplayer

  • fixed

    Fixed some HL1 NPCs not talking in multiplayer

  • fixed

    Addon entities ("anim" type SENTS) are now properly credited as inflictor and not the attacker when thrown into a player with a gravity gun

  • updated

    Updated language files (Community Contribution)

  • updated

    Updated TTT to its latest version

  • updated

    Added proper distance and entity validity checks for all default properties to stop them from being exploited by clientside scripts

  • updated

    Spawnmenu Icons no longer save images of missing models to disk

  • updated

    Minor changes to NPC difficulty to match Half-Life games (Community Contribution)

  • Lua API Changes
  • new

    Added CTakeDamageInfo.__tostring

  • new

    Added CNavArea.GetPlace()

  • new

    Added CNavArea.SetPlace()

  • new

    Added PhysObj.GetPositionMatrix()

  • new

    Added Entity.GetWorldTransformMatrix()

  • new

    Added DMG_SNIPER and DMG_MISSILEDEFENSE

  • new

    Added util.GetSurfaceData()

  • new

    Added Half-Life: Source CLASS_ enums

  • new

    Added input.GetKeyCode(), works opposite of input.GetKeyName

  • new

    Added ProjectedTexture:SetQuadraticAttenuation()

  • new

    Added ProjectedTexture:SetLinearAttenuation()

  • new

    Added ProjectedTexture:SetConstantAttenuation()

  • new

    Added ProjectedTexture:GetQuadraticAttenuation()

  • new

    Added ProjectedTexture:GetLinearAttenuation()

  • new

    Added ProjectedTexture:GetConstantAttenuation()

  • new

    Added player.GetByAccountID( id ) ( Community Contribution )

  • new

    Added render.WorldMaterialOverride

  • new

    Added return value to DColumnSheet.AddSheet (Community Contribution)

  • new

    Added player_connect_client gameevent

  • fixed

    Fixed FL_ANIMDUCKING not resetting when entering a vehicle

  • fixed

    Fixed HTTP() cutting off post body at the NULL byte

  • fixed

    Fixed func_breakable_surf crashing when damaged by DMG_BLAST with no inflictor

  • fixed

    Fixed crash issues with CNewParticleEffect.AddControlPoint and CNewParticleEffect.StopEmissionAndDestroyImmediately functions

  • fixed

    Fixed Player and Entity.__newindex crashing the game when assigning non string keys onto those entities

  • fixed

    CTakeDamageInfo.GetDamageType now properly returns an unsigned int

  • fixed

    JSON functions now can handle NULL bytes properly

  • fixed

    IGModAudioChannel.__gc no longer crashes the game in some cases

  • fixed

    Fixed an error with empty nextbox NPCs (Community Contribution)

  • fixed

    SWEP Holdtype is now updated clientside whenever server sends a holdtype update

  • fixed

    PlayerUse no longer blocks using when Lua doesn't return a value or returns a non boolean

  • fixed

    Fixed DMenu's non self deleting submenus not opening in some cases

  • fixed

    Player.Kick no longer fails with reasons too long ( now cuts them off at ~512 )

  • fixed

    util.SpriteTrail no longer crashes the game if you do not give the material ".vmt" extension

  • fixed

    util.SpriteTrail no longer silently fails halfway through when not given a color

  • fixed

    Dragginig/Resizing DFrame as a child element now works properly (Community Contribution)

  • fixed

    Consistent caching between Entity.GetEyeTraceNoCursor and Entity.GetEyeTrace (Community Contribution)

  • fixed

    Fixed a crash issue with Vehicle.GetVehicleViewPosition

  • fixed

    Fixed a few Vehicle functions returning garbage in certain cases ( GetVehicleViewPosition, GetPassengerSeatPoint, GetWheelContactPoint )

  • fixed

    Fixed RebuildSpawnIcon() not taking bodygroups into account

  • updated

    Added voice_overdrive, volume and _restart on client to the blocked console command list

  • updated

    prop_vehicle and prop_vehicle_driveable are now considered Vehicles by Lua

  • updated

    Entity.GetSaveTable now works properly with most array fields, they will show up as 1-based table in Lua

  • updated

    Entity.SetSaveValue can now handle array fields, just like GetSaveTable()

  • updated

    Entity.GetInternalVariable now supports all field types as GetSaveTable/SetSaveValue does

  • updated

    CLuaEmitter.Add will now also initallize startSize

  • updated

    util.GetSurfacePropName now returns "" for out of bounds input

  • updated

    IGModAudioChannel:IsValid now properly reflects the validity of the sound channel instead of testing existence of the Lua objecct

  • updated

    Most IGModAudioChannel functions now also check for channel validity

  • updated

    DoModal no longer works without cursor visible for all panels, not just "Frame"

  • updated

    Vector.WithinAABox now orders vectors on its own

  • updated

    Entity.GetAttachments, Entity.GetBodyGroups and Entity.GetMaterials will now return an empty table where they used to return nil

  • updated

    util.(De)Compress and util.Base64Encode error on no input and return an empty string when given an empty string

  • updated

    Failed-to-send net messages now reset current net message

  • updated

    Calling net.Start() while a net message is already active now displays a message

  • updated

    You can no longer send net messages with no players on the server

  • updated

    Entity.GetSaveTable and Entity.GetInternalVariable no longer iterate over Inputs and Outputs

  • updated

    Entity.SetHitboxSet no longer assigns non existent hitbox sets when using a string as the first argument resulting in a console warning spam

  • updated

    You can no longer remove player_manager entity

  • updated

    Made DLabelURL's color functions work consistently to DLabel's

  • updated

    Vehicle.GetVehicleViewPosition's only argument is now optional

  • updated

    Entity.SetModelScale is now limited to +-400 on server (unchanged on client)

  • Engine/General Changes
  • new

    Keys in mount.cfg are now marked as mounted ( for IsMounted() ), if they are in the list of mountable games

  • new

    Restored Gib Model functionality of func_breakable from HL1

  • new

    mountdepots.txt will now be automatically created if it doesn't exist so dedicated server owners can edit it

  • fixed

    Fixed nav file error 4 (out of date) being displayed when the nav file is in fact up to date

  • updated

    Nav file errors now properly displays the actual error by name, not error ID

  • updated

    Updated surfaceproperites.txt to remove some entries to fit the 128 entry limit

  • updated

    Bumped maxiumum key length of key values in bsp to 64 (from 32)

Mailing List

If you want to follow this project you can sign up to the mailing list.

We'll only update you about this project, we won't spam you about other stuff or sell your email address.

* By subscribing you agree to the Terms Of Service and Privacy Policy