2018.02.26 February 26 2018
  • Lua API Changes
  • new

    Added NPC.GetCurrentSchedule

  • new

    Added File.ReadUShort

  • new

    Added File.ReadULong

  • new

    Added File.WriteUShort

  • new

    Added File.WriteULong

  • new

    Added CreatePhysCollideBox

  • new

    Added PhysCollide:TraceBox

  • new

    Added PhysCollide:Destroy

  • new

    Added PhysCollide:IsValid

  • new

    Added mesh.UserData

  • new

    Added ENT:GetRenderMesh

  • new

    Added GM.PlayerDroppedWeapon( ply, wep )

  • new

    Added CNavArea.SetCostSoFar( num )

  • new

    Added type error to render.Capture

  • new

    NextBot functions now properly error if used on invalid entity

  • new

    IMesh:BuildFromTriangles can do userdata too

  • fixed

    Fixed errors when calling Setup() without second argument on DProperty_Float and DProperty_Int

  • fixed

    Fixed deriving from DDragBase requiring to define OnModified

  • fixed

    Fixed Panel.InvalidateChildren being always recursive

  • fixed

    Fixed Panel.NewAnimation ease values 0-1 being weird

  • fixed

    Fixed calling SetAllowWeaponsInVehicle( false ) in PlayerLeaveVehicle hook breaking weapon selection

  • fixed

    Fixed DBinder not working when its convar is set to NaN

  • fixed

    Fixed DBinder overriding SetSelected( bool )

  • fixed

    Fixed util.GetModelInfo crashing with empty string

  • fixed

    Fixed a crash issue with Weapon functions

  • fixed

    Fixed NeedsDepthPass not working for addons

  • fixed

    Fixed string.Comma with very large numbers

  • fixed

    NextBot.GetRangeSquaredTo now actually works the way it's intended to, by returning squared range

  • fixed

    Updated most render library functions to not lock up when a Lua type error occurs during function execution

  • fixed

    Prevent potential stack overflows in scripted_ents.Get

  • fixed

    Fixed the utf8 library failing with certain UTF8 strings

  • updated

    Switched base_anim to CBaseAnimatingOverlay, allowing more functions to be used on "anim" entities

  • updated

    DProperty_VectorColor now works with standard colors as well ( vector color support unchanged )

  • updated

    Added better type checking and error output to NextBot.GetRange(Squared)To()

  • updated

    render.Capture can no longer capture Steam Overlay

  • updated

    cam.Start() will now error when given no arguments

  • removed

    Removed NPC.RemoveMemory

  • Game Changes
  • updated

    Added translations for env_fire and npc_fisherman when shown in the kill feed

  • updated

    Updated TTT to the latest version

  • updated

    Increased offset for rollermine to prevent it from spawning below ground

  • updated

    Changed maximum value for Frame Blend's Shutter slider so it doesn't just black screen

  • updated

    Changed the link on the version button in main menu to link to the new website

  • updated

    Updated all built in weapons to work better with NPCs

  • fixed

    Properly turn off thirdperson on level shutdown

  • fixed

    Fixed certain tools erroring when their console variables are set to "nan"

  • fixed

    Applied a potential fix to stop tooltips from being displayed when they are not meant to be displayed

  • fixed

    Improved flashlight effect on custom entities

  • fixed

    Fixed Stunstuck sprites rendering in weird positions

  • fixed

    Clientside ragdolls of dead NPCs will now properly inherit material override

  • fixed

    Serverside ragdolls of dead NPCs will now properly inherit color and material override

  • Engine Changes
  • updated

    Updated BASS.DLL to 2.4.13.8-mp3free

  • updated

    Potentially improved vrad.exe performance

  • updated

    Better "Error loading gamemode:" errors that actually describe what's wrong

  • fixed

    Fixed support for Zombie Panic! Source mounting

  • fixed

    Fixed hammer_update_entity console command crashing the game

  • fixed

    Fixed a bunch of different exploits

2017.12.11 December 11 2017
  • Engine Changes
  • fixed

    Fixed soundscapes on some custom maps not working in multiplayer

  • fixed

    Fixed off-by-one error with GMA FileHandle seeking

  • fixed

    Fixed potential deadlock in multicore rendering when messing with colour correction

  • fixed

    Fixed an issue where removing ai_network before game.CleanUpMap() will crash the game

  • fixed

    Fixed kickid command appending a space to kick reason

  • fixed

    Fixed crash issues with vehicle radars

  • fixed

    Fixed a client crash related to clientside bone manipulations

  • fixed

    Fixed a common material system crash with multicore rendering

  • fixed

    Properly handle VOX sentences that fail to load instead of crashing later

  • updated

    Improved crazy physics prevention when welding world to certain props

  • updated

    Better handling of version 49 model format that differs between games

  • updated

    Mac OS builds use libc++ & 10.7 SDK

  • updated

    Changed the default value for tv_maxclients from 128 to 64

  • updated

    Dedicated Server will print P2P address to console when P2P is enabled

  • updated

    Improved Version 21 map support

  • Lua API Changes
  • new

    Added engine.ServerFrameTime

  • new

    Added the missing TYPE_PROJECTEDTEXTURE enum

  • new

    Added a callback for steamworks.RequestPlayerInfo that is fired when the info is received

  • new

    Added DTextEntry.SetPlaceholderText

  • new

    Added DTextEntry.SetPlaceholderColor

  • new

    Added CNavArea.Remove

  • new

    Added CNavArea.SetCorner( int corner, Vector v )

  • new

    Added CNavLadder.Remove

  • new

    Added CNavArea.ConnectTo( CNavArea/CNavLadder )

  • new

    Added CNavArea.Disconnect( CNavArea/CNavLadder )

  • new

    Added CNavArea.PlaceOnGround( int corner )

  • new

    Added navmesh.CreateNavArea( Vector corner, Vector opposite_corner )

  • new

    Added CNavLadder.Disconnect( CNavArea )

  • new

    Added DTree_Node:Clear()

  • new

    Added DPropertySheet:OnActiveTabChanged( old, new )

  • new

    Added DPropertySheet.GetItems

  • new

    Added a second argument to search.GetResults (optional)

  • new

    Added mask as a 5th argument to ENT:TestCollision

  • updated

    Changing value of SetAllowWeaponsInVehicle will now be applied immediately and it is no longer necessary to reenter the vehicle

  • updated

    Entity.WorldSpaceCenter will no longer silently fail when used on a NULL entity

  • updated

    Entity.IsLineOfSightClear will no longer silently fail when given no argument or a NULL entity

  • updated

    Improved rendering of draw.RoundedBox corners at corner size > 64 and 16-32

  • updated

    Implemented DTree:Clear()

  • updated

    Implemented DHorizontalScroller:Clear()

  • updated

    Better error checking for DPropertySheet

  • updated

    Certain HL2 weapons ( pistol, smg1 ) now also set the attacker in GM:EntityTakeDamage

  • updated

    Made DLabelEditable.OnLabelTextChanged's return value optional

  • updated

    DColorCombo's palette will update the DColorMixer's color

  • updated

    DNumberScratch.OnValueChanged will no longer have nil value as first argument in some cases

  • updated

    DIconBrowser now also includes mountable game icons (materials/games/16/)

  • updated

    Entity.SetMoveCollide is now shared

  • updated

    Panel.GetText is no longer limited to 1023 characters for TextEntry element

  • fixed

    Fixed DFileBrowser not working with root/empty base directory.

  • fixed

    Fixed SWEP.TranslateFOV set the FOV to 0 when invalid return value is given

  • fixed

    Fixed passing Lua's NULL to certain tables where non-Entity is expected causing a crash

  • fixed

    Fixed DColorCombo.GetColor returning nil

  • fixed

    Fixed DGrid.SortByMember's second parameter being forced to true

  • fixed

    Fixed a bug with DToolTip that prevented Panel.SetTooltipPanel from working properly

  • fixed

    Fixed crosshair disappearing when entering a vehicle with SetAllowWeaponsInVehicle set to true

  • fixed

    Fixed Entity.StartLoopingSound so that it actually starts playing the sounds it creates

  • fixed

    Fixed a crash with GetRenderTargetEx and ENVMAP texture flag, now displays a warning

  • Game Changes
  • new

    Added Quick Filter feature to all Tool Tabs in spawnmenu

  • new

    Added search bars for NPCs, Weapons, Entities and Vehicles that search content only in that tab

  • new

    Added Combine Shotgunner skin to the Combine Soldier player model

  • new

    Added missing background from the background competition winners

  • new

    Added INFRA mounting support ( No map support )

  • new

    Added map icons for new TF2 Jungle Update maps

  • fixed

    Fixed installed and owned games not being mountable in some cases

  • fixed

    Fixed workshop UI displaying [unknown] for most user names

  • fixed

    Fixed DFrame close buttons being higher than the header

  • updated

    Spawnmenu model search will no longer search the "models/" part of every model

  • updated

    Spawnmenu search now searches classname AND the display name, instead of one or the other

  • updated

    Non spawnable weapons will no longer appear in the Spawnmenu Search results

  • updated

    Updated preset editor to be actually functional

  • updated

    Better support for lower screen resolutions (1152x864 and lower)

  • updated

    Dead player's ragdolls now also inherit the player's color and rendermode

  • updated

    Updated TTT gamemode to the latest version

  • updated

    Improved "Edit Spawnlist" toolbox, including addition of a quick filter to the icon browser

  • updated

    Improved DNumberWang, you can now click and drag to change value as well as use scroll wheel to change value

2017.11.21 November 21 2017
  • fixed

    Fixed an exploit that allows players to crash servers with the physgun

2017.11.15 November 15 2017
  • new

    Added input.SelectWeapon( entity )

  • fixed

    Fixed particle crashes on map load related to the recent Team Fortress 2 update

  • fixed

    Fixed a couple exploits, including one that can prevent your game from starting up

  • fixed

    Fixed a crash related to Awesomium ftp:// link redirects

  • fixed

    Fixed halo effect Physgun on bouncy balls being square instead of circular

  • updated

    Reduced user's ability of being able to exploit the "Remove" property to delete everything on the map on servers with clientside Lua enabled

2017.07.25 July 25 2017
  • fixed

    Fixed crash when rendering models with invalid flex rules

  • fixed

    Fixed RCE exploit discovered by One Up Security

2017.07.21 July 21 2017
  • fixed

    Linux clients no longer crash on startup when a joypad is connected to the computer

  • updated

    gui.OpenURL now asks users for confirmation before opening a website

2017.07.06 July 06 2017
  • new

    Preset support for Utilities menus

  • new

    'Quick Preset' button - allows for easier access to the preset system

  • new

    Addons menu can now manage multiple addons at once (e.g. bulk unsubscribing)

  • new

    Demos, saves, and duplications menus now list items that the user is subscribed to

  • new

    Addons menu now has a search bar to quickly search through subscriptions

  • new

    The '-notty' startup parameter on Linux servers will send console output directly to stdout

  • updated

    Weapons no longer turn upside-down when zooming in too far

  • updated

    Improved support for CS:GO/Portal 2/TF2 maps

  • updated

    Game returns to DirectX 9 mode if '-dxlevel' is not specified in the command-line

  • updated

    Improved relationships between Half-Life and Half-Life 2 NPCs

  • updated

    Improved behaviour of collisions between players and 'no collided' entities created by tools

  • updated

    Added more information to crash dumps (.mdmp files)

  • updated

    r_eyes_* console variables are no longer saved

  • updated

    The emitter tool's explosion effect no longer creates sounds

  • updated

    Bots can no longer be created before the InitPostEntity hook has fired

  • updated

    Improved how serverside ragdolls are handled on the client - hull traces can hit them now

  • updated

    Updated the Half-Life Model Viewer to have newest features from Team Fortress 2 version

  • fixed

    Odessa no longer has female voices

  • fixed

    Fixed errors caused by the spawn menu's search feature not having access to certain directories

  • fixed

    Fixed many crashes related to NPCs trying to use non-existent entities

  • fixed

    Checkboxes and radio buttons in HTML panels are now displayed properly on Linux/macOS

  • fixed

    Half-Life Ichthyosaur can now cause damage

  • fixed

    Half-Life Tentacle NPC no longer continues playing sounds after being removed

  • fixed

    Fixed massive FPS drops when missing sounds are playing on servers

  • fixed

    Fixed crash that occurs when console variables created by Lua are removed too early on level change

  • fixed

    Fixed late loading of memory allocator on Linux causing the game to crash for some people

  • fixed

    Impulse 200 command no longer crashes when the player has no active weapon

  • fixed

    Fixed prediction errors when firing weapon_357

  • fixed

    weapon_357 now has the 'revolver' holdtype

  • Hammer (map editor)
  • updated

    Improved performance of 2D/3D views

  • updated

    2D views are now rendered during scroll operations, rather than after

  • updated

    Increased max render distance from 10,000 to 32,000

  • updated

    Vertices no longer need to be in the exact same location to be merged

  • fixed

    Blended textures are now rendered correctly - it should be identical to in-game

  • fixed

    Model browser no longer freezes after being opened multiple times

  • fixed

    Overlays no longer flicker when rendered in 3D shaded mode

  • fixed

    Scrollbars on 2D views are now correctly sized when zoomed in

  • Lua API
  • new

    Entity:PhysicsInitStatic( ... )

  • new

    Entity:RemoveCallback( ... )

  • new

    Entity:GetCallbacks( ... )

  • new

    CLuaEmitter:IsValid( ... )

  • updated

    Entity:PhysicsInit* methods now return either true or false based on success

  • updated

    Entity:Remove() can no longer remove the world

  • updated

    Weapon:IsScripted() will now return false instead of no value when ran on non-scripted weapons

  • updated

    Player:Give( ... ) no longer fills a player's gun with ammo when asked to not give ammo to players

  • updated

    Entity:GetBoneCount() and Entity:GetBoneParent( ... ) will now return -1 on failure

  • updated

    Entity:TranslateBoneToPhysBone( ... ) will now return -1 on failure

  • updated

    Entity:SetSaveValue( ... ) now returns false on failure

  • updated

    Entity:DispatchTraceAttack( ... ) will now trigger an error when passed invalid parameters

  • updated

    Entity:HasBoneManipulations() and Entity:HasFlexManipulatior() return false on failure

  • updated

    Entity:GetBrushPlaneCount() will now return false on failure

  • updated

    Entity:GetFlexScale( ... ) now always returns 1 on failure, rather than just sometimes

  • fixed

    Entity:GetBrushPlaneCount() and Entity:GetBrushPlane( ... ) now work on brush entities

  • fixed

    PathFollower:Compute() no longer leaks Lua references

04.17 April 17 2017
  • Lua API Changes
  • new

    player.GetCount()

  • new

    ents.GetCount()

  • new

    Added a second parameter for Player.Give - boolean, set to true to not give any ammo ( at all ) when the weapon is given

  • new

    Scrollbar - Allowed to have no up/down buttons

  • new

    Override spawnlist NPC health option

  • new

    Added FireBulletsInfo.IgnoreEntity

  • new

    3000-range anim events from SWEPs are now passed to SWEP:FireAnimationEvent

  • new

    game.GetGlobalState

  • new

    game.GetGlobalCounter

  • new

    game.SetGlobalState

  • new

    game.SetGlobalCounter

  • new

    Weapon.SetLastShootTime

  • new

    render.OverrideBlendFunc

  • new

    BLEND_*

  • new

    GLOBAL_*

  • new

    Added EF_FOLLOWBONE enumeration to Lua

  • new

    Added a 4th argument to util.Decal - ignore entity

  • new

    Added 2 more types to GM:ChatText - servermsg and teamchange

  • new

    Added DFrame.GetTitle()

  • new

    Add headers argument to http library functions

  • fixed

    Fixed a little issue with DCheckbox convar support

  • fixed

    DNumSlider.IsHovered now works properly

  • fixed

    Fixed widget_base producing Lua errors

  • fixed

    Fixed changing Lua variables of SWEPs in hooks such as GM:WeaponEquip not being applied to engine functions instantly

  • fixed

    Fixed first HUD_PRINTCENTER message being wrong color

  • fixed

    Fixed a crash issue with Panel.GetChild

  • fixed

    Fixed Entity.GetPoseParameterName crashing the game with invalid values

  • fixed

    Fixed an issue with string.GetFileFromFilename

  • fixed

    Fixed Weapon.LastShootTime being always 0 serverside

  • fixed

    Player.SetMuted()'s first argument now actually works

  • fixed

    DComboBox.Clear now resets the selected item

  • updated

    Made SWEP.PrintName shared

  • updated

    game.AddAmmoType now overrides duplicate names

  • updated

    math.IntToBin micro optimisation

  • updated

    Prevented Player:CanUseFlashlight() from returning nil

  • updated

    Improved Entity:GetKeyValues to show actual values of keys and to show ALL keys

  • updated

    Angle() can now also accept only 1 argument, to match the Vector()

  • updated

    Optimized draw.RoundedBox(Ex) a bit

  • updated

    Optimized DNumberScratch

  • updated

    Minor optimisation of GM:MouthMoveAnimation default action

  • updated

    timer.Exists will now return false for timers with deleteme flag

  • updated

    Player.SetEyeAngles will now only work on local players when used clientside

  • updated

    Entity.GetKeyValues will convert boolean values to integers instead, for compatibility with SetKeyValue

  • updated

    Entity.IsRagdoll no longer throws Lua errors when used on invalid/NULL entities, returns false instead

  • updated

    Entity.IsRagdoll nows return false where it used to return no value

  • updated

    Moved Material() extension to shared

  • updated

    If Steam says the a game is not installed - it is not installed. ( Mountable games list )

  • updated

    Entity.PrintMessage clientside will appear as type "none" in GM:ChatText

  • updated

    Increased maximum panel size, position and clipping data sizes to fix a problem with spawnmenu addon list breaking when trying to show too many addons

  • updated

    <gamemode>.txt convars now have LUA_SERVER flag and can be hooked onto with cvars.AddCallback

  • updated

    Panel.OpenURL now also works with "about:blank"

  • updated

    Clamped possible values of render.SetLightingMode to 0-2 to avoid crashes

  • updated

    render.Capture now has an "alpha" option ( default true ) that allows to disable alpha on the captured image

  • updated

    Player.ScreenFade is now shared

  • updated

    GM:RenderScreenspaceEffects will no longer be called with ViewData.dopostprocess set to false

  • Engine Changes
  • new

    Added missing TF2 icons

  • new

    Added cl_downloadfilter noworkshop - disables only all of the workshop downloads

  • fixed

    Fixed a problem with the addon system when using "Subscribing to All" on a collection with items that you are already subscribed to

  • fixed

    Fixed a potential crash/memory leak when loading compressed TF2 maps

  • fixed

    Fixed certain CS:GO textures failing to load

  • fixed

    File download process no longer get stuck if a single download fails in CNetChan::HandleUpload

  • fixed

    Fixed GMad.exe stopping writing the .gma once it encounters an empty file

  • fixed

    Fixed hlfaceposer.exe and hlmv.exe (Model Viewer) not working out of the box

  • fixed

    Fixed a problem where soundscripts would be precached as sound files causing lag

  • fixed

    Fixed floating addons not being mounted on dedicated servers in the root folder

  • fixed

    Fixed multiple various crash issues

  • updated

    Set r_radiosity default value back to 4

  • updated

    Increased lightcache size from 200 to 8287

  • updated

    Updated localization files

  • updated

    Updated Steamworks SDK to v1.38a

  • updated

    Switched SRCDS Steam Workshop to ISteamUGC API

  • updated

    Moved SRCDS workshop files to cache/srcds/id.gma, from addons/ds_id.gma

  • updated

    BASS error messages now print the actual error names instead of error IDs

  • updated

    Only display warnings about unused .gmas when there are such .gmas

  • updated

    Default screen resolution is now your desktop resolution

  • updated

    GMod will no longer try to send Lua errors to errors.garrysmod.com

  • updated

    Improved crazy physics detection to avoid more crashes

  • updated

    Updated LuaJIT to 2.0.4

  • updated

    Multiple optimizations and multicore rendering fixes

12.16 December 19 2016
  • GMad
  • updated

    Improved error messages when trying to create addons

  • Game Changes
  • new

    Added '-nogammarmap' command-line parameter. This will disable the game's built in gamma correction and use your system's settings

  • new

    Hunter helicopters now perform behaviour from Half-Life 2: EP1 and EP2

  • fixed

    Fixed some animations not looping (e.g. noclip animation)

  • fixed

    Game no longer crashes when applying decals to models with a high amount of polygons

  • fixed

    Fixed buggy behaviour when a player dies whilst climbing a ladder

  • fixed

    Fixed crash that occured when printing some characters to the console when Windows is set to use certain non-english languages

  • fixed

    Game no longer attempts to load vaudio_miles module. This caused issues for some people who had weird installations of the Source SDK on their system

  • updated

    Server browser now shows more servers and ranks them slightly differently

  • updated

    Burning props no longer have their gibs ignited on destruction. This was causing some performance issues

  • updated

    Disabled the VGUI hotkey system (freaky internal behaviour that made ampersands work weirdly)

  • updated

    Improved error messages when failing to initialize the Steam API

  • updated

    Updated resource/HALFLIFE2.ttf

  • updated

    Re-enabled some fixes for d1_trainstation_05/ep2_outland_01 plug sockets

  • updated

    Improved performance of voice-chat mouth movement animations

  • updated

    Improved performance of traces (traces that have a function as their filter no longer have the filter called way too many times)

  • updated

    Improved performance when checking if entities have a RenderOverride method

  • Lua API Changes
  • new

    Entity.GetFlexIDByName

  • new

    Player.SimulateGravGunPickup

  • new

    Player.GetPreferredCarryAngles

  • new

    Added ITexture.__tostring

  • fixed

    game.CleanUpMap no longer crashes when called too early on maps containg AI nodes

  • fixed

    game.GetTimeScale/game.GetSkillLevel now return nothing when called too early

  • fixed

    Entity.GetPoseParameterName no longer crashes when given an invalid input

  • fixed

    RunConsoleCommand's error message now ends with a new-line when trying to run a blocked command

  • fixed

    render.PopFilterMag/render.PopFilterMin now properly apply changes when the filter stack is emptied

  • fixed

    render.Pop* functions no longer crash the game when over-popping

  • updated

    GetConVar moved from C to Lua, results are now cached

  • updated

    IMaterial.__tostring now acts more similarly to other __tostring metamethods in the game

10.16 October 28 2016
  • new

    Added "Fetching Subscriptions" progress window to the main menu

  • new

    Added boolean parameter to render.RedownloadAllLightmaps to apply lighting changes to static props

  • removed

    render.RedownloadAllLightmaps defaults to old behavior (The original change was slow and caused issues on large maps)

  • removed

    Undone EffectData() changes from the latest update (until we find a way not to break ShellEject effects)

  • fixed

    Player shadows no longer get clipped within the players' render bounds

  • fixed

    Inactive weapons' shadows are no longer drawn in 3rd-person mode

  • fixed

    AvatarImage panels' fallback image no longer (sometimes) renders at the incorrect size

  • fixed

    Numeric values inside DComboBox are now sorted properly

  • fixed

    Using the light tool on the world will no longer cause errors

  • fixed

    Fixed an issue preventing addons adding custom spawnlists with spawnmenu.AddPropCategory, even though they really shouldn't be allowed

  • fixed

    Fixed mounting of gamemodes/*/content for gamemodes inside GMAs

  • fixed

    Fixed PreCleanupMap hook not being called on client

  • fixed

    Fixed a crash related to rendering many ropes in a single frame

  • fixed

    Fixed massive FPS loss when Entity.Set(Sub)Material is used with unloaded materials

  • fixed

    Fixed compression artifacts that were on the gui/corner... materials

  • updated

    Holding attack whilst opening the weapon selection dialog no longer instantly changes weapon

  • updated

    Adjusted HL2 weapons' idle times to match sv_defaultdeployspeed ConVar

  • updated

    Deploy animation of the fists SWEP now obeys the sv_defaultdeployspeed ConVar

  • updated

    Automatically named procedural texture names (__vgui_texture_XXX) are now recycled to help avoid "CUtlRBTree overflow!" engine error

  • updated

    Removed the unnecessary check for whether the user owns Source SDK Base 2006

  • User Interface Panels
  • new

    DIconLayout - Added SetStretchWidth & SetStretchHeight to enable/disable auto stretch of the panel

  • new

    DBinder - Added OnChange hook

  • new

    DColorPalette - added ResetSavedColors & better Paint function to account for children & "networking" of the palette changes

  • new

    DComboBox - Proper sorting and ability to disable it

  • new

    DAlphaBar - better background grid code for super tall sizes

  • new

    DColorMixer - DColorPalette got new right click menu with ability to reset the palette

  • fixed

    DScrollPanel - Fixed up resizing putting scroll position too far down in some cases

  • fixed

    MatSelect - Fixed the panel not rebuilding when needed and fixed child size calculation for child sizes less than 1 to take into account spacing and padding

  • fixed

    DFileBrowser - Fixed Clear() leaving some variables to a chance of inheriting values of a global variable named "_"

  • fixed

    DPanelSelect - Fixed the panel not restoring old PaintOver()s

  • fixed

    DTree_Node - Fixed wildcard not properly applying to child elements

  • fixed

    DListView - Fixed white line in the middle of a line when line height is set to high values

  • fixed

    DTree_Node (DTree) first expansion will no longer try to expand to a size higher than necessary

  • fixed

    DLabelEditable - You can no longer use translated strings with this panel (sort of)

  • fixed

    PropSelect - Auto vertical height support

  • updated

    DHorizontalDivider - Many IsValid checks, better handling of resizing to prevent firing PerformLayout every frame

  • updated

    DNumSlider - SetDecimals now refreshes the displayed number

  • Lua API Changes
  • new

    Added PANEL:OnKeyCodeReleased() hook

  • new

    Added CRecepientFilter support for net.Send

  • new

    Added IGModAudioChannel:GetAverageBitRate()

  • new

    Added Player.AccountID

  • new

    Added Panel:GetDockMargin & Panel:GetDockPadding - both return 4 numbers

  • new

    Added IMaterial:GetVector that returns proper 'unclamped' values

  • new

    Added ProjectedTexture:SetOrthographic

  • new

    Added ProjectedTexture:GetOrthographic

  • new

    Added CNewParticleEffect.Render()

  • new

    Added CNewParticleEffect.SetShouldDraw( bool )

  • new

    Added CNavArea.__eq

  • new

    Added FFT_32768

  • fixed

    steamworks library will no longer cause crashes when called shortly before the Lua state is destroyed

  • fixed

    Fixed timer library in menu state temporarily ceasing to work after starting a new map

  • fixed

    Fixed Entity:SetEyeTarget() having no effect on "anim" type SENTs

  • fixed

    Fixed '/**/' being treated as '/*/' in lua lexer (not closing the comment)

  • fixed

    Fixed not being able to create more than one font with different scanline sizes but otherwise identical parameters

  • fixed

    Entity.GibBreakClient will no longer crash when used on brush entities ( Can only be called on non BaseAnimating entities )

  • fixed

    cam.Start now supports "poster" console command in 3D mode

  • updated

    render.RedownloadAllLightmaps now updates lighting on static props as well

  • updated

    EffectData() now resets its member values

  • updated

    Vector() * nil will now error instead of returning empty vector

  • updated

    Proper NULL checks for most Vehicle class functions to prevent crashes

  • updated

    game.LoadNextMap, game.SetTimeScale, game.SetSkillLevel, game.GetTimeScale, game.GetSkillLevel no longer crash when g_pGameRules = null

  • updated

    Weapon.GetPrintName is now shared

  • updated

    Renamed IMaterial:GetVector to IMaterial:GetVectorLinear

  • updated

    Panel.Remove now causes parent to InvalidateLayout

  • updated

    Panel.SizeToChildren does not fail to resize to 0 values

  • updated

    Angle() global function now works the same way as Vector() global, i.e. Giving it an Angle object will return a copy of it, etc

  • updated

    gmod_tool:CheckLimit() is now shared

  • Tool UI
  • new

    Auto Stretch UI for Paint Tool

  • new

    All prop select panels are now auto sizing in height

  • updated

    Changed the material tool's context menu to show 4 materials per row

  • updated

    Lamp Tool - MatSelect is now 4 images tall

  • updated

    Rearranged some controls for tool settings to be more consistent

  • updated

    Many improvements to Spawnmenu UI to be less laggy, better scaling, ability to manually resize spawnmenu parts, etc

  • Tools
  • new

    All tools now use the new help system

  • new

    All tools (where applicable) are now using model whitelists to prevent abuse

  • new

    The paint tool now clears decals on the target entity when the reload key is pressed

  • new

    Added limit to the Camera tool (defaults to 10)

  • new

    Added a new Hoverball model

  • new

    Added Partial "Right Click > Edit Properties" support for Balloon, Button, Dynamite, Emitter, Hoverball, Lamp and Light tools

  • fixed

    The inflator tool should no longer freak out on high latency servers

  • fixed

    The paint tool no longer applies the decals twice on client and it no longer plays the sound twice in multiplayer

  • fixed

    The muscle tool's "Start On" option is now functional

  • fixed

    Fixed being able to bypass the light tool's multiplayer limit with Duplicator

  • fixed

    Fixed being able to bypass the "Cleanup" menu with duplicator

  • fixed

    Fixed the camera tool adding 1 extra undo when duplicated

  • updated

    The color tool copies the target entity's color on right-click and resets the color on reload

  • updated

    The material tool now copies the target entity's material on right-click and resets the material on reload

  • updated

    The inflator tool now scales adjacent bones properly

  • updated

    The faceposer tool can now be used on prop_effect entities

  • updated

    Increased the limit of lights created by the light tool

  • updated

    Dynamite damage is now clamped properly and cannot be bypassed

  • updated

    Duplicator will now transfer data in parts instead of failing when the dupe is too large

  • Physgun
  • new

    Added physgun_maxrange ConVar

  • fixed

    Physgun beams no longer lag behind when moving non-MOVETYPE_VPHYSICS entities

  • fixed

    Physgun angle-snapping no longer jitters between snapped/unsnapped when releasing shift/use

  • fixed

    The Physgun can now only rotate NPCs without physics objects around their yaw axis

  • fixed

    The Physgun no longer encounters gimbal lock when rotating around pitch axis