branchgarrysmod.main/maincancel
702 Commits over 853 Days - 0.03cph!
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 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
Remove new methods from ILuaBase
Fix spawnmenu Lua errors when using gm_spawn directly
Update module base within gmod itself
▊▄▌ ▄▊▌▇▍▆▉ ▆▉█▋▍ ▄▆▊ ▄▄▄▌▍▍▉▉ ▄▄▊▋▅ ▅▉▋▄▉
█▆▊▋▍▉▊ ▍▉▇▋▌ ▇▊▋▆▋▍ ▍▋▆█▌ ▌▍▊▌ ▆▍ ▌▍▉▅ ▉▍▇▅▌ ██▆▊█▋▌ ▄▌ ▍▌▋▆ ▊▊▇█▄▇
▋▋▇▊▇ ▍▊▇
▆▋▋▋█ ▅▌▉_█▉▊▍▅_▍▍▌ ▍█ ▆▊▇▌(▌) ▅▌▍ ▇▄▅▋ ▌▊▋ █▊▇▄▆█'▉ ▇▄▆▋▌▅▆
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
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
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.
Fix targetID being jumpy
player manager cleanups
Merged pull request
Add sequential parameter to net.Read/WriteTable
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
A bit faster optional argument handling
Also nicer code internally
Restore content unloading, but behind convar
gmod_unload_test, defaults to 0
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
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
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.
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
Fix crashes when attempting to index invalid sentence IDs
Fix spawnmenu saved cursor pos resetting to middle of the screen sometimes
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/
Merge Pull Request
Added net.Read/WritePlayer
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
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
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
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
Fix player.GetBots not returning bots
ENT:OnRemove changes
ENT:OnRemove is now called for full update removals, but with an extra argument signifying whether it was a full update removal or not.
Merged pull requests
* Add SWEP/SENT.ClassNameOverride
* Reduced player __index calls in player 3rd person animations
Minor optimization in editor_player.lua
Missed change from merged pull request
HL1 turrets can now be spawned on the ground as well
This adds support for NPCData.OnCeiling, OnFloor, OnDuplicated to be functions
This is partially a community contribution.
gmad changes
* Auto ignore .git stuff
* Print out list of files that did not match the whitelist at the end of the console output so they are more visible
* Print out ignored files, and their total at the end of the output
* Added -quiet to suppress spammy messages
Merge Pull Request
Added category for `fofhr_` maps
gmad.exe -quiet for extraction as well
Additions to .gma whitelist
* Added data_static/ alternative to data/ folder with all the acceptable extensions
* Added materials/colorcorrection/*.raw
EmitSound precaches the sound when ran in multiplayer serverside
Added NPC:Set/GetViewOffset
Simplified & fixed FOV calculations for world clicker panels
Call GM:EntityRemoved for full update removes, but with an extra arg
Disable connection sharing for now
▄▅▍▌▄ ▉▄█▆▆█ ▌▇█▋▉▊▅ ▌▆▍▌ ▋▇█▅▌▇▆ ▊▌▊▌▇▌▅▊▆▍▄█
Do not call GM:EntityRemoved and ENT:OnRemove during full updates
garrysmod-issues/issues/4675
Allow GM:OnPhysgunFreeze to be ran on non vphysics entities
The 2nd argument ( physobj ) will be NULL
world clicker panels FOV adjustment
Now uses view setup FOV, not Player:GetFOV, affects gui.ScreenToVector as well
Make 2nd arg actually set the sound position of Global.EmitSound
Also default the 3rd parameter (entityID) to 0.
Remove unintended console message from crosshair panel
Bump gui.OpenURL limit to 2000
Added new optional argument to render.ClearDepth
bool stencil - also clear stencil buffer, defaults to true for backwards compatibility
sound.Play better optional argument handling
New default crosshair + options
Options > Multiplayer > Crosshair Customization
More killicon aliases for physics kills
New Portal NPCs can be duplicated
Added OnCloseCaptionEmit hook
Arguments are:
string soundScript
number duration
bool fromPlayer
string fullText - can be nil if token is not registered
Added gui.AddCaption( text, duration, fromPlayer )
LuaMesh.BuildFromTriangles allows modifying the mesh
This is only permitted when the vertex count matches between existing mesh, and the new mesh.
EntityEmitSound blocks CSceneEntity close captions
Make sure SourceTV bot is treated as bot in game code
Fixes garrysmod-issues/issues/5575
Added navmesh.CreateNavLadder
Arguments are: Vec top, Vec bottom, float width, Vec2D dir, float maxHeightAboveTopArea = 0
Weapon:GetTracerOrigin is now called for 3rd person view as well
Fixed a regression with spawnmenu "no models" message
Safeguards against malformed .gma files
New VertexLitGeneric parameters
`$AllowDiffuseModulation` and `$NoTint` - both allow disabling color tint per material
Vector:Mul() now supports VMatrix
Remove OnPlayerLand hook (OnPlayerHitGround exists)