Garry's Mod Logo
add_circle

Features

  • •
    Added some generic logic entities from Portal 2 - logic_register_activator, logic_coop_manager, point_viewcontrol_multiplayer, point_viewproxy
  • •
    Added new inputs/keyvalues to prop_vehicle_choreo_generic from Portal 2
  • •
    * Inputs: SetCanShoot, UseAttachmentEyes, SetMaxPitch, SetMinPitch, SetMaxYaw, SetMinYaw
  • •
    * Key-values: PlayerCanShoot, UseAttachmentEyes
  • •
    Enable DMX versions 3, 4 and 5 loading for particles from newer Source Engine games
  • •
    Ported most particle related features from CS:GO
  • •
    Added 2 new spawnflags to env_player_surface_trigger - Trigger on player(s) leaving ground & Set output activator to the player
  • •
    Added new inputs to game_text - SetText, SetPosX, SetPosY, SetTextColor, SetTextColor2
  • •
    Added new inputs for game_player_equip - TriggerForAllPlayers and TriggerForActivatedPlayer, as well as "Strip All Weapons First" spawnflag
  • •
    Added skybox_swapper entity
  • •
    Added logic_eventlistener and logic_eventlistener_itemequip from Team Fortress 2
  • •
    Added point_worldtext entity (CS:GO version) and added most Team Fortress 2-exclusive features into it
  • •
    Added logic_random_outputs entity
  • •
    Added fog_volume entity
  • •
    Added trigger_tonemap entity
  • •
    Added env_ambient_light entity
  • •
    Added point_entity_finder entity
  • •
    Added particle-based func_precipitation types from CS:GO
  • •
    Added ability to override func_precipitation particle systems by name
  • •
    Added func_precipitation_blocker entity
  • •
    Implemented origin for playlooping/playrandom and ambientOriginOverride for "playSoundscape" in soundscapes
  • •
    Added new options to Run Map dialog in Hammer
  • •
    Restored "JellyFish" shader (Partially Community Contribution)
  • •
    Added hostile keyvalue to npc_citizen - Will be treated as a combine. Useful for NPC reskins to not have combine noises. Or just for fun.
  • •
    Implemented experimental 24-bit color support for Windows Dedicated Server console, and proper color support on Linux SRCDS
  • •
    Implemented HDR override for fog colors for 20th anniversary Half-Life 2 maps (Also available in Hammer for mappers)
  • •
    Added Master spawnflag to env_tonemap_controller
  • •
    Added SetMaxDensityLerpTo input & HDRColorScale key-value to env_fog_controller
  • •
    Implemented AttachToVehicle input for npc_fastzombie
  • •
    Added sv_maxvoicepacketsperframe console variable
  • •
    Enable "flammable" "no" prop interaction, to prevent props from igniting on explosion damage (for modellers at compile time)
  • •
    Added min_use_angle for func_button from CS:GO
  • •
    Added DisappearMinDist & DisappearMaxDist key values to func_lod (DisappearDist being deprecated and hidden, but still working)
  • •
    Added GetSpeed and SnapToStartPos to func_rotating entity
  • •
    Added AffectedByWind keyvalue to func_dustmotes entity
  • •
    Added trigger_playermovement auto walk and no jump spawnflags
  • •
    New localisation phrases in community.properties (Community Contribution)
  • •
    Added ip_steam console variable
  • •
    Added sv_usercmd_custom_random_seed console variable
  • •
    Added sv_showimpacts console variable
  • •
    Added radius support to env_wind
  • •
    color_correction entities now work correctly with fog_volume - Adds Master and Simulate clientside spawnflags
  • •
    Upgraded ColorCorrectionUI to CS:GO's version with ability to load saved presets
  • •
    Added Quick Switches to the console dialog, allowing easy usage of common console commands and variables for debugging purposes
  • •
    Added inputs to env_skypaint in Hammer for mapping
arrow_circle_up

Improvements

  • •
    Do not estimate velocity clientside since we network it for every entity anyway
  • •
    * Use networked velocity for entities that set it serverside
  • •
    * Physics entities such as props, vehicles, SENTS do not set their velocity, since its all handled by the physics engine, so it ends up not actually being networked
  • •
    Moved "SOLID_VPHYSICS static prop with no vphysics" warning to developer 1
  • •
    Made particle preview background slightly lighter (32,32,32)
  • •
    Set the default particle orientation in Particle Editor on creation
  • •
    Added particle material name to "unimplemented sprite renderer" warning (.pcf particles)
  • •
    Force Sandbox tool classnames to lowercase at all times to fix a bug in multiplayer where the client and server classname could have mismatching capitalization
  • •
    Applied potential filesystem optimization suggested by the community
  • •
    Micro optimization for SWEP think
  • •
    Optimize DListView_Line - Remove DListViewLabel's Think function since it does nothing in DListView_Line anyway
  • •
    Minor code quality & performance improvements to Toolgun Help, RenderTarget related Lua code, skypaint matproxy, ToolGun and Post Processing control panels, ents.FindByClassAndParent, removed deprecated calls to ControlPanel:AddControl, Workshop Mount VGUI, Sandbox hints, Removed unused JS dependencies in main menu - angular-ui, jquery-ui, jquery-color, AngularJS from 1.1.2 to 1.8.2, cleaner server list layout code & Better display on small screens (Community Contributions)
  • •
    Micro optimization for Entity.__index (Community Contribution)
  • •
    Micro optimizations for team library (Community Contribution)
  • •
    Potential micro optimizations in localization loading/parsing
  • •
    Store disabled workshop addon IDs as Uint64 instead of IDs turned to strings - should save some memory
  • •
    Clear CShadowDepthView to black instead of white - fixes reflective glass on certain maps having while glow with flashlight turned on
  • •
    Do not throttle loopback (local servers) connections when sending data from server to client
  • •
    Check allocated edict count before allocating more - this should prevent "ED_Alloc: no free edicts" crashes when spam spawning hundreds of entities per second
  • •
    Improved X-axis text inset handling with center alignment (for DButton when an icon is use)
  • •
    Change Hitbox 7 color from white to orange for the debugging console variable and HMLV
  • •
    Search for shaders in map file if none were found in the game folder
  • •
    Added "shaders/*.vcs" to BSP whitelist
  • •
    Updated screenspace_general shader with some CS:GO features
  • •
    * Removes $X360APPCHOOSER (Use $VertexColor)
  • •
    * Adds $VERTEXSHADER
  • •
    * Added most CS:GO parameters except for C4* and C5* parameters
  • •
    Enable sv_parallel_sendsnapshot by default
  • •
    Display a warning when async file read operation tries to read more bytes than there are in the file
  • •
    Display HTTP error when FastDL fails to download a file and if it's not a 404 error
  • •
    Made lua_run entity keyvalues case insensitive
  • •
    Call Entity:SetCreator on all Sandbox spawned entities, not just SENTs (Community Contribution)
  • •
    Filled in some GMod specific console variable descriptions that are defined in C++
  • •
    Added shader name to "failed to create shader" console error message
  • •
    Rework how LZMA decompression works for BSP files to be more reliable and less wasteful
  • •
    Added more useful info to Client=>Server and Server=>Client GMod specific net message ToStrings for debugging purposes (net_showmsg)
  • •
    Unhide sv_maxspeed console variable
  • •
    Do not read mapcycle.txt file from addons or mountable games
  • •
    Added weapon class name & entity index to "Weapon spawning in solid" console warning
  • •
    Exit SRCDS (with a message) if GSLT is invalid or expired (can still not provide one), instead of never connecting to Steam. This behavior is consistent with CS:GO. hide_server 1 can be used to hide your server from the server list.
  • •
    Added description for debug_dump console command and print more info about what it did when ran
  • •
    Rollermine uses two-pass render group when open instead of translucent, this makes it render better with SSAO pass (such as with Bokeh DOF)
  • •
    Allow Map I/O to convert integer/float parameters to strings automatically
  • •
    Unhide sv_hl2mp_weapon_respawn_time/sv_hl2mp_item_respawn_time
  • •
    Also made mp_weaponstay work for map spawned entities, by respawning them
  • •
    Update verbosity of "Out-of-range value" warnings
handyman

Fixed

  • •
    Fixed some minor memory leaks - These are mostly in developer features to do with KeyValues, not normal gameplay
  • •
    Initialize m_rgflCoordinateFrame on creation clientside - This fixes certain matrices being nulled out when they are not supposed to, such as when calculating prop_vehicle_choreo_generic look angles
  • •
    Allow loading PCF version 2 in -tools Particle Editor
  • •
    Fixed many, many potential crashes with the particle system
  • •
    Fixed missing materials with legacy Ash precipitation type
  • •
    Fixed 2 "Parent cvar in server.dll not allowed" warnings on client start up
  • •
    Do not print cc_lang = with developer 1
  • •
    Fixed "Not playing a local game" being printed on game start up
  • •
    Fixed some warnings on map load when Portal 1 or Half-Life Source are not mounted
  • •
    Fixed crashes with func_tank
  • •
    Fixed crash when ents.CreateClientProp is given an empty string
  • •
    Fixed logic_collision_pair and some other obscure entities not calling GM:EntityRemoved
  • •
    Remove NULL entities from Entity.Constraints table when associated constraints are removed
  • •
    * Fixes for tanktrain_ai
  • •
    * Fixed sound playback and updated default sounds to existing files
  • •
    * Added "Chase Target" key value
  • •
    * Added missing "Target Entity" input to the FGD
  • •
    * Fixed movement direction selection & movement speed
  • •
    * !player target will update to the closest player before every move
  • •
    * Change update rate while moving to 0.1s (from 0.5)
  • •
    Updated RPG viewmodel to use correct muzzle flash event and prevent console warning when firing
  • •
    Fixed a server crash exploit to do with malicious packets
  • •
    Fixed bone manipulations (scale, position) being transformed by how much the player moved on level transition
  • •
    Fixed which entity is the inflictor/weapon in CTakeDamageInfo when firing built-in C++ weapons, including when NPCs fire them, as well as trigger_WateryDeath.
  • •
    Fixed small potential memory leak with creating Lua bone followers
  • •
    Fixed a small memory leak in gamemode .txt file parsing
  • •
    Fixed a small memory leak with saving presets (presets library)
  • •
    Fixed "Bad SetLocalOrigin on gmod_hands" warnings (Community Contribution)
  • •
    Prevent .ani files from loading if they would crash the game i.e. if the .ani file is smaller than the model expects it to be
  • •
    Update jQuery version and reduce reliance on it in main menu, as well as lazy load images (Community Contribution)
  • •
    Do not crash with "bad inline model number", show a console warning instead
  • •
    Fixed bone manipulated entities' render bounding box being set to invalid sizes with certain models
  • •
    Fixed "Toggle" input on some triggers improperly toggling the entity
  • •
    Fixed console warning about missing material when opening Options menu
  • •
    Fixed max player speed not being set when trying to slow walk with +walk but slow walk is disabled via Player:SetCanWalk
  • •
    Do not unexpectedly reduce maximum health on dead entities
  • •
    Play act console command animations on the server as well (for hitboxes)
  • •
    Fixed a stack overflow in TextEntry scrolling
  • •
    Fixed a rare crash when net_showmsg console variable is in use
  • •
    "Fixed" an infinite loop in memory allocation by exiting the engine/tool with a nice message
  • •
    Prevent developer only messages about bone access not being allowed with util.DecalEx in multiplayer
  • •
    Fixed MP3s recaching 2 times in a row sometimes for no reason
  • •
    Fixed cache size not being able to exceed 65kb per item
  • •
    Make MP3s skip the ID3 data immediately on cache, not on first playback. This makes loading a bit slower per-file, but makes it so we don't need to cache upwards of 400KB of unused data per MP3 for playback without hanging the game
  • •
    Increased amount of cached data for MP3s to satiate initial burst of data access by BASS.DLL (from 16K to 96k) This was preventing asynchronous load of the entire file
  • •
    Fixed SWEP.ViewModelFlip making view model sway backwards
  • •
    Fixed scrollbar parent resizing not adjusting scrollbar grip position (Lua scrollbar panels)
  • •
    Fixed CRopeKeyframe having huge serverside bounds when not attached to anything, such as being the last entity in a series
  • •
    Fixed trigger_remove OnRemove output not working at all
  • •
    Made cmd console command not kick people (And hide it)
  • •
    Fixed .gma files being left open in some cases if they failed to load/parse
  • •
    Prevent potential crashes to do with traces on models
  • •
    Materials using the SpriteCard shader can now render correctly with render_sprite_trail particle renderer
  • •
    Mitigate invalid vehicle scripts causing server crashes
  • •
    Fixed player_squad NPC squad being overflown when spawning too many npc_alyx or npc_citizen entities
  • •
    Fixed spawnmenu NPC squads being overflown when spawning many NPCs in the same faction at once
  • •
    Fixed infinite loop with removing world decals
  • •
    Fixed input parameter type for prop_ragdoll's StartRagdollBoogie input
  • •
    Fixed out of bounds pose parameters sometimes getting garbage values
  • •
    Fixed a crash in trace code that could happen after a changelevel
remove_circle

Removed

  • •
    Removed scratchpad from game builds
  • •
    Removed bloodspray console command
  • •
    Removed some perforce VGUI panels from builds
  • •
    Removed some useless strings from garrysmod_english.txt
  • •
    Removed mat_surfaceid and vgui_drawtree_panelptr console commands/variables
  • •
    Removed unused resource/chromium/ folder
  • •
    Removed non existent commedit.dll from sdkenginetools.txt
  • •
    Removed cl_threaded_client_leaf_system console variable, which was doing nothing since 2016, except to mislead people
  • •
    Removed sv_autojump as it also does nothing besides misleading people
  • •
    Removed hack for Intel GPUs that disabled Shader Model 3 shaders
  • •
    Removed some clientside weapon stubs for non existent weapons
  • •
    Removed usage of DOFModeHack from Bokeh DOF
  • •
    Remove cl_customsounds as it no longer has an effect on anything