Garry's Mod Logo
schedule 30 April 2019
Update

April 2019 Update

Another update and a privacy policy update.

Rubat
Programmer
Estonia
Among the usual smaller improvements, fixes and additions, this update also improves Left 4 Dead 1 map support, making the map textures no longer flicker and the cables/wires draw properly now. Here's before and after comparison: There are some improvements to the Half-Life campaigns in Garry's Mod - The Half-Life 2 episodes now have their episodic behaviors enabled and disabled automatically which fixes progression-stopping issues such as antlion nests on Episode 1 maps not being able to be covered with cars. Breakable props on Half-Life 1 maps will now also properly drop Half-Life 1 items and weapons instead of dropping the Half-Life 2 items. Hammer Editor got some updates as well, in addition to stability improvements you can now also use Middle Mouse Click to pan around the 2D and 3D views: The dropdowns also display more data now, so its easier to find what you are looking for when there are a lot of options. We have also updated the map compiling tools to allow more freedom to map makers - they will no longer remove models with 'wrong' versions during map compilation, which now also matches how Garry's Mod itself behaves. Lastly a new Lua feature was added for addon makers - clientside entities, which allows to create completely customizable entities only on the client. You can read the rest of the changes below.
We’re introducing some new terms to our privacy policy to cover off use of a tool, GameAnalytics. Please take a moment to read the full privacy policy, and keep in mind that by continuing to play Garry’s Mod on or after April 30th 2019, you agree to these changes. You can read the privacy policy here: https://gmod.facepunch.com/legal/privacy
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
add_circle

Features

  • Added SURF_SKY2D
  • Added DISPSURF_ enums
  • Added SurfaceFlags and DispFlags to TraceResult
  • Added net.BytesLeft
  • Added ImageCheckBox.Set/GetChecked
  • Added Entity.GetModelContents() = int
  • Added table.IsEmpty (Community Contribution)
  • Nextbot.BecomeRagdoll returns the ragdoll it created, if one was created
  • Added Panel.GetTooltip() and Panel.GetTooltipPanel() (Community Contribution)
  • Added MarkupObject to the registry (Community Contribution)
  • Player.Set/RemovePData() now return whether they were successful or not (Community Contribution)
  • Added PathFollower.PriorSegment
  • Added PathFollower.NextSegment
  • Added DNumberWang.Get/SetInterval (Community Contribution)
  • Added ENT.MaxWorldTipDistance and improved implementation of ENT:BeingLookedAtByLocalPlayer (Community Contribution)
  • Added DHorizontalScroller.GetCanvas
  • Added DHorizontalScroller.ScrollToChild
  • Added DHorizontalScroller.SetScroll
  • Added support for ENT:DoImpactEffect for "anim" entities
  • Added ents.CreateClientside
  • Added Entity.GetEntityInUse
arrow_circle_up

Improvements

  • Switched steamworks.FileInfo to ISteamUGC and added "children" and "error" keys (error will only appear as the only key in case of an error)
  • point_viewcontrol is no longer filetered from game.CleanUpMap()
  • halo.Add() with no entities will no longer try to draw empty halo
  • PlayerSilentDeath is called at a time which is more consistent with PlayerDeath hook
  • Panel.SizeToChildren() and Panel.ChildrenSize() no longer count panels marked for deletion
  • Panels marked for deletion will also no longer affect Dock()ing, just like invisible panels don't
  • file.Rename now forces filenames lowercase (both arguments)
  • file.Open now forces filenames lowercase for writing and reading from the data folder
  • file.* functions automatically remove double or more consecutive slashes
  • Error and ErrorNoHalt no longer have the 512 character limit
  • OnEntityCreated is now called when it is expected - when the entity is created (instead of when the entity is first pushed to Lua, which sometimes was never)
handyman

Fixed

  • Entity.GetBrushPlane no longer returns garbage for non brush models
  • error() no longer crashes with certain inputs and no longer cuts off text weirdly before and after symbol "]"
  • SWEP.DrawAmmo now disables correct HUD elements
  • DCategoryList.SetBackgroundColor now has an effect
remove_circle

Removed

  • Removed MarkupObject:Create (Community Contribution)