-
•
ClientsideModel is now able to be hit by clientside only traces after initializing physics on it post creation (Collision bounds must be set manually if model changes)
-
•
Try to end mesh.Begin when a mesh wasn't ended when the function is called. (i.e. after a Lua error) It will still error afterwards like it did before, but now prevents game hanging, hopefully without side effects
-
•
End current Lua mesh (if there is one) on Lua error - preventing game crashes and graphical glitches
-
•
Change ents.CreateClientRope slack parameter to work better
-
•
ents.CreateClientRope ropes now despawn if any of its attached entities are removed
-
•
Allow giving ents.CreateClientRope local vectors instead of attachment IDs
-
•
Made Entity:PhysicsInitBox/Sphere set solidity before setting the physics object - this improves behavior for those functions with ClientsideModel and is consistent with PhysicsInit()
-
•
Validate input range for File:Read and File:Write, so the game does not crash with negative bytes to read
-
•
Improved handling of BSP model names for Lua clientside entities (sets the model index so tracing code can work better)
-
•
Improved handling of infinite loops with Entity:WaterLevel when called from the water level change hook
-
•
Switch debugoverlay functions to better optional argument checking with type checking
-
•
util.IsValidModel returns false if extension is not .mdl
-
•
Changed render.DrawQuadEasy to use better optional argument handling (potentially breaking)
-
•
Sandbox gamemode: Do not store the NPCTable/VehicleTable tables on the entities (The name is still stored)
-
•
Player:GetPunchAngle will now error with lua_strict set to 1 (deprecation warning)
-
•
Allow mesh.TexCoord to only accept 1 texture coordinate
-
•
Optimizations for usage of GM:PlayerCanHearPlayersVoice - it will no longer be called for non speaking players
-
•
Minor optimizations for most Lua functions returning a sequential table
-
•
Minor adjustment to WEAPON:OnRemove for consistency of execution time with other OnRemove hooks, no functional change expected
-
•
Validate input ranges for sound.Generate (will error)
-
•
Validate input ranges for most Lua functions that use enumerations in arguments (will silently clamp the value)
-
•
Entity:GetCycle now returns 0 instead of nil for invalid entities