1,139 Commits over 853 Days - 0.06cph!
Merge Pull Requests
* Added math.tau
* Added option to force override child tables in table.Merge
Update TTT
Added Turkish translations
Merge Pull Requests
* Significantly improve the performance of SortedPairs
More clean ups
Player:SetPData transition to use SteamID64
This change is backwards compatible and will eventually convert all data to use SteamID64 keys, instead of UniqueID.
▌█▉ █▉▋ ▉▋▊▍▉▋
▊ ▋▉█'▇ ▇▍█ ▆▉ ▊█▋▇█ ▌▉▍█▄▄▊▆▅▆▉▉ ▊▉▇▅▆▊█▊▉ ▄▇▉▊▍ ▄▆▇▌▄▊▅ ▇▊▆ ▊▉█ ▊▄▉.
█▆▌▋ ▆▍▍ ▇▇▋▆▋▌▌▅ ▇▋ ▅ .▄▇▍ ▇▅▌█ ▇▍▄█ "▋▅▌▊▄▉'▅▋ ▍▋▄▇ ▍ █▆▇█▉▌▄ ▇▋▇ ▉▊▉▅'▄".
Minor code adjustment
Allow poster rendering during render.RenderView
Prevent empty gun sounds when trying to secondary fire certain weapons underwater
Init vectors when GetSequenceLinearMotion fails
Fix env_skypaint flickering when not given a valid sun normal
Do not allow HL2 helicopter to be dissolved by AR2 altfire
Fixed func_instance's overriding base map revision
Fixes for default ammo hud interactions with SWEP:CustomAmmoDisplay
Restore how CreateParticleSystem handled optional arguments
sigh
Placeholder portal 2 entities to fill gaps on maps
glualint menu code
Merged Pull Requests
* Allow omitting slot parameter to NetworkVar
* Replaced util.TraceLine by util.TraceHull for tool traces. Fixes trace bypassing parented props
Actually include the functional part of SolidEnergy shader (DX9 only)
Added SolidEnergy shader from CS:GO
Enables certain things to draw correctly from Portal 2 and Black Mesa
Actually include the functional part of SolidEnergy shader (DX9 only)
Disable HL2's sneak attack code for non hostile NPCs
Also disable sneak attacks when ignore players is set, or ai is disabled
Make duplicator actually spawn the correct NPC
It was spawning them by entity class, luckily all of the base ones are present in the "NPC" list, now it spawns them by their actual original name in the "NPC" list.
Make it easier to select addons in the Addons list (Pull Request)
Reduce Panel:DrawTextEntryText type checking
Causes issues with existing addons
Add custom icons for tree nodes in spawnmenu categories (Pull Req)
Added GM:CanCreateUndo hook (Pull Request)
Added new CRecipientFilter functions
CRecipientFilter.AddPlayers( table or filter )
CRecipientFilter.RemovePlayers( table or filter )
CRecipientFilter.RemoveMismatchedPlayers( table or filter )
Add "Bone" field for Entity:GetAttachment
Add optional argument to Loco:Jump - activity
Unhide r_portalscloseall
Added Vector:Distance2D[Sqr](Vec)
Entity:SetIK is now shared (was clientside only)
Added GM:HandlePlayerArmorReduction( ply, dmginfo )
This change moves the armor reduction system to Lua (base gamemode), allowing full control over it.
Fix OOB crashes with Entity.GetAttachment
Fix SteamID placeholder calculation for clients with no SteamID
Make CreateConVar type errors non halting
experimental: dont break mods
Fixed crashes due to CSoundPatch
Add g_ragdoll_maxcount to server settings in spawnmenu
Minor code adjustments
RT_DEPTH_ONLY > RT_DEPTH_NONE for projected textures
Minor changes from upstream
Added missing TF2 map icons
Fallback shaders only if they don't exist
Change default value of mat_depthbias_shadowmap to 0.001
Was 0.0001, was in certain cases caused visual bugs. You can still set it to whatever you want.
Delete crashhandler.dll/so
I am fairly certain these are from Steam client binaries, which are now shipped by SteamCMD automatically
TextEntry improvements
* Fixed SetDrawLanguageIDAtLeft causing cursor selection to be offset
* Fixed deleting a bunch of text and then typing not updating the horizontal scrolling to show the typed text
Main menu workshop changes
Allowed to favorite addons through menu UI
Favorite and Vote Up/Down are now better synched with real values
Favorite categories are not cached
Merged Pull Requests
* Fixed an infinite loop with string.Comma
* Fixed server browser showing lowercase gamemode names for empty categories
Mention nav_quicksave 2 in its description
Merged Pull Requests
Added math.Factorial
Added language string for g_ragdoll_maxcount
Fix citizens healing players with ai_ignoreplayers 1
func_door looping sound fixes
Bump ents.FindInCone/Box return limit to match FindAlongRay (1024)
Added lua_refresh_file <path>
Bump ents library limits to MAX_EDICTS
Enable episodic behaviors for npc_citizen
Improve autorefresh handling for lua_openscript scripts
If the opened script is in one of the special folders such as autorun/, autorefresh those based on our pre-existing rules.
Added ENTITY:TranslateActivity( act ) for `ai` type entities
Do not handle spawnicons and posters during render.RenderView
Added GM:PostEntityFireBullets( ent, info )
This hook is called for every "pellet" of a FireBullets call, contains the performed trace (i.e. which entity it hit, and precisely where), and can block the bullet from firing when returning false
Some of the bullet structure data is not available due to it being deemed useless or "obsolete" when the hook is called.
Altered how missing members of GM:EntityFireBullets return table work
They used to default to weird static values, now will inherit the previous value that was passed to the hook, which seems more logical
Minor code adjustments
Entity.SetPreventTransmit can now accept a table of players or a filter
Added NPC.SetIdealYaw/UpdateYaw/IsFacingIdealYaw
Added NPC.SetIgnoreConditions/RemoveIgnoreConditions
Turn Lua effect creation warnings to non halting Lua errors
Fixed NPC:SetSquad not working when the NPC has no squad
Added IGModAudioChannel:GetBufferedTime()
Fixed addon file conflict problem duplicating file paths on remount
Merge Pull Request - return true for EntityFireBullets in base gamemode
This allows multiple hooks to modify the bullet structure
Don't play ammo pickup sounds for NPCs
Panel:GetText/Value now returns text of RichText panels
Panel:GetText/Value now returns text of RichText panels
▌▄▍▄ ▍▆▇ ▅▅█ ▌█▊▊▊▊, ▆▇▄ ▊▅▇ ▄▋▉ ▅▉▄▄▌▋ ▋▆▊ ▉▌▌▍ ▄▉▉▅ ▆▍▌▆▉▇▍▉▅
▇▆▉▅▉ ▄▅▉▌▋▆▄▇▋▅▅▄▄▋▋ (▆▆▉▅▍▄▄▍▇ ▉▅▄▉ ▋██▋█▄▋)
▊█▆: ▌▆▅▍▆▊▄ █▆▅▋▌▅▋ █▆█ ▄▆▅▇▉▅ █▊▇▋ █▊▍▄ (▄▌▍▊▌▋▅▋▇ ▇▄▍▍ ▌▌▆▋▇▅▊)
! ▋█▆ ▍▇▄▊ ▆▍▍▉▌ ▆▅▊▍ ▅▄
Don't play ammo pickup sounds for NPCs
Fixed addon file conflict problem duplicating file paths on remount
Merge Pull Request - return true for EntityFireBullets in base gamemode
This allows multiple hooks to modify the bullet structure
Turn Lua effect creation warnings to non halting Lua errors
Fixed NPC:SetSquad not working when the NPC has no squad
Added IGModAudioChannel:GetBufferedTime()
Minor code adjustments
Entity.SetPreventTransmit can now accept a table of players or a filter
Added NPC.SetIdealYaw/UpdateYaw/IsFacingIdealYaw
Added NPC.SetIgnoreConditions/RemoveIgnoreConditions
Enable episodic behaviors for npc_citizen
Improve autorefresh handling for lua_openscript scripts
If the opened script is in one of the special folders such as autorun/, autorefresh those based on our pre-existing rules.
Added ENTITY:TranslateActivity( act ) for `ai` type entities
Do not handle spawnicons and posters during render.RenderView
Added GM:PostEntityFireBullets( ent, info )
This hook is called for every "pellet" of a FireBullets call, contains the performed trace (i.e. which entity it hit, and precisely where), and can block the bullet from firing when returning false
Some of the bullet structure data is not available due to it being deemed useless or "obsolete" when the hook is called.
Altered how missing members of GM:EntityFireBullets return table work
They used to default to weird static values, now will inherit the previous value that was passed to the hook, which seems more logical
Bump ents library limits to MAX_EDICTS
Fix citizens healing players with ai_ignoreplayers 1
func_door looping sound fixes
Bump ents.FindInCone/Box return limit to match FindAlongRay (1024)
Added lua_refresh_file <path>
Merged Pull Requests
* Fixed an infinite loop with string.Comma
* Fixed server browser showing lowercase gamemode names for empty categories
Mention nav_quicksave 2 in its description
Merged Pull Requests
Added math.Factorial
Added language string for g_ragdoll_maxcount
Delete crashhandler.dll/so
I am fairly certain these are from Steam client binaries, which are now shipped by SteamCMD automatically
TextEntry improvements
* Fixed SetDrawLanguageIDAtLeft causing cursor selection to be offset
* Fixed deleting a bunch of text and then typing not updating the horizontal scrolling to show the typed text
Main menu workshop changes
Allowed to favorite addons through menu UI
Favorite and Vote Up/Down are now better synched with real values
Favorite categories are not cached
Added missing TF2 map icons
Fallback shaders only if they don't exist
Added SolidEnergy shader from CS:GO
Enables certain things to draw correctly from Portal 2 and Black Mesa
Change default value of mat_depthbias_shadowmap to 0.001
Was 0.0001, was in certain cases caused visual bugs. You can still set it to whatever you want.
Add g_ragdoll_maxcount to server settings in spawnmenu
Minor code adjustments
RT_DEPTH_ONLY > RT_DEPTH_NONE for projected textures
Minor changes from upstream
Fix SteamID placeholder calculation for clients with no SteamID
Make CreateConVar type errors non halting
experimental: dont break mods
Fixed crashes due to CSoundPatch
Fix OOB crashes with Entity.GetAttachment
Add optional argument to Loco:Jump - activity
Unhide r_portalscloseall
Added Vector:Distance2D[Sqr](Vec)
Entity:SetIK is now shared (was clientside only)
Added GM:HandlePlayerArmorReduction( ply, dmginfo )
This change moves the armor reduction system to Lua (base gamemode), allowing full control over it.
Make it easier to select addons in the Addons list (Pull Request)
Reduce Panel:DrawTextEntryText type checking
Causes issues with existing addons
Add custom icons for tree nodes in spawnmenu categories (Pull Req)
Added GM:CanCreateUndo hook (Pull Request)
Added new CRecipientFilter functions
CRecipientFilter.AddPlayers( table or filter )
CRecipientFilter.RemovePlayers( table or filter )
CRecipientFilter.RemoveMismatchedPlayers( table or filter )
Add "Bone" field for Entity:GetAttachment
Disable HL2's sneak attack code for non hostile NPCs
Also disable sneak attacks when ignore players is set, or ai is disabled
Make duplicator actually spawn the correct NPC
It was spawning them by entity class, luckily all of the base ones are present in the "NPC" list, now it spawns them by their actual original name in the "NPC" list.
Save NPC max health, and set max health for NPCs from spawnmenu
Added PreRegisterTOOL (Community Pull Request)
TTT: Prevent tttbase Lua errors with NPCs (Community Pull Request)
Try setting SDL_VIDEO_X11_XRANDR for linux
Apparently fixes multimonitor issues on some systems?
Make fps_max save, and add an option for it in video settings
Save NPC health in duplications
Internal code cleanups
Removed useless macro, reduced usages of ErrorNoHalt in favor of its "with stack" alternative.
ProtectedCall supports varargs just like pcall
Update .gitignore
Update 360controller.cfg
remove tf2 specific stuff
MAX_MAP_ENTITIES to 32k
Move Multiplayer options tab to front, and rename it to GAME
Also moved FOV and Fast Weapon Switch options to it, removed those from their previous places, removed "Advanced" keyboard options which are now obsolete
Try bumping MAX_MAP_ENTITIES to 65k
For that one map author that refuses to optimize their maps
Try bumping engine hunk limit to 256MB
Try bumping MAX_MAP_ENTITIES to 65k
For that one map author that refuses to optimize their maps
Try bumping engine hunk limit to 256MB
Update 360controller.cfg
remove tf2 specific stuff
MAX_MAP_ENTITIES to 32k
Move Multiplayer options tab to front, and rename it to GAME
Also moved FOV and Fast Weapon Switch options to it, removed those from their previous places, removed "Advanced" keyboard options which are now obsolete
Make fps_max save, and add an option for it in video settings
Save NPC health in duplications
Internal code cleanups
Removed useless macro, reduced usages of ErrorNoHalt in favor of its "with stack" alternative.
ProtectedCall supports varargs just like pcall
Update .gitignore
Update module base within gmod itself
Remove new methods from ILuaBase
Remove new methods from ILuaBase
Fix spawnmenu Lua errors when using gm_spawn directly
Update module base within gmod itself
Fix spawnmenu Lua errors when using gm_spawn directly
▊▋▌▍▄▍▊ ▉▅▄▅█ ▆▋▄▇▍▍ ▋▍▄▉▌ ▍▌▇▋ ▆▄ ▆▊▆▋ ▆▄▉▅▊ █▍█▊▄▄▅ ▉▋ ▇▊▉▊ ▊▋▆▆▅▍
▍▅▋▅█ ▉▍▇
▍▋▍▊█ ▆▇▉_▋███▋_▋▆▉ ▇▊ █▊▍█(▉) ▄▍▊ ▆█▊▌ ▄▅▅ ▋▆▌▋▋▆'▇ ▆▅▄▋▌▊▆
!▅▍▅ ▋▌▄▆██▅ ▍▋▌▄▌ ▌▌█ ▆▇▄▉▇▌▊▇ ▅▇▌█▌ ▆▆█▄▉
▊▄▌ ▄▊▌▇▍▆▉ ▆▉█▋▍ ▄▆▊ ▄▄▄▌▍▍▉▉ ▄▄▊▋▅ ▅▉▋▄▉
A bit faster optional argument handling
Also nicer code internally
Rework killicon library
New argument for killicon.GetSize - bool dontEqualizeHeight, set to true to return the actual height of a killicon
killicon.Add can now use .pngs
Added killicon.AddTexCoord - subrect killicons on a single texture (Community Contribution)
Added killicon.Render - draws the killicon without weird vertical offsets, also has dontEqualizeHeight argument to draw unscaled killicon
Changed base gamemode deathnotice to use killicon.Render to have better killicon alignment
Fix targetID being jumpy
player manager cleanups
Merged pull request
Add sequential parameter to net.Read/WriteTable
Update gm_construct.nav
Added walkable drop down only areas to elevated areas, such as roofs of certain buildings
Added some navarea functions
Added CNavArea.GetIncomingConnectionDistances
Added CNavArea.GetAdjacentAreaDistances
Both have optional arguments to limit output to a certain navDir, and return the precalculated distances to the returned areas.
OnEntityCreated is now also called for clientside only entities
Add .gma to file.Write whitelist
Support Vector / Vector
Merged pull requests
* Clean up DOF_Ents table on DOF_Kill
* Use Brackets for keys in PrintTable to avoid confusion with trailing/leading whitespace
RecalculateLineBreaks before firing OnTextChanged
Fix Panel:GetNumLines not being up to date within that hook.
CNavArea:MarkAs(Un)Blocked first argument is now optional
Fixed clientside ragdolls creating unnecessary bonemanip entities
This is a regression fix
Added classnames to "C_BaseEntity::UnlinkFromHierarchy" warning
Made NPC:SetUnforgettable 2nd argument default to true
And also made it actually work, whoopsie
Fix CNavArea.MarkAsDamaging 2nd argument reading from the first
Simplify some code
Safe guard against invalid vector input to PhysObj functions
OnScreenSizeChanged hooks get 2 new params - new sizes
Fix airboat attachment name
Fix seemingly incorrect calculation of vehicle wheel total height
for rear axle
Read settings/users.txt from MOD search path
Added optional filter option to both EmitSound functions
Added new RichText panel methods
Added GetLineHeight
Added SetLineHeight - values below zero mean no override
Added AppendTextWithURLs
Added model file types to file.Write whitelist
Reduce .gma whitelist for data_static/ folder
Only allow txt, dat, json, xml and csv - the other stuff can be stored in models/, materials/, etc.
Clean ups
Added navmesh.FindInBox
█▆▊▋▍▉▊ ▍▉▇▋▌ ▇▊▋▆▋▍ ▍▋▆█▌ ▌▍▊▌ ▆▍ ▌▍▉▅ ▉▍▇▅▌ ██▆▊█▋▌ ▄▌ ▍▌▋▆ ▊▊▇█▄▇
▋▋▇▊▇ ▍▊▇
▆▋▋▋█ ▅▌▉_█▉▊▍▅_▍▍▌ ▍█ ▆▊▇▌(▌) ▅▌▍ ▇▄▅▋ ▌▊▋ █▊▇▄▆█'▉ ▇▄▆▋▌▅▆
Added optional filter option to both EmitSound functions
Added new RichText panel methods
Added GetLineHeight
Added SetLineHeight - values below zero mean no override
Added AppendTextWithURLs
Added model file types to file.Write whitelist
Reduce .gma whitelist for data_static/ folder
Only allow txt, dat, json, xml and csv - the other stuff can be stored in models/, materials/, etc.
Clean ups
Added navmesh.FindInBox
Revert "Delete player.phy"
This reverts commit 881ea75ae830dec677c89b3207d95b56f8a223fd.
Fix CNavArea.MarkAsDamaging 2nd argument reading from the first
Simplify some code
Safe guard against invalid vector input to PhysObj functions
OnScreenSizeChanged hooks get 2 new params - new sizes
Delete player.phy
What the hell is this file?
Fix airboat attachment name
Fix seemingly incorrect calculation of vehicle wheel total height
for rear axle
Read settings/users.txt from MOD search path
CNavArea:MarkAs(Un)Blocked first argument is now optional
Fixed clientside ragdolls creating unnecessary bonemanip entities
This is a regression fix
Added classnames to "C_BaseEntity::UnlinkFromHierarchy" warning
Made NPC:SetUnforgettable 2nd argument default to true
And also made it actually work, whoopsie
Move where gmod_unload_test is defined to appease linux srcds
Add .gma to file.Write whitelist
Move where gmod_unload_test is defined to appease linux srcds
Support Vector / Vector
Merged pull requests
* Clean up DOF_Ents table on DOF_Kill
* Use Brackets for keys in PrintTable to avoid confusion with trailing/leading whitespace
RecalculateLineBreaks before firing OnTextChanged
Fix Panel:GetNumLines not being up to date within that hook.
OnEntityCreated is now also called for clientside only entities
Restore content unloading, but behind convar
gmod_unload_test, defaults to 0
Build bspzip.exe and ship it (32bit only)
Fix gmod_suit 1 breaking sprinting
Sentences system calls EntityEmitSound
There are a few caveats:
* SoundName is always invalid.wav
* OriginalSoundName is the sentence name
* The sound table will contain SentenceIndex in these cases
* OriginalSoundName can be changed to replace the sound.
Global.EmitSentence now has an optional 9th argument = DSP, defaults to 0
Added Panel.GetScrollStartIndexes
Works only on text entries, returns 2 values - x axis offset, y axis offset
Added some NPC functions
NPC.GetGoalPos
NPC.GetGoalTarget
NPC.IsCurWaypointGoal
More "reportable" keyvalues in default FGDs
Shows useful info in the Entity Report window
Added NPC:GetCurGoalType
navmesh Lua API additions
Added missing enum for NAV_MESH_BLOCKED_PROPDOOR
Added navmesh.GetBlockedAreas()
Added CNavArea:MarkAsBlocked( teamID )
Added CNavArea:MarkAsUnblocked( teamID )
Added CNavArea:RemoveAttributes( flags )
Added CNavArea:AddAttributes( flags )
Disable default automatic navmesh unblocking
Add some of the existing nav related entities to the FGD
func_physbox/pushable is ignored by navmesh gen
Disallow making addon presets with empty names
Also fixed number only names being unable to be deleted
Confirmation when deleting addon presets
Addon preset importing and exporting
Merge Pull Request
Added net.Read/WritePlayer
Make ENT:OnTaskFailed second argument work
Added 2nd return value to NPC:Disposition - priority
Panel.DrawTextEntryText doesn't silently fail with invalid input
gitignore settings/presets/
Fix crashes when attempting to index invalid sentence IDs
Fix spawnmenu saved cursor pos resetting to middle of the screen sometimes
Resolved incompatibility with $BlendModulateTexture and $detail
Give sk_ally_regen_time a minimum value of 0.01 to avoid division by 0
And subsequent freezes due to infinite loops
Lazily fix props with VortWarp shader crashing when entering water
Reduce default max_fps to 150
There's no reason to have it at 300 by default
Add a hack for $alphatest 1 displacements not having collisions
$alphatest 1 brushes are considered "windows" and are non solid, but it doesn't make sense for displacements.
Rename CS:GO mountable game to mention the legacy branch
I am not sure we should keep it, might just leave this to mount.cfg
Fixed blendable textures on a brush being inverted in Hammer
i.e. not appearing like they do in-game.
Remove empty files from build process
Fixed fonts from gamemode's content/ folder not being extracted
For workshop addons, so they can actually be loaded.
Hide "No bound shader" warning behind developer 1
And also add which materials the error is for
Merged Pull Requests
gmad.exe - Reduced buffer reallocations, which results in much faster .gma file creation, most noticeable with many small files.
Added zi_ maps to Team Fortress 2 category
Merged Pull Requests
Added ents.Iterator and player.Iterator
Added string.CardinalToOrdinal
Fix compile error