Garry's Mod Logo
Changes Header

Changes

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

add_circle

Features

  • Added Half-Life 1 weapons and ammo entities to the spawn menu
  • Half-Life 2 NPCs can now use Half-Life 1 Glock and the Half-Life 2 .357 Magnum
  • Given all Half-Life 1 weapons 3rd person player animations
  • Given all Half-Life 1 weapons proper world/3rd person models
  • Players can now run over friendly NPCs with vehicles
  • Prop gibs now inherit the color of the broken entity
  • Added icons for NPC only weapons and for some missing Half-Life 1 NPCs
  • Static props get their proper color if the map supplies the information
  • Rotating prop doors are now breakable if the model supports the feature and map designer has the feature enabled (Retroactively works on existing maps, such as L4D and CS:GO maps)
arrow_circle_up

Improvements

  • Names of default weapons in spawnmenu are no longer all uppercase
  • Adjusted 3rd person seating positions for Jalopy and Crane models
  • hud_draw_fixed_reticle is no longer saved across sessions
  • Elite Combine soldiers will no longer try to fire their Energy Balls (and make the noise/stop shooting) if their currently equipped weapon does not have an alt fire (i.e. is not AR2)
  • Elite Combine soldiers can now use their Energy Balls against any NPC or player, not just player allies
  • Increased Undo limit in Spawnmenu's Undo section from 32 to 100
  • Changed spawnpoint entity for Left 4 Dead maps from info_survivor_position to info_survivor_rescue
  • Updated many spawnmenu NPC icons to be brighter
  • Updated language files
  • Half-Life 2 Grenade is stripped with no ammo as expected, on holster or after throw
handyman

Fixed

  • Fixed a crash issue with weapon_striderbuster
  • Updated BASS.DLL to an unreleased version for potential crash fixes
  • Fixed progression stopper at c3a2d.bsp from Half-Life: Source
  • Half-Life 2 Barnacle no longer crashes the game with invalid physics objects
  • Fixed Half-Life 1 weapon shell eject effect, sounds, effects and NPC muzzle flashes
  • Fixed missing S.L.A.M sound
  • Tickrate is now reset on client when disconnecting from a server
  • Fixed prop_vehicle_crane's interference with vehicle 3rd person camera and properties system
  • Sandbox Desktop Widgets feature (Context menu icons like Player Model Selector) no longer prevents properties system from being able to target entities, and will automatically stretch to fit its contents with too many icons
  • Fixed Citizens being unable to guide RPG rockets into Gunships
  • Fixed SMG1 and AR2 fired by NPCs cutting off previous firing sounds
  • Fixed SMG1 alt-fire grenade smoke effect always pointing up
  • Fixed some addon props missing from spawn menu search
  • Entering a full model path (models/whatever.mdl) will properly find the model in the Spawnmenu search
  • The game no longer tries to play missing/non-existent .mp3/.ogg files
  • Fixed "BAD STATIC LUMP V101" error message on some CS:GO maps
  • Trails tool clamps its values in the Duplicator function, not in the tool to fix an exploit
  • Trails tool will no longer create invisible trails (0 start and end sizes)
  • Players can now exit the noclip drive mode (exit driving Lamps in Sandbox) by pressing E
  • Performing an undo from the Undo section of the Spawnmenu properly removes the selected entry
  • Fixed a crash issue caused by Lua errors in Addons Menu (Main Menu) under very specific circumstances
  • Fixed Server Settings not always applying ("not saving") when starting a new server from the Main Menu
  • NPCs will be less likely to fall through ground when spawned on a slope (Community Contribution)
  • Fixed Half-Life 1 Gargantua making sounds when removed (including when changing NPC relationships)
  • Fixed Half-Life 1 snark and turrets as well as Half-Life 2 ceiling turret not respecting relationship changes while attacking
  • Fixed Half-Life 1 Nihilanth's and Bullsquid's projectile attacks not being credited to the NPC
  • Fixed Half-Life 1 Nihilanth not attacking when spawned through the Spawnmenu
  • Fixed Half-Life 1 Barnacle, Leech, Cockroach and Half-Life 2 Barnacle not showing up in kill feed when killed
  • Fixed Manhacks and Scanners killed by physics objects (props, AR2 alt-fire) not being credited to the player
  • Restored Combine Soldier pain sounds
  • Added missing Lost Coast scenes so players can now complete the map
  • Fixed Citizens and Alyx not being able to pickup any weapons
  • Restored impulse 50 console command (tell Citizens in player squad to move to where the player is looking)
  • You can switch to Satchel Charge even if it has no ammo left
  • Fixed certain NPC deaths such as Striders to not working as expected
  • Fixed the weapon constraint not breaking when it should if the weapon has SF_WEAPON_START_CONSTRAINED spawnflag set causing weapons to float when their carriers are killed
remove_circle

Removed

  • Disabled SHIFT+F2 opening "demoui" in multiplayer
add_circle

Features

  • Added point_spotlight features from Alien Swarm - SetColor and ForceUpdate inputs
  • Added beam_spotlight entity from newer Source Engine games
  • Added info_target features from Alien Swarm - "Spawnflag 2 - always transmit"
  • Added spawnflag 1 to lua_run entity - Run code on Spawn (Community Contribution)
  • Added 262144 spawnflag to Nihilanth to automatically enable his attacks (Used by the spawnmenu)
  • prop_dynamic additions from newer Source Engine games - new HoldAnimation & AnimateEveryFrame keyvalues, new SetAnimationNoReset, BecomeRagdoll and FadeAndKill inputs
  • prop_door_rotating will automatically block nav areas when its locked
  • prop_door_rotating new input: MoveToRotationDistance, new output: OnRotationDone, new spawnflag: 524288 - Start breakable (unset by default)
arrow_circle_up

Improvements

  • RCON no longer accepts clients and reads from them when there is no RCON password set on the server
  • RCON will drop connections that try to send too much data
  • Added safeguards for Player.GetVehicle not returning a vehicle in properties system (Community Contribution)
  • Minor optimizations by replacing table.Count comparisons in TTT and Duplicator icon generation (Community Contribution)
  • Restore active gamemode when disconnecting from a server more thoroughly
  • Replaced usage of type( var ) == "type" with is<type>( var ) (Community Contribution)
  • Do not empty Lua cache on disconnect, it causes problems with retry command in local multiplayer
  • The Undo system will no longer add empty Undos onto its list
  • SetHealth input on NPCs will pass the activator as attacker to try to improve kill feed messages
handyman

Fixed

  • Fixed bspzip.exe not working properly
  • dumpgamestringtable no longer crashes the game
  • Fixed muzzleflashes sometimes not displaying at all when they should
  • Restored MAX_DOWNLOADABLE_FILES to 8192 from 4096
  • DListBoxItem now properly checks its IsSelected() state for drawing selected state rather than relying on DListBox not having mutliple selections and testing whether the selected item has the same text as its own text
  • Fixed console errors related to saving of weapon_gauss
  • The game will no longer crash if it doesn't have a matrix to render a model with
add_circle

Features

  • Added Entity.GetParentWorldTransformMatrix
  • Added Panel:IsWorldClicker
  • Added Player.GetAmmo
  • Added CLuaLocomotion.GetNextBot
  • Added PathFollower.GetGoalTolerance
  • Added PathFollower.GetMinLookAheadDistance
  • Added CNavArea.AddHidingSpot
  • Added list.HasEntry (Community Contribution)
  • Added SF_LUA_RUN_ON_SPAWN global for addons (lua_run entity)
  • Added util.GetModelMeshes( strModel, lod = 0, bodygroupMask = 0 ) (Community Contribution)
  • net.BytesLeft and net.BytesWritten now return 2 values - second being the bit value
  • Added ability to disable the tooltip via argument to SetColor for DColorButton panel (Community Contribution)
  • DynamicLight now as a second parameter to allocate ELights when set to true - Used for Sandbox Light tool
  • CNavArea.GetHidingSpots how has an optional 1st argument - flags
  • Entity.GibBreakClient now has an optional second argument, to override the gib color
  • VectorRand and AngleRand now have optional min and max arguments (Community Contribution)
  • Added GM:OnPhysgunPickup hook, called after PhysgunPickup after a successful pickup has happened, to mimic GravGunPickupAllowed and GravGunOnPickedUp
  • Giving Matrix() another matrix will now copy its values, instead of erroring
arrow_circle_up

Improvements

  • Corrected BASS.DLL error code names (sound.PlayURL/File)
  • prop_vehicle_crane is now considered a vehicle by Lua
  • ENT:HandleAnimEvent now works for "ai" NPCs too
  • Fixed ENT:Use not working for "ai" SENTs
  • surface.CreateFont()'s maximum size is now 255 (from 128)
  • Limited blursize of surface.CreateFont to 0-80 (inclusive) to avoid crashes
  • Enabled BASS_CONFIG_NET_PREBUF_WAIT to improve sound.PlayURL reliability
  • Fixed file searches (file.Find included) ignoring addons sometimes
  • util.JSONToTable now ignores the UTF-8 Byte Order Mark (BOM)
  • The 1st argument of CNavArea.IsBlocked is now optional
  • table.ToString handles colors better (Community Contribution)
  • math.Clamp nano optimization (Community Contribution)
  • RunString will display a better stack trace on error
  • Moved where DTextEntry.AllowInput is called from so it also catches pasted text
  • Blocked running "gamemenucommand quitnoconfirm" from non-menu state
  • Better physenv.AddSurfaceData, util.KeyValuesToTable and util.KeyValuesToTablePreserveOrder errors in console on failure
  • Beam functions in the render library were rewritten to be less insane
  • SendLua/BroadcastLua/lua_run_cl will print its code to console on Lua error to help track down the problem source if the developer ConVar is set to non 0
handyman

Fixed

  • Fixed ai.GetTaskID returning values on wrong scale
  • Changes to Vehicle.CheckExitPoint to make it functional
  • DHorizontalScroller no longer errors when its children are missing the ApplySchemeSettings hook definition
  • Fixed a crash issue when steamworks.FileInfo does not successfully complete
  • Spawnmenu and Contextmenu hook fixes (Community Contribution)
  • Restored SetNWVarProxy to working condition (both clientside and serverside, moved previous SetNWVarProxy stuff to SetNW2VarProxy, etc.)
  • Entity.Remove will no longer crash trying to make crazy physics objects non solid
  • Entity.RemoveAllDecals works on brush entities too now (Community Contribution)
add_circle

Features

  • Added icons to Spawnlist right click menus
  • Added Hints for spawnmenu editing features
  • Added No Collide option to Weld tool (Community Contribution)
  • Added Toggle option to Hydraulic tool
  • DPropertySheet tabs can now be right clicked to quickly switch between tabs when they overflow DPropertySheet's width
  • Added Legal tab to Options menu
arrow_circle_up

Improvements

  • Automatically enable and disable hl2_episodic on map load depending on map prefix, to improve/fix gameplay on maps from Half-Life 2 Episodes
  • Updated TTT (Community Contribution)
  • Updated AI nodegraphs for gm_construct and gm_flatgrass
  • Minor changes to Spawnicon Editor - Added tab icons and sligltly improved performance
  • Updated language files (Community Contribution)
handyman

Fixed

  • Fixed Half-Life 2 barnacle putting players into an invalid state if they are being eaten and the barnacle gets removed
  • Fixed Flechette Gun console spam and multiplayer effects
  • Left 4 Dead 1 map geometry no longer flickers (Unsupported $detailblendmode modes fallback to 0)
  • Fixed cables on Left 4 Dead 1 maps ( and probably post L4D1 maps too ) being invisible. SplineRope shader fallbacks to Cable shader
  • Half-Life 1 NPCs no longer can talk to acting NPCs, putting them into invalid state
  • Fixed particles with material proxies crashing the game
  • func_breakable will drop *_hl1 versions of the Half-Life 1 weapons
  • Fixed a small issue with Hydraulic tool which required players to press the button twice after initial spawn
  • Unknown Windows languages no longer crash the game when right clicking text areas
  • npc_metropoilce will acknowledge existence of multiple players in multiplayer
  • Certain player weapons (hl1, bugbait, etc) are no longer removed on map cleanup
add_circle

Features

  • Added support for $treeswaystatic
  • Middle Mouse Click on Hammer 3D view now acts as mouse look
  • Added SetWindDir( int ) input to env_wind
arrow_circle_up

Improvements

  • CBaseVPhysicsTrigger-based triggers set their solidity when their physics are created depending on whether they are enabled or not
  • Some minor fixes to triggers from newer Source Engine (Don't try to hurn disconnected players, trigger push lagcomp change, dead players can no longer touch triggers)
  • Switched Lag Compensation back to local coordinates from absolute ones to fix vehicle seat position shifting
  • Better multiplayer support for env_zoom and point_viewcontrol
  • env_screenoverlay will now disable its overlay if it was enabled when it is removed
  • Updated BASS.DLL to 2.4.14-mp3free
  • Some (Inputs/Outputs/targetnames) Hammer Drop Downs will size themselves to fit up to 15 elements at the same time instead of the old random 5 to 9
  • Adjusted colors of Source Engine checkboxes for better contrast
  • VRAD and VBSP no longer check for model versions (but still display warnings)
  • Use table.IsEmpty instead of table.Count where possible (Community Contribution)
  • Updated VRAD to the latest TF2 version we have (Feb 2016)
  • gmad.exe now auto ignores thumbs.db and desktop.ini
  • lua_error_url is reset when player starts a local multiplayer game and will receive the proper GMod version
  • Reset active gamemode on client after exiting a server to prevent crashing when starting a new game
  • Forced net_maxroutable to its default value on level init to hopefully fix getting stuck on the loading screen
handyman

Fixed

  • Fixed func_detail smoothing groups not working (Community Contribution)
  • Fixed OnFlashlightOn/Off not working for logic_playerproxy
  • Removing physics object of a Jeep or Airboat will no longer crash the game server, but you still shouldn't do it
  • Prisoner Pods/Chairs and Airboats update water level of their drivers just like Jeeps do
  • Fixed Hammer crashing when trying to load over 1024 models at the same time and other stability improvements
  • Fixed a server crash issue when an entity has "angle" key value (opposed to "angles")
  • Fixed a server crash issue when Player.SendLua has created a Lua error
  • Fixed "starts locked" spawnflag not working on spawn for func_rot_button
  • Clientside Lua errors will no longer be sent to servers from previous client connection
  • Fixed crash exploit when overriding material with certain naughty materials