branchgarrysmod.main/x86-64cancel
626 Commits over 1,035 Days - 0.03cph!
Apply name restrictions to concommand.Add
* It's the same name restrictions as CreateConVar, so probably fine?
Let's try removing Language system from dedicated servers
Minor cleanup
Do not check toolmode_allow convars for Utilities menu
Clarify what "Max Ragdolls" server setting is
Stop soundpatches on entity removal
And also prevent soundpatches from playing with invalid entities.
Spawnmenu calls CanTool clientside to mark server-disabled tools
* This is an experiment which may end up error prone, but let's try it. The intent is to show in the spawnmenu UI when a server (or an addon) has disabled a particular tool.
Implement drag'n'drop for HLMV
* You can now just drag a .mdl onto the app to open it
Minor cleanups
Update AppID for CS:GO to use the new one
Fix normals on balloon_classic LODs and camera.mdl LOD 3
Ship a fixed tri1x1.mdl
* Fixed normals, fixed extra weird mesh
Fixed some spawn crashes with some entities
gmad.exe no longer overwrites existing files
More model data validations
Fix CreateLinkController leaking entities if misused
Implement Combine APC aiming for players
* I had this code laying around unfinished, and now its finished.
* Also respect EnableGun for players only
Lets try undoing changes to UTIL_PrecacheOther
* I wonder if this causes ents.Iterator nulls
Block mat_texture_list_txlod_sync just in case
Fix "invalid format PHY" for old model formats
Fix ents.Iterator getting NULLs again
Limit Colour tool inputs to valid range
Added Lua mesh skinning support
* Added `mesh.BoneData( index, matrixId, weight )`
* Added second argument to `Global.Mesh` - boneWeights
* Added `IMesh:DrawSkinned( matrixTable )`
Minor cleanups
Fixed DrawSkinned affecting underwater rendering
* By applying the model matrix to the Draw() call
Some more than minor cleanups of probably unused stuff
Fill remaining matrices with identity ones for DrawSkinned
* In case some silly goober doesn't give it enough or gives none
Fix handling of userdata members from tables
Fix potential crash with malformed models
Remove that unused code
Potential micro optimization for trace filter tables
Minor cleanup
Fix last map not loading correctly if it's an addon map
mesh.Begin throws errors with invalid primitive counts
Fixed a crash with func_button and Sandbox drive system
Lets try making r_radiosity default to 4 again
Add some sanity checks to map loading
Implement corrected limit checking for mesh.Begin w/ static meshes
I.e. when giving mesh.Begin a mesh object, the limit becomes
65535 instead of
32768
Added second arg to IMesh:DrawSkinned - mult by model matrix
Try to prevent crashes with weird .phy files
Include tree_deciduous_card_01.mdl with the extra skin
* Fixes some visual inconsistencies on HL2 maps
Implement Panel:Clear for DPropertySheet/DCollapsibleCategory
* DPropertySheet will clear all tabs and their associated panels (and calls OnActiveTabChanged with nil as new panel)
* DCollapsibleCategory will avoid clearing its header, deletes everything else
* DPropertySheet:CloseTab now also calls OnActiveTabChanged
Flip order of operations for model matrix mult of DrawSkinned
* Should fix angles affecting position
Fix false positive on LoadLeafs data validity test
Do not reset water reflection/refract textures when they are not used
* From start of game, if expensive water is always disabled (or if the map doesn't have water to begin with), do not clear the RTs. (This would happen only once regardless)
Fix a typo in DModelPanel
Fixed some potential crashes
Clear _rt_Camera texture to black on disconnect
Clear water reflection/refraction textures when unused
Ship fixed door models
* Door03_Slotted - fixed skins not working, fixed opening animations not always playing correctly, added ep1 hardware type, fixed pushbar lighting
* Door03 (Ep1) - added rusted texture skin from Door01 (fits the window cutout)
* Door01 - added ep1 hardware type, fixed pushbar lighting
Ship fixed Skin13 & 14 for doors
* Fixed handlebar textures for both
Merge PR: Toolgun trace not hitting parented props re-fix
Fixed a crash to do with HTLV
Fix potential crash issue with rope rendering
Implement pistol empty holster
* Fixes the model having empty and non empty holster anim being tied to the same activity
Remove the while loop from DModelPanel render
* Added surface.GetScissorRect (Faster than surface.GetPanelPaintState) - returns enabled, left, top, right, bottom
Merged Pull Requests
* weapon_fists sets damage position
* Make closedcaptions fonts anti aliased
Fix missing font CloseCaption_Small
Implement vendor specific shadow depth format test for Intel
Allow solid triggers to touch triggers
* Allows loose weapons and ammo entities touch remove/teleport triggers, etc.
Unhide r_particle_timescale
Make effects.BubbleTrail not turn start/end pos into mins/maxs
Add a temp hack for missing surface.GetScissorRect
Add some invalid handle checks to shadow rendering
Alternative fix for MSurf_MaterialSortID issue
▅ ▊ ▆ ▉▅▋▆ ▊▊▅ ▇▆▆▉ ▄▌▄ ▅█▊▉
▊ ▋▅▍▌▅▌▅ ▆▄▅▌ ▅▍▍▍ ▌▆ ▇█▅▌ ▊▋▅▉
Maybe this time it will work
Probably fix Linux dedicated server build
Fix MSurf_MaterialSortID check being to aggressive perhaps
* Doesn't happen to me, so cant test if this actually fixes the issue
Apply GetPoseParameter range fix for its one internal usage
In the player anim state. Probably does nothing, but at least its not setting the clientside poseparameters move_x/y to invalid values briefly
Fixed crashes with Alyx and Jalopy being removed
* Also makes Alyx cancel try to enter the vehicle if it is removed while she is running to it
Try some more potential crash fixes
* Based on just a single dump
TTT: Fix SimpleImage PaintOver handling
Fix a crash when trying to load weird VTX files
Allow Spawnicon Editor to be resized
https://files.facepunch.com/rubat/2026/February16-2345-RevolvingLouse.mp4
* Also merged Pull Request for case insensitive search and arrow key animation switching
Possibly fix Linux build error
Remove 12char cap on net_showudp names
Added ActivityWeight/ActivityID to util.GetModelInfo sequences
Remove auto generated server flags
* It's been long enough for people to adjust to setting sv_location
Potential optimizations for Matrix()
* Should be a bit faster, especially when not using table as first arguments
Potential optimization for Angle() (same as Vector at some point before)
Clamp BodyMoveXY playback rate to networking limits
Merge PR: Ability for Sandbox NPCs to randomize their model
Fix missing return value on Matrix()
Flechette Gun aligns projectiles with world clicker
Fixed buggy behavior of HL:S crossbow with its zoom
* (By removing the "instant" attack mode)
Fix HL:S crowbar hitsounds in multiplayer
Alias some HL:S weapon killicons from HL2 ones
Fixed Global.EmitSound not firing EntityEmitSound
Make jump/land sounds play for non local players
* Also made Player:PlayStepSound volume argument default to 1
* Fixes Player:PlayStepSound not really doing anything in multiplayer
Added game.Get3DSkyboxInfo
Returns table with "origin" and "scale" keys. No function arguments.
Send replicated convars in batches of 128
* This fixes an overflow/network channel corruption issue on server join when the server tries to send over 255 replicated convars to the client.
Minor cleanups in multiplayer animstate
* Make flDeadtime in prediction use correct data type
* Removed a bunch of unused fields in MultiPlayerPoseData_t
* Reduce amount of LookupPoseParameter calls
Remove some unused stuff
* Removes CRC calc for game_sounds_manifest.txt loading, since the CRC is never used.
* Removes CGarrysMod::SetupSoundsManifest
Reload soundscripts when games are mounted
* This fixes no voice lines playing in Half-Life 2 maps when the game was started without HL2 mounted, and then HL2 is mounted.
Fix NPE client crash when game.Get3DSkyboxInfo is ran too soon
Remove FCVAR_REPLICATED from hud_deathnotice_time
* It's a clientside convar, the flag has no effect.
Fix color mismatch between cl_ and sv_ showhitboxes
cl_showhitboxes 2 to show ONLY player hitboxes
Fixed some potential crashes with navmeshes
Fixed some potential crash issues
chat.AddText handles numbers
Fix a crash in CVoiceGameMgr::ClientConnected due to binary module usage
Fixed normal headcrabs not spawning from their cannisters
Ship a fixed hunter_flechette.mdl
* Uses the idle animation by default now instead of the impact animation, so they actually fly straight now, not at an angle
Update AR2, Flechette Gun and SLAM spawn icons
* AR2 icon now points the same way as other guns, SLAM icon now has the same warmer colors as all the other icons, Flechette Gun icon no longer uses the angled model in the preview
Fix Flechette Gun being able to shoot through thin walls
Fix file list concommand autocomplete searching mounted content
It's only used for stuff like saves and demos, no need to search in mounted games like HL2
Fix sounds played via env_microphone having no subtitles
Apply TF2 SDK fix for CUtlFilenameSymbolTable
* Should help fix loading packed files on Linux on certain maps with embedded files
Fix thirdperson initial angle snap (From TF2 SDK)
Put mksheet into "Tools" group (VPC)
Clamp bot player count in the server browser
* Also apply the clamping to serverlist.Query
Merge Pull Requests
* TTT weapon visual fixes for singleplayer
* Use IsPlayer instead of GetClass() == "player" in base gamemode
Remove the entire GameStats(Uploader) system
Its never used by anything, just wastes resources
Also references to xboxsystem and matchmaking systems that were still compiled in
Fix leaks with CProceduralTexturePanel
* This fixes color picker preview in particle editor breaking after a few uses
Move CUtlVector::GrowVector error to memory grow functions
Fixed single character folders not working for textures on Linux
* This should fix missing textures on surf_quickie.bsp on Linux. Possibly other maps as well.
Minor cleanups
Implement STUDIOHDR_FLAGS_VERT_ANIM_FIXED_POINT_SCALE
Fix potential crash issues with dropship
Prevent `trace` concommand erroring with dropships
Implement $pointsamplemagfilter
Lets try static client scratch buffer
Added support for V12 static prop lump (MC:V)
Remove r_maxdlights convar
* it's already at its max value
Implement empty idle for pistol
Scale lightmap pages to current map's needs
Try to fix Linux compile error
Apply lightmap with lightstyles fix from CS:GO
* Seems to help a little on MC:V maps
Minor cleanups
Make game.GetMapVersion also return the BSP version
Apply a tiny fix for dynamic lights (Light tool) for bumped lightmaps
* This is the difference: https://files.facepunch.com/rubat/2026/February06-2318-JoyousQueenslandgrouper.mp4
Minor changes from CS:GO to do with float bumped lightmaps
Apply same limitations of render.CapturePixels to render.Capture
* Allow render.Capture on rendertargets
Copefully fixed MacOS gmod_audio issue
Ship gmad/gmpublish on Linux server (x86-64)
Fix Alyx playermodel coloring covering some wrong areas
Pull Request: Added color support for Arctic player model
Lets try updating BASS.DLL to 2.4.18.3
* Probably achieves nothing at all
Alias prop_portal_stats_display to prop_dynamic
* Fixes Portal 1 having missing elevators
Material refcount changes
* Fixed Portal 1 energy pellet having missing texture (0 ref count)
* Do not precache AR2 ball materials until used, they can now also unload on map change
* Do not forcibly precache muzzleflash materials that are not even used
Render hook changes
* Apply correct rendering matrices for PreDrawHUD and PostDrawHUD, so calling cam.Start2D is no longer necessary.
* Move calling of PreDrawHUD slightly later, so it renders in the 2D view, just like PostDrawHUD does.
* Moved GM:PostDrawEffects to be called slightly sooner than before, so it is called in the 3D view, not after it, and also is consistently called only when PreDrawEffects is
Prevent opening chat with cl_drawhud 0 locking you out of main menu
Do not precache some HL1 weapons
Prevent gauss gun spewing about out of bounds values
Better handle invalid physObj in queued collision events
Lets try making lights non networked
Added "damage" keyvalue to `crossbow_bolt`
Allow m_ragdollMins/m_ragdoll.allowStretch via SetSaveValue again
Minor cleanups
Make Pistol weapon use its draw empty animation when empty
Implement empty draw for Crossbow
Include hl2 version of buildingset056a
* Apparently it was changed in the 20th anniversary update?
particle COLLISION_MODE_INITIAL_TRACE_DOWN traces down
* instead of tracing west
More potential crash fixes
func_movelinear supports changing parents
* Fixed a bug on ep1_c17_01
Rearrange new field of CopiedDupe netmessage to bottom
* Apparently there's some addon out there that overrides some duplicator functionality and breaks any changes, sigh. At least this way it should be less broken.
Add some checks for voice chat gain manager
* If current or target gain become inf or nan, reset. Also prevent division by 0.
More fixes for potential crashes
Fix OSX compile error
Remove more unused HUD elements from builds
HUDShouldDraw gets called for cl_showfps panel (when active)
Remove more unused GameUI stuff
Fixed crashes with certain material proxies when used on static props
More minor cleanups
sv_showimpacts draws server hitboxes in blue color
Init QAngle to 0,0,0 on creation
Fixed player hitboxes in vehicles at odd angles
Fixed some player animation/hitbox desync
* Vehicle animation poseparameters were not set serverside
* Player "grab ear" animation was not playing serverside
Restore sv_showhitboxes (cheat protected)
Fix some addons erroring out due to DImage changes
Fix branch difference compile errors (mksheet)
Ship mksheet.exe (for particle sprite sheets)
saverestore uses ErrorNoHaltWithStack not Msg
* Also fixed a Lua error due to missing ErrorNoHaltWithStack
Merge Pull Requests
* Apply name filter to post refresh server list updates
* Fixed Lua errors when manually running internal concommands dupe/save_publish
Fixed an exploit that allowed spamming player_pickup on the server
* For now, we block any new pick up attempts if we have a prop already picked up.
Replace barney's face on EP1 maps
Dynamic resupply changes
* Use GetMaxArmor instead of hardcoded 100
* Use "canon" values for max ammo of each ammo type (instead of 9999), so it spawns more useful ammo types instead of shotgun ammo all the time
Fix Combine Soldiers using rifle walk/run anims with shotguns
Disable more Low Violence code that checked the registry
* It was already basically unused, so it won't confuse me in the future by being still compiled
Add description and min/max to engine_no_focus_sleep
Added EnableSpotlight Input to npc_cscanner
PR: Fixed an accidental global var in DModelPanel
Fixed models with matproxies flip flopping render groups (static props)
Faceposer fixes
* Does not try to access flex controllers above 96 (since no convars anyway, and no networking)
* Fixed faceposer setting invalid flex value ranges (from MIN to MAX of the flex which is incorrect, to from 0 to 1 which is correct)
Potential fix for player model faces (alyx/gman) in multiplayer
Remove HUD Hint related code from base weapon
Update Rebel texture sheets to fix a small issue on the gloves
Finger poser UI flips controls for right hand
Put the i in Dynamite
Rework Finger poser a bit
* Do not use hardcoded lists of bones, add a new list library list so addons can add support for custom models easily.
* Deduplicate some code
* Improve support for Zeno Clash 1 models
Localize "Loading..." labels in Steam Workshop browsers
* Also made it more consistent between all content types
Merged PR: Localize some more UI texts
Fix a very spammy warning on Linux
Localize Favorites map category in main menu
* Also fix localization of Other maps category
Localize server outdated tag
* Also fix translation module adding trailing space to every single output string
Minor cleanups
* Removing some unused VGUI code that I came across
Duplicator uses icons instead of text for workshop status
Fix a regression with func_tracktrain
* It a portal2/csgo change, weirdly
Minor cleanups
Duplicator tool changes
* Improve rendering of the dupe bounds when intersecting with world
* Improve dupe spawn position calculation to avoid spawning in walls
* Show selected dupe name/icon in context menu
Final finger poser mod support updates
Fixed more crashes and many potential crashes to do with models
Stop NPC_Citizen lobbing healthkits and NPCs
Fix NPCs being unable to pickup constrained weapons
* Specifically the first spawnflag "Start constrained", which caused a potential progression stopper on ep1_c17_02a
Add Combine Shotgunner Playermodel texture with colorable eyes
Update Odessa playermodel
* Consistent phong usage on face material (consistent with citizens)
* Fixed mouth faceposing
Dynamite no longer uses timer.Simple, and clamps delay to 3600
Apply some checks for a potential crash issue
* Would crash with a message instead of silently
Limit Material() in menu state
Fixed Lua error counts in Problems panel being covered up by Copy btn
Fix killfeed showing neutral/fearful NPCs as friendly
* When killed by the player specifically
Resolve self-crash with File:Read
Add fallback material for sprites/flare6 (env_funnel)
Add 2koth_ and cppl_ maps to TF2 category
Replace coreball.mdl with one with simpler physics model
Merged Pull Requests
* Fixed start/stopsound for some entities in Hammer having invalid default values
* Localize "password" placeholder in server browser
Some potential crash fixes
Fix Lua errors when NPCs use Fists and Camera SWEPs
Remove XZip from Bootil
Update FastLZ lib
Fix some compile warnings in Bootil
Fix "Error" and "ErrorNoHalt" not firing OnLuaError on SRCDS
Fixed a crash with running "+showbudget" on srcds
Add type checking to Entity:PhysicsInitConvex second arg
Fixed some potentially crashy issues
Merged Pull Requests
* Don't reset Player Counts on serverside Lua Refresh of Sandbox-derived gamemodes
* Micro optimization for sql.QueryValue
* TTT: Fix auto weapon spawning on non-TTT maps
Fixed smscorch2_subrect.vmt having wrong texture offset
Fix "Couldn't create player_connect event" appearing on success
Apply some NPE checks to render data cache
Fix player model eyes pointing elsewhere when singleplayer is paused
Minor cleanup
Added vec = game.GetWindSpeed( vec pos = nil )
* Optional arg that takes into account wind controllers with radius above -1
* Without arg = only use the global controller (if one exists)
* position argument unfortunately will not do anything on client yet because the env_wind position is never networked to the clients
* Function is shared
TTT: Add TTTRadarScan hook
Only queue simple timers if using the same callback func
Minor cleanups
* Code deduplicate of timer.Destroy alias
* Remove code from timer.Create that seems to do nothing useful
Handle potential mesh related crashy issue
Try to fix decals on high poly models spazzing out across the whole map
Do not forcibly crash the server if `player_connect` event failed to create
* Now prints a warning and continues on.
Fixed a typo (Serveres => Servers)
Fixed a typp in UGC uploader (+ some translations)
Added texture name to ShaderAPIDX8::CreateD3DTexture warning
Merge some func_tracktrain changes from P2/CSGO
* Allow Roll spawnflag
* hack to avoid gimble lock
* SF_CORNER_TELEPORT interpolation change
* Dead end path change
* Added missing spawnflag (4), updated description of "HL1 train" spawnflag
Lets try turning "gamemode is nil" crashes into Lua errors
* Seems to not crash on its own, and is slightly better/debuggable user experience
Add likely fail reason to ShaderAPIDX8::CreateD3DTexture warnings
* It's 1x1 DXT5 textures in my experience, so we test for that
Add "enabled" key to util.GetSunInfo
Try to fix IMaterial:GetShader on Linux SRCDS
* By storing the shader name on the material, instead of relying on the shader system on dedicated server
Add a few new inputs to prop_vehicle_jeep (Jalopy version)
* DisableRadarDetectEnemies
* EnableHazardLights
* DisableHazardLights
* NoHazardLights key value
* Added "Has Gun" keyvalue to jeep in Hammer
* Removed non existent "HUD Locator Precache" spawnflag from Jeep in Hammer
Use FGD files
* Fixed prop_vehicle_jeep having static prop key values that are not applicable to it
* Added some descriptions here and there, where there were previously none
* Deduplicated some key value definitions, such as skin and fade distance stuff
Added new spawnflag for func_tracktrain - GoldSrc rotation
Make plastic materials emit some particles on bullet hit
* Affects props like the blue barrel, Lamarr cage, etc.
Minor cleanups
* Makes CBaseAnimating::m_OverrideViewTarget private
Fixed potential crash issue with look door
Jalopy no longer spawns trigger_vehicle_cargo at all times
* Instead, spawn the entity only when asked to, i.e. `CargoVisible` key value is set before Entity.Spawn is called (maps), or SetCargoHopperVisibility input is used on the car. This input can now also be used to properly disable the functionality by doing `SetCargoHopperVisibility 0`
* This means that Sandbox Jalopy no longer uses 2 edicts, and will not be able to hold a magnusson device in the invisible holder (unless explicitly enabled beforehand)
Added ReleaseBusterFromCargo input to Jalopy
Remove "Ember type" from env_embers in Hammer (did nothing)
Make env_embers compile with parenting support
* So basically there's this stupid system of "if a brush entity doesn't have "origin" keyvalue at map compile time, the brush model bounds will be in world space". env_embers did not use it and therefore was incompatible with parenting. We now make this entity use that system (like all entities should really be doing to be honest) and try to detect the difference in code for old maps and new maps, and apply the entity's position to the particles if we detect the map as "newly compiled with support for parenting" for this entity
FGD: Add auto generated values of func_breakable_surf
* So they do not appear as broken in Hammer, and provide explanation as to what they do.
More potential crash fixes to do with model flexes
Scale JIGGLE_IS_BOING jiggle bones with bone scale
Fixed double bound checks in map loading
Fixed a NPE crash with CrossbowLoad effect
Fix compile errors due to branch differences
More fixes for potential BSP loading crashes
Prevent infinite loops in MapIO
* When running over 100 map inputs per frame, continue firing inputs in the next frame. No input events are discarded. A console message is printed if the limit is hit.
Update ambient_generic radius description in Hammer
Remove status trying to use non existent convars
Update Bootil's ZLib (Just testing if it will build on Linux)
Remove Bootil's ZLib usage (GZip), since it is unused by the game
Merged Pull Requests
* Fixed "Edit entity" property creating Lua errors when the entity was removed after menu open
* Don't use deprecated VGUIFrameTime in the base game
Fix spawnicons not rendering when returning true in GM:RenderScene
Try to solve undo ordering issues due to clearing of undo table
Actually reenable net message buffer limiter thing
Whoopsie
Reenable FreeImage's GIF support for now
* Should not rely on this, GIFs as addon previews are not officially supported (never were)
Queue simple timers to next frame if called from a simple timer callback
Fixed crashes to do with flexes on NPC models
Probably fixed screenspace_general_8tex
Added more data to util.GetSunInfo
color, material, size
Fixed a typo in nags_alyx.txt
Do not eject players from vehicles on Spawn() during level transitions
Fixed save restore warning due to NPC flex related changes
Minor cleanups
Fixed Sun Editor not inheriting map values properly
Added SurfaceName to `trace` concommand
Fixed compile error due to mathlib differences
Disable all unused FreeImage plugins
Block fs_ convars from Lua
Minor cleanups (whitespace)
TTT: Remove usages of PANEL:SetDisabled
* Also made "Confirm Death" button get disabled if pressed, like "Call Detective" does.
Remove usages of Panel:GetDisabled for base game
Disabled DMenuOption adjustments
* Clicking disabled options no longer closes all menus
* Disabled options no longer react to hover events (visually)
Delete unused `showhitlocation` convar
Micro optimizations for Matrix() & Entity:GetBoneMatrix
Micro optimizations for some Vector stuff
* Vector global, __div, __mul, Mul
* Mostly caching GetType result
Added Entity:CopyBoneMatrix
Same as GetBoneMatrix, but instead or returning a new matrix, it copies the data to the matrix given in 3rd argument, which should be faster.
Fixed WorkshopDL not mounting gamemode files
Fixed Male Citizen player model mounts
Added `screenspace_general_8tex` shader
* This is the same as `screenspace_general`, but binds 8 texture samplers
* This is an experiment in shader inheritance
* material parameters: $TEXTURE4 - $TEXTURE7, $LINEARREAD_TEXTURE4 - $LINEARREAD_TEXTURE7
Entity:SetCollisionGroup allows HL2 collision groups
Added COLLISION_GROUP_HL2_SPIT enum
Prop Spawn effect works better with depth pass
Remove forced RENDERMODE_TRANSCOLOR from Balloon entity
* The entity can still be colored just fine
Fixed Sandbox tools showing alpha selectors when unwanted
* Most default tools showed the alpha bar while it did nothing. It is no longer shown for tools that do not make use of it.
"Fixed" certain weapons rendering effects in opaque pass
* Since view models cannot be TWOPASS (or TRANSPARENT), we fake the flag by always applying it for ViewModelDrawn, except for depth pass
* Adds new argument to SWEP:ViewModelDrawn - STUDIO_ flags. Transparent effects should only be rendered here if STUDIO_TRANSPARENCY is set
Use Vector:GetNormalized instead of GetNormal
Fix wood_wire_angle* props spawning glass debris
Fix PHX glass props spawning gibs in 1 spot
Fix dissolve effect on entities without hitboxes
Fix 357 reload shell eject, again
Make Nova Prospect soldier player model use custom materials
* Allows people to modify the material without affecting the NPC, just like other combine player models.
* Made the eyes colorable on the first skin like other combine player models
* More consistent appearance compared to other combine player models (rimlight)
RichText:SetText now discards \r and \0
* This is consistent behavior with RichText:AppendText and fixes RichText:GetText not working correctly after SetText and AppendText calls in that order.
Fixed entities with material overrides being in the wrong render group
* Another one of those "depth pass" rendering issues with large dupes. If 2 entities have the same material as material override and one of them is transparent (via the color tool for example), this would affect a lot of unrelated entities. I think this only happened if the material was last rendered with transparency in the previous frame.
Fixed freezes when removing large amount of entities in Sandbox (dupes)
* Same for creation, but probably to a lesser degree
Clear out NULL entities from g_SBoxObjects on removal
* When player props are removed post disconnection, previous solution was either untested or simply inadequate?
Clear cleanup.GetList of NULL entities every so often
Clear invalid undos every so often
* This is mostly for disconnected players
Fire a problem when WorkshopDL download fails
For highest severity problems, fire a notification
* This should mostly be failed addons downloads, most importantly - during server loading screen
Merged Pull Requests
* Fixed potential Lua errors with Dynamite sandbox entity
* Fixed errors in Entity:CallOnRemove callbacks preventing other callbacks from running
* Optimize Player:GetEyeTrace*
* Menu: Only override <a> in Awesomium
* Menu: Disable some AngularJS features
* Adding a cooldown to the Camera weapon effects
nil check undo Entities table when cleaning them up
Remove unused pooled string
Fix hook.Add name in main menu
Added flags arg to PostDrawViewModel/PreDrawViewModel
Fixed VOX map id replacing not working at all
Fixes certain sentences.txt stuff not working properly
Player.Spawn will also force exit the player from their vehicle
Apply NOTEAMCOLLIDE in serverside ShouldCollide as well
* This will run BEFORE Lua ShouldCollide
* Fixes severe performance loss when many no collided players stand in the same spot
Fixes for some potential crashes
Allow Pre/PostPlayerDraw recursion up to 10 deep
Merged Pull Requests
* Do not draw effect rings in Depth Pass
* Fixed regressive Lua error in g_SBoxObjects cleaning code
Change damage indicator materials
* For full screen damage effects, use a "vignette" type texture
* For other effects, use $linearwrite material to reduce banding
Disable "player is dead" red screen effect
* It was not applied consistently to all deaths, and it is kinda unwanted for Sandbox type game
Move drown damage effects from UTIL_ScreenFade to damage indicator
Adjust burn/drown damage indicator effects
More oranger burn effect, longer drown effect (same length as it was before any changes)
Move crush damage effect to HudAnimations too
Make DMG_ACID screen effect separate and different
* No longer duplicate of radiation effect, green-ish tint
Rework DMG_PLASMA effects/sound
* DMG_PLASMA no longer makes the screen just half black (now has cyan effect), and changed the associated sound from infinite loud thing to the burn damage effect
STUDIO_ flags for Pre/PostDrawPlayerHands
Try deleting "scripts/game.txt"
* it only contains `"$game" "GARRYSMOD"` and doesn't seem to be used by the game
Changed gun firing sounds from 140dB to 105dB
* This is consistent with Crowbar and some other weapon sounds, and is less loud at large distances.
* This affects NPC firing sounds as well
* Changed toolgun to use its own soundscript - `Toolgun.Single`. No sound change, only volume change.
Make Annabelle in player's hands produce correct shooting sound
Some minor changes from TF2 SDK
* net_graph lerp
* debug builds related change
* vgui buildmode fix
Update SSE math from TF2 SDK
* Just a preventative measure against improper usage of LoadAlignedSIMD
Some more TF2 SDK changes
* TextImage::GetText fix
* scaled physics and saverestore fix
* dynamic shadow poke-thru fix
Fix some crashy issues
Rework internals of Player.Kick and game.KickID
* They are now consistent with each other. Replace " with ', trim the command to 511 chars, apply newline at the end.
Fix an issue with CBasePlayer::Kick
Fix new Lua error with spawnmenu again
* Why was it "HangOpen" and not "SetHangOpen" for spawnmenu..
Probably fixed floating addons on Linux
Minor cleanups
Ensure we don't load saverestore files from mountable games
Update server version mismatch disconnect messages.
Minor adjustments to HLMV
* Make the minimum size bigger (1200x800, from 640x700) so all UI elements fit without resizing
* Title always contains program name
* Prevent materials being deduplicated in the material list, so all missing materials now show
Fixed a particle related crash
Fixed normal map for Shotgunner Combine Soldier player model
Added 3rd skin to Combine Soldier player model
* It's the skin for the updated combine soldier texture from Episode 2
Fixed wall slams playing wrong physics sound
* Now plays the sounds associated with the material we hit, not the sounds of the last ground entity we were on
Custom Spawnmenu position function for view models
Some bounds checking in shader system just in case
Fixed a regression with Entity:CreateParticleEffect when using tables
Apply proposed SV_PackEntity optimization (Community Contribution)
Apply the same fix for func_proprrespawnzone
* Of it not being tracked properly like clientside physics props
PR: Prevent recreating `GhostEntity` every tick with some tools
Remove redundant arguments from calls to Entity:Fire
Pull Request: Fixed wrong motor torque axis
* Fixes the motor torque axis being wrong if the motor was rotated after creation and before first activation.
Fix Lua errors in Sandbox derived gamemodes without spawnmenu
Better match viewmodel hands for male11 and male12 player models
Fix main menu Lua errors when start that one map
Reenable net message buffer limiters
So `net.BytesLeft()` would work as expected. This was tried in 2019 but was undone for some reason. In my testing it works.
Minor Lua cleanups to do with net.Receive arguments
Added render.IsTakingScreenshot
Make Entity:SetLightingOriginEntity use model illum position
Reimplement kickid from scratch
The original implementation is kinda whack. Hopefully this new one fixes whatever issues people are having with it producing weird kick reasons (if the problem is even kickid to begin with)
As a bonus kickid "STEAM_0:0:0" "reason" format now works too (previously STEAM_0 format did not work as a single argument)
male17 & mossmanarctic glove viewmodel fix
Patch some models
cs_fix.mdl - Fixed it not loading
zombie_soldier.mdl and soldier_stripped.mdl - Remove dependency on cs_fix.mdl, use z_anm.mdl and m_anm.mdl like they are supposed to for player models
Fix underwater ambient sound never playing
Update game_sounds_manifest.txt
Ignore VPK build files
Update "CUtlBlockMemory overflow" warning with some numbers
Add missing Episodic soundscripts to the HL2 fallback VPK
Make npc_strider fall to the ground if moved via physics gun
* Also negates the bug where Antlion Guard can launch the strider into the sky infinitely
Fixed a material refcount issue with render.MaterialOverride
* Occurred with dupe icon generator where the outline became missing texture.
Fix potential refcount issues with MaterialOverrideByIndex
* Also fixes an issue with submaterials not setting correct variable "numPasses" in model rendering
Fixed a recently introduced compile warning
Even more potential material refcount issue fixes
* render.WorldMaterialOverride, render.ModelMaterialOverride, render.BrushMaterialOverride
* Also reset all 3 on disconnect
Fix potential crashes with malformed models
Use model bounding box if it has no hitboxes for particles
* This fixes an issue with most PHX props where the fire particles come out of a single spot on the model, instead of the entire model like expected.
Apply memory allocator fix for LuaJIT
Apply some random-ish patches from LuaJIT repo
Minor cleanups
Prevent NPC animation events firing pistol weapons
* Alyx model has "fire pistol" event, and so do the pistols, so the weapon ends up being fired twice in the same tick. Now we ignore animation events coming from the NPC, so the weapons only fire once. For now, this is limited to Pistols that NPCs can use.
Fix Alyx firing 357 spawning reload shells
Add more entities to protected list
* gmod_gamerules, ai_network, soundent
* instanced_scripted_scene, ai_ally_speech_manager, manipulate_bone, manipulate_flex, scene_manager
* These are internal runtime singletons Lua has no business touching
StudioMDL: Make $maxverts optional
* Since it causes unexpected issues by itself, make it do anything only when it is actually present in the .qc file
Fixed nextbots in Source saves crashing on load
Added CNewParticleEffect.Set/GetShouldSimulate
Fixed multibone static props fast pass using garbage bone positions.
More consistent checking for protected entities
Basically more code de-duplication.
Also adds npc_barnacle_tongue_tip to protected entities list
Fix map load crashes with that one map I was sent
Adjust "Invalid value %f for -maxlightmapdim" warning
* Will now say that it is ignoring the value, and display the valid value range.
VBSP now adds extra keyvalues to worldspawn about itself
* 2 keyvalues that could be useful for debugging:
* "vbsp_version" which will contain the VBSP compile date
* "vbsp_exe" with 2 possible values "gmod" and "gmod_64". Indicates the map was compiled using GMod's VBSP
Fix ManipulateBone issue
Fixed a stack overflow crash with IK_ATTACHMENT
Rework how trace whitelist works
* It now better respects the collisiongroup/mask, using it when testing for whitelist, instead of inverting it after the entity failed to pass the whitelist
Added game,GetMapChangeCount
Entity:GetModel force lowercases weapon world models too
* It was already forcing lowercase on all other entities
Set min_use_angle to 0.8 in the FGD
* 0.8 is the old default value, before the feature was added
Fixed prop gibs stopping spawning after the 300th in multiplayer
Relax IsMarkedForDeletion checks for Entity:Get functions
Improve TWOPASS model detection & fix alphatest SSAO pass
* Alpha-tested materials are now considered opaque
Alpha test HL2 door props with windows in it
(Sub)Material overrides affect depth passes
* So making a glass prop (or glass part of a prop) opaque actually affects the flashlight shadow
Combine Mine relationship adjustments
* Doesn't attack Combine Gunship, Manhacks, Stalkers
* Always attacks barnacles
* Respects IgnorePlayer and DisableAI settings
Delete clientside part of prop_vehicle_cannon
* Serverside part was already removed from GMod
* Also removes it from the FGD
Apply same restrictions on APC as the Jeep has (properties & PhysGun)
Fixed client D.O.G. ragdolls leaving behind ropes on removal
Add tracer effects to Shotgun/Annabelle fired by NPCs
Fixed rapidly loading models (dupes) affecting model translucency flags
* Models now consistently get their translucency/twopass flags set, regardless of when they are loaded. Previously It was that opaque materials would be detected as translucent due to previous rendering operations, causing models to have wrong flags for the entire play session, and differ between play sessions.
Try to occasionally compact pending sounds vector
* Instead of waiting for player to disconnect, try to compact the queued sounds vector after they are sent out.
Clear m_CompensatedEntities of invalid entities every second
* To prevent server crash in highly unlikely scenario of nobody shooting a gun for centuries in the server
Increase lagcomp invalid ent clear timer to 60 seconds
Added serverlist.ServerRules (menu state)
* Similar to serverlist.PlayerList but for server rules. Both also now have a second argument in the callback indicating whether the callback was an error
Update gmod.code-workspace
Revert "Potential fix for HUDWeaponPickedUp getting wrong entities"
This will require network breaking changes
Prevent worldspawn (re)creation in a few more places
Set default m_flUseLookAtAngle for func_button to 0.8 (was 0)
Fixed Player:DropObject not working for Physics Gun without the arg
Particle Editor search and Copy Name button
Reset particle preview when it was hidden and became visible
* "Fixes" some particle previews just becoming blank after a while of not being simulated.
Minor cleanups
func_conveyor affects physics props
Re-add model scale to prop_dynamic in Hammer
It works visually.
Minor cleanups
Prevent entity precaches from calling OnEntityCreated/Removed
Enable Episode 2 flinching behaviors for npc_zombie
* Also fixes its blood color being YELLOW instead of ZOMBIE
More bounds checking for texture related methods
Merged Pull Requests
* Minor optimizations for new game screen
Strip out more obnoxious symbols from server names
Allow copying server name from detailed server view
Pull Request: Minor server list optimizations
Fixed Lua error with "" for rope material
Fix nullptr crashes (on game exit?) to do with HTML panels (CEF)
Make Zombine use zombie blood color
Resistance mines target Xen Aliens from HL1
Make Resistance Mine have proper name in killfeed
Add missing attachments to Combine APC model
So the player's view is not in the ground if they somehow got into the APC
prop_vehicle_apc code tweaks
* You can now actually exit the APC if you got into a non locked one
* Non locked APC now starts the engine when entry animation ends
* Do not play locked sound for non locked APC
Fixed Gravity/Physics Gun world model
* It is no longer changing its light level based on rotation (fixed normals)
* Add 3rd skin for the mega gravity gun, used by c++ code
* Adjusted model origin to match the HL2 model (we are using HL2DM one) for NPC animations
* Fixed physics model not matching the visual model
Update some weapon icons with poor constrast
Fixed toolgun world model light origin
Add thumbnail for nb_example so people stop pestering about it
Potential fix for HUDWeaponPickedUp getting wrong entities
Updated TTT
* Add weapon group spawnflags to ttt_random_weapon
Antlion Grub ragdoll inherits color/material from the "npc"
* It's not a real NPC
Add a copy button to kick reason popup
Add `cable_dx8` to rope shader whitelist
* Whyyyy is it DX8
Replace FLT_EPSILON with 1.0e-10f to match `main` (VectorNormalize)
Fixed crashes when a font character is too wide
Port CS:GO's TexturePacker and FontTextureCache
* Fixes a weird font corruption issue
Fixed multibone static props flashing across the map randomly
Limit physics rescaling to prop_physics and sent_anim
Fixed `props_phx\trains\tracks\track_switch2.mdl` (Community Contrib)
npc_missiledefense model + code adjustments
* works better now
Deduplicate "Failed to CreateQueryUserUGCRequest" warnings
* So it is known exactly where its coming from
Disable vmevent API
Fixed Enemy Rebels refusing to use RPG against the player
* Also fixed them commenting on players death as if they weren't hating them
Bump mp_decals default to 1024, add description
Cleanups
* Delete r_norefresh, CRender::m_frameStartTime, duplicate definition for mat_depthbias_normal
Improve dedicated server workshop error handling
Now loads the cache (overwriting) if ANY of the server collections fail to be retrieved.
Fixed retry logic for
Fixed decals not rendering in Hammer
Ship dock_broken01a.mdl with fixed physics
* No more bits sticking out
Fixed StudioMDL crashing when creating folders for the model
Fixed utilityconnecter006b/d.mdl physics
Fixed certain NPCS constantly lowering their weapons after each burst
Mossman/Kleiner/Breen/Eli
Update FGD files
Remove non existent entities from BreakableBrush spawnobject
Fixed default model for physics_cannister, npc_launcher and weapon_bugbait
Remove default model (error) for npc_missiledefense (now a box)
Move modelscale keyvalue from Breakable to specifically prop_physics and its variants
Fix NPCs being unable to shoot the Alyx Gun
Fixed some unfortunate regressions with vehicles
Ship light_cagelight01_off.mdl with fixed physics
Ship fixed physics for windmill_blade004b.mdl
Updated language files
Make net_error thread_local
Fixed crashes to do with vehicle driver NPCs
Foxed a potential issue with CNPC_Osprey
Remove non existent entities from the FGD
* Weapon_Brickbat, env_rotorwash, references to weapon_beerbottle, test_sidelist, npc_crabsynth, env_terrainmorph
Change VPROF name for GetPathTime
Make metrocops draw other types of pistols as well
Fixed Combine Soldiers not walking/running with pistols/RPG
Improve Metrocop behavior with the RPG
* No longer tries to chase the player, go back to safe distance loop, etc.
Combine Soldiers can walk/run with no weapon or melee weapons
Breen acts like a combine when using weapons, instead of doing nothing
Improve Hammer particle browser
* No more random numbers in Used count, no more 13FPS, better layout, no more black background
Revert "Do not rebuild node graph for workshop maps"
Entity.GetCycle returns 0 instead of nil for invalid entities
Make Faceposer flexes appear in the same order as in the model
Fixed potential server crash
Clamp a bunch of Lua binding enum inputs to valid values
* Silently clamps the value for Entity.SetSolid, SetMoveType, PhysicsInit, PhysicsInitStatic, SetRenderMode, SetCollisionGroup, SetAnimation, SetFlexWeight, GetFlexWeight, IGModAudioChannel.FFT
More input clamping for enum inputs
Fix last static prop not rendering
Alias `Divider` to `Panel` for DarkRP
Update FGD files
* MakeRegularAlly/MakeGameEndAlly inputs for gman/mossman/monk/fisherman
* Cleanup trailing whitespace
Fix another infinite loop on disconnect
Prevent player's view ROLL from being changed by bad actor maps
* Either by spawning or teleporting the player
Another malicious map prevention
Do not rebuild node graph for workshop maps
Basically if the .ain file exists in a workshop addon or the map itself, do not rebuild the node graph because it will just not be used, and be rebuilt every time the map is loaded
Prevent unexpected disconnection when using gm_load on a server
NULLLLL chex
Make certain NPCs appear in killfeed
* Helicopter, Combine Ceiling Turret and Camera and Antlion Grub
Fix inverted null check from yesterday
Fixed regression with clientside entity removal
Fixed -tools spamming about "Too many popups!" when its not so
* It was complaining about total number of popups, not number of popups being rendered like originally intended. Apparently been this way since before 2014.
Fixed spritecard orientation 3 not rendering at all
Unify how entities are removed
Apply proposed fix for CModelLoader::Studio_ReloadModels
garrysmod-issues/issues/6467
Fixed crashes to do with IK certain models
Fixed an infinite loop on map unload
constraint library - rope material shader whitelist changes
* Change the rope material shader blacklist to a whitelist (of UnlitGeneric, SplineRope and Cable shaders), and disallow materials that do not exist (!!tested on server!!)
Potential crash fixes
Minor cleanups
* Remove dummy functions in CLuaGameSystem
Remove obsolete/undocumented/useless panel types from vgui.Create
* Also duplicate entries for RichText and SpawnIcon
Fixed asset://mapimage/ using wrong mime type
Fixed a exit game crash to do with multirun
* GrabSourceMutex calls CloseHandle, but doesn't reset the variable to NULL
Fix potential issues with networking code
* Investigating "GetEntServerClass failed" error
Fix menu not working in browser due to recent changes
Adjust spawnmenu HTML tabs colors and padding
* Make the blue color darker, consistent with main menu
* Make the save button have better contrast when hovered
* Remove unnecessary padding/margins so there's more space for the content , and the icons are aligned with the category selector box
* Removed unused CSS classes (.btn-back)
Add hover/active states to some button classes in main menu
* Paginator, map categories, addon modals now have :hover and :active states where they didn't use to, makes it consistent with other buttons that do have hover states, etc.
Merged Pull Requests (Community Contributions)
* Menu: New Game checkboxes cleanup
* Menu: Improve modals on Addons page
* Menu: Optimise favourite map handling
* Menu: Optimise 'ng-tranny' translation module
Copy over changes to ReadPreserveEnt from CS:GO
Cleaned up Panel.h
Minor cleanups for gmod stuff in c_baseentity.h
Try a fix for "GetEntServerClass failed for ent 1"
Will print "WriteDeltaEntities m_pNewPack is NULL!" when the "fix" is hit, hopefully it will only ever happen in the one case where it would shutdown the local server since it may cause side effects on its own (for clients)
Add newline to "BroadcastMessage" console message
Turn some DevMsg to DevWarnings
* has an invalid spotlight
* Warning, funcladder with block
* --- Host_NewGame ---
Properly prevent damage-inducing view punch from falldamage
* It is applied from server only, so causes prediction errors. Falldamage viewpunch is already applied in the game movement code anyway.
correct units in ToString of GMod_StC and CtS net messages
* Now shows bytes correctly
Adjust formatting of lua_dumptimers
Adjust formatting of `lua_find(_jooks)` output
Fixed ACT_HL2MP_SWIM(_IDLE)_PASSIVE having swapped IDs
* Fixes swimming animations for the hold type not working correctly
weapon_base also retargets ACT_MP_SWIM_IDLE
Remove non existent key-values from env_smoketrail in FGD
Update weapon_physgun.txt
* Remove references to Pistol
Refix SMG1 grenade smoke
* For some reason the previous hacky fix stopped working, so instead we just make env_smoketrail not add its velocity to its particles, so it works as expected.
Fixed SWEP autorefresh integration with spawnmenu
Validate inputs to sound.Generate
Fixed exit game crash to do with procedural sounds
Some minor changes from TF2 SDK
* Fixed some theoretical memory leaks with keyvalues
* CMDLPanel pose parameter fix (PR from SDK repo)
* `firstperson` disables `camortho` (PR)
* ESC closes chat box even if the text entry for the message is not focused (PR)
Revert "Try undoing SSAO related changes"
This reverts commit 4b97ae707eadfb92853539aa5d2aa9b573d8067b.
Revert "Remove 2 more random things"
This reverts commit 8b638a11745235a951df3dbacd35fd4d7018e5ed.
Revert "lets try undoing water reflection changes"
This reverts commit 39fad7956c7f4a4ab8c8e028a566883e45ba8310.
Undo changes to reflection/refraction view setup