1,139 Commits over 853 Days - 0.06cph!
Fixed gamemode resetting after playing and leaving Sandbox, and starting a new server on a different gamemode
Let's try adding a Discord webhook on build finish
Merge scripts/talker/* with episodes
Fixed some more compile warnings
Bump game_text max duration to 1 hour
Block scriptenforcer.net as it's being abused now
Default "skill" to 2 (normal)
Fixed a crash to do with soundscapes after map cleanup
Fix "skill" cvar affecting non NPC damage to player
Apply the fix for NPC death animation blending
garrysmod-issues/issues/5891
Do not precache particle materials on the server (game.AddParticles)
Allows particle materials to reach 0 refcount on disconnect from singleplayer, and also makes no sense to precache particle materials serverside anyway.
Show "Unknown Addon #X" as invalid in addons menu
So there's no confusion why they don't appear in-game.
Make sure to restore gamemode on server disconnect to what it was
file.Remove returns success
Potential fix for a sound DSP crash
Prevent NPCs complaining about sequence -1
This could happen when a combine solider has no gun and tries to chase the player.
Fixed NPCs complaining about bone access on death
HL2 model changes
* Moved stalker model to overrides/, next to other override models
* Include EP2 combine mine model, so its skins appear on that EP2 map
* Include EP1 ceiling turret model so it functions correctly when dry firing
Fixed "skill" no doing anything for HL2 content
Also enable Alyx darkness mode
Correct AIClassText for some CLASS_ enums
Also block "skill" from being modified by Lua ( game.SetSkillLevel exists)
Disable .sw.vtx generation in studiomdl.exe
Also made the program work out of the box without specifying `-nop4`.
Minor changes
Fix NPC death poses (Thanks MapBase)
garrysmod-issues/issues/5361
Enabled a bunch more episodic behaviors
Most of it is locked away behind hl2_episodic, most of it is relating to Alyx Darkness mode stuff
Replace default cubemap texture with the one VBSP generates by default
This affects maps that are renamed after compilation
Fix CmdSeq.wc being broken on local builds
Fixed Ceiling Turret trying to play non existent sounds on dry fire
Was spamming warnings in console
Fixed Alyx not being blinded by flashlight in Episode 1
More episodic behaviors, for Zombies and Headcrabs
Fixed Alyx still following the player in darkness mode without flashlight
Fix Alyx's darkness breathing breaking other voice lines
Remount subbed addons if we unmounted server addons
In case some file(s) were overwritten by server addons, which are now gone
Clean up rope materials on disconnect, not game shutdown
Allows rope materials to reach 0 refcounts
Fixed intro screen material not being freed
Also fixed __error material getting an extra forever refcount
Also fixed __loading and __background getting forever refcounts
Fixed certain sprites (such as physgun beam) being forever referenced if drawn
Fix potential division by 0 when parsing MP3 files
Fix potential division by 0 when parsing MP3 files
Actually apply the fix for division by 0 :pensive:
Add reason to "Unmounting addon X" message
Attempt to fix weird Linux filesystem crash
Retouch material/model uncaching
Making sure it doesn't happen when mcore is turnedon/allowed
Resolved case sensitivity issues with lua_refresh_file
Change up GetPhysicsObjectNum warnings with more info
Rework game_text rendering clientside to allow for 256 channels (from 6)
Also limit hold time to 0-300 seconds.
Allow 3 separate number inputs to certain mesh.* functions
mesh.Position
mesh.Normal
mesh.TangentS
mesh.TangentT
Only allow dx80/dx90.vtx files in gmpublisher
Fixed materials with matproxies sometimes getting permanent artificial refcount
Do not unmount server .GMA file for now
Use network origin/angles for clientside physics objects
Fixed legacy workshop addons sometimes not extracting correctly
This would happen on download, potentially after messing about with Steam files
SetAvoidPlayers ignores noclipping players
Resolve model materials going into negative refcounts
This is a specific case where error models are "hotloaded" into non error models.
Block cl_playerspraydisable
Fixed util.GetModelMeshes leaking model refcounts
Fixed sprites causing material refcounts going negative
Similar case to models - sprite materials becoming available after precaching as error
Minor changes
Fixed Lua particles leaking material refcount
This is fixed by precaching the material just before it is used
Restore unmounting of server workshop addons
Can be still disabled with `gmod_uncache_test -1` for testing purposes.
Replace default cubemap texture with the one VBSP generates by default
This affects maps that are renamed after compilation
Fix CmdSeq.wc being broken on local builds
Fixed Ceiling Turret trying to play non existent sounds on dry fire
Was spamming warnings in console
Fixed Alyx not being blinded by flashlight in Episode 1
More episodic behaviors, for Zombies and Headcrabs
Fixed Alyx still following the player in darkness mode without flashlight
Fix Alyx's darkness breathing breaking other voice lines
Remount subbed addons if we unmounted server addons
In case some file(s) were overwritten by server addons, which are now gone
Clean up rope materials on disconnect, not game shutdown
Allows rope materials to reach 0 refcounts
Fixed intro screen material not being freed
Also fixed __error material getting an extra forever refcount
Also fixed __loading and __background getting forever refcounts
Fixed certain sprites (such as physgun beam) being forever referenced if drawn
Do not precache particle materials on the server (game.AddParticles)
Allows particle materials to reach 0 refcount on disconnect from singleplayer, and also makes no sense to precache particle materials serverside anyway.
Show "Unknown Addon #X" as invalid in addons menu
So there's no confusion why they don't appear in-game.
Make sure to restore gamemode on server disconnect to what it was
file.Remove returns success
Potential fix for a sound DSP crash
Prevent NPCs complaining about sequence -1
This could happen when a combine solider has no gun and tries to chase the player.
Fixed NPCs complaining about bone access on death
HL2 model changes
* Moved stalker model to overrides/, next to other override models
* Include EP2 combine mine model, so its skins appear on that EP2 map
* Include EP1 ceiling turret model so it functions correctly when dry firing
Fixed "skill" no doing anything for HL2 content
Also enable Alyx darkness mode
Correct AIClassText for some CLASS_ enums
Also block "skill" from being modified by Lua ( game.SetSkillLevel exists)
Disable .sw.vtx generation in studiomdl.exe
Also made the program work out of the box without specifying `-nop4`.
Minor changes
Fix NPC death poses (Thanks MapBase)
garrysmod-issues/issues/5361
Enabled a bunch more episodic behaviors
Most of it is locked away behind hl2_episodic, most of it is relating to Alyx Darkness mode stuff
Block cl_playerspraydisable
Fixed util.GetModelMeshes leaking model refcounts
Fixed sprites causing material refcounts going negative
Similar case to models - sprite materials becoming available after precaching as error
Minor changes
Fixed Lua particles leaking material refcount
This is fixed by precaching the material just before it is used
Restore unmounting of server workshop addons
Can be still disabled with `gmod_uncache_test -1` for testing purposes.
Apply the fix for NPC death animation blending
garrysmod-issues/issues/5891
Resolve model materials going into negative refcounts
This is a specific case where error models are "hotloaded" into non error models.
Fixed legacy workshop addons sometimes not extracting correctly
This would happen on download, potentially after messing about with Steam files
SetAvoidPlayers ignores noclipping players
Use network origin/angles for clientside physics objects
Rework game_text rendering clientside to allow for 256 channels (from 6)
Also limit hold time to 0-300 seconds.
Allow 3 separate number inputs to certain mesh.* functions
mesh.Position
mesh.Normal
mesh.TangentS
mesh.TangentT
Only allow dx80/dx90.vtx files in gmpublisher
Fixed materials with matproxies sometimes getting permanent artificial refcount
Do not unmount server .GMA file for now
Retouch material/model uncaching
Making sure it doesn't happen when mcore is turnedon/allowed
Resolved case sensitivity issues with lua_refresh_file
Change up GetPhysicsObjectNum warnings with more info
Add reason to "Unmounting addon X" message
Attempt to fix weird Linux filesystem crash
Actually apply the fix for division by 0 :pensive:
Fix potential division by 0 when parsing MP3 files
Added gmod_uncache_test (defaults ON) for the new attempt at content unloading
This probably doesn't matter: Move changes to CLuaObject to the bottom
Fix even more potential crashes with NPCs driving vehicles
Forgot this file for gmod_uncache_test
Added gmod_uncache_test (defaults ON) for the new attempt at content unloading
This probably doesn't matter: Move changes to CLuaObject to the bottom
Fix even more potential crashes with NPCs driving vehicles
Forgot this file for gmod_uncache_test
Fixed RegisterMetaTable still creating a new table
Try to encourage models to be unloaded on disconnect
Minor cleanups
Block path concommand
Fixed unmounting GMAs leaving behind empty folders internally
Fixed whereis sometimes not finding the culprit workshop addon
Fixed whereis sometimes not finding the culprit workshop addon
Fixed unmounting GMAs leaving behind empty folders internally
Block path concommand
Minor cleanups
Try to encourage models to be unloaded on disconnect
Fixed RegisterMetaTable still creating a new table
Temp hack for vgui.GetAll when it doesnt exist
Temp hack for vgui.GetAll when it doesnt exist
Added temp polyfill for RegisterMetaTable
Improve server-only scaled physics prop trace hit detection
Do not PurgeUnusedModels before mounting BSP content
Properly fix modelscale bounds - they were doubled from scaling PhysObjs
Release materials created by surface.GetTextureID clientside
Hopefully the clientside-only part solves issues people had when destroying these textureIDs
Prevent "unknown material" spam on disconnect due to recent changes
Fixed Entity:SetModel and util.PrecacheModel leaking mdl refcounts
Added temp polyfill for RegisterMetaTable
Improve server-only scaled physics prop trace hit detection
Do not PurgeUnusedModels before mounting BSP content
Properly fix modelscale bounds - they were doubled from scaling PhysObjs
Release materials created by surface.GetTextureID clientside
Hopefully the clientside-only part solves issues people had when destroying these textureIDs
Prevent "unknown material" spam on disconnect due to recent changes
Fixed Entity:SetModel and util.PrecacheModel leaking mdl refcounts
Fix FollowBone not working correctly again
Fix FollowBone not working correctly again
Fixed a bunch of possible crashes with Vehicles pre-spawn
Afternative fix for timers during timing out
Alternative fix for Entity:FollowBone
Fixed a bunch of possible crashes with Vehicles pre-spawn
Afternative fix for timers during timing out
Alternative fix for Entity:FollowBone
Make PhysObj:GetFrictionSnapshot start at index 1 again
Fixed crashes when point_template is used improperly
Expose steamworks.GetList/FileInfo to serverside
Kleiner model with merged animations
Vortigaunt models with merged animations
Include Episode 2 floor turret models for its skins & gibs
Enable Episodic behaviors for vortigaunts
Fixed crashes when certain models are spawning gibs
Models from other games that may reference non existent gib types
Fixed logic_collision_pair not really working at all when spawned by map
Improve kill feed NPC names for map spawned NPCs like rebels
Episode 1 intro fixes
Episode 1 wake up fix
Fixed UnmountServerAddons not working without gmod_unload_test
Change where clientside think is called from
This does NOT affect the Think/Tick hooks clientside, but DOES affect the following Lua systems:
* timers
* HTTP requests
* async file reads
* net messages
Ideally there should be no noticeable changes, but these systems will now run correctly when not receiving pakcets from the server.
Fix filesystem not being able to seek above 2GB in a file
Error out and do not mount addons over 4GB
Everything under should work with previous commit.
Block servers from modifying fov_desired
Warning on model scales of 0 or below
Fixed gibs clientside not initializing their scale to 1
▊▌▋'█ ▊██ ▇▅▆ ▉▄▇█▄▄▌█▆ ▌█_▊▇▄▋▊▌▅▌▄▅▉▇▌▌▅▄ ▊▋ ▇▇▍▄█
▍▉▍▊ ▉▆▋ ▍▌█▇▄▉▋▋ ▍▉▆▉▄ ▄▄▊█▊▍▄▆ ▋▍█▉▉ ▍▄ ▆▋▆▊▉ ▇▆▊▍▉
!▌▊▆▌▌▋ ▄▇ ▄▇▌ ▌▉▄▉▆ █▆▌▍▋ █▉ ▋▉▆▇▉
!▍▊▌▇ ▋▌▋▆▋ ▇▍▅▇▅▉▉ ▅▇▅▅▄
EmitSound handles registered sounds a bit better clientside
You could, and still can add `.wav` to the end of the registered sounds to make them work with EmitSound, which is still useful for serverside, but clientside this is no longer necessary.
Added optional argument to sound.Generate - loopStart (sample ID)
Display an error in console when addon file list has failed to be read completely
Removing dead/redundant code from SENTs
env_screenoverlay SwitchOverlay forcing overlays on when the entity is disabled
Fix clicking a TextEntry sometimes setting invalid caret pos
Load model from keyvalues before setting error.mdl on anim SENTs
Ignore \n in player names too
Move certain "hexed" models to fallbacks VPK
Fixed env_zoom not working sometimes, and not undoing itself on removal
Include modified Alyx models that include animations from episodes
Get rid of "env_sprite is rendering non sprite material" warning
It's too spammy
Entity:Set/GetPoseParameter now can accept numbers instead of strings
Entity:GetPoseParameterRange can now accept string instead of a number
Fixed Entity:FollowBone not working with boneID 0.
Fixed SoundDuration returning wrong values for MP3 files
It was a sneaky bug in the MP3 parser
It's still an approximation, but it is very close now. (+/- 0.1s)
Also make it skip ID3v2 data
Fixed .wav SoundDuration being off by number of channels on srcds
Let's try this again: unload unreferenced materials in more places
This is aimed at making sure content from maps is unloaded before content from another map is loaded
Merge clientside and serverside physobj scaling code
Update button spawnicons to face the camera
mat_viewportscale tiny value Problem
Remove unintended label from HL2 spawnlist
Fixed stray "Other2" category name fallback in spawnmenu
Added PhysObj:MakeShadow( maxSpeed, maxAngSpeed )
This allows making any physics object a physics shadow, not just Entity:PhysicsInitShadow
Speed values of 0 or below mean do not allow movement.
Added RegisterMetaTable( name, table )
"anim" type SENTs move physics objects clientside for you
Hopefully this will not cause any issues
surface.PlaySound can accept soundscript names clientside
This will only translate the soundscript name to a file path, it will NOT affect ptich/volume, etc, since the function does not support that at all.
sound.Generate now accepts table of samples, or direct binary data as a string
The table input should have float values from -1 to 1 (index starting with 1), and is about 4 times faster than using a function
string input must be raw 16bit sound data (each sample is a signed short), and is much faster than the 2 other methods.
Added CNewParticleEffect.GetRenderBounds
Improve consistency of trace surfaceID returns clientside
This only relates to usages of PhysicsObject shadows
vcollide_wireframe - draw the actual physics object clientside if it exists
Test version of clientside model physics scaling
Fixed trackspeed only working after ReturnToEyes input (point_viewcontrol)
Gibs inherit model scale of scaled props
Change clientside physobj scale to trigger from Activate()
Fixed scaled props scaling collision bounds twice
Added CLuaInterface::RegisterMetaTable
Fixed DMenuOptionCVar resetting from cvar too early in certain use cases
Fixed crashes due to recent changes to gib system
Fix merge errors & some GO TODOs
Remove file.AsyncRead from menu state entirely, since its broken anyway
Added $BASETEXTURESPEED,BASETEXTURE(2/3)SPEED for VolumeClouds shader
concommand autocomplete tokenized arguments argument
Port hack for Portal 2 .wavs that are actually .mp3s
Remove Episode 2 exclusive soundscapes from gm_construct
Added new shader parameters to `Core` shader
$ENTITYORIGIN
$DIAMETER
(They are case insensitive)
Complete vphysics sources from 32bit builds
Added optional argument to NPC:StopMoving - immediate (defaults to true)
Prevent invalid input to render.DrawWireframeSphere
Fixed a long freeze on disconnect from maps with huge nav meshes
Added Entity:GetBoneFollowers, new argument to Entity:CreateBoneFollowers
Entity:CreateBoneFollowers( table of bone names )
Throw errors when ColorToHSL/ColorToHSV/physenv.SetPerformanceSettings gets not a table
Bone follower support for AI and Nextbot SENTs
Added Entity:Dissolve( type = 0, magn = 0, orign = EntOrigin )
Added a 3rd argument for PathFollower:Chase - cost function
Added NPC:Set/GetStepHeight
GMad.exe: On windows, pause on error when using drag'n'drop
Added NPC:GetArrivalSpeed / NPC:GetArrivalDistance
Restore HL2 use sounds with `gmod_suit 1`
Added ability for traces to use a table of class names as filter
They can be mixed and matched with entities as well.
Restore angle alignment stuff for +use pickup
Print games that are mounted to console (like folder addons) with developer 1
Traces now have "whitelist" input property
This will turn the table filter into a whitelist, rather than ignore list. This will NOT affect function() filters
Added "hitclientonly" option to trace functions clientside
Fixed Static/Dynamic/Physics not being correctly displayed in Hammer due to recent changes
Added new data to util.GetModelInfo
MeshCount, BoneCount, Flags, StaticProp (specific flag)
Fixed UnmountServerAddons not working without gmod_unload_test
Change where clientside think is called from
This does NOT affect the Think/Tick hooks clientside, but DOES affect the following Lua systems:
* timers
* HTTP requests
* async file reads
* net messages
Ideally there should be no noticeable changes, but these systems will now run correctly when not receiving pakcets from the server.
Fix filesystem not being able to seek above 2GB in a file
Error out and do not mount addons over 4GB
Everything under should work with previous commit.
Block servers from modifying fov_desired
Warning on model scales of 0 or below
Fixed gibs clientside not initializing their scale to 1
Fixed crashes when certain models are spawning gibs
Models from other games that may reference non existent gib types
Fixed logic_collision_pair not really working at all when spawned by map
Improve kill feed NPC names for map spawned NPCs like rebels
Episode 1 intro fixes
Fixed crashes when point_template is used improperly
Delete duplicate build scripts that don't really work too well
Expose steamworks.GetList/FileInfo to serverside
Kleiner model with merged animations
Vortigaunt models with merged animations
Include Episode 2 floor turret models for its skins & gibs
Enable Episodic behaviors for vortigaunts
Make PhysObj:GetFrictionSnapshot start at index 1 again
▄▅▆▋▍▋ █▉ ▋▆▌ ▉▅▉▍▇ ▇▇▌▌▋ █▅ ██▋▍▋
Lets try exposing sound duration stuff to linux srcds
Fixed Entity:FollowBone not working with boneID 0.
Fixed SoundDuration returning wrong values for MP3 files
It was a sneaky bug in the MP3 parser
It's still an approximation, but it is very close now. (+/- 0.1s)
Also make it skip ID3v2 data
Fixed .wav SoundDuration being off by number of channels on srcds
Let's try not disabling SV_GetSoundDuration on srcds
Move certain "hexed" models to fallbacks VPK
Fixed env_zoom not working sometimes, and not undoing itself on removal
Include modified Alyx models that include animations from episodes
Get rid of "env_sprite is rendering non sprite material" warning
It's too spammy
Entity:Set/GetPoseParameter now can accept numbers instead of strings
Entity:GetPoseParameterRange can now accept string instead of a number
▉▆▄▄▆ █▅▌▄▌▇█▆ ▌▇ ▆█▄▊█▉▋▆██▉▍ ▉█ ▌▌██▇ ▊▅▉▌▄▄
!█▆▌ ▍▄▊▅▉ ▌▋▄▅▄▍▄ ▌▍▉▊▋ + ▉▉▇▅▍▌▄ ▍▆▆▊▊
▍▊▄▆ ▌▆█▋█ █▊▋▌ ▋██▇▋▅▄▆▇ ▉▌▌▋▄▅ ▊▆▆▊▅█▅ █▍▋▄▋.▅▌▆ ▄▍ ▊▇▆█ ▊▉█▄▊
▇▊▄▅█▅ \▆ ▆▅ ▅▅▄▊▇▉ ▍█▊▋█ ▌▇▄
█▌█ ▇▊█▉▌ ▄▌█▆▋▊▋ ▆▅▄█▇ + █▋▌▊▊█▄ ▉▆█▍▇
Bump MAX_LOGGING_MESSAGE_LENGTH to 4096, matching main
Fixed warnings on changelevels on 64bit builds