Garry's Mod Logo
add_circle

Features

  • Added PhysObj:GetIndex
  • Added NPC:SetFOV, NPC:GetFOV (in degrees), NPC:IsInViewCone ( vector/entity )
  • Added Entity:AddSpawnFlags, Entity:RemoveSpawnFlags and Entity:SetSpawnFlags (Community Contribution)
  • Added MAX_EDICT_BITS global enum
  • Added NPC:GetLastPosition
  • Added NPC:GetMoveDelay
  • Added NPC:SetMoveDelay
  • Added physenv.GetPhysicsPaused
  • Added physenv.SetPhysicsPaused
  • Added ENTITY:TranslateNavGoal
  • Added sound.SetActorGender
  • Added viewid to render.GetViewSetup, can be used to detect water rendering passes
  • Added ENTITY:DoImpactEffect for ai and nextbot SENTs
  • Added CTakeDamageInfo:GetWeapon and CTakeDamageInfo:SetWeapon
  • Added Entity:Alive
  • Added math.IsNearlyEqual
  • Added HWBToColor (Community Contribution)
  • Added COLOR:ToHWB (Community Contribution)
  • Added COLOR:GetHue, COLOR:SetHue, COLOR:AddHue (Community Contribution)
  • Added COLOR:GetSaturation, COLOR:SetSaturation, COLOR:AddSaturation (Community Contribution)
  • Added COLOR:GetBrightness, COLOR:SetBrightness, COLOR:AddBrightness (Community Contribution)
  • Added COLOR:GetLightness, COLOR:SetLightness, COLOR:AddLightness (Community Contribution)
  • Added COLOR:GetWhiteness, COLOR:SetWhiteness, COLOR:AddWhiteness (Community Contribution)
  • Added COLOR:GetBlackness, COLOR:SetBlackness, COLOR:AddBlackness (Community Contribution)
  • Added 2nd argument to CompileFile - showError
  • Added util.RemoveDecalsAt
  • Added Player:ExitLadder
  • Added "owner" argument to WEAPON:OnDrop
  • Allow NPC list (list.Set) to set Author property (displayed in spawnmenu on hover tooltip)
  • Added drawviewer field to render.RenderView
  • Added ability to ship custom shaders in Workshop addons
  • Added NPC:GetHeadDirection and NPC:GetEyeDirection
  • Added Entity:SetNetworkVarsFromMapInput as a helper and a sister function to Entity:SetNetworkKeyValue
  • Added SANDBOX:SpawnmenuIconMenuOpen
  • ENT.Information support for tooltips in NPC spawn icons
arrow_circle_up

Improvements

  • Display a non halting error when teamID in Player:SetTeam would not network correctly
  • GM:ClientSignOnStateChanged is no longer called for HLTV clients
  • util.IsValidModel uses meshcount to determine useless models, instead of hardcoded path substrings, which is error prone
  • Do not IsValid the ident in hook.Add & hook.Remove - The check was added solely to print an error for invalid input types, but NULL entity is still an entity
  • Make Entity:IsOnFire return false instead of nil for non animated entities
  • Entity:FollowBone doesn't check the boneID argument if given a NULL entity, or no arguments at all
  • Cache gamemode table for gamemode.Call and hook.Run (Community Contribution)
  • engine.CloseServer now returns true if quit command was issued, also fixed it not working immediately on server start up
  • COLOR:SetUnpacked now type checks its inputs
  • Made certain Lua errors thrown from Lua-defined functions produce more useful stack traces
  • game.CleanUpMap deletes C_Hairball
  • Make file.Write and file.Append return success of file.Open used internally (Community Contribution)
  • Added Lua implementations of HSVToColor & HSLToColor for higher performance and ensuring their return value has the Color metatable (Community Contribution)
  • Allow comments and trailing commas in JSON parsing
  • Made util.TableToJSON output whole numbers without decimal point when encountering such whole Lua numbers
  • Made Player:LimitHit serverside only (it would error clientside)
  • Made file.Read return nil on failure instead of no value
  • HTTP calls the fail callback with -disablehttp
handyman

Fixed

  • Fixed not being able to StopSound generated sounds
  • Fixed clientside only entities being considered map created by Entity:CreatedByMap
  • Fixed DAdjustableModelPanel spazzing out when main menu is open (by ignoring mouse input)
  • gmsave.SaveMap now respects Entity.DoNotDuplicate fully
  • Improve JSON function compliance with the JSON specification
  • * util.TableToJSON - math.huge keys now become "Infinity" instead of "inf"
  • * util.JSONToTable - Handle nil in arrays, convert boolean looking keys ("true", "false") to booleans if this behavior is not disabled by the 3rd argument
  • Fixed DButton:SetConsoleCommand not accepting vararg (Community Contribution)
  • Fixed DTextEntry autocomplete menu not inheriting text entry's skin
  • Fixed GM:NeedsDepthPass causing NPCs to not render, and fixed it rendering ropes twice
  • Try to mitigate util.TableToJSON leaving junk behind on failure
  • Fixed ai.GetSquadMemberCount returning nothing if there is no squad with given name. Now returns 0.
  • Fixed team.GetColor retuning non copied default color for invalid team IDs
remove_circle

Removed

  • Removed last 3 parameters of engine.WriteSave which are now handled in-engine automatically
  • Added timedemo and related console variables/console commands to blocked console command list
  • Blocked the "showconsole" console command, and the tv_record console command clientside