Garry's Mod Logo
Changes Header

Changes

What’s changed in Garry's Mod in each patch.

add_circle

Features

  • Added basic Steam Rich Presence support
  • Added Half-Life: Source Turrets to the spawnmenu
  • Added more Half-Life: Source entities, including all the weapons
  • Added right click option to tool material and model selectors to be able to copy the model and material paths
  • Added icons to most right click menus in the spawnmenu
  • Sandbox hint notifications now support dynamic keybind display
  • Added recent news feed to the main menu
  • Added Blade Symphony map to its proper category (Community Contribution)
  • Added spawn effect for spawned SWEPs
  • Added Borderless Windowed setting to the Options menu
arrow_circle_up

Improvements

  • Doubled the amount of servers shown per gamemode in the server list
  • Blood decals from shooting NPCs and Players can now be stuck to props too, not just world
  • Main menu backgrounds no longer load while in the loading screen
  • Updated TTT
  • Updated some Team Fortress 2 map icons and added missing ones
  • Last played map will now scroll into view when opening new game menu
  • Improvements to player animations on longer uptime servers, so they won't look weird/buggy
  • Finger Poser can now be used on any entity
  • Changed Half-Life: Source Turret translations to not include the "Ceiling" part
  • Half-Life: Source Turrets & Barnacle now react properly to Disable AI and Ignore Players settings
  • Updated language files, translated context menu bar and most Spawnmenu right click menus
  • "Wireframe" and "Minecraftify" now properly display their sv_cheats requirement
  • "gmod_drawtooleffects" now also hides the toolgun tracer effects
  • "notarget" and "god" console commands can now be used in multiplayer (Still require sv_cheats)
  • Fixed some sounds not playing on Half-Life: Source maps
  • Updated Options menu keybinds to be more descriptive
  • Spawnmenu icon editor no longer displays an empty Bodygroups tab
  • Server list stops refreshing upon joining a server or switching between server list types (Internet, LAN, Favorites, etc)
  • "Stop Refreshing" button is no longer hidden while browsing servers of a gamemode
  • Reduced ranking impact of empty servers, increased ranking impact of full servers
  • Server ranking based on player count now starts earlier, enabling smaller servers to be more noticeable
  • npc_sniper's laser will properly represent the maximum distance the sniper can see for
  • Adjusted Half-Life: Source NPCs difficulty settings to their "Normal" values
  • Half-Life: Source Scientists will talk more with each other to match the original game
handyman

Fixed

  • Fixes toward console warnings without any mounted games
  • Fixed prop_effect not being duplicatable
  • Fixed some addon entities not being targetable by the properties system
  • Houndeyes and Human Grunts no longer use same squad names causing console spam and slowing down servers
  • Fixed Combine APC placing a red laser dot on players
  • Fixed Half-Life: Source NPCs crashing the game server in some cases
  • Changed Half-Life: Source leech to use its Half-Life: Source model
  • Fixed localization breaking when the game has too many search paths (addons)
  • Fixed props in certain case (like on some Half-Life: Source maps) not receiving light from flashlights
  • Fixed not being able to delete presets
  • Fixed Half-Life 2 Pistol accuracy for NPCs to be like in Half-Life 2
  • Fixed func_breakable drop table on Half-Life: Source maps
  • Fixed Half-Life: Source headcrab sounds
  • Fixed Half-Life: Source doors being silent when locked compared to the original game
  • Fixed Half-Life 2 Suit Charger animations with the citadel flag
  • Fixes made so mods and players can adjust Half-Life: Source NPC difficulty settings via their console variables (sk_*)
  • Fixed last flex being hidden unintentionally in the Faceposer Tool
add_circle

Features

  • Added "distance to camera" button for func_areaportalwindow's FadeStartDist/FadeDist keyvalues in Hammer Editor
  • Added GMod specific mapping key values to more entities such as prop_door_rotating, func_brush in Hammer Editor
  • You can now use Middle Mouse Click to pan 2D views in Hammer Editor
  • Added func_detail_blocker support
  • Added support for -allowdynamicpropsasstatic to vbsp.exe
  • studiomdl.exe now can handle infinite bodygroups instead of just 32
  • Lua cache of the client gets reset on disconnect
  • Added fallback textures for "painted" skybox to prevent console warnings and allow cubemaps to be built with the "painted" skybox
  • Added SetMaxLookDistance (float) input to all NPCs (It's also added to the .fgd)
  • Added Half-Life: Source ammo types and their Console Variables
arrow_circle_up

Improvements

  • Unsupported staticproplump versions will now exit the game with a neat-ish message
  • Added support for staticproplump v11 including scale (visually only), makes the CS:GO battle royale map work
  • Translated shaders "lightmapped_4wayblend" to "LightmappedGeneric" and "grass" to "UnlitGeneric"
  • Restored activator filter func_door functionality from Half-Life: Source
  • Removed leftover debug output from Remove property
  • Half-Life: Source Human Grunts no longer spam console about forming squads
  • Automatically switch the default detailsprites material for an Half-Life 2: Episode 2 one if the map appears to have Episode 2 detail sprites
  • Prevented Sandbox spawning console commands from generating errors when entered into Dedicated Server console
  • Added default value for gordon_precriminal criteria so citizens won't greet the player if they're not a criminal
  • Increased limits:
  • * MAX_MAP_ENTITIES - 8192 to 20480
  • * MAX_MAP_AREAS - 256 to 1024
  • * MAX_MAP_BRUSHES - 8192 to 16384
  • * MAX_NODES - 1500 to 4096
  • * Displacements - 2048 to 5500
handyman

Fixed

  • env_wind can no longer freeze the server when improperly configured
  • Fixed prediction errors when noclipping and changing underwater state
  • Client precipitation never tries to bind a NULL material causing console spam
  • Added GameData key to gameinfo.txt, fixing instances in vbsp.exe and reducing unnecessary output
  • Clientside Lua files are no longer rehashed multiple times during loading
  • Applied a fix for custom detail/detailsprites textures with different aspect ratios from the default one from Valve Developer Community
  • Console command "fogui" no longer overrides console variables on game start causing inconsistencies with the fog and farz between different clients
add_circle

Features

  • Added input.WasMouseReleased( key )
  • Added surface.GetAlphaMultiplier()
  • Added surface.GetDrawColor()
  • Added surface.GetTextColor()
  • Added Entity.IsMarkedForDeletion()
  • Added hook GM:PlayerClassChanged
  • Added hook PANEL.OnSizeChanged( newW, newH )
  • Added hook NextBot.FireAnimationEvent clientside hook
  • Added hook NextBot:HandleAnimEvent
  • Added 4th argument to DComboBox.AddChoice - icon (Community Contribution)
arrow_circle_up

Improvements

  • Added names to the "A net message is already started" message to help pinpoint the message source
  • PANEL.OnScreenSizeChanged now has 2 arguments - the old width and height
  • ModelImage.SetSpawnIcon will no longer display an error image when given non-existent .png, now displays the usual broken image material
  • Wordclicker view model animations now use proper variables for 2nd and 3rd viewmodels, instead of using the variable for the 1st view model
  • Entity.EnableConstraints( false ) now deletes the constraints (experimental)
  • DModelPanel now properly works when being dragged by the drag'n'drop system
  • Deletion of orphaned entities no longer deletes world or players
  • You can no longer call Entity.SetParent on world
  • PNG and JPG textures are now loaded without automatic conversion to Power of 2 sizes
  • Panel.IsEnabled now visibly affects DMenuOption
  • Invisible children of DHorizontalScroller will no longer affect position of the visible panels
  • Entity.Fire and Entity.Input also support booleans just like GM:AcceptInput
  • Player classes are set on all clients automatically clientside
  • Player classes are initialized as soon as they are set on a player, instead of whenever a first hook call happens
  • Display a message when an scripted entity was refused to be loaded due to missing Base and Type keys
  • Display a console warning when scripted_ents library was overridden and is no longer a table instead of silently doing nothing
  • More friendly errors when the weapons library is overridden with a non table
handyman

Fixed

  • Fixed Player.Say appending a trailing space
  • Fixed ViewModelFlip stopping worldclicker aiming animation for view models
  • Fixed SpawnIcon's SetSize affecting the child element's size too late
  • Fixed a crash issue with ModelImage.SetSpawnIcon
  • Fixed EmitSentence() not working on clients
  • DLabel and its derivatives can be properly dropped with drag'n'drop when they are not initially pressed
  • Invalid panels for tooltips will no longer create errors
  • Fixed table.GetWinningKey with keys lower than -10000 (Community Contribution)
  • Fixes for toolgun Think not running in edge cases (Community Contribution)
  • Fixed gmod_(admin_)cleanup not updating Player.GetCount on clients properly
  • Fixed Entity.GetTable being recreated when one already exists upon loading the entity table from .lua file
  • Fixed engine.ActiveGamemode() not returning current gamemode correctly in clientside autorun scripts
  • Fixed Panel.GetTextSize() only working after the text has been rendered at least once
handyman

Fixed

  • Fixed an exploit to do with gm_giveswep
  • Fixed an exploit relating to SQLite
arrow_circle_up

Improvements

  • Changed Lua file hashing algorithm to improve security
handyman

Fixed

  • Fixed a crash with decals on high poly models
  • Fixed a crash with Projected Textures
  • Fixed crash issues on some TF2 maps
  • Fixed crash issue with physenv.AddSufraceData()
  • Fixed not being able to start a new game with too many game.AddDecal() calls
  • Fixed a crash issue with env_fog_controller
  • Fixed crash exploits with parenting of unremovable entities to removable ones and deleting them this way
  • Fixed certain players not being able to be muted on servers with large populations