Garry's Mod Logo
add_circle

Features

  • Implemented material conditional tests for GPU level from L4D+ games, assuming GPU level 3, reduces console spam and should improve how certain materials from those games look
  • Added the func_instance_io_proxy entity (No hammer support, just the entity for existing maps)
  • Added support for "boolean" type in .fgd files for GMod's Hammer
  • Added mat_dumpmaterials for debugging purposes
  • Added "Where Is" button to mat_texture_list to help debug addons overwriting materials/textures
  • trigger_push: Added "SetPushDirection" input
  • trigger_push: Added "Only falling players" key value
  • trigger_push: Spawnflag 4096 now acts like it does in CSGO - properly takes into account mass and multiple physics objects
  • Added ProcessID to game's title if -multirun is set (Windows only)
  • Added support for \ and \n to .properties
  • nav_quicksave 2 will now skip mesh visibility computation
arrow_circle_up

Improvements

  • Hammer: Display Raytraced preview in the 3d view when it finishes rendering
  • Do not autofocus a panel with SetTabPosition( 1 ), preventing ability to unfocus all text fields
  • Translate SDK_ shaders to their non SDK_ variants
  • You can no longer shoot when clicking on empty space around a modal panel
  • Increased MAXSTUDIOANIMBLOCKS to 512
  • Reset viewmodel skin, bodygroups and pose parameters when the active weapon changes
  • Dedicated Server Workshop: More descriptive error message when Steam failed to download an addon
  • Clientside gravity gun object detachment when a serverside weapon switch happens also destroys the clientside physics object the Gravity Gun creates just like dropping/punting the object does
  • Moved "Edit Instance" button to not cover the input/output icons in Hammer (All 3 also behave better when resizing the window)
  • Studio models now initialize their contents when creating a physics object
  • Cleaned up duplicate collision group rules
  • Changed error string for k_EResultBanned to not scare players. Used to say "VAC Banned", which is inaccurate
  • Added position to buildcubemaps console messages for debugging
  • Added additional info to "MaterialSystem: Out of memory in render data!" warning
  • Updated bass.dll (mp3free) to 2.4.15
  • Do not try to precache Half-Life 1 models/materials and Half-Life 2: Lost Coast harpoon on map load, for cases when those games are not even mounted
  • Serverside gibs now also inherit RenderMode and RenderFX
  • Changed "Model Warning: [%s] might be invalid! " warning to a more descriptive "Warning! '%s' animation requested bone %i, but model only has %i!"
  • More anti lag safeguards for ArmDupe net message
  • env_sprite_clientside can be animated now
  • Updated language files
  • Added extra info to "Failed to lock vertex buffer in CMeshDX8::LockVertexBuffer" error
  • Sandbox entities no longer draw their world tip/outline when the entity is set to not draw (Community Contribution)
  • Improved error handling of dedicated server workshop support
  • Hammer: Added HammerID to the "solid with X faces" and "group of X objects" descriptions for easier distinguishing/debugging
  • Hammer: Disallowed object groups (CMapGroup) to be hidden by the visgroup system - the objects themselves are hidden not the CMapGroup. Fixes "orphaned objects" warning
  • Hammer: Adjusted visgroup validation to allow solids be a child of an object group regardless of format version. Prevents those solids on old .vmfs from losing their visgroup
  • Hammer: Increased amount of recent files to 10, from 4
  • Updated Steamworks SDK to v1.50
  • Added FCVAR_USERINFO flag to gmod_language cvar
  • Decoupled sound.PlayURL/File's threads from server's tickrate, reducing the delay between function call and start of playback
  • Changed translation of base_ai class from "AI" to "Base SNPC"
  • Adjusted the message "C_PhysPropClientside::Initialize: PhysModelParseSolid failed for entity X" to include the model name for debugging
  • Added error messages when failing to allocate memory for model anim blocks
handyman

Fixed

  • Fixed not resetting LightmappedGeneric's shader constant 0 ($basetexturetransform) between renders, resulting in it affecting materials which do not have $basetexturetransform set (Also affects Hammer)
  • Right/Middle mouse clicking in Hammer 3D view works better now, by disabling mouse look only when it was started by middle/right clicking a 3D view
  • Shutdown CPlayerPickupController (player_pickup entity) if its associated player somehow becomes NULL to avoid crashing
  • Fixed "whereis" console command not working properly with floating .gma files
  • Fixed modal panels preventing player from interacting with the gui.OpenURL confirmation dialog
  • Prevent studiomdl.exe from writing to out of bounds memory (MAXSTUDIOANIMBLOCKS)
  • Fixed not having an active weapon causing ItemHolsterFrame to not be called on any weapon, which caused issues with the Gravity Gun
  • Fixed FOV desync between server/client for when r_jeepFOV is above player's desired FOV
  • Prevent potential crashes in CShaderAPIDx8::CopyRenderTargetToTextureEx
  • Fixed serverside console spam from the Paint tool
  • Prevent crashing if the BoneToWorld matrix is null while trying to render a model
  • Fixed a memory "leak" when building cubemaps, which would have resulted in crashing during the process
  • Fixed Hammer's Transform dialog (CTRL+M) improperly reading Y and Z coordinates
  • gm_spawnvehicle no longer creates Lua errors when used in dedicated server console
  • Fixed a crash when clearing the console while it is being excessively spammed
  • Applied bone setup crash fixes to Hammer too
  • Fixed crashing issue when trying to pick up an entity without a physics object, or when the physics object of currently carried object somehow becomes invalid (+use pickup)
  • Fixed prop_* entities resetting their render mode when they have fading distances set (now resets to transparent-color only if set to normal render mode)
  • Fixed func_tracktrain's outputs in Hammer
  • Fixed Lua errors when settings/users.txt is somehow missing
  • Fixed gmpublish.exe's "Can't edit workshop id X! (are you the author?)" message interpreting the ID as a 32bit integer
  • Fixed forced ladder move not resetting without an active ladder on player death, resulting in players who died while dismounting a ladder to respawn at the ladder
  • Fixed auto refresh not working when include is called from a C function
  • Fixed ability to crash the game when the dying player receives damage while in a death related hook. This results in Player.Alive returning false ( used to return true ) in PlayerDeath and DoPlayerDeath hooks for the dying player
  • Deleting an active player_pickup entity will now properly stop and cleanup the +use pickup stuff instead of leaving the player in an invalid state
  • base_ai entity now functions when spawned directly, rather than being a floating error so it can now serve as a code example
  • Better error messages when gamemode/weapons/scripted_ents tables do not exist or are invalid types. (sweps, sents errors also no longer close the game)
  • Fixed lua\vgui\dcolorbutton.lua not being added to the clientside download list
  • Prevent crashes when dying NPCs create ragdolls and apply infinite force to them
remove_circle

Removed

  • Deleted lua/menu/progressbar.lua (unused file)