Update Preview Changelog
This page contains upcoming changes to the game in the next update. The update date is available on the Steam News section for Garry's Mod.
The update is already accessible on the dev
beta branch, and possibly on the prerelease
beta branch.
Game Changes
Additions
- Added NPC support for MP5 from Half-Life: Source
- Added
sv_pause_sp
- allows singleplayer game to not be paused automatically when pressing ESC/opening console - Added option to hide outdated servers to the server browser (Community Contribution)
Fixes
- Make default Sandbox fonts extended for better rendering of non Latin characters (Community Contribution)
- Improve NPC animation support for pistols and rifles
- Combine NPCs no longer T-pose with pistols, instead use rifle animations
- Improved crouch support for NPCs using pistols and rifles - NPCs wont crouch to shoot for 0.3 seconds and then stand back up
- RPG/Crossbow animation support improvements for citizens
- Support for Combine Soldiers firing the RPG Launcher
- Improve metropolice weapon support for Shotguns, AR2, RPGs
- Fixed Eli, Magnusson, Kleiner, Mossman and Breen shooting from their feet
- Fixed NPCs being able to shoot some guns forever, without reloading, such as the AR2
- Main menu: Make check box labels clickable (Community Contribution)
- Fixed regression with
FindUseEntity
behavior making players unable to use some entities - Fixed addon dependencies not showing on install due to regressive Pull Request the previous update
- Fixed kill credit for strider kills with the Magnusson device
- Fixed Gunship and Sniper not appearing in the kill feed when killed by the player
- Fixed certain gibs (from Manhacks, Scanners, Attack Helicopter) never fading out
- Fixed gibs that should be ragdolls not being ragdolls in multiplayer (cardboard boxes)
- Fixed Strider still shooting the player with ignore players or disable AI enabled
Changes
- Enable Jalopy idle animation (Engine "jiggle" animation) without
hl2_episodic
console variable having to be set to 1 (This applies to all vehicles, even modded ones, if they have an animation bound to ACT_IDLE_STIMULATED) - Unhide Jalopy seat and Flechette Gun when not mounting HL2, since we now ship content needed for those by default
- Unhide CS:S thruster models by default (Community Contribution)
- Kleiner, Mossman, Eli, Breen and Magnusson can now spawn with guns, Vortigaunts and Half-Life: Source G-Man can no longer spawn with guns
- Enable "Spawn with Weapon" UI for Eli, Mossman, Breen, Magnusson, Kleiner (when right clicking their NPC spawn icons)
- Try to make NPCs shoot slower with the .357
- Added icons to NPC weapon selection in spawnmenu NPC tab and on NPC spawn icon right click
- Also group weapons in NPC spawnicon right click by category like it is in other places
- Digitally sign
.exe
files (in addition to.dll
files which was done a while ago) - Improved invalid model detection - fixes crashes when loading models from a specific addon
- Updated Day of Defeat: Source player model texture fallbacks to be full resolution
Deletions
- Delete unused DLL files - DataModel.dll, DMSerializers.DLL, VTex.DLL
- Removed fallback textures for CSS player models, since we now ship those textures in full resolution
TTT Changes
- Updated Turkish localization (Community Contribution)
- Set Attacker and Inflictor to usages of SWEP:FireBullets (Community Contribution)
- Raise passive equipment item limit from 16 to 32 (Community Contribution)
- Remove "Missing CS:S" chat warning (Community Contribution)
Technical Changes
Additions
status
console command now also prints server & map uptime- Backported
Lightmapped_4WayBlend
shader from CS:GO with full tools support
Fixes
- Fixed "TraceAttackToTriggers" system for bullets causing the shot entity to have a separate damage event for each pellet of a shotgun shot
- Fixed
func_lookdoor
in multiplayer only reacting to the first player on the server (now reacts to the closest player) - Multiple improvements to error handling of particle sheet loading
weapon_fists
sets Weapon in DamageInfo (Community Contribution)- Prevent crashes due to
net_graph
trying to draw too much at a time - Fix
Error()
in C not exiting the game with a nice message when multicore rendering is enabled - Fixed
sv_lagcompensationforcerestore
not really doing what it says in its description - Fixed soundscapes not working with duplicate sounds
- Fixed
Entity:FireBullets
causing"CLuaObject:GetType with invalid lua state"
warnings after a changelevel when using FireBullet callbacks - Restore rope texture scaling to Half-Life 2 values when they are spawned by the map
- Prevent potential Lua errors with
weapon_base
when owner dies during firing bullets - Fixed some IMaterial functions complaining in console about "$basetexture not being a texture". (Non multicore rendering only)
- Fixed server crash when mounting ladders at edict limit
- Prevent crash to do with CSpatialPartition invalid handles
- Fixed edict exhaustion prevention affecting nextbot players, and crashing the server
- Fixed a crash when using
gm_load
on dedicated server - Fixed a crash with clientside ropes on props
- Fixed server crashes to do with Gonarch NPC
- Fixed many server crashes when trying to spawn gibs at edict limit
- Make prop water level changes actually work, and apply on clientside too
MsgC
no longer outputs empty strings when first argument is a color, preventing console message deduplication- Fixed fall damage constants being inconsistent between client/server
- Prevent
"bone write access"
warnings with ClientsideRagdoll - Fixed
CLC_Move::ToString
numbers being flipped - Fixed
CBaseFileSystem::ReadLine
not working for workshop files at all - Fixed VPK file.Find issues with folder searching
- Fixed BSP file.Find not really working well
- Fixed Lua errors with DProperty_VectorColor when deleting the associated editable entity
- Prevent misleading
"X used to create wrong class type"
warning that happened at edict limit when spawning gibs - Try to prevent Half-Life: Source gibs from falling out of the world
- Fixed an issue with GM:HUDShouldDraw that allowed blocking access to main menu
- Fixed some weird v7.4 VTF cubemap textures not loading due to missing sphere map
- Fixed clientside prediction breaking hull traces against local player in multiplayer
Changes
- Prevent silly values in
fog_controller
(malicious map "protection"), as well as prevent map reload loop viaplayer_loadsaved
entity - Improvements to multiplayer player getters
FindEntityProcedural
!pvsplayer
multiplayer support improvementUTIL_GetLocalPlayer
micro optimizationsUTIL_FindClientInPVS
now tries to get the closest client
- Changed "exe version" to "network version" in output of "
version
" console command to avoid confusion - Removed newline from
"Disconnect by server."
kick message, so server console log is less messy. No other kick reason adds a new line at the end. - Micro optimization for
GM:HUDDrawTargetID
(Community Contribution) - Enable Episode 2 behavior for
npc_combine_s
(Some sort of "march" mode) - Allow .PCF as valid network transfer extension (FastDL)
- SRCDS workshop addon cache also caches titles - Also display a warning when that cache will be used
- Make "No account token specified" message in SRCDS console a warning
- Unhide
sv_soundscape_printdebuginfo
- Reset render library's internal "last material" vartiable on map shutdown
- Fallback "VertexBeckman" shader to "VertexLitGeneric" (PVK2 game)
- Improve free edict detection during entity creation, so allocated edict count cannot pass the internal buffer amount and prevent creation of entities until map restart
- Clean-up doubleclicking code in the main menu (Community Contribution)
- Internal rework of main menu's bottom bar (Community Contribution)
- Make zombies/metrocops propagate their "use lag compensation" state to spawned child NPCs (headcrabs and manhacks)
- Dynamically calculate max autocomplete items for the console based on available space
- Added SteamID64 to
"Dropped %s player from server"
console message - Enabled CEF credits button in the Options
- Limit static prop counts to safe values to prevent crashes
- Remove extra newlines from "##### CTexture couldn't find" warning on Linux
- Minor VPK support changes from CS:GO - potential memory usage improvement
- Add description to
g_ragdoll_maxcount
convar - Give
prop_active_gib*
convars descriptions and more sane values - 100 active gibs should be plenty (was 999999) - Add a better crash message when getting vertex size 0 to help catch source of the crash
- Alias
dz_door
(CS:GO danger zone map doors) toprop_door_rotating
- Prevent
item_item_crate
from spawning certain entities that could cause game crashes - Throw an engine error when trying to request invalid shader parameter, instead of cryptic crashing
- Changed
whereis
to print path of missing files (useful format_texture_list 1
) - Update some warnings with more info to help developers fixing the issue
"Rejecting func_breakablesurf"
now has position printout, and"Failed to load VTF file! %i + %i > %i"
explains what the numbers mean
Deletions
- Removed pointless
"PREP OK"
console message during map loading - Removed "
HudBloodSplat
" effect. (It did nothing at all)
Developer tool changes
Hammer
- Update FGD - Add descriptions to light entity keyvalue properties
- Mount CSS/Episodic VPKs in tools (Hammer & compilers)
- Implemented color preview for models
- Added color keyvalue to
prop_door_rotating
- Added ability to paint 4-way blend materials. (Supported materials only!)
- Fixed some entities such as
info_ladder_dismount
not using colors defined in the FGD files - Disallowed creating "Auto" visgroup manually
- Implemented particle picker for Hammer
- Fixed visual and undo bugs with
CMapSweptPlayerHull
(func_useableladder
)
Map Compile Tools
- Added file metadata to map and model compiler exes (version, description, product name, etc.), and given them an icon
- VRAD: Added
-SunSamplesAreaLight
option (Community Contribution) - Enable VRAD compile stats without
-verbose
flag - Make
tools/toolsinvisibleladder
not create visleaves during map compilation
Other
- Added new .QC commands to studiomdl.exe -
$maxverts, $phyname, $internalname, $qcassert, $lcaseallsequences, $defaultfadein, $defaultfadeout, $appendsource, $redefineattachment, $skinnedLODs
- Update StudioMDL usage info when given no parameters - added previously unmentioned command line options, dump supported .qc command list.
- HLMV.exe improvements
- Fixed crashes when doing stuff without a model selected
- When a material is missing, include the missing material name in "VMTs loaded" section
- Fixed extremely slow "Take screenshot" performance
- Images are now saved as .bmp instead of .tga
- Change Shader display to a read only text entry, so it can be copied
- Display selected material in a text box, so it can be copied
Lua API Changes
Additions
- Entity:FindGestureLayer
- Entity:FindGestureSequenceLayer
- Entity:RemoveLayer
- Entity:SetLayerAutokill
- Added GM:OnNPCDropItem
- Added NPC:IsCrouching
- Added NPC:SetForceCrouch
- Added 2 new optional args to mesh.TexCoord
- Added NPC:CapabilitiesHas
- Added NPC:ConditionID
- Added NPC:IsUnforgettable
- Added NPC:MoveGroundStep
- Added effects.TracerSound
- Added sequence events to util.GetModelInfo
Fixes
- Fixed clientside sounds not firing WEAPON:FireAnimationEvent
Changes
- Blocked
editdemo
console command from Lua just in case - Made ClientsideModel able to be hit by clientside only traces after initializing physics on it post creation
- When using physics. Collision bounds must be set manually if model changes.
- Try to end mesh.Begin when a mesh wasn't ended. (i.e. after a Lua error) It will still error afterwards like it did before. Prevents game hang, hopefully without side effects
- Change ents.CreateClientRope
slack
parameter to work better - Make ents.CreateClientRope ropes despawn if any of its entities are removed
- Allow giving ents.CreateClientRope local vectors instead of attachment IDs
- Made Entity:PhysicsInitBox/Sphere set solidity before setting the physics object
- This improves behavior for those functions with ClientsideModel and is consistent with PhysicsInit()
Deletions
- Nothing so far