GMod Update Released - News
 
This is a big one. There are a lot of changes here and some 3rd party mods are going to stop working. But on the plus side if you had those mods installed then your load times are probably going to get a lot shorter.

If you're getting lots of Lua errors (Errors in the top right hand corner of the screen) when you start up then it's probably because one of your mods has broken. If you know which one it is then remove it. If not - or if you're crashing - then click here to learn how to Clean GMod.

If the update causes any problems that you want to dicuss with other players then head to This Forum for advice/solutions/moaning.

Anyway, this update adds a lot of things people have been asking for. I've highlighted the main parts below, but be sure to check out the huge changelog at the very bottom of this post.



The tools menu is now collapsable. This should make things a bit easier when you join a server with 40 addons installed. You can also right click and drag for quick scrolling.



Finger Poser.. allows you to pose.. fingers.



Lights! As a bonus you can now toggle lights and lamps using a key on the numpad!



A new trails tool allows you to add trails to entities.





Here's the huge changelog in full:

[Add] Finger Poser
[Add] Trails Tool
[Add] Lightbulb Tool
[Add] Camera Tracking. Press USE when looking at an object with the camera.
[Add] Camera Roll. Move the mouse sideways while holding RMB to roll.
[Add] Convar: physgun_rotation_sensitivity (default 0.1)
[Add] lua_redownload - Forces a Lua reconnect for all clients.
[Add] Lua will now condump on critical error
[Add] Tools list now collapsable
[Add] tool_* console commands to activate tools
[Add] PostProcess overlay now shows thumbnails
[Add] 'Sun Size' option to sunbeams
[Add] Notification when kicked due to different scripts
[Add] Lamps can now be toggled on and off
[Add] More materials

[Change] Double pressing reload with the physgun now unfreezes all props
[Change] Single pressing reload with the physgun now unfreezes the prop you're looking at and all entities constrained to it
[Change] Prevented addons from adding [tags] to the game description
[Change] Increased elastic constraint limits
[Change] Forced mouse filtering on (for rotating, camera zooming)
[Change] gamemode_reload, swep_reload and sent_reload no longer need sv_cheats 1 for server admins
[Change] r_DrawDetailProps is no longer a cheat
[Change] Divided options tab into categories

[Fixed] Weapons having no lag compensation
[Fixed] Crash when making wheels with 0 torque then changing their torque
[Fixed] Crash with incorrectly defined context menu comboboxes
[Fixed] Particles sometimes not moving
[Fixed] Possible Freezing due to NaN numbers from Lua
[Fixed] Particle distance alpha not fading properly
[Fixed] lua_run_cl needing quotes
[Fixed] Crash with npc_sniper
[Fixed] Timing errors when making timers in predicted clientside functions
[Fixed] SWEPS misbehaving with pings > 100
[Fixed] Prevented crashing when too many Lua Effects
[Fixed] Prevented crashing when too many Lua Particle Emitters
[Fixed] Trying to show empty tooltips
[Fixed] Jagged camera movement when zoomed all the way in
[Fixed] Ragdoll spazzing when recording demos
[Fixed] Invalid paths getting added to the searchpaths
[Fixed] Rare crash when being kicked from Script Enforce'd servers
[Fixed] Misc VPhysics crashes
[Fixed] Cameras not getting cleaned up
[Fixed] Crash starting d1_town_03 in multiplayer
[Fixed] Crash starting d1_canals_01a in multiplayer
[Fixed] Search path orders getting messed up, resulting in slow load times/missing sounds/switched textures
[Fixed] Menus sometimes not closing when closing the spawnmenu/context menu
[Fixed] Lua File cache sometimes reloading unchanged files

[Lua] Infinite Loop protection
[Lua] ENTITY:SkinCount() (returns int)
[Lua] Added util.PointContents( int )
[Lua] Added GAMEMODE:SetupPlayerVisibility( player )
[Lua] Added AddOriginToPVS( vector )
[Lua] Added Error( text )
[Lua] Fixed pod returning false to IsVehicle()
[Lua] Added LerpAngle( float, angle, angle )
[Lua] Added LerpVector( float, vec, vec )
[Lua] Added PANEL:PaintManual()
[Lua] Added PANEL:SetPaintedManually( bool )
[Lua] Added PANEL:RequestFocus()
[Lua] No longer need to call ParticleEmitter:Finish()
[Lua] Added SWEP:DrawWorldModel()
[Lua] Added ParticleEmitter:SetNearClip( float, float )
[Lua] Added ParticleEmitter:SetParticleCullRadius( float )
[Lua] Added Player:DropNamedWeapon( string )
[Lua] Added Player:DropWeapon( Weapon )
[Lua] Added SWEP:Equip( owner )
[Lua] Added SWEP:OnDrop()
[Lua] Added render.StartMaterialOverride( material )
[Lua] Added Player:GetRagdollEntity()
[Lua] Added Player:RemoveAllAmmo()
[Lua] Added Player:SetAmmo( ammoid, count )
[Lua] Added Player:TraceHullAttack( vecStart, vecEnd, vecMin, vecMax, damage, damagetype, forcescale ) - returns hurt entity
[Lua] Added Player:SetUnDuckSpeed( time )
[Lua] Added Player:SetDuckSpeed( time )
[Lua] Added Player:SetRunSpeed( speed )
[Lua] Added Player:SetWalkSpeed( speed )
[Lua] Added Player:SetCrouchedWalkSpeed( multiplier )
[Lua] FireBullets table now accepts a 'HullSize' int key (if over 0 defines the hull size of the bullet)
[Lua] Added GAMEMODE:GetCrouchTime( Player, bDuckJump, Ducking )
[Lua] Player:TakeDamage moved to Entity:TakeDamage
[Lua] Updated Lua to 5.1.2
[Lua] Added GAMEMODE:CanPlayerEnterVehicle( player, vehicle, role )
[Lua] Added GAMEMODE:PlayerEnteredVehicle( player, vehicle, role )
[Lua] Added global GAMEMODE_NAME
[Lua] Particle:SetLifeTime() now accepts negative values for delayed spawning
[Lua] Added >>, <<, |, & operators
[Lua] Added CSoundPatch:SetSoundLevel( level )
[Lua] Added DynamicLight( _int_ ) returns a dynamiclight object.
[Lua] Added Player:SetDSP( effectid, bQuickreset )
[Lua] Added GAMEMODE:OnDamagedByExplosion( ply, dmginfo )
[Lua] Fixed tracer effects getting a bad startpos
[Lua] GAMEMODE:EntityTakeDamage is now called for players too
[Lua] Added Panel:GetCaretPos()
[Lua] Added Panel:SetCaretPos( int )
[Lua] Added Entity:Visible( ent ) ( returns true if entity can see ent )
[Lua] Added Entity:VisibleVec( vec ) ( returns true if entity can see vec )
[Lua] Added NPC:SetHullType( hulltype )
[Lua] Added NPC:SetHullType()
[Lua] Added NPC:SetHullSizeNormal()
[Lua] Added NPC:CapabilitiesClear()
[Lua] Added NPC:CapabilitiesAdd( int )
[Lua] Added NPC:CapabilitiesRemove( int )
[Lua] Added NPC:CapabilitiesGet()
[Lua] Added NPC:TaskComplete()
[Lua] Added NPC:TaskFail( string )
[Lua] Added NPC:RemoveMemory()
[Lua] Added NPC:ClearSchedule()
[Lua] Added NPC:IsCurrentSchedule( Schedule ) (returns bool)
[Lua] Added PrecacheScene( string )
[Lua] Added NPC:UpdateEnemyMemory( entity, pos )
[Lua] Added NPC:SetExpression( string )
[Lua] Added NPC:ClearExpression()
[Lua] Added NPC:GetExpression() (returns string)
[Lua] Added GetTaskID( string ) (returns int or nil)
[Lua] Added NPC:UpdateEnemyMemory( entity, pos )
[Lua] Added NPC:SetExpression( string )
[Lua] Added NPC:ClearExpression()
[Lua] Added NPC:GetExpression() (returns string)
[Lua] Added NPC:StartEngineTask( id, data )
[Lua] Added NPC:RunEngineTask( id, data )
[Lua] Added NPC:GetNPCState()
[Lua] Added NPC:SetNPCState( state )
[Lua] Added NPC:MaintainActivity()
[Lua] Added Entity:SequenceDuration()
[Lua] Added NPC:ConditionName( int )
[Lua] Added NPC:ClearCondition( int )
[Lua] Added NPC:HasCondition( int )
[Lua] Added NPC:SetCondition( int )
[Lua] Added NPC:Classify()
[Lua] Added NPC:NavSetGoalTarget( ent, vec )
[Lua] Added NPC:NavSetRandomGoal( fMinDist, vecDir )
[Lua] Added NPC:NavSetGoal( vec )
[Lua] Added NPC:NavSetWanderGoal( fMinDist, fMaxDist )
[Lua] Added NPC:GetMovementActivity()
[Lua] Added NPC:SetMovementActivity( ACT_RUN etc )
[Lua] Added NPC:GetMovementSequence()
[Lua] Added NPC:SetMovementSequence( int )
[Lua] Added NPC:GetArrivalActivity()
[Lua] Added NPC:SetArrivalActivity( ACT_RUN etc )
[Lua] Added NPC:GetArrivalSequence()
[Lua] Added NPC:SetArrivalSequence( int )
[Lua] Added NPC:SetArrivalDirection( vec )
[Lua] Added NPC:SetArrivalDistance( flt )
[Lua] Added NPC:SetArrivalSpeed( flt )
[Lua] Added NPC:GetPathDistanceToGoal()
[Lua] Added NPC:GetPathTimeToGoal()
[Lua] Added NPC:ClearGoal()
[Lua] Added NPC:StopMoving()
[Lua] Added NPC:SetMaxRouteRebuildTime( fl )
[Lua] Added NPC:Give( weaponname )
[Lua] Added Entity:SetRenderAngles( ang ) (clientside)
[Lua] Added Entity:GetRenderAngles( ang ) (clientside)
[Lua] Added Entity:SetRenderOrigin( vec ) (clientside)
[Lua] Added Entity:GetRenderOrigin( vec ) (clientside)
[Lua] Added SuppressHostEvents( player )
[Lua] Added UnPredictedCurTime()
[Lua] Added IsFirstTimePredicted()
[Lua] Entity:SetParent( ent, attachmentid )
[Lua] Added Panel:SetContentAlignment( int )
[Lua] Added table.SortByMember( Table, MemberName, bAsc )
[Lua] Added GAMEMODE:AdjustMouseSensitivity()
[Lua] Added SWEP:AdjustMouseSensitivity()
[Lua] Added SWEP:NPCShoot_Primary( ShootPos, ShootDir )
[Lua] Added SWEP:NPCShoot_Secondary( ShootPos, ShootDir )
[Lua] Added SWEP:GetCapabilities()
[Lua] Fixed crash when giving surface.GetTextSize a NULL string
[Lua] Added GAMEMODE:SpawnMenuEnabled()
[Lua] GAMEMODE:GravGunPunt now gets called when punting held objects
[Lua] Added util.SpriteTrail( Entity, iAttachmentID, Color, bAdditive, fStartWidth, fEndWidth, fLifetime, fTextureRes, strTexture )
[Lua] Added scripted AI base
[Lua] Added OrderVectors( v1, v2 ) (makes min/max vectors)
[Lua] Fixed crash when using ents.FindInBox() with invalid box
[Lua] Added PANEL:SetTextInset( int, int )
[Lua] Added PANEL:SetPaintBorderEnabled( b )
[Lua] Added PANEL:SetPaintBackgroundEnabled( b )
[Lua] Added PANEL:CursorPos()
[Lua] Added healthleft, healthtaken to GM:PlayerHurt
[Lua] Fixed attacker being NULL in GM:PlayerHurt
[Lua] Fixed GM:ScalePlayerDamage not being called
[Lua] Added DamageInfo:IsDamageType( int )
[Lua] Added PANEL:MoveToFront()
[Lua] Added PANEL:IsMultiline()
[Lua] Added PANEL:DrawTextEntryText( col, col, col )
[Lua] Added PANEL:FocusNext()
[Lua] Added PANEL:FocusPrevious()
[Lua] Added PANEL:SetFocusTopLevel( bool )
[Lua] Added PANEL:SetTabPosition( int )
[Lua] Added GAMEMODE:PreDrawSkybox() (return true to not draw default skybox)
[Lua] Added GAMEMODE:PostDrawSkybox()
[Lua] Added Entity:DispatchTraceAttack( dmginfo, startpos, endpos )
[Lua] Added Panel:SetTooltip( text )
[Lua] Added CreateMaterial( name, shader, params )