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)