FIXES [list] [*]Fixed item pickups not being collectable in some cases [*]Fixed env_microphone not always transmitting NPC voices in multiplayer [*]Fixed some textures on gm_construct having an incorrect normal map when running under DX8 [*]Fixed console crash on some machines [*]Fixed another possible exploit with CNetChan::SendFile [*]Fixed an exploit allowing access to any file on a client machine [*]Fixed vehicle noclip exploit [*]Fixed SMG viewmodel animation glitch when firing exactly 3 shots in a single burst [*]Fixed inaccurate text selection in RichText controls [/list] IMPROVEMENTS [list] [*]Files with an incorrect extension can no longer be loaded as modules [*]Loose .vcd files can now be loaded without having to be compiled into scenes.image [/list] TTT [list] [*]Fixes [list] [*]Admin commands no longer appear in "last words" [*]Fixed a minor issue with teleporter effects [/list] [*]Additions [list] [*]Added lag compensation to the crowbar's secondary attack [*]Added TTTPlayerUsedHealthstation hook [/list] [/list] COMMUNITY [list] [*]Fixes [list] [*]Fixed vehicle third person affecting cameras [*]Fixed shipped weapons creating errors when given to NPCs [*]Fixed SimpleDoF to properly work with cameras [*]Fixed return values of draw.SimpleText [*]Fixed big numbers not sending properly with net.WriteTable [*]Fixed gmod_admin_cleanup/gmod_cleanup errors when run in a dedicated server console [*]Fixed vehicles not duplicating their skin, bodygroups, etc [*]Fixed derma.SkinTexture [*]Fixed longstanding thruster crash exploit [*]Fixed pasted ragdolls with duplicator being in T pose until you touch them (still happens for saves though, sorry) [*]Fixed snow footsteps [*]Fixed some base weapons (Alyx gun, HL1 grenade) being .357 clones [/list] [*]Improvements [list] [*]Post Process effects are no longer saved across restarts [*]Hidden some useless HL2 maps [*]Updated jQuery/AngularJS [*]draw.SimpleTextOutlined now returns same thing as draw.SimpleText [*]Lua errors notification only stays for 10 seconds instead of 30 [*]Clicking "Resize" in spawnicon right click menu no longer automatically rerenders the icon. [*]Fancified Bouncy Ball [*]Updated server browser looks [*]Bots are no longer counted towards player count in server browser [*]Sort addons and games alphabetically in Browse [*]Made player_manager.TranslateToPlayerModelName case insensitive [*]Tweaked some tools [list] [*]Tweaked default values for some of the tools, tweaked limits in context panels for some of the tools [*]Added right click option for lamp tool to copy settings of another lamp [*]Deprecated settings/controls/*.txt, noone uses it, serves no benefit. [/list] [*]Improved context menu properties in various ways [list] [*]Now works properly when you look from camera/driving a vehicle [*]Fixed some issues with "Drive" property and cameras [/list] [/list] [*]Additions [list] [*]Added team.SetColor(index, color) [*]Added Angle:SnapTo(component, degrees) [*]Added IsColor, net.WriteColor, net.ReadColor [/list] [/list] LUA [list] [*]Fixes [list] [*]Fixed Entity:PhysicsFromMesh building a deformed collision mesh [*]Fixed PhysicsCollide entity callback missing information about the entity which was collided with [*]Fixed IMaterial:GetMatrix crashing the game [*]Fixed sound.Add not working on dedicated servers [*]Fixed ents.FindByClass not interpreting wildcards correctly [*]Fixed util.CRC not working correctly on strings with embedded zeroes [*]Fixed util.JSONToTable losing precision for large integer values [*]Fixed Entity:GetBoneController returning a truncated value [*]Fixed Entity:SetHitboxSet not working properly with an integer parameter [*]Fixed NPC:FoundEnemySound, LostEnemySound, FearSound, IdleSound and AlertSound not calling their appropriate equivalent in the engine [*]Fixed InnerAngle and OuterAngle parameters not doing anything in lights created by DynamicLight() [*]Fixed util.TableToJSON crashing when passed a table containing keys that aren't strings or numbers [/list] [*]Improvements [list] [*]Updated LuaJIT to version 2.0.3 [*]Reverted Entity:IsValid to its old behaviour [*]Changed Entity:PhysicsInitBox behaviour to be more consistent with Entity:PhysicsInitConvex (no longer creates a broken physics object in some cases) [*]game.GetWorld is now shared [*]Player:HasWeapon and Player:GetWeapon are now shared [*]Entity(0) now returns the world on both server and client [*]Entities can now have up to 64 DT vars of each type (except strings) [*]Player:Kick and Player:Ban kick/ban reasons are now optional and may contain newlines [*]SWEP holdtypes are now properly networked [*]Vector and angle access using a numerical index rather than x/y/z is now slightly faster [*]gui.OpenURL now clamps URLs to 511 characters max [*]Added safeguards to mesh library functions [*]Entity:GetMaxHealth() is now shared again and properly networked [*]Entity:DrawViewModel now takes an optional second argument which controls which viewmodel to show/hide (defaults to 0) [*]Moved Entity:Disposition, GetActivity, IsNPCMoving, IsUnreachable to NPC:Disposition, GetActivity, IsMoving, IsUnreachable [*]Trace tables now accept an "output" parameter which may contain the table in which trace results should be written [*]sound.PlayFile and sound.PlayURL callbacks now receive an error ID and error name as their second and third parameters if an error occurs [*]Weapon:CallOnClient second argument is now optional [*]Moved Player:PlayScene, NPC:PlayScene and NextBot:PlayScene to Entity metatable [*]Entity:PlayScene second argument (delay) is now optional [*]MsgC can now print text with several colors in a single call [*]Moved Player:Freeze, GodEnable, GodDisable, IsFrozen, HasGodMode to Lua [*]Clamped pitch between -90 and 90 instead of -180 and 180 for AngleRand [*]util.KeyValuesToTable and util.KeyValuesToTablePreserveOrder now accept a third parameter which prevents keys from becoming lowercased when set to true [*]vgui.LoadControlsFromFile/LoadControlsFromString now properly creates scripted panels [*]Optimized vgui.LoadControlsFromString [/list] [*]Additions [list] [*]Added Entity:PhysicsDestroy() [*]Added Weapon:GetHoldType() [*]Added util.SharedRandom(uniqueName, min, max, additionalSeed=0) [*]Added util.BlastDamageInfo(dmginfo, origin, radius) [*]Added Entity:SetLOD(lod=-1) [*]Added Entity:SetLagCompensated(bool), IsLagCompensated() [*]Added Player:SetAllowWeaponsInVehicle(bool), GetAllowWeaponsInVehicle() [*]Added CSoundPatch:SetDSP(dsp), GetDSP() [*]Added IGModAudioChannel:EnableLooping(bool) [*]Added IGModAudioChannel:PlayFile(path, flags, callback) [*]Added optional second argument to Entity:SetPhysicsAttacker which controls expiry time [*]Added game.SetSkillLevel(int), game.GetSkillLevel() [*]Added the following hooks to scripted effects: StartTouch, Touch, EndTouch [*]Added CUserCmd:SelectWeapon(weapon_ent) [*]Added __tostring to CNavArea, CSoundPatch, IGModAudioChannel, PhysObj, dlight_t metatables [*]Added PhysObj:GetName() [*]Added CNavArea:Draw(), IsUnderwater(), GetSizeX(), GetSizeY(), IsRoughlySquare(), IsFlat(), GetZ(pos), IsOverlapping(pos, tolerance), Contains(pos), IsCoplanar(navArea), GetClosestPointOnArea(pos), IsVisible(pos), GetCorner(cornerId) [*]Added navmesh.GetNavAreaCount(), GetNavArea(pos, beneathLimit), GetNavAreaByID(id), BeginGeneration(), IsGenerating(), GetPlayerSpawnName(), SetPlayerSpawnName(), AddWalkableSeed(pos, normal), ClearWalkableSeeds() [*]Added Entity:IsDormant() [*]Added ENT:Blocked(other) [*]Added Color:__tostring, Color:__eq and Color:ToHSV [*]Added gui.InternalKeyTyped(code) [/list] [*]Removals [list] [*]Removed "loop" flag from sound.PlayURL [*]Removed support for vm_origin and vm_angles from GM:CalcView [/list] [/list]