branchgarrysmod.main/maincancel
735 Commits over 915 Days - 0.03cph!
FGD: Allow `bool` and `boolean` to be interchangeable
HDR override for FOG colors from 20th anniversary
Requires networking changes, so not currently active
Added logic_eventlistener(_itemequip)
Serverside only entities, FGD included
Merge x64 exclusive changes for compile fix
Fixed a crash when spawning certain vehicles
64bit versions of compile tools say that they are 64bit
So it's more clear what version is being used from logs alone
Merged Pull Requests
* TTT: Change holdtypes for consistency with viewmodels
* TTT: clarify Health Station usage hint text
* TTT: Update localization files
* Fixed tool sorting when some tools are missing localization strings
* Micro-optimize Workshop Mount VGUI
Rework how LZMA decompression works for BSP files
The existing code was awful. The new one is less wasteful.
Make util.TableToJSON output whole numbers without decimal point
Minor cleanups
Fixes towards MP3s hanging the game on first playback
* Fixed MP3s recaching 2 times sometimes in a row
* Fixed cache size not being able to exceed 65k
* Make MP3s skip the ID3 data immediately on cache, not on first playback. This makes loading a bit slower per-file, but makes it so we don't need to cache 400KB of useless data per MP3
* Increased amount of cached data for MP3s to satiate initial burst of data access by BASS (from 16K to 96k) This was preventing async load of the entire file
Merged Pull Requests
* Refactor sandbox hints
* Remove angular-ui, jquery-ui, jquery-color
Remove weapon_cubemap from localizations
Updated TTT
* TTT: Magneto-stick DoAttack cleanup
* TTT: Fix C4/Radio sounds not playing outside of PAS
* TTT: Fix "CS:S not mounted" warning
Add a warning for future self
Linux is the worst of all time
Rename en-PT to en-pt and let's see how that affects Linux
Ignore enc_temp_folder
Prevent developer only messages about bone access with util.DecalEx
Lowercase remaining localization folders
Remove weapon_cubemap from localizations
Updated TTT
* TTT: Magneto-stick DoAttack cleanup
* TTT: Fix C4/Radio sounds not playing outside of PAS
* TTT: Fix "CS:S not mounted" warning
SRCDS colors for Linux & 24 bit colors
Tools: try searching for gameinfo relative to the .exe if not found
Allows BSPZIP (and probably others) to run from scripts outside of the game directory without additions params
"Fix" an infinite loop in memory allocation by exiting w/ message
"fix" an infinite loop in memory allocator (CUtlMemory) by exiting the program with a warning if it is hit.
Fixed crash with net_showmsg
Fixed hoverball's toggle key not functioning
Localization for built-in undo actions
Potentially breaking change: Internal undo names changed!
Also fixes undo text being processed twice for certain undo actions
Adds localization for entities spawned by Sandbox tools (names)
Added `hostile` keyvalue to npc_citizen
Will be treated as a combine. Useful for NPC reskins to not have combine noises. Or just for fun.
Fix queued rope renderer running out of memory with SuperDOF
Hammer: Merged some under the hood changed from CS:GO
Also fixed ray-traced preview crashing
Hammer: Updated Options tabs to fit more data
Added build date to Hammer's About dialog
Hammer: When copying game configs, ask for a new name
Hammer: Updated icon to be higher quality and have GMod colors
Hammer: Switch to CmdSeqDefault.wc (like CS:GO)
When no user-defined preferences for Expert Map Compile tools exists, use a separate file for default ones. This ensures that game updates cannot break user configs.
Tweak Hammer splash image & exe info
Hammer: Expand Object Bar by 20px to fit visgroups
To VisGrouos without a horizontal scrollbar
Hammer: Increase default size of Entity Help window
Fix a stack overflow in TextEntry scrolling
Minor cleanups
Added support for %CompileNoShadows (VBSP)
Include Episode 1 barney model as override
It appears to have all the animations from base Half-Life 2.
Added "owner" argument to SWEP:OnDrop
Added shader name to "failed to create shader"
Added Player:ExitLadder
Remove unintended/possibly breaking changes
Menu: Do not include notifications library
Minor cleanups
Fixed weapon_shotgun only producing 1 bullet pellet when fired by NPCs
Fixed client crashes with portal entities
▇▇█▌▉▋▋▅▌ ▄▇▇▍▅ █▆▄▌▆▋█ ▉▊▄▇▊█
Hammer & Other tools mount addons/ by default
FIxed VBSP crashing with missing VVDs
Models that are renamed after compile, which ends up pointing to the wrong .vvd
Also just missing VVDs.
Also fixed it using incorrect VVD path in the first place.
VBSP: Increase usefulness of "Occluder straddles multiple areas" warning
Added HammerID for entities in Hammer's selection status bar
Fixed VRAD crashes due to missing VVD files
Fixed map compile tool output formatting to do with threads
Make the output more consistent when using built-in compile window or 3rd party tools, and makes it more readable.
Fixed -console no longer bringing console to front on launch
Added new Bloom preset
Remove duplicate "missing material" output from VBSP
Do not unexpectedly reduce MaxHealth on dead entities
VRAD: Fixed a memory corruption issue with static prop lightmaps
Fixed "radius" in "Position Along Ring" being clamped to above 0
Fixed Tool MdlPicker causing console warnings
Set default MdlPicker output folder to game folder, not C:/
Hide "Generate Backpack Icons" button in MdlPicker
Fixed "Clean Undo History" not working in PET
Fixed panel/memory leak with particle picker previews
Disable hack for Intel GPUs disabling SM3
Actually implement undo limit in tools (Particle Editor)
Set Undo Limit for Particle Editor to 512
Play `act` animations on the server, and fill in concommand help
Fill in some gmod specific convar descriptions
FIxed a crash with VMTPicker (-tools)
Fixed new console warning on start up to do with skill cvar
▉█▇▅▆ ▇▆▆▉ ▇▇▅▍█▍█▄
!█▍▇▆▍▇▊▉ ▄█▋▉ ▌▌ ▄▅▅▅▌▄
Improve handling of Spawnmenu category localizations
Preserve alphabetical sorting
Updated localization files
Added 2nd argument to CompileFile - showError
Fix a typo in code that fails compile
Block showconsole concommand
Also block tv_record clientside only.
Potential crash fix for Linux (render related)
Added util.RemoveDecalsAt
Added 4th argument to util.RemoveDecalAt - remove permanent decals
Hammer: Fixed empty buttons appearing in Entity Properties
When no entity has ever been selected in the session, and Alt+Enter are pressed
Also some minor visual adjustments
Call Entity:SetCreator on all Sandbox spawned entities
Allow comments and trailing commas in JSON parsing
Fixed Lua error when gmod_cameraprop and entity driving
Update RapidJSON to the latest version
Improve JSON function compliance with the JSON spec
util.TableToJSON - math.huge keys now become "Infinity" instead of "inf"
util.JSONToTable - Handle NULLs in arrays, convert boolean looking keys ("true", "false") to booleans if this behavior is not disabled by the 3rd argument
Minor optimization for util.TableToJSON
make lua_run entity keyvalues case insensitive
Fixed some compile warnings
more warning fixes
Fixed max player speed not being set in a certain case
When holding your +wal slow walking key, and Player:setCanWalk being set to false
Pull Request: Removing deprecated calls to AddControl
Remove redundant arguments given to CPanel:NumSlider
Fixed console warning when opening Options menu
Warning about missing vgui/crosshair_bg
Probably fix infinite loop in game.cleanupmap
Undo changes to bone_manipulate entity
Appears to be server/client sync dependent
Fixed bone manipulated entity's render bbox exploding
For some models (probably with procedural bones?), if bone manipulated, the renderbounds can explode drastically due to bones that are "unreadable", negatively affecting shadows as well.
Read kb_act.lst from MOD
Added Entity:Alive
Hammer: Fixed collision model being offset in 3D when dragging
Hammer: Fixed keybinds for 1 & 2 not updating the setting correctly
Do not set thread count to 1 if the CPU has over 32 of them
Limited to 64 now, and is clamped instead of resetting.
Pull Request: Fixed inconsistent margins on language list/start game
Fixed "Toggle" input on triggers improperly toggling the entity
It was not actually setting the enabled state, only making it non interactable.
Now properly sets the enabled state, just like Enable/Disable inputs do
Geiger counter only reacts to enabled trigger_hurts
Fixed some compile warnings
Merged Pull Request: New Color methods
* Added Lua implementations of HSVToColor & HSLToColor for higher performance and ensuring it has the color meta table
* Added HWBToColor
* Added COLOR:ToHWB()
* Added COLOR:GetHue, SetHue, AddHue
* Added COLOR:GetSaturation, SetSaturation, AddSaturation
* Added COLOR:GetBrightness, SetBrightness, AddBrightness
* Added COLOR;GetLightness, SetLightness, AddLightness
* Added COLOR:GetWhiteness, SetWhiteness, AddWhiteness
* Added COLOR:GetBlackness, SetBlackness, AddBlackness
Remove math.IsNearlyZero as it is just too similar to math.IsNearlyEqual
Expand "Map %s is missing" disconnect in the other place too
It wasn't displaying the info about cl_downloadfilter.
Display HTTP error when FastDL fails and its not a 404
Fixed the game not downloading maps if bz2 version exists locally
Unify how ITex/IMat:GetColor pushes color to Lua
Merged Pull Requests
* Do not display effect rings with Gravity Gun equipped
* Update jQuery and reduce reliance on it in main menu, as well as lazy load images
* Added math.IsNearlyZero and math.IsNearlyEqual
Do not crash with "bad inline model number", show a warning
Pull Request: Replacing CPanel:AddControl calls from Sandbox
Pull Request: Do not penalize full servers in the ranking
Since we now have a way to queue to join the server if its full it makes even less sense to penalize them.
Pull Request: Micro optimization for ents.FindByClassAndParent
Increase MAX_MAP_BRUSHES from
16384 to
665535
Update x86-64 script too
Update FGDs to include gmod specific additions
rollermine spawnflag, beam_spotlight SetColor
Prevent singleplayer tool ghost from saving in saves as a prop
gmsave.SaveMap now respects Entity.DoNotDuplicate fully
Update gmod.code-workspace
Merged Pull Requests
* Use render.PushRenderTarget instead of render.Get/SetRenderTarget
* Main menu news panel now has rounded corners
* Added ability to copy sandbox tool class names via right clicking
Pull Request - Improve skypaint matproxy performance
Added "starlayers" to env_skypaint in the FGD
Also mention the skybox texture name requirement in the description.
Enable sv_parallel_sendsnapshot by default.
Display a warning when async file read operation tries to read OOB
Prevent .ani files from loading if they would crash the game
i.e. if the .ani file does not match the model it supposedly is for
Remove debug code from C_BaseFlex::SetupWeights
CTriggerWateryDeath applies correct inflictor/attacker
Damage scaling based on skill convar only happens from NPC damage in GMod
Merge Pull Request
More spawnmenu localizations
Remove redundant category for npc_tf2_ghost
Merge Pull Reqeust
Use an already existing local variable in toolgun HUD, instead of re-retrieving mode
Added CTakeDamageInfo:Set/GetWeapon()
FireBullets sets the inflictor to the weapon firing the bullets for HL2 weps
Base weapons SetWeapon on CTakeDamageInfo
Also set correct inflictor where necessary, such as NPCs shooting weapons
More corrections for damageinfo weapon/inflictor
HL1 weapon inflictors/weapons
Restored "JellyFish" shader
Fixed bone manipulations being changed on level transition
Fixed camera entity losing its keybinds on level transition
Added "DoImpactEffect" for `ai` and `nextbot` SENTs
Added model scale preview to Hammer
Fixed a typo in hl2 fgd
Update Portal turret relationships to certain NPCs
Antlions fear them now, and it hates combine hunters and gunships
Fixed Portal Rocket Turrent not updating its facing angles when no target
game.CleanUpMap deletes C_Hairball
Merge Pull Requests
* Fix indentation of the gamemode list items
* make file.Write and file.Append return success of file.Open used internally
Update screenspace_general shader with some CS:GO features
Removes $X360APPCHOOSER (Use $VertexColor)
Adds $VERTEXSHADER
Added most CS:GO params except for C4* and C5* params
Added `viewid` to render.GetViewSetup
Fixed a server crash exploit to do with malicious packets
Fix strider stomp attack creating invisible ragdoll with Keep Ragdolls
Added an ever increasing counter to poster file names
Updated C_RPG.MDL to use correct muzzle flash event
This fixes a warning that would print when the RPG is fired
Allow closecaptions in multiplayer with the cvar set to 1
This means that it will just work in local MP (for the host), on srcds closecaption_mp controls the behavior (defaults to off)
Search for shaders in BSP if none were found in MOD
Fixed logic_collision_pair not calling base UpdateOnRemove
(and a few other entities as well)
Added "shaders/*.vcs" to BSP whitelist
Empty Entity.Constraints table on constraint removal
Fixes for `tanktrain_ai`
* Fixed sound playback and updated default sounds to existing files
* Added "Chase Target" key value
* Added missing input to the FGD
* Fixed movement
* !player target will update to the closest player before every move
* Change update rate while moving to 0.1s (from 0.5)
VRAD: Only show "Warning! Invalid model version" with verbose flag
Also expand the warning to show the versions
Fixed crash when ents.CreateClientProp is given an empty string
Do not complain if gmod_uncache_test doesn't exist (srcds)
Change Hitbox 7 color from white to orange
Fixed NPC icons in spawnmenu search not having default weapons set
COLOR:SetUnpacked type checks its inputs
Remove IMaterial:GetColor override hack as it is no longer needed
Improve type errors thrown from Lua
Makes it so that the error() call does not override current execution position, so error points to the faulting file, not the base game file at the top level.
Remove RegisterMetaTable and vgui.GetAll polyfill hacks
Hammer: Update Lighting Origin to mention info_target, not info_lighting
Fix gamemode settings being missing in main menu
Ship the gfx folder in the correct depot, sigh
Rename "playermodel_selector" to "open_playermodel_selector"
So that one workshop mod doesn't freeze the game
Added missing hlfaceposer.exe icons
Fixed a crash in HLFaceposer.exe when opening file lists
Fixed HLFaceposer.exe crash due to missing phoneme extractors
Add phoneextractor sources
They build fine, don't work unfortunately due to Windows API
Actually ship HLFaceposer images
Remove cl_threaded_client_leaf_system
It was disabled in 2016.
Do not break Lua created hidden/unregistered convars
Fix compile error
I forgot to press CTRL+S when last minute renaming
hl2.exe => gmod.exe in factory reset bat
Put MAX_EDICT_BITS local in net.lua back, as without it stuff might break
due to version inconsistency
Added physenv.Set/GetPhysicsPaused
Added NPC:TranslateNavGoal
Added sound.SetActorGender( model, gender )
This allows for things like soundscripts to be gender neutral for less code, and enables citizen reskins to use correct voice lines.
WARNING: the gender is stored by filename only internally, not by full model path!
Delete unused resource/chromium/ folder
Remove non existent commedit.dll from sdkenginetools.txt
Minor micro optimization in VRAD
Added MAX_EDICT_BITS global enum
Updated Run Map dialog in Hammer
https://files.facepunch.com/rubat/2024/December11-872-GenerousSkimmer.png
Added NPC:GetLastPosition
Added NPC:SetMoveDelay/GetMoveDelay
Fixed a crash with ConVarExists
Remove last 3 parameters of engine.WriteSave
Hide mat_surfaceid and vgui_drawtree_panelptr
Fixed player ragdoll forces always being applied to center
Now applies forces to the physics object that was shot.
Added timedemo and related convars/concmds to blocked list
Add a hack to ensure engine.CloseServer works from start up
Make Hammer use gmod.exe when generating GameConfig.txt
engine.CloseServer now returns true if quit command was issued
Fixed crashes with func_tank
Handle DAdjustableModelPanel when main menu is open
Added a Player Model Selector button to spawnmenu
The context menu widget stuff is too hidden
Rename hl2.exe to gmod.exe when building the game
hl2.exe no longer used.
Implement `-StaticPropSampleScale` & `-StaticPropBounce`
Temporarily re-add old SWEP localization tokens
More work towards `-StaticPropBounce`
Added `-softenCosine` for VRAD
Fix static prop bounce not working due to uninitialized scale
Fix branch specific compile errors
Remove some perforce VGUI panels from builds + clean ups
More minor cleanups
Delete pointless header files
Fix some map load warnings when Portal 1, HLS are not mounted
Fix compile errors
Try to fix linux compile
Fixed clientside only entities being considered map created
Fixed being disconnected from sv_lan servers due to recent changes
Entity:FollowBone doesn't check the boneID argument if given NULL
Fixed Mega Gravity Gun not being able to pick up flesh
Remove cheat flag from cl_wpn_sway_scale
Added sv_quota_stringcmd_kick
Update description of gmod_uncache_test
Fixed crashes wiith CTriggerWind when loading a save
Minor clean ups
Micro optimization for SWEP think
More minor clean ups
Added new NPC functions
Added `NPC:SetFOV`, `NPC:GetFOV` (in degrees), `NPC:IsInViewCone`( vector/entity )
Fixed Lua error with DTree node having 0 child elements
Fixed base Lua SWEPs not using correct localization strings
Also removed some useless strings from garrysmod_english.txt
Fixed unicode addon name display for WorkshopDL
Merged Pull Requests
* Localization support for crosshair customization
* Added Entity:AddSpawnFlags, Entity:RemoveSpawnFlags and Entity:SetSpawnFlags
* Optimize DLabel autostretch behavior
* Cache gamemode table for gamemode.Call and hook.Run
Updated TTT Russian localization (Community Contribution)
Improve DButton center alignment X-axis text inset handling
Fix "Invalid string command" false positive
Revert DLabel changes
The changes cause issues with spawnmenu help text and other people's code.
Optimize DListView_Line
Remove DListViewLabel's Think function since it does nothing in DListView_Line anyway
Disallow sending voice packets unless fully connected
Try to mitigate server reconnect spam
Also reset owner SteamID in more places
don't throttle loopback connections
Minor code cleanups
More minor cleanups
Check allocated edict count before allocating more
this should prevent`ED_Alloc: no free edicts` crashes when spam spawning hundreds of entities per second.
Fixed build warning spam due to duplicate files in project on Linux
Make Entity:IsOnFire return false instead of nil
Update .gitignore & build related things
Build Linux game with Steam Runtime