Garry's Mod Logo
add_circle

Features

  • •
    Added render.OverrideBlend (replaces render.OverrideBlendFunc)
  • •
    Added Entity.GetSequenceMovement
  • •
    Added Player.IsSprinting
  • •
    Added Vector.Div
  • •
    Added Angle.Div & Angle.__div
  • •
    Added Angle.Mul
  • •
    Added Angle.Add
  • •
    Added Angle.Sub
  • •
    Added serverlist.AddCurrentServerToFavorites
  • •
    Added CanAddServerToFavorites
  • •
    Added CreatePhysCollidesFromModel
  • •
    Added CNavLadder.GetTop
  • •
    Added CNavLadder.GetBottom
  • •
    Added CNavLadder.GetWidth
  • •
    Added PhysObj.ApplyTorqueCenter
  • •
    Added PhysObj.GetShadowPos
  • •
    Added PhysObj.GetShadowAngles
  • •
    Added PhysObj.GetVelocityAtPoint
  • •
    Added PhysObj.SetContents
  • •
    Added PhysObj.GetContents
  • •
    Added DNumSlider.GetDefaultValue
  • •
    Added DNumSlider.SetDefaultValue
  • •
    Added DNumSlider.ResetToDefaultValue
  • •
    Added navmesh.GetGroundHeight
  • •
    Added engine.TickCount
  • •
    Added file.Rename, same restrictions as file.Write/file.Open apply
  • •
    Added BLENDFUNC enums
  • •
    Added game.GetAmmoNPCDamage
  • •
    Added game.GetAmmoPlayerDamage
  • •
    Added game.GetAmmoForce
  • •
    Added game.GetAmmoDamageType
  • •
    Added ents.FindAlongRay
  • •
    Added TYPE_PHYSCOLLIDE enum
  • •
    Added PLAYERANIMEVENT_CANCEL_RELOAD enum
  • •
    Implemented DNumSlider.GetText
  • •
    Added support for BodyGroups in Sandbox NPC list
  • •
    Added ConVar support for plydmg, npcdmg and maxcarry keys of game.AddAmmoType
arrow_circle_up

Improvements

  • •
    Entity.AddCallback will now error instead of silently failing when given not a function on its 2nd argument
  • •
    Vector/Angle.Mul and Div methods now have correct type checking and errors
  • •
    util.TableToJSON returns nil unless top-most element is an object or array
  • •
    file.Exists and file.IsDir will return false where it used to return nil
  • •
    ScriptedEntityType field will now work equally on all entity types
  • •
    Added better bounds checking to Entity:GetSequenceActivity
  • •
    GetCreator now returns NULL for no creator, instead of nil (Community Contribution)
  • •
    IsValid micro optimisation (Community Contribution)
  • •
    Improvements to Entity.GetKeyValues() - Vectors actually work now, added support for FIELD_SOUNDNAME and FIELD_EHANDLE
  • •
    FL_ANIMDUCKING is now used and set automatically
  • •
    Return type consistency for Player.TraceHullAttack, Player.GetObserverTarget, Player.GetRagdollEntity, NPC.GetBlockingEntity, NPC.GIve, Entity.GetRagdollOwner, they now return NULL entity where they used to return nil
  • •
    Better/Faster implementations of SortedPairs and similar functions (Community Contribution)
  • •
    PrintTable will no longer try to print the table its currently printing (Community Contribution)
  • •
    DNumberScratch decimal changes for the pop up window (Community Contribution)
handyman

Fixed

  • •
    Entity.DeleteOnRemove() can no longer remove players or the world
  • •
    Fixed a stack overflow in DListView
  • •
    Entity.IsRagdoll will attempt to return proper value when the entity is marked for deletion
  • •
    render.DrawSphere will no longer draws one less longitude step than specified
  • •
    game.CleanUpMap() will no longer crash on LZMA compressed maps
  • •
    Fixed util.DecalEx's scale arguments not working
  • •
    Fixed util.DecalEx using inverted normal for non brush entities
  • •
    Fixed game.AddDecal not precaching added decals resulting in util.DecalMaterial not working as expected in some cases
  • •
    Fixed util.DecalEx not working on entities with brush models
  • •
    Fixed util.Base64Encode output for 0 and 1 byte inputs
  • •
    Fixed Entity.GetAnimInfo not working at all
  • •
    Fixed Entity.SetGravity resetting on players when they use ladders
  • •
    Player.IsFullyAuthenticated no longer returns the player object in some cases
  • •
    Fixed prediction errors caused by using Player.SetHull(Ducked)
  • •
    Player.SetAmmo now has proper ammo typeID bounds check, as well as proper max ammo check (0-9999)
  • •
    Fixed calling Player.Spawn() on a player inside a vehicle putting the player in an invalid state where NPCs can't see them