Garry's Mod Logo
add_circle

Features

  • •
    Added GM:PlayerAmmoChanged
  • •
    Added GM:PreDrawViewModels
  • •
    Added SANDBOX:CanArmDupe
  • •
    Added Player.GetUseEntity
  • •
    Added Player.PickupWeapon
  • •
    Added NPC.PickupWeapon
  • •
    Added NPC.GetWeapons
  • •
    Added NPC.GetWeapon
  • •
    Added NPC.SelectWeapon
  • •
    Added NPC.RememberUnreachable, to give NPC.IsUnreachable a reason to exist
  • •
    Added NPC.HasEnemyEluded
  • •
    Added NPC.HasEnemyMemory
  • •
    Added NPC.GetEnemyLastKnownPos
  • •
    Added NPC.GetEnemyLastSeenPos
  • •
    Added NPC.GetEnemyLastTimeSeen
  • •
    Added NPC.GetEnemyFirstTimeSeen
  • •
    Added NPC.SetIdealYawAndUpdate
  • •
    Added ENT:OnChangeActivity for base_ai entities
  • •
    Added Entity.SetLayerSequence
  • •
    Added Entity.GetLayerSequence
  • •
    Added utf8.sub and utf8.GetChar (Community Contribution)
  • •
    Added GM:PlayerCheckLimit (Community Contribution)
  • •
    Added GM:CanUndo (Community Contribution)
  • •
    Added PLAYER:Death (Community Contribution)
  • •
    Added optional argument to render.DrawScreenQuad() - Apply poster corrections
  • •
    Added optional argument to NPC.MarkEnemyAsEluded and NPC.ClearEnemyMemory - Enemy entity override
  • •
    Added .vmt to file.Write whitelist
  • •
    Current value is passed to DTextEntry's OnEnter callback (Community Contribution)
arrow_circle_up

Improvements

  • •
    controlpanel.Get will no longer return panels that are about to be deleted (in the next frame)
  • •
    Vector.__div now type checks its second argument
  • •
    Angle/Vector.__newindex now type checks its 3rd argument
  • •
    Added a non-halting error message when mods are trying to send an overflowed net message
  • •
    Entity.Set/GetLayerDuration, Entity.Set/GetLayerCycle, Entity.SetLayerBlendIn, Entity.SetLayerBlendOut, Entity.IsValidLayer are now shared
  • •
    render.Capture now accepts "jpg" as an alias of "jpeg" format
handyman

Fixed

  • •
    ENT:StoreOutput() works for newer Source Engine map IO format
  • •
    Fixed OBS_MODE_FIXED/CHASE/IN_EYE having bad spectator behavior due to the player's movetype being set to NONE
  • •
    Fixed SWEP:OwnerChanged being very unreliable and inconsistent
  • •
    Fixed ents.CreateClientside entities not receiving projected textures
  • •
    Fixed returning true in GM:EntityEmitSound hook when the Entity is a clientside only entity causing the ent index to be read incorrectly, which in turn caused infinite scrape sounds for gibs
  • •
    Fixed effects.BeamRingPoint having its blue and green color channels swapped
  • •
    Fixed NPC.Give() being able to give an NPC multiple copies of the same weapon, now returns the existing copy
  • •
    Fixed double "expected" in VMatrix.__mul type error message
  • •
    Fixed PANEL:OnMouse* and PANEL:OnCursor* hooks not working on panels derived from RichText
  • •
    Fixed cvars.AddChangeCallback's identifier not working as intended (Community Contribution)
  • •
    base_gmodentity.GetPlayer() now properly returns the player object after player reconnected to the server for base_gmodentity derived entities (Community Contribution)
  • •
    Fixed loading of .png materials with different material parameters not working properly
  • •
    Fixed Entity.AdvanceFrame crashing the game with invalid sequences
  • •
    Fixed Lua errors from PositionSpawnIcon() with bad entities
  • •
    Fixed Entity.NetworkVarElement not saving/restoring properly
  • •
    Fixed NWVars not updating properly on clients when joining a server/reconnecting
  • •
    Fixed an exploit with presets.Add (Thanks to Deyvan)