1. Garry's Mod
  2. News

Garry's Mod News

December 2021 Update is live

Update Summary

This update brings a new tab to the Problems section of the main menu: Permissions. This new section allows players to see permissions they granted to servers they play on, both temporary which reset after game shuts down and permanent, which save across game restarts.



The permissions tab displays detailed description of what each permission allows the server to do, and allows players to revoke granted permissions.

The purpose of the permission system to give control over certain scripting features to the player. Currently only 2 permissions are available - Voice chat and server connection. In the future we may put more features that can be abused behind permissions.

Duplicator tool can now store a list of Steam Workshop items that were used to create a duplication.



Players can see the list in the Duplicator tool's context menu and click on each button to open the Steam Workshop item and subscribe to it, allowing an easy way to make sure all necessary Steam Workshop content for a duplication is present. This only applies to newly created duplications.

Map saves now also have a similar feature, but limited only to the map the save was made on. It should now be much easier to install necessary map for a map save.


As usual this update adds a host of smaller features for modders, as well as fixes a bunch of crashes, security issues and other bugs. You can see the complete change list below.

You will find the full change list for this update in our blog post:
https://gmod.facepunch.com/blog/december-2021-update

This update requires servers to update before you can join them.

This means that for a certain amount of time after the update releases you may be unable to join servers and get a message saying "The server is running an older version of the game" instead. You will have to wait for servers to update before you can join them again.

You cannot downgrade to a previous version of the game. Please be patient and let server owners update their servers.

December 2021 Update is coming soon

Hello everyone,

The next Garry's Mod update is coming soon!

The current plan is to release the next Garry's Mod update on 15th of December at the usual 4PM GMT.
The update will be mandatory for all server owners, so mark the date and time. Servers will need to be updated before people can join them again.

You can preview the list of upcoming changes here:
https://docs.google.com/document/u/1/d/e/2PACX-1vTzEJEpdEje8e-FgsbyWGydu_Ez7p82MwOUPmRlUAAJ-KpkNJhHctyadZosfUYjVTz26KGip7bI7M9T/pub

Please note this list is still work in progress and is subject to change.

Help us test the update

We kindly ask anyone willing to help us test this update before it releases (especially modders and server owners), to minimize any potential problems with the update.

You will find instructions on how to test the upcoming update below.

You can report any found issues in the comments below, on our official Discord server or on our official bug tracking repository on GitHub: (be sure to search before posting)
https://github.com/Facepunch/garrysmod-issues
https://discord.com/invite/gmod

Pre-release Steam Branch

The Pre-Release and x86-64 Steam beta branches for Garry's Mod has been updated and contain all the changes that will be included in the next update.

If you want to set up an Dedicated Server instance using the Pre-Release branch, see this article: https://wiki.facepunch.com/gmod/Downloading_a_Dedicated_Server

How to switch game branches:
  1. Exit the game
  2. Right click on Garry's Mod in Steam and select Properties
  3. Go to the Betas tab and select your desired branch
None - This is the normal version of the game
Pre-Release - This is the next update
Dev - This is a bleeding edge version of the game, expect it to contain more bugs than usual

Garry's Mod has sold 20 million copies




s the name implies, Garry's Mod was originally a Source Engine mod that let the user muck around with that engine's physics, models and props. The mod released in 2004, before spawning a standalone product on Steam in 2006. Now, in 2021, Garry's Mod has sold an astounding 20 million copies...
Read more.

July 2021 Patch 2

Hey everyone,

We are releasing another small patch today.

The entire change log is as follows:
  • Fixed a crash with physgun's primary fire when a grabbed entity gets removed/dropped during OnPhysgunPickup
  • Disabled model/material/addon unloading/reloading features as it caused severe stability issues for some people running multicore rendering
  • Fixed a crash when particles are attached to the world entity and the map is reloaded
  • Fixed a potential crash with func_clip_vphysics
  • Fixed Lua error with DTree_Node when self populating folders from filesystem end up with 0 files
  • Fixed DComboBox's dropdown not being clickable on modal panels
  • Automatically apply PROPINTER_FIRE_EXPLOSIVE_RESIST to all props that can deal explosive damage to prevent crashes when many explosive props are exploded in a small space
  • Add sv_no_ain_files, defaults to 0, disables forced download of .ain files from the server
  • Potential fix for crashes when util.Decompress (Possibly other places too) reallocates huge chunks of memory
  • Fixed Out of Bounds $frame on render targets crashing the game
  • Fixed hopefully all possible crashes with npc_barnacle when something deletes its internal physics objects and entities
  • Potential fix for a crash in CMatQueuedRenderContext::Bind
  • Fixed a potential material refcount issue when binding materials in CMatQueuedRenderContext
  • Fixed prop_vehicle_prisoner_pod (Sandbox Chair vehicles) forcing FOV to 90
  • Hammer: Added "Allow physgun" and "toolgun whitelist" keyvalues to func_lod
  • Stop the crosshair color going white if the player's FOV is < 90
  • Fixed SWEP.AccurateCrosshair not taking into account worldclicker aim and sometimes hitting the player entity itself
  • TTT: Updated language files (Community Contribution)
  • Sandbox Camera SWEP zooming rate is now server tickrate independent (Community Contribution)
  • Completely disable CHudDeathNotice, CHudHintDisplay and CHudHintKeyDisplay since they are not used in GMod
  • Fixed any bone manipulations breaking entity's render bounds, now render bounds will be only enlarged if a bone is manipulated outside of the original model bounds


As usual servers are recommended to update at earliest convenience, especially if they were affected by one or more issues mentioned above.

July 2021 Patch

Hey everyone,

We are releasing a small patch today.

The entire change log is as follows:
  • Fixed duplicated Motors, Winches and Hydraulics being able to be activated by any player on the server
  • Fixed Lua errors when making 0 width ropes
  • Do not allow to use the "Drive" property on entities that are already being driven, to prevent players getting stuck in invalid state
  • Fixed some entities having improper color/material in dupe icon preview, such as the Fog/Sky/Sun editors
  • Fixed entering a chair causing everything to disappear for a bit
  • Fixes to crashes/missing textures/error models when changing maps/servers/etc.
  • TTT: add a player mic volume slider to the scoreboard (Community Contribution)
  • TTT: fix table.Shuffle (Community Contribution)
  • TTT: fix propspec_allow_named setting not taking effect (Community Contribution)
  • Fixed a server crash when NPC is trying to holster a weapon_frag
  • Fixed a server crash when item_ammo_crate is given an invalid ammo type
  • Fixed a server crash when an npc_fastzombie tries to attack a non player entity
  • ent_remove* no longer allows removal of the world entity
  • ent_remove_all no longer can delete players
  • Fixed "DownloadingFile" javascript function not being fired for Fast/ServerDL due to changes in last update
  • Display a console message when ServerDL fails to download something
  • Reset entity FXBlend cache when the current view changes during a frame, fixes point_camera messing up entity fade distances
  • Player.ConCommand's queue clientside should now show addon name when running blocked concommands
  • Added more debug info to "Invalid HitboxSet on something" warning
  • Fixed func_movelinear regression with the SetSpeed input when called with speed of 0
  • Added util.MD5/SHA1/SHA256 - all take a single string, and return a hex string
  • Added IsConCommandBlocked
  • Added crash/infinite loop safeguards to Entity.SetMoveParent: Unlink self from previous parent, do not allow to parent to yourself, check for cyclic parents
  • Limited util.JSONToTable depth to 5000 (should be more than enough for any legitimate uses) to avoid stack overflows
  • Apply stack overflow protection to util.TableToJSON
  • Experimental "network to clients" option for Entity.ManipulateBoneAngles/Position (3rd argument, defaults to true)
  • Added a second argument to util.GetModelMeshes - a table of tables where IDs are boneIds and contain a table of 2 keys: matrix and parentID
  • Let's try an Entity.Set/GetColor change - Make C++ return/take 4 numbers, and make a Lua override that takes/returns color objects instead - should be ~2x faster and GetColor now returns the proper color object
  • duplicator library now properly copies Lua-set color and material override, not just the Sandbox tool ones
  • Fixed net library not resetting its internal variables on level change
  • Entity.PhysicsFromMesh can now also accept just a list of vectors
  • Fixed errors from GetInt() when text entry contents aren't numeric (Community Contribution)
    Added xalign and yalign arguments to draw.WordBox (Community Contribution)


Servers are recommended to update at earliest convenience, especially if they were affected by one or more issues mentioned above.