Garry's Mod Logo
Changes Header

Changes

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

arrow_circle_up

Improvements

  • Clean up quota before updating/creating an addon
  • Don't delete files from quota as soon as finishing updating
add_circle

Features

  • Added measures against fake servers.
  • Added an experimental cache system for vectors/angles returned by Lua functions to minimize memory allocation/freeing
  • Added HL:S gib models (for custom maps that use them)
  • Added more validation for packets (prevents one of the ddos methods)
  • GM:AcceptInput
  • Added Alyx Gun sounds
  • Entity.CollisionRulesChanged
  • PhysObj.RecheckCollisionFilter
  • CLuaEmitter.Is3D
  • CLuaEmitter.GetPos
  • CLuaLocomotion.GetMaxYawRate
  • CLuaLocomotion.SetMaxYawRate
  • CLuaLocomotion.IsAscendingOrDescendingLadder
  • CLuaLocomotion.IsUsingLadder
  • navmesh.GetNearestNavArea
  • navmesh.GetAllNavAreas
  • CNavArea.GetRandomPoint
  • CNavArea.GetCenter
  • CNavArea.GetAttributes
  • CNavArea.HasAttributes
  • CNavArea.IsOverlappingArea
  • CNavArea.ComputeGroundHeightChange
  • CNavArea.ComputeDirection
  • CNavArea.GetIncomingConnectionsAtSide
  • CNavArea.GetIncomingConnections
  • CNavArea.IsValid
  • CNavArea.GetAdjacentCountAtSide
  • CNavArea.GetAdjacentCount
  • CNavArea.GetAdjacentAreaAtSide
  • CNavArea.GetRandomAdjacentAreaAtSide
  • CNavArea.GetAdjacentAreasAtSide
  • CNavArea.GetAdjacentAreas
  • CNavArea.IsConnectedAtSide
  • CNavArea.IsConnected
  • CNavArea.GetLadders
  • CNavArea.GetLaddersAtSide
  • navmesh.GetNavLadderByID
  • CNavLadder.GetPosAtHeight
  • CNavLadder.GetNormal
  • CNavLadder.IsValid
  • CNavLadder.GetID
  • CNavLadder.IsConnectedAtSide
  • Added 'victim' and 'damageinfo' arguments to NEXTBOT:OnOtherKilled
  • Added 'ent' argument to NEXTBOT:OnLeaveGround & NEXTBOT:OnLandOnGround
  • NEXTBOT:OnContact
  • NEXTBOT:OnIgnite
  • NEXTBOT:OnNavAreaChanged
  • Nextbot:GetSolidMask
  • Nextbot:SetSolidMask
  • Entity.AddSolidFlags
  • Entity.RemoveSolidFlags
  • Entity.GetSolidFlags
  • Entity.SetSolidFlags
  • FSOLID_
  • NAV_MESH_
  • Added custom icon for srcds.exe
  • Added VProf support to a bunch of functions
  • Added navigation mesh for gm_flatgrass
  • GM:NotifyShouldTransmit
  • Added third optional argument to CreateSound() - channel
  • Panel:GetZPos
  • CRecipientFilter:GetCount
  • CRecipientFilter:AddPAS
  • Added models/weapons/c_arms.mdl
arrow_circle_up

Improvements

  • New NWVars are back and should be stable now (hopefully)
  • Added multvar and incrementvar to blocked convar list
  • Added w_bugbait.mdl with proper bones
  • timer.Adjust has its 4th argument optional now
  • Merged LuaJIT bug fixes from master branch and fixed GMod's special table.insert to support JIT
  • Commented warnings about "Cannot update control point %d for effect '%s'", occours with ghost_effect
  • Increased MaxDistance of env_projectedtexture from 1500 to 56756 in multiplayer
  • Updated Bootil to latest version (fixes symbolic link autorefresh)
  • Prevented servers from being able to force screen resolution on players
  • Improved cursor handling in TextEntry for Ctrl+Left/Right
  • Improved the logic for AI squads in multiplayer (still needs some work)
  • Player view smoothing now works properly when walking up stairs with a custom step size
  • Updated navigation mesh for gm_construct
  • Updated BASS.DLL to 2.4.11
  • "stopsound" now also stops all BASS.DLL sounds
  • Unsubscribing from addons now properly deletes the associated .gma files
  • net.WriteBit now also accepts numbers
handyman

Fixed

  • Fixed "DataTable warning: player: Out-of-range value (x) in SendPropFloat"
  • Fixed CAI_LeadBehavior, Alyx no longer stands around being stupid in multiplayer
  • Fixed player model without physics crashing the game when a ragdoll was created
  • Fixed timer.Pause & timer.UnPause not checking whether the timer was already paused or not
  • Fixed game.CleanUpMap() duplicating all decals created by infodecal entities
  • Fixed an issue with Entity.Weapon_SetActivity
  • Fixed ambient_generic not working in some cases
  • Fixed Player:SetHullDuck() not working properly
  • Fixed Stalkers not bleeding and leaving their beams behind after they are removed
  • Fixed Combine Helicopter, Dropship, Gunship & Floor Turret bleeding in multiplayer
  • Fixed auto refresh not working with symbolic links
  • Fixed GMad not working properly on Linux and OSX
  • Fixed Lua files not being loaded on clients in multiplayer in some cases
  • Fixed Lua fonts being deleted on resolution change
  • Fixed bad NextBot collisions with players by default
  • Fixed NextBots not being able to walk through PLAYERCLIP brushes by default
  • Fixed Hammer making Steam show you as playing Garry's Mod
  • Fixed Lua errors when printing invalid Panels and Physics objects
  • Fixed static lighting breaking in some cases
  • Fixed a huge exploit with "cvarlist" console command
  • Fixed net.WriteUInt writing data as signed integer
  • Fixed game_ui entity not releasing player input on player death
  • Fixed an exploit with OpenFolder
remove_circle

Removed

  • Removed "Lua JIT is DISABLED!" message
  • Remove FCVAR_ARCHIVE flag from cl_thirdperson, sv_backspeed & hud_showemptyweaponslots
add_circle

Features

  • Added more friends/enemies to achievement count
  • Added Panel:DeleteCookie()
  • Added player.GetBySteamID() and player.GetBySteamID64()
  • Added GM:PreDrawPlayerHands() and GM:PostDrawPlayerHands()
  • Added drag'n'drop support to DHorizontalScroller
  • Added ColorRand()
arrow_circle_up

Improvements

  • Renamed DHorizontalDivider.GetRigth to DHorizontalDivider.GetRight
  • Optimized Panel:IsOurChild( Panel )
  • Updated default Fonts on Linux and OS X
  • DGrid: Use table.remove instead of setting to nil
  • Removed cam.IgnoreZ() from DModelPanel
  • Moved net.lua from modules to extensions
  • Made UTIL_IsUselessModel more efficient
  • Updated all SWEP files to a unified format
  • net.ReadType no longer requires an argument
  • Updated CalcView to allow CalcVehicleView to be hooked
  • Properties can only be used on weapons when unheld
  • Bots will respawn without needing to attack
  • Optimized scripted_ents.Get a bit
  • Made prop_generic panel not error without a setup table
  • Allowed more GM functions to be hooked
  • Improved error message when indexing string badly (with key not within the string library)
  • Improved map counter when filtering maps
  • Renamed flechette_gun to weapon_flechettegun
  • Renamed UTIL_IsUselessModel to IsUselessModel
handyman

Fixed

  • Fixed prediction on jump boost
  • Fixed Vector:ToColor
  • Fixed main menu text shadow transparency on OS X
  • Fixed DColumnSheet button colors
remove_circle

Removed

  • Removed useless require calls
add_circle

Features

  • Added Spanish, Russian, Chinese, and Swedish translations
  • Allowed for custom TTT Scoreboard ScoreGroups
  • Added German translation
  • Added main menu settings (English only)
  • Added hat_retrieve to Swedish
  • Added hat_retrieve to German, Portuguese, and Spanish
arrow_circle_up

Improvements

  • Updated Portuguese translations
  • Use PlayerModel colouring for TTT players
  • Improved Defuser compatibility
  • Sped up weapon scrolling
  • Crosshairs have even gap/length for each line
  • Allowed detectives to reequip their dropped hat
  • Improved grenade throwing
  • Bumped version
  • Allowed spectators to talk in all chat - redirects to team
handyman

Fixed

  • Fixed spectators having footstep sounds
  • Fixed Decoy's radar color
  • Fixed Magneto Stick setting nil Owner on active SWEP
add_circle

Features

  • Added EP1 & EP2 details to detail.vbsp
arrow_circle_up

Improvements

  • Restored background for default HL2 HUD
  • Several server browser changes
  • Remember/RestoreCursorPosition are now clientside only
  • PropSelect now sorts models alphabetically
  • Improved default Fists SWEP hit detection
  • Made 2nd parameter of DProperty_Combo.Setup() optional
  • Got rid of unnecessary Network Strings
handyman

Fixed

  • Fixed stalkers not attacking players
  • "Fixed" DAdjustableModelPanel's model not being visible if the camera positions are not set up
  • Fixed a problem with SortedPairsByValue
  • Fixed the player count selector missing its arrow
  • Fixed big saves becoming corrupted
  • Fixed DColumnSheet selected button
  • Fixed right clicking on entities sending Mouse 2 signtal to the server
remove_circle

Removed

  • Removed hacky workarounds in weapon_fists