Garry's Mod Logo
Changes Header

Changes

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

arrow_circle_up

Improvements

  • TTT: Fixed GetEyeTrace override, potentially improving performance (Community Contribution)
  • TTT: Removed unnecessary GetWeapons and HasWeapon overrides (Community Contribution)
  • TTT: Updated language files (Community Contribution)
  • TTT: Added Italian translation (Community Contribution)
add_circle

Features

  • Added "sv_timeout_signon" for servers, affects how much time a player has to connect to the server before getting kicked for timing out
  • Added "Activator only" flag for env_fade in Hammer Editor
  • Added "Max Fog Density" to sky_camera in Hammer Editor
  • resource/localization/ files now load from addons properly
arrow_circle_up

Improvements

  • npc_launcher and its grenades no longer try to play NULL sounds causing performance problems
  • npc_launcher defaults to RPG rocket model and 500 launch speed if those keyvalues are unset
  • env_entity_dissolver will no longer remove players, will apply dissolve effect to players as expected, and will not credit its kills to a random player
  • Reduced spam from mount.cfg in console, moved certain fs_tellmeyoursecrets messages to fs_tellmeyoursecrets 2
  • Blacklisted servers display why they were blacklisted in console
  • Changed RENDERMODE_TRANSALPHA to TRANSCOLOR in Sandbox stuff like it should always have been
  • Missing localization now falls back to English rather than nothing
  • Add more explanations about comments in the mount.cfg itself to maybe hopefully help people figure out why it "doesn't work"
handyman

Fixed

  • Gamemodes with malformed gamemode.txt file no longer produce Lua errors in the main menu (Community Contribution)
  • RichText - Fixed links getting previous link signals in certain cases, fixed multi-line links going beyond panel bounds
  • Main menu no longer errors if we failed to load API manifest or its fields changed
  • Scripted entities clientside (SWEPS) update their Lua data before calling Initialize, not after
  • env_fade no longer crashes the game with its hidden activator only flag set and and the activator is null
add_circle

Features

  • Added IGModAudioChannel.GetPan
  • Added IGModAudioChannel.SetPan
  • Added IMesh.IsValid
  • Added PANEL:TestHover( x, y ) hook
  • Added SentenceDuration( name )
  • Added IGModAudioChannel.GetTagsHTTP()
  • Added IGModAudioChannel.GetTagsVendor()
  • Added IGModAudioChannel.GetTagsOGG()
  • Added IGModAudioChannel.GetTagsMeta()
  • Added IGModAudioChannel.GetTagsID3()
  • Added GM:OnScreenSizeChanged hook
  • Added GetPredictionPlayer()
  • Added effects.BeamRingPoint
  • Added effects.BubbleTrail
  • Added effects.Bubbles
  • Added util.Base64Decode
  • Added input.TranslateAlias( str )
  • "gmod_language" is now passed to loading screens
  • New members for PhysicsCollide hooks - OurSurfaceProps, TheirSurfaceProps, HitSpeed, OurNewVelocity, TheirNewVelocity, OurOldAngularVelocity, TheirOldAngularVelocity
  • Added 5th argument to SWEP:FireAnimationEvent - source entity, which will be the viewmodel entity on client and the weapon itself on server
  • search.GetResults now has a 3rd optional argument - maximum results to return
  • notification.AddProgress now has an optional 3rd argument - fraction - 0 to 1 value overriding the progress bar animation to show a desired value
  • Added Panel:SetTooltipPanelOverride
  • Added Entity.IsSequenceFinished()
  • Added effects.GetList() (Community Contribution)
  • Added BASSCHANNEL:Set3DEnabled()
  • Added BASSCHANNEL:Get3DEnabled()
  • Entity.PlayScene now has a second return value - the scene entity, removing which will stop stopping the scene
arrow_circle_up

Improvements

  • Entity.SetPhysicsAttacker works on more entities now, such as "anim" type SENTs and vehicles
  • ENT:TestCollision now reacts to "true" return value - allows the entity to collide as it normally would
  • Use floats for LuaParticle start/end sizes, fixing extremely small particle sizes not working (<1)
  • Adjusted visuals for notification.AddProgress and made them truly infinite
  • Entity.GetSequenceMovement() cycle arguments are now optional and default to start=0, and end=1
  • game.AddAmmoType() no longer fails silently if given bad ammo type name, and the ammo type name is no longer case sensitive (Community Contribution)
  • steamworks.FileInfo's fileid is 0 instead of internal InvalidID value for SteamUGC items
handyman

Fixed

  • Fixed net.Start's ErrorNoHalt crashing the game
  • Fixed Player.GetEyeTraceNoCursor caching & switched Player.GetEyeTrace(NoCursor) to use FrameNumber() over CurTime() (Community Contribution)
  • Derma Skin PaintShadow & PaintFrame no longer uses global SKIN and uses self instead (Community Contribution)
  • Entity.GetSequenceInfo now try to fill the activity field in case the model it is used on didn't use the ACT_ stuff yet
  • Negative playback rate now properly affects viewmodels
  • util.IsValidModel no longer returns false for precached clientside only dynamic models
  • ents.CreateClientProp's entity properly initializes its world matrix on creation
  • ents.CreateClientProp automatically precaches the model it is given
  • Calling ents.CreateClientProp with a model with no physics or no model and setting it later will no longer bail mid initialization and cause problems such as the prop not receiving projected textures, etc
  • Constraint library minor improvements and fixes
  • Entity.Remove() no longer sets FSOLID_NOT_SOLID while in a Physics callback, potentially causing crashing issues
arrow_circle_up

Improvements

  • Sandbox's prop_effect will now change its color if the player is looking at it, indicating which/if prop_effect will be picked up via Physics Gun/Tool Gun
  • Only allow vehicle boost/"nitro" in forward direction and only if we are not recovering from previous boost
  • Added closecaptions and subtitles for all languages supported by Half-Life 2 games
  • Switch spawnicon editor skins/bodygroups to sliders from dropdowns
  • Updated language files
  • Translated drag'n'drop right click drag dropdown menu
  • You can no longer modify unmodifiable Spawnmenu tabs (NPCs, Weapons, etc), but you can still copy from them to your spawnlists as usual
  • Display a console warning during addon mounting when an addon contains a Lua file already mounted from another addon
  • "Missing map somemap.bsp, disconnecting" error now tells the player if their cl_downloadfilter is set to not download maps and how to fix it
  • Renamed Other tab back to Multiplayer in the Options menu
  • Added "Do not download Workshop addons" option to the download filter in Multiplayer Options menu
  • Spawnmenu resizes save between sessions
  • Added "Revert changes" button when editing spawnlists
  • Sprinting and clicking on spawnicons no longer selects them and allows the player to spawn things
  • Area selection while holding Shift key only adds to current selection, while holding Control will invert current selection (old behavior)
  • Holding control key (CTRL) now also toggles multi-selection in spawnmenu
  • Adjusted minimum sizes for spawnmenu areas to work better on extremely small resolutions
  • Increased brightness on some map icons (Half-Life Source) so you can actually see what's on them and added some missing icons for Left 4 Dead and Counter-Strike: Global Offensive maps
  • Moved certain community made maps from Counter-Strike games into their own category (aim, fy, awp, etc)
  • Renamed certain games in the mountable games list to more closely match their actual names on Steam
  • Do not complain about undefined water overlays in console
  • TTT: Updated Portuguese translation (Community Contribution)
handyman

Fixed

  • Fixed func_breakable being misaligned on Half-Life: Source maps
  • Fixed Half-Life: Source snarks not attacking anything when spawned from spawnmenu on flat surfaces
  • Fixed Faceposer tool forcing hidden "useless" flex controllers to 0 causing problems with other flexcontrollers, such as eyelid control on Team Fortress 2 player models
  • Half-Life: Source turrets start in retracted animation rather than in the firing? animation
  • Restored close caption support
  • Fixed certain build-in chat messages getting cut off if player's name is too long
  • Very tall disconnect messages are no longer being cut off vertically midway and don't go off screen
  • Fixed a progression stopper on d2_coast_11.bsp if "Keep Corpses" option is turned on
  • Fixed a progression stopper on c2a5g.bsp (not being able to use the airstrike controls)
  • Level transitions (as well as loading engine saves) no longer resets Suit Power as well as Crouched and Flashlight states
  • Combine Soldiers, Metrocops, Stalkers, Zombine, Eli and Antlion Guards get their custom footsteps back
  • Death ragdolls copy dead NPC/Player's flex and bone manipulations, as well as RenderFX and targetname (serverside ragdolls)
remove_circle

Removed

  • Disabled overview_mode completely (Counter-Strike like radar), it was used to cheat, and is completely replaceable by Lua
arrow_circle_up

Improvements

  • Minor changes to Workshop subscriptions
  • Workshop server downloads: Also try to mount the old steamworks.Download files if they exist
  • Include Workshop file ID for the "There is no file to mount" console error message
  • Improved Offline Mode for workshop addons - now uses the cached subscribed list from Steam
  • Do not mount already mounted Workshop files when joining servers
handyman

Fixed

  • Do not try to mount Workshop files we failed to rename when joining a server and mount the old file instead
  • Fonts are now properly extracted from Workshop addons when joining severs
  • Resolved some issues with stuck download prevention for server Workshop downloads
  • Subscribing to addons with missing Type tags while in-game no longer fails