Garry's Mod is a physics sandbox. There aren't any predefined aims or goals. We give you the tools and leave you to play.
User reviews: Overwhelmingly Positive (100,377 reviews)
Release Date: Nov 29, 2006

Sign in to add this game to your wishlist or mark as not interested

Buy Garry's Mod

AUTUMN SALE! Offer ends December 2


Recommended By Curators

"A LAN party masterpiece. Plain GMod is already fun, but it also has hundreds of integrated player-made gamemodes that amplify the fun. TTT, ZMod, etc!"

Recent updates View all (10)

July 11

The Summer Hotfix

A minor update containing a few hotfixes for last update just came out. Restarting your servers is strongly recommended.
If there are any persisting issues left, please report them on the official GitHub issues page.

GLIBC_2.15 dependency on Linux dedicated servers
Some Linux dedicated server owners may have noticed that the game now requires glibc 2.15. This is a necessary change since the version we were using before was really outdated. If your server is running on a relatively old distro which does not include that library, you can find instructions on how to install it here: Linux Dedicated Server Hosting.

Fixed non-ASCII characters being removed from player names
This was accidentally introduced in an attempt to fix an exploit which would let servers tamper with a client’s configuration file, sorry for that! Everything should be back to normal now.

Fixed model scaling not working correctly on some models
Entity:SetModelScale and Entity:EnableMatrix had an issue with some models which would cause transformations to be applied twice. This issue is now fixed, you can see the difference below:

This will break scripts that rely on the old broken behaviour, so I also added Entity:SetLegacyTransform for those who want their current scripts fixed with minimal effort. This function basically brings the old scaling behaviour back for the entity it is called on, so it should be used exclusively as a temporary fix.

Full Changelog

  • Fixed plugin_load not doing anything
  • Fixed players being removed when sitting in a vehicle parented to another entity
  • Fixed non-ASCII characters being removed from player names
  • Fixed tabs in RichText selection
  • Fixed properties not correctly working on vanilla
  • Fixed Color.__tostring not outputting alpha
  • Fixed render.CapturePixels crashing when used on render targets
  • Fixed Weapon:CallOnClient crashing when called on a weapon owned by a NPC
  • Fixed player names not updating in scoreboard and voice panels
  • Fixed weapon holdtypes not always updating on the client
  • Definitely fixed Entity:SetModelScale and Entity:EnableMatrix applying transformations twice on some models
  • Added Entity:SetLegacyTransform(bool)
  • Removed properties.HaloThink
  • Removed _restart from blocked concommand list

238 comments Read more

July 8

The Summer update


  • Fixed item pickups not being collectable in some cases
  • Fixed env_microphone not always transmitting NPC voices in multiplayer
  • Fixed some textures on gm_construct having an incorrect normal map when running under DX8
  • Fixed console crash on some machines
  • Fixed another possible exploit with CNetChan::SendFile
  • Fixed an exploit allowing access to any file on a client machine
  • Fixed vehicle noclip exploit
  • Fixed SMG viewmodel animation glitch when firing exactly 3 shots in a single burst
  • Fixed inaccurate text selection in RichText controls

  • Files with an incorrect extension can no longer be loaded as modules
  • Loose .vcd files can now be loaded without having to be compiled into scenes.image

  • Fixes
    • Admin commands no longer appear in "last words"
    • Fixed a minor issue with teleporter effects
  • Additions
    • Added lag compensation to the crowbar's secondary attack
    • Added TTTPlayerUsedHealthstation hook
  • Fixes
    • Fixed vehicle third person affecting cameras
    • Fixed shipped weapons creating errors when given to NPCs
    • Fixed SimpleDoF to properly work with cameras
    • Fixed return values of draw.SimpleText
    • Fixed big numbers not sending properly with net.WriteTable
    • Fixed gmod_admin_cleanup/gmod_cleanup errors when run in a dedicated server console
    • Fixed vehicles not duplicating their skin, bodygroups, etc
    • Fixed derma.SkinTexture
    • Fixed longstanding thruster crash exploit
    • Fixed pasted ragdolls with duplicator being in T pose until you touch them (still happens for saves though, sorry)
    • Fixed snow footsteps
    • Fixed some base weapons (Alyx gun, HL1 grenade) being .357 clones
  • Improvements
    • Post Process effects are no longer saved across restarts
    • Hidden some useless HL2 maps
    • Updated jQuery/AngularJS
    • draw.SimpleTextOutlined now returns same thing as draw.SimpleText
    • Lua errors notification only stays for 10 seconds instead of 30
    • Clicking "Resize" in spawnicon right click menu no longer automatically rerenders the icon.
    • Fancified Bouncy Ball
    • Updated server browser looks
    • Bots are no longer counted towards player count in server browser
    • Sort addons and games alphabetically in Browse
    • Made player_manager.TranslateToPlayerModelName case insensitive
    • Tweaked some tools
      • Tweaked default values for some of the tools, tweaked limits in context panels for some of the tools
      • Added right click option for lamp tool to copy settings of another lamp
      • Deprecated settings/controls/*.txt, noone uses it, serves no benefit.
    • Improved context menu properties in various ways
      • Now works properly when you look from camera/driving a vehicle
      • Fixed some issues with "Drive" property and cameras
  • Additions
    • Added team.SetColor(index, color)
    • Added Angle:SnapTo(component, degrees)
    • Added IsColor, net.WriteColor, net.ReadColor
  • Fixes
    • Fixed Entity:PhysicsFromMesh building a deformed collision mesh
    • Fixed PhysicsCollide entity callback missing information about the entity which was collided with
    • Fixed IMaterial:GetMatrix crashing the game
    • Fixed sound.Add not working on dedicated servers
    • Fixed ents.FindByClass not interpreting wildcards correctly
    • Fixed util.CRC not working correctly on strings with embedded zeroes
    • Fixed util.JSONToTable losing precision for large integer values
    • Fixed Entity:GetBoneController returning a truncated value
    • Fixed Entity:SetHitboxSet not working properly with an integer parameter
    • Fixed NPC:FoundEnemySound, LostEnemySound, FearSound, IdleSound and AlertSound not calling their appropriate equivalent in the engine
    • Fixed InnerAngle and OuterAngle parameters not doing anything in lights created by DynamicLight()
    • Fixed util.TableToJSON crashing when passed a table containing keys that aren't strings or numbers
  • Improvements
    • Updated LuaJIT to version 2.0.3
    • Reverted Entity:IsValid to its old behaviour
    • Changed Entity:PhysicsInitBox behaviour to be more consistent with Entity:PhysicsInitConvex (no longer creates a broken physics object in some cases)
    • game.GetWorld is now shared
    • Player:HasWeapon and Player:GetWeapon are now shared
    • Entity(0) now returns the world on both server and client
    • Entities can now have up to 64 DT vars of each type (except strings)
    • Player:Kick and Player:Ban kick/ban reasons are now optional and may contain newlines
    • SWEP holdtypes are now properly networked
    • Vector and angle access using a numerical index rather than x/y/z is now slightly faster
    • gui.OpenURL now clamps URLs to 511 characters max
    • Added safeguards to mesh library functions
    • Entity:GetMaxHealth() is now shared again and properly networked
    • Entity:DrawViewModel now takes an optional second argument which controls which viewmodel to show/hide (defaults to 0)
    • Moved Entity:Disposition, GetActivity, IsNPCMoving, IsUnreachable to NPC:Disposition, GetActivity, IsMoving, IsUnreachable
    • Trace tables now accept an "output" parameter which may contain the table in which trace results should be written
    • sound.PlayFile and sound.PlayURL callbacks now receive an error ID and error name as their second and third parameters if an error occurs
    • Weapon:CallOnClient second argument is now optional
    • Moved Player:PlayScene, NPC:PlayScene and NextBot:PlayScene to Entity metatable
    • Entity:PlayScene second argument (delay) is now optional
    • MsgC can now print text with several colors in a single call
    • Moved Player:Freeze, GodEnable, GodDisable, IsFrozen, HasGodMode to Lua
    • Clamped pitch between -90 and 90 instead of -180 and 180 for AngleRand
    • util.KeyValuesToTable and util.KeyValuesToTablePreserveOrder now accept a third parameter which prevents keys from becoming lowercased when set to true
    • vgui.LoadControlsFromFile/LoadControlsFromString now properly creates scripted panels
    • Optimized vgui.LoadControlsFromString
  • Additions
    • Added Entity:PhysicsDestroy()
    • Added Weapon:GetHoldType()
    • Added util.SharedRandom(uniqueName, min, max, additionalSeed=0)
    • Added util.BlastDamageInfo(dmginfo, origin, radius)
    • Added Entity:SetLOD(lod=-1)
    • Added Entity:SetLagCompensated(bool), IsLagCompensated()
    • Added Player:SetAllowWeaponsInVehicle(bool), GetAllowWeaponsInVehicle()
    • Added CSoundPatch:SetDSP(dsp), GetDSP()
    • Added IGModAudioChannel:EnableLooping(bool)
    • Added IGModAudioChannel:PlayFile(path, flags, callback)
    • Added optional second argument to Entity:SetPhysicsAttacker which controls expiry time
    • Added game.SetSkillLevel(int), game.GetSkillLevel()
    • Added the following hooks to scripted effects: StartTouch, Touch, EndTouch
    • Added CUserCmd:SelectWeapon(weapon_ent)
    • Added __tostring to CNavArea, CSoundPatch, IGModAudioChannel, PhysObj, dlight_t metatables
    • Added PhysObj:GetName()
    • Added CNavArea:Draw(), IsUnderwater(), GetSizeX(), GetSizeY(), IsRoughlySquare(), IsFlat(), GetZ(pos), IsOverlapping(pos, tolerance), Contains(pos), IsCoplanar(navArea), GetClosestPointOnArea(pos), IsVisible(pos), GetCorner(cornerId)
    • Added navmesh.GetNavAreaCount(), GetNavArea(pos, beneathLimit), GetNavAreaByID(id), BeginGeneration(), IsGenerating(), GetPlayerSpawnName(), SetPlayerSpawnName(), AddWalkableSeed(pos, normal), ClearWalkableSeeds()
    • Added Entity:IsDormant()
    • Added ENT:Blocked(other)
    • Added Color:__tostring, Color:__eq and Color:ToHSV
    • Added gui.InternalKeyTyped(code)
  • Removals
    • Removed "loop" flag from sound.PlayURL
    • Removed support for vm_origin and vm_angles from GM:CalcView

255 comments Read more


“It brings back the silly glee of unbridled experimentation, intuitive learning and playful social interactions that most of us haven't experienced since childhood. For that, it's essential.”
88 – PC Gamer

About This Game

Garry's Mod is a physics sandbox. There aren't any predefined aims or goals. We give you the tools and leave you to play.

You spawn objects and weld them together to create your own contraptions - whether that's a car, a rocket, a catapult or something that doesn't have a name yet - that's up to you. You can do it offline, or join the thousands of players who play online each day.

If you're not too great at construction - don't worry! You can place a variety of characters in silly positions. But if you want to do more, we have the means.

Beyond the Sandbox

The Garry's Mod community is a tremendous source of content and has added hundreds of unique modes to the game. In Trouble In Terrorist Town, you can be a detective solving an online murder as criminals attempt to cover up their homicides. Be a ball, a plant, a chair, or anything else in Prop Hunt's elaborate, shape-shifting game of Hide & Seek. Elevator: Source is gaming's first elevator thrill ride, delivering players to airlocks and kitten dance parties.

We have one of the most vibrant Steam Community Workshops, with over 300'000 models, maps, and contraptions to download. It has everything from new tools to improve your builds, to guns that fire rainbow-tinged nuclear blasts from space. Take as much or as little as you need: it’s all free.

Please note: Some multiplayer servers and game-modes might require you to own other games - such as Counter-Strike: Source and Team Fortress 2.

System Requirements

Mac OS X
    • OS: Windows® Vista/XP/2000
    • Processor: 1.7 GHz Processor
    • Memory: 512MB RAM
    • Graphics: DirectX® 8.1 level Graphics Card (Requires support for SSE)
    • Hard Drive: 150 MB
    • Other Requirements: Internet Connection
    • Processor: Pentium 4 processor (3.0GHz, or better)
    • Memory: 1GB RAM
    • Graphics: DirectX® 9 level Graphics Card
    Minimum: OS X version Snow Leopard 10.6.3, 1GB RAM, NVIDIA GeForce 8 or higher, ATI X1600 or higher, or Intel HD 3000 or higher Mouse, Keyboard, Internet Connection, Monitor
Helpful customer reviews
182 of 207 people (88%) found this review helpful
31.0 hrs on record
Posted: October 31
for the following reasons:
-wanna hear kids rage after quickscoping them for about the 100th time? gmod's for you!
-wanna be a director? gmod's for you!
-make a name for yourself? gmod may not be the game...but still! GMOD'S FOR YOU!
-dying to play dodgeball with a highly dangerous ball of energy? GMOD IS FOR FREAKIN YOU!!!

those are my reasons...i think. hey look a taco :3 *uses gravity gun**accidentally kills friend*
oops... oh yeah!

another reason:
-wanna kill ur friends in the most stupid way possible? GMOD IS FOR YOU!
Was this review helpful? Yes No
187 of 229 people (82%) found this review helpful
189.9 hrs on record
Posted: November 3
Crashed the game spawning pink power rangers

You think I'm joking?
I broke Deadfalcon5's game by doing this.
Was this review helpful? Yes No
119 of 136 people (88%) found this review helpful
198.9 hrs on record
Posted: November 17
Killed an admin, got banned. 10/10
Was this review helpful? Yes No
124 of 147 people (84%) found this review helpful
1,021.7 hrs on record
Posted: November 7
Full Of 12 Yr Old Admins
-Joins Server
-Gets Kicks
-Joins Back
-Gets Banned

11/10 Would Get Banned Again.
Was this review helpful? Yes No
92 of 105 people (88%) found this review helpful
143.3 hrs on record
Posted: October 31
Garry's Mod is one of those games that probably everyone played, and even if you do not, you definitely seen it. So really, you can not even call this creature the game, because it does not have any plot. Actually, this sandbox giving people great opportunities, and it is the players that make the Gmod playable and want to play it.
Was this review helpful? Yes No
76 of 89 people (85%) found this review helpful
260.8 hrs on record
Posted: November 17

• Buy this game for €2,49 on Sale or €10,- or full price.

• Install it.

• Play some sandbox first.

• Try some other gamemodes.

• Sees Trouble in Terrorist town.

• RDM's everyone and gets banned.

• Reads rules on google.

• Understands the gamemode.

• Play TTT non-stop

9/11 it ok-IGN
Was this review helpful? Yes No
56 of 66 people (85%) found this review helpful
1,976.4 hrs on record
Posted: October 28
A great co-op or solo game full of interesting game modes such as sandbox, trouble in terriost town and more other game modes. Its a interesting game with good workshop items and fun gameplays. Greatness is within this game, a excellent freeroam or gamemode game.
Was this review helpful? Yes No
40 of 45 people (89%) found this review helpful
783.9 hrs on record
Posted: November 8
This is Garry's Mod, a video game developed towards those with a creative edge. You are able to use a wide variety of tools to construct intricate structures with which you can kill other people for 'lulz.' If building isn't your thing, you can join screaming children and their feeble attempts to carry out a decent roleplay on the DarkRP servers. If getting stomped by minges such as myself isn't for you either, you can always try Singleplayer.

Overall, I recommend this game as a result of its unique abstraction. However (queue adhominem), Garry Newman is one of the least intelligent game developers I have ever come to know of (the least intelligent of all time being PHIL_FISH.) On top of this, (the game's website) is run almost entirely by tea drinking monkeys each wearing a tuxedo and holding a glass of fine '67 Chateau Latour. It is indeed possible to get banned for absolutely anything, but here is a short list of my favourite reasons.
- Using internet memes
- Inquiring as to why another user has been banned
- Posting a joke.

If you do buy Garry's Mod, do not sign up to Facepunch.
Was this review helpful? Yes No
79 of 108 people (73%) found this review helpful
479.6 hrs on record
Posted: November 9
It's ok.
Was this review helpful? Yes No
59 of 77 people (77%) found this review helpful
489.3 hrs on record
Posted: October 31
10/10 Almost the same pleasure of fapping.
Was this review helpful? Yes No
38 of 47 people (81%) found this review helpful
23.5 hrs on record
Posted: November 20
Fantastic sandbox game, running on the beloved Source engine that adds and installs different varities of models, locations, mechanics, actions and the crafting abilities to build, pose, share and even create animations and movies. However, It derives from the deepest recesses of notorious flashing, missing textures and of course, the blitzkrieg model spamming of the almighty cluster-♥♥♥♥.

Five Stars.
Was this review helpful? Yes No
39 of 51 people (76%) found this review helpful
150.4 hrs on record
Posted: November 11
i like this game
Was this review helpful? Yes No
34 of 43 people (79%) found this review helpful
1,175.1 hrs on record
Posted: November 11
Booted up the game and broke my pelvis, 8/8 would br8 again.
Was this review helpful? Yes No
48 of 67 people (72%) found this review helpful
31.3 hrs on record
Posted: October 30
DO WHATEVER YOU WANT TO DO!!!!!!!!!!!!!!!!!!!! GET THIS GAME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NO MY CAPS LOCK BUTTON ISN'T BROKEN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Was this review helpful? Yes No
28 of 35 people (80%) found this review helpful
39.8 hrs on record
Posted: November 6
Riding a Barthub into the depths of doom?
Making "he-mans" head as big as planet earth?
No worries garry's mod offers you all of these options!
Was this review helpful? Yes No
19 of 21 people (90%) found this review helpful
1,160.6 hrs on record
Posted: November 2
You don't input over 1000 hours in a ♥♥♥♥ty game.
Was this review helpful? Yes No
28 of 38 people (74%) found this review helpful
2,868.7 hrs on record
Posted: November 2
Download over 10 Games to play on one Game, then join a server and download 500+ addons, don't play the game and try joining other server's, join a TTT server, RDM happen's.

10.9999999/0 Would addon again.
Was this review helpful? Yes No
16 of 19 people (84%) found this review helpful
19.2 hrs on record
Posted: November 12
Thanks to this "game", I have pictures of:

Lara Croft kicking Nick from L4D2 in the face,
Chuck Norris attacking a helicopter with a grenade in each hand,
Gimli, Son of Gloin sneaking up on an unawares Balrog,
Alex from Half Life 2 cursing the heavens due to two handfuls of broken fingers.

10 out of 10.
Was this review helpful? Yes No
16 of 19 people (84%) found this review helpful
14.8 hrs on record
Posted: November 4
(╯°□°)╯︵ ┻━┻
Was this review helpful? Yes No
29 of 44 people (66%) found this review helpful
819.1 hrs on record
Posted: November 15
I mean,it's alright.
Was this review helpful? Yes No