March 2025 Update - News (2025)

Patch Name March 2025 Update

Changelist Title Technical Changes (2025.03.26)

date_range Wednesday, March 26, 2025

add_circle

Features

  • Added some generic logic entities from Portal 2 - logic_register_activator, logic_coop_manager, point_viewcontrol_multiplayer, point_viewproxy

  • Added new inputs/keyvalues to prop_vehicle_choreo_generic from Portal 2

  • * Inputs: SetCanShoot, UseAttachmentEyes, SetMaxPitch, SetMinPitch, SetMaxYaw, SetMinYaw

  • * Key-values: PlayerCanShoot, UseAttachmentEyes

  • Enable DMX versions 3, 4 and 5 loading for particles from newer Source Engine games

  • Ported most particle related features from CS:GO

  • Added 2 new spawnflags to env_player_surface_trigger - Trigger on player(s) leaving ground & Set output activator to the player

  • Added new inputs to game_text - SetText, SetPosX, SetPosY, SetTextColor, SetTextColor2

  • Added new inputs for game_player_equip - TriggerForAllPlayers and TriggerForActivatedPlayer, as well as "Strip All Weapons First" spawnflag

  • Added skybox_swapper entity

  • Added logic_eventlistener and logic_eventlistener_itemequip from Team Fortress 2

  • Added point_worldtext entity (CS:GO version) and added most Team Fortress 2-exclusive features into it

  • Added logic_random_outputs entity

  • Added fog_volume entity

  • Added trigger_tonemap entity

  • Added env_ambient_light entity

  • Added point_entity_finder entity

  • Added particle-based func_precipitation types from CS:GO

  • Added ability to override func_precipitation particle systems by name

  • Added func_precipitation_blocker entity

  • Implemented origin for playlooping/playrandom and ambientOriginOverride for "playSoundscape" in soundscapes

  • Added new options to Run Map dialog in Hammer

  • Restored "JellyFish" shader (Partially Community Contribution)

  • Added hostile keyvalue to npc_citizen - Will be treated as a combine. Useful for NPC reskins to not have combine noises. Or just for fun.

  • Implemented experimental 24-bit color support for Windows Dedicated Server console, and proper color support on Linux SRCDS

  • Implemented HDR override for fog colors for 20th anniversary Half-Life 2 maps (Also available in Hammer for mappers)

  • Added Master spawnflag to env_tonemap_controller

  • Added SetMaxDensityLerpTo input & HDRColorScale key-value to env_fog_controller

  • Implemented AttachToVehicle input for npc_fastzombie

  • Added sv_maxvoicepacketsperframe console variable

  • Enable "flammable" "no" prop interaction, to prevent props from igniting on explosion damage (for modellers at compile time)

  • Added min_use_angle for func_button from CS:GO

  • Added DisappearMinDist & DisappearMaxDist key values to func_lod (DisappearDist being deprecated and hidden, but still working)

  • Added GetSpeed and SnapToStartPos to func_rotating entity

  • Added AffectedByWind keyvalue to func_dustmotes entity

  • Added trigger_playermovement auto walk and no jump spawnflags

  • New localisation phrases in community.properties (Community Contribution)

  • Added ip_steam console variable

  • Added sv_usercmd_custom_random_seed console variable

  • Added sv_showimpacts console variable

  • Added radius support to env_wind

  • color_correction entities now work correctly with fog_volume - Adds Master and Simulate clientside spawnflags

  • Upgraded ColorCorrectionUI to CS:GO's version with ability to load saved presets

  • Added Quick Switches to the console dialog, allowing easy usage of common console commands and variables for debugging purposes

  • Added inputs to env_skypaint in Hammer for mapping

arrow_circle_up

Improvements

  • Do not estimate velocity clientside since we network it for every entity anyway

  • * Use networked velocity for entities that set it serverside

  • * Physics entities such as props, vehicles, SENTS do not set their velocity, since its all handled by the physics engine, so it ends up not actually being networked

  • Moved "SOLID_VPHYSICS static prop with no vphysics" warning to developer 1

  • Made particle preview background slightly lighter (32,32,32)

  • Set the default particle orientation in Particle Editor on creation

  • Added particle material name to "unimplemented sprite renderer" warning (.pcf particles)

  • Force Sandbox tool classnames to lowercase at all times to fix a bug in multiplayer where the client and server classname could have mismatching capitalization

  • Applied potential filesystem optimization suggested by the community

  • Micro optimization for SWEP think

  • Optimize DListView_Line - Remove DListViewLabel's Think function since it does nothing in DListView_Line anyway

  • Minor code quality & performance improvements to Toolgun Help, RenderTarget related Lua code, skypaint matproxy, ToolGun and Post Processing control panels, ents.FindByClassAndParent, removed deprecated calls to ControlPanel:AddControl, Workshop Mount VGUI, Sandbox hints, Removed unused JS dependencies in main menu - angular-ui, jquery-ui, jquery-color, AngularJS from 1.1.2 to 1.8.2, cleaner server list layout code & Better display on small screens (Community Contributions)

  • Micro optimization for Entity.__index (Community Contribution)

  • Micro optimizations for team library (Community Contribution)

  • Potential micro optimizations in localization loading/parsing

  • Store disabled workshop addon IDs as Uint64 instead of IDs turned to strings - should save some memory

  • Clear CShadowDepthView to black instead of white - fixes reflective glass on certain maps having while glow with flashlight turned on

  • Do not throttle loopback (local servers) connections when sending data from server to client

  • Check allocated edict count before allocating more - this should prevent "ED_Alloc: no free edicts" crashes when spam spawning hundreds of entities per second

  • Improved X-axis text inset handling with center alignment (for DButton when an icon is use)

  • Change Hitbox 7 color from white to orange for the debugging console variable and HMLV

  • Search for shaders in map file if none were found in the game folder

  • Added "shaders/*.vcs" to BSP whitelist

  • Updated screenspace_general shader with some CS:GO features

  • * Removes $X360APPCHOOSER (Use $VertexColor)

  • * Adds $VERTEXSHADER

  • * Added most CS:GO parameters except for C4* and C5* parameters

  • Enable sv_parallel_sendsnapshot by default

  • Display a warning when async file read operation tries to read more bytes than there are in the file

  • Display HTTP error when FastDL fails to download a file and if it's not a 404 error

  • Made lua_run entity keyvalues case insensitive

  • Call Entity:SetCreator on all Sandbox spawned entities, not just SENTs (Community Contribution)

  • Filled in some GMod specific console variable descriptions that are defined in C++

  • Added shader name to "failed to create shader" console error message

  • Rework how LZMA decompression works for BSP files to be more reliable and less wasteful

  • Added more useful info to Client=>Server and Server=>Client GMod specific net message ToStrings for debugging purposes (net_showmsg)

  • Unhide sv_maxspeed console variable

  • Do not read mapcycle.txt file from addons or mountable games

  • Added weapon class name & entity index to "Weapon spawning in solid" console warning

  • Exit SRCDS (with a message) if GSLT is invalid or expired (can still not provide one), instead of never connecting to Steam. This behavior is consistent with CS:GO. hide_server 1 can be used to hide your server from the server list.

  • Added description for debug_dump console command and print more info about what it did when ran

  • Rollermine uses two-pass render group when open instead of translucent, this makes it render better with SSAO pass (such as with Bokeh DOF)

  • Allow Map I/O to convert integer/float parameters to strings automatically

  • Unhide sv_hl2mp_weapon_respawn_time/sv_hl2mp_item_respawn_time

  • Also made mp_weaponstay work for map spawned entities, by respawning them

  • Update verbosity of "Out-of-range value" warnings

handyman

Fixed

  • Fixed some minor memory leaks - These are mostly in developer features to do with KeyValues, not normal gameplay

  • Initialize m_rgflCoordinateFrame on creation clientside - This fixes certain matrices being nulled out when they are not supposed to, such as when calculating prop_vehicle_choreo_generic look angles

  • Allow loading PCF version 2 in -tools Particle Editor

  • Fixed many, many potential crashes with the particle system

  • Fixed missing materials with legacy Ash precipitation type

  • Fixed 2 "Parent cvar in server.dll not allowed" warnings on client start up

  • Do not print cc_lang = with developer 1

  • Fixed "Not playing a local game" being printed on game start up

  • Fixed some warnings on map load when Portal 1 or Half-Life Source are not mounted

  • Fixed crashes with func_tank

  • Fixed crash when ents.CreateClientProp is given an empty string

  • Fixed logic_collision_pair and some other obscure entities not calling GM:EntityRemoved

  • Remove NULL entities from Entity.Constraints table when associated constraints are removed

  • * Fixes for tanktrain_ai

  • * Fixed sound playback and updated default sounds to existing files

  • * Added "Chase Target" key value

  • * Added missing "Target Entity" input to the FGD

  • * Fixed movement direction selection & movement speed

  • * !player target will update to the closest player before every move

  • * Change update rate while moving to 0.1s (from 0.5)

  • Updated RPG viewmodel to use correct muzzle flash event and prevent console warning when firing

  • Fixed a server crash exploit to do with malicious packets

  • Fixed bone manipulations (scale, position) being transformed by how much the player moved on level transition

  • Fixed which entity is the inflictor/weapon in CTakeDamageInfo when firing built-in C++ weapons, including when NPCs fire them, as well as trigger_WateryDeath.

  • Fixed small potential memory leak with creating Lua bone followers

  • Fixed a small memory leak in gamemode .txt file parsing

  • Fixed a small memory leak with saving presets (presets library)

  • Fixed "Bad SetLocalOrigin on gmod_hands" warnings (Community Contribution)

  • Prevent .ani files from loading if they would crash the game i.e. if the .ani file is smaller than the model expects it to be

  • Update jQuery version and reduce reliance on it in main menu, as well as lazy load images (Community Contribution)

  • Do not crash with "bad inline model number", show a console warning instead

  • Fixed bone manipulated entities' render bounding box being set to invalid sizes with certain models

  • Fixed "Toggle" input on some triggers improperly toggling the entity

  • Fixed console warning about missing material when opening Options menu

  • Fixed max player speed not being set when trying to slow walk with +walk but slow walk is disabled via Player:SetCanWalk

  • Do not unexpectedly reduce maximum health on dead entities

  • Play act console command animations on the server as well (for hitboxes)

  • Fixed a stack overflow in TextEntry scrolling

  • Fixed a rare crash when net_showmsg console variable is in use

  • "Fixed" an infinite loop in memory allocation by exiting the engine/tool with a nice message

  • Prevent developer only messages about bone access not being allowed with util.DecalEx in multiplayer

  • Fixed MP3s recaching 2 times in a row sometimes for no reason

  • Fixed cache size not being able to exceed 65kb per item

  • Make MP3s skip the ID3 data immediately on cache, not on first playback. This makes loading a bit slower per-file, but makes it so we don't need to cache upwards of 400KB of unused data per MP3 for playback without hanging the game

  • Increased amount of cached data for MP3s to satiate initial burst of data access by BASS.DLL (from 16K to 96k) This was preventing asynchronous load of the entire file

  • Fixed SWEP.ViewModelFlip making view model sway backwards

  • Fixed scrollbar parent resizing not adjusting scrollbar grip position (Lua scrollbar panels)

  • Fixed CRopeKeyframe having huge serverside bounds when not attached to anything, such as being the last entity in a series

  • Fixed trigger_remove OnRemove output not working at all

  • Made cmd console command not kick people (And hide it)

  • Fixed .gma files being left open in some cases if they failed to load/parse

  • Prevent potential crashes to do with traces on models

  • Materials using the SpriteCard shader can now render correctly with render_sprite_trail particle renderer

  • Mitigate invalid vehicle scripts causing server crashes

  • Fixed player_squad NPC squad being overflown when spawning too many npc_alyx or npc_citizen entities

  • Fixed spawnmenu NPC squads being overflown when spawning many NPCs in the same faction at once

  • Fixed infinite loop with removing world decals

  • Fixed input parameter type for prop_ragdoll's StartRagdollBoogie input

  • Fixed out of bounds pose parameters sometimes getting garbage values

  • Fixed a crash in trace code that could happen after a changelevel

remove_circle

Removed

  • Removed scratchpad from game builds

  • Removed bloodspray console command

  • Removed some perforce VGUI panels from builds

  • Removed some useless strings from garrysmod_english.txt

  • Removed mat_surfaceid and vgui_drawtree_panelptr console commands/variables

  • Removed unused resource/chromium/ folder

  • Removed non existent commedit.dll from sdkenginetools.txt

  • Removed cl_threaded_client_leaf_system console variable, which was doing nothing since 2016, except to mislead people

  • Removed sv_autojump as it also does nothing besides misleading people

  • Removed hack for Intel GPUs that disabled Shader Model 3 shaders

  • Removed some clientside weapon stubs for non existent weapons

  • Removed usage of DOFModeHack from Bokeh DOF

  • Remove cl_customsounds as it no longer has an effect on anything

March 2025 Update - News (2025)

References

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Prof. An Powlowski

Last Updated:

Views: 6108

Rating: 4.3 / 5 (64 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Prof. An Powlowski

Birthday: 1992-09-29

Address: Apt. 994 8891 Orval Hill, Brittnyburgh, AZ 41023-0398

Phone: +26417467956738

Job: District Marketing Strategist

Hobby: Embroidery, Bodybuilding, Motor sports, Amateur radio, Wood carving, Whittling, Air sports

Introduction: My name is Prof. An Powlowski, I am a charming, helpful, attractive, good, graceful, thoughtful, vast person who loves writing and wants to share my knowledge and understanding with you.