Revision Difference
Update_Preview_Changelog#568544
<cat>Play</cat>
<title>Update Preview Changelog</title>
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](Dev_Branch), and possibly on the `prerelease` beta branch.
# Game Changes
## Additions
* Added 3 new props from Half-Life 2 sources related to the cargo containers
* Added 9 new combine related props variations from licensee repo
## Fixes
* Fixed double notifications when hitting Sandbox vehicle limit
* Fixed demo-to-video feature on 64bit Windows builds
* Fixed Hacked Rollermines ignoring Combine Hunters
* Added fallback CS:S hostage pain sounds
* Fixed normals on a few more built-in models
* Fixed model tangents on cargo container props to make bump-mapping to work correctly
* Prevent gmod_tool related Lua error when having addon tools in non Sandbox gamemodes
* Fixed Zombies creating double ragdolls with keep corpses on
* Restored functionality of `sk_auto_reload_time` - Requires `gmod_suit` set to 1. Value of 0 or below disables the feature.
* Handle right click menus making Lua errors in Sandbox when "originator" panel (such as spawnicons) is removed
* Fixed subscribed dupes/saves/demos being treated as addons when they only have a single workshop tag
* Adjusted combine_booth_tall01b.vmt to be less extremely glossy
* Fixed missing material on that one CS:S lamp prop and EP1 stalker pod prop
* Fixed some missing textures on Half-Life 2: Episode 2 props
* Fixed Last Played map not saving correctly if the map filename has the semicolon symbol
* Try to account for `info_ladder_dismount` entities being placed inside ground during Line of Sight checks when trying to dismount from ladders
* Fixed bloodied male rebels texture being blurrier than intended
* Added icons for the 5 new Team Fortress 2 maps
* Fixed "IsPlayerAlly" detection in multiplayer - Fixes Alyx not picking up shotgun in multiplayer in a scripted scene on ep1_c17_02a and many other behaviors
* Fixed dropship containers taking double damage⤶
## Changes
* Removed half-working spawnmenu-only check for citizen RPG usage, just enable all citizens with RPGs to attack gunships, even in Half-Life 2 campaign
* Updated a whole bunch of built-in spawnicons
* Update default spawnlists to include new props and group similar props together in Counter-Strike, Team Fortress 2 and L4D1 spawnlists
* Forced 64bit builds to be the default on Windows (`-force32bit` can be used on `gmod.exe` to force 32bit builds)
* Disable panel drag'n'drop with mouse 3/4/5 to prevent accidental drag'n'drops
* Enabled ALT+F4 closing the game (with confirmation prompt)
* Garry's Mod Linux client now runs using Steam Runtime 4. This means you may need a newer Operating System version to run it.
* Reworked Paint tool UI to have image previews instead of a textual list
* `"load"` console command no longer exits to main menu if the save game specified does not exist
* Included higher quality Eli Vance face texture from Half-Life 2 sources
* Workshop items from blocked players (blocked on Steam by the local player) will now appear visually different in-game, to match Steam Workshop website
* Added "32-bit" label to 32 bit game client to help identify it and avoid ambiguity
## Deletions
* None so far.
* Removed `bin/vidcfg.bin` and `bin/basehaptics.txt` (useless files)
* Removed some client related files from dedicated server distributions⤶
## TTT Changes
* None so far.
# Technical Changes
## Additions
* Added ability to load Workshop IDs from a file on dedicated servers instead of a Steam Workshop collection
* Added `p2p_force_reliable` convar to optionally force all network messages to go through the reliable channel
* Added `UpdateScreenEffectTexture` material proxy, for use on models that show what is currently on screen
* Added `OnChangedFromMin`/`OnChangedFromMax` outputs and `SetMaxValueNoFire`/`SetMinValueNoFire` inputs to math_counter entity
* Added `"-condebug_filename"` command line parameter - Allows changing file name of `console.log`
## Fixes
* Fixed a crash with SourceTV/HLTV
* Fixed various potential crash issues when creating or searching for entities in-engine
* Fixed bone cache always caching root bone but sometimes not calculating it, leading to corrupted values
* Attempt a different fix for CBaseAnimatiing overlay layers resetting on server (re)join
* Force Lua panels to think & enable clipping when main menu is open, to maintain same behavior as when the main menu is not open
* Prevent Lua errors when using `prop_effect` in base gamemode
* Added more decompression self checks
* Material reading crash fixes
* Fixed potential `npc_alyx` related crashes to do with NPC sound hints
* Fixed a crash with constraint notification system on that one CS:S map
* Make dedicated server workshop cleanup do it in the correct folder (`cache/srcds/` instead of `cache/workshop/`)
* Fixed ropes being invisible when multicore rendering is enabled but multicore rope rendering is disabled
* Fixed missing data in NPC weapon list (from addons) bricking the spawnmenu
* Applied fixes for getmetatable(), math.ceil and math.floor from LuaJIT repository
* Fixed sounds sometimes being cut off when played through an env_microphone entity
* Fixed a couple memory leaks with multicore rendering
* Fixed ZFunc not being set when overriding depth testing. This fixes issues with 3D2D rendering on certain maps
* Removed unnecessary usage of a Think hook in Depth of Field post processing effect (Community Contribution)
* Fixed a crash with map logic inputs firing from removed triggers
* Fixed 0 byte model files crashing the game
* Fixed memory leak with auto refresh on Windows when using symbolic links
* Improved error handling of the Auto Refresh, with more verbose console messages
* Fixed wrong lookup function used in Hunter NPC code, causing stagger animation to work improperly
* Fixed Folder addons being searched in mountable games and platform folder on Linux
* Fixed console command auto complete for `lua_refresh_file`
## Changes
* Added some bone cache bounds checking
* Added feedback message to `host_writeconfig_lua` concommand when ran
* Made "failed to dlopen" console print skips case insensitive on Linux/MacOS
* Use more dynamic fallback for Infected shader - instead of shipping edited materials with shader swapped out, we do it in code
* Make `r_DrawBeams 2` affect sprite trails (to draw in wireframe)
* Prediction errors on arrays include array index for integers and floats
* Added more user-friendly crash messages when encountering corrupted map files
* Improved console command input system on Linux Dedicated Servers
* Added class name to `CUtlRBTree overflow` crash message to help pinpoint the source
* Don't force validate game in launch failure if `+developer` is in the command line
## Deletions
* Stop HLTV clients running hidden "spectate" console command which was removed
* Remove CExampleEffect screen space effect from builds
* Removed `.ain` from network transfer extension whitelist, since it's a useless for the client format that is no longer automatically sent anyway
# Developer tool changes
## Hammer
* None so far.
## Map Compile Tools
* Removed some map compile tool parameters
* `-novconfig` - was non functional basically
* `-vproject` - same as `-game`, irrelevant for GMod
* `-x360`, `-nox360` - never existed
* `-xbox` - Same as `-nodrawtriggers` + one other pointless option
* Moved `-tmpout` from VVIS (doesn't exist) to VBSP (exists)
* VBSP's `-virtualdispphysics` - never worked/doesn't exist
* Document some undocumented VBSP params (Already documented on VDC, so nothing new)
* Added `-noTJuncsDetail` to VBSP from Team Fortress 2
* Applied T-Junction limit softcap (instead of crashing) (Community Contribution)
* Bumped `MAX_MAP_TEXINFO` to the new TF2 limit (16k>32k)
* Other map compile tool related changes (Community Contribution)
* Removed redundant VRAD code + fix VRAD potentially adding new planes to the map
* Increased limit of detail sprites added by VBSP to its new TF2 limit (2mil=>2bil)
## Other
* Removed some pointless/broken options from StudioMDL, those being `-x360`, `-nox360`, `-nop4` and `-ihvtest`
* Removed some pointless/broken options from StudioMDL, those being `-x360`, `-nox360`, `-nop4`, `-sky`, `-coring` and `-ihvtest`
# Lua API Changes
## Additions
* Make <page>Entity:GetNetworkAngles</page>/<page>Entity:SetNetworkAngles</page> exist serverside for consistency with <page>Entity:SetNetworkOrigin</page>
* Added <page>surface.DrawTexturedRectRawUV</page>
* Added a new optional argument to <page>Entity:SetPos</page> - run trigger touch events
* Added <page>Player:RunConsoleCommand</page> - meant as a safer alternative to Player:ConCommand that prevents command injection
* Added 6th opt argument to <page>util.BlastDamage</page> - damageType override
## Fixes
* Fixed usage SWEP:CustomAmmoDisplay causing UI overlaps when hiding/unhiding the secondary ammo display
* Re-enable setting filter entities via <page>Entity:SetSaveValue</page>, as well as `m_hStoredPathTarget`, `m_hGoalEnt`, `m_hPhysicsEnt`, `m_hKiller`, `m_hZoomOwner`, `m_hHackTarget`
* Fixed <page>engine.LightStyle</page> only updating static prop lighting once (Community Contribution)
* Fixed <page>engine.CloseServer</page> falsely claiming the server is shutting down when ran without any of the pre-requisite command line switches
* Fixed IN_MOVERIGHT/LEFT not activating for Player:KeyDown when moving using a controller
* Fixed clientside Player:KeyDown in singleplayer not detecting movement IN_ enums when using a controller to move
* Fixed <page>Entity:SetNWVarProxy</page> callback's old value being the new value
* Fixed a crash with <page>render.UpdateScreenEffectTexture</page>
* Fixed "is3DSkybox" variable not resetting when returning from some render hooks
* Fixed wrongful error with <page>IMesh:DrawSkinned</page> with 52 bones
* Fixed a crash with <page>Vehicle:SetWheelFriction</page>
* Improved error handling of <page>Global.error</page> calls with non strings
* Fixed <page>file.AsyncRead</page> not calling the callback on early failure⤶
## Changes
* Add more entities to Lua override-able list - filter_activator_context, game_player_equip, trigger_push, ambient_generic, item_battery, item_healthkit, item_suit, item_longjump, func_pushable, func_healthcharger, func_recharge, Half-Life: Source ammo entities, weaponbox, speaker, Satchel entities, func_tankmortar, trigger_portal_cleanser
* Make surface.DrawPoly throw an error when giving it less than 3 verts
* Updated file.Read blocklist so it doesn't affect file and folder names in DATA path
* Improved DImage's shader replacement system to support SubRect shaders
* Made <page>ENTITY:StoreOutput</page> treat `times=0` same as `times=-1`, making it consistent with engine entities (Community Contribution)
* <page>mesh.BoneData</page> can now be called with bone index 2 (Weight value is ignored in this case)
* <page>Global.Mesh</page> global now allows 3 bone weights
* <page>IMesh:BuildFromTriangles</page> will now read up to 3 weights, depending on the bone weight count given to <page>Global.Mesh</page>
* Strings can now be used as trace classname filters
* Remove / from <page>file.Find</page> results
## Deletions
* Blocked `envmap` and `lightprobe` console commands from Lua
* Removed widgets.RenderMe and properties.GetHovered serverside
⤶
# network_test beta exclusive changes
# network_test beta exclusive changes
The `network_test` beta includes changes that are not network compatible with other versions of the game, i.e. you will not be able to join existing servers on that beta. They are put on a separate beta to be able to be tested by the community without inconveniencing players of other beta versions.
## Additions
* None so far.
## Fixes
* None so far.
## Changes
* None so far.
## Deletions
* None so far.
Garry's Mod
Rust
Steamworks
Wiki Help