Garry's Mod Logo


  • Added surface.GetTextureNameByID
  • Added NPC:SetMaxLookDistance
  • Added NPC:GetMaxLookDistance
  • Added Entity:ClearAllOutputs
  • Added Entity:SetSurroundingBounds
  • Added Entity:SetSurroundingBoundsType
  • Added Entity:GetSurroundingBounds
  • Added optional surfaceprop argument to Entity:PhysicsInitMultiConvex, Entity:PhysicsInitConvex, Entity:PhysicsFromMesh, Entity:PhysicsInitBox. All of them now also get correct physical volume set which helps physics behave correctly
  • Added util.IsBinaryModuleInstalled (Community Contribution)
  • Added string.StartsWith (alias of string.StartWith, for consistency with string.EndsWith) (Community Contribution)
  • Added an option to player_manager.AddValidHands to match hands skin to player model selected skin automatically (Community Contribution)
  • Added "readonly" option to DProperties properties, for editable entities editor (Community Contribution)
  • Added Panel:SetTextSelectionColors for RichText panels
  • Added physenv.GetLastSimulationTime
  • Added Player:DisableWorldClicking & Player:IsWorldClickingDisabled (Not currently networked)
  • Added second argument to string.Comma (Community Contribution)
  • Added Tool:RebuildControlPanel
  • Added Tool:GetClientBool
  • Weapons and Entities can now set their own classname via ClassName property (Community Contribution)
  • Added string.Interpolate (Community Contribution)
  • Added DSlider ConVar support
  • Added DSlider:OnValueChanged


  • Made player_manager.AddValidHands skin/body arguments optional
  • Added gmod_language to blocked convars (can still read it)
  • Added sv_password to list of convars Lua cannot read
  • WEAPON:HUDShouldDraw is no longer required to return true to not break HUD (Community Contribution)
  • Minor adjustment to DCheckBox:Toggle's internals (Community Contribution)
  • String extension optimizations (Community Contribution)
  • Cache ConVars created by tools (in TOOL.ClientConVars and TOOL.ServerConVars ) and use them in Tool:GetClientInfo/Tool:GetClientNumber/Tool:GetServerInfo in appropriate realms


  • Fixed NPC:AddEntityRelationship priority argument reading from the wrong argument. Also made it optional (defaults to 0)
  • Fixed non halting Lua error when Derma_Install_Convar_Functions panels attempt to set empty console variable
  • Fixed static CLuaParticles not updating their lighting
  • Fixed a crash when setting player's hull size to nothing
  • Potential fix for a crash with steamworks.DownloadUGC
  • Fixed a bug with Panel:SetCaretPos
  • Fixed IRestore:ReadString having a limit on string length, affecting weapons and others on map transition
  • Fixed potential Lua error in Derma drag'n'drop system (Community Contribution)
  • Added color support and fixed a bug with table.Sanitise/table.DeSanitise (Community Contribution)
  • Made ents.FindByModel support wildcards, and work better clientside
  • Fixed VMatrix:GetTransposed implementation
  • Fixed certain old addons failing to extract with steamworks.DownloadUGC
  • Fixed a crash in DListView with fractional column width
  • Fixed markup text alignment inconsistency (Community Contribution)
  • Made sure Panel:GetChildren table is always sequential
  • Fixed TOOL.Information being modified by code that uses it