Skip to content

Changelog September 12th 2024

Vuthakral edited this page Sep 13, 2024 · 2 revisions
  • Internal: Fixed distant sound code breaking with some update to gmod due to entity validity on the client.
  • Internal: New function DRC:GetCollisionBoundSizes(ent) -- returns four values: "average", "width", "height", and "depth".
  • Internal: New function DRC:CreateComBall(ball) -- Create & launch combine balls without needing to manage a stupid setup. Any values not supplied will fall back to default ar2 comball values. Usage example:
local ball = {
	["pos"] = <your position vector>,
	["ang"] = <your angle>,
	["minspeed"] = 1250,
	["maxspeed"] = 1250,
	["ballradius"] = 30,
	["ballcount"] = 1,
	["balltype"] = 1,
	["maxballbounces"] = 15,
	["launchconenoise"] = 0,
}
DRC:CreateComBall(ball)
  • Thirdperson: Fixed some screwy-ness with changing thirdperson presets rarely causing a setting to become null.
  • Weapon Base: Fixed internal variable SWEP.OwnerActivity.
  • Weapon Base: Fixed burst firing sometimes skipping the final shots with values higher than 3.
  • Weapon Base - Optimization: SWEP:CallShoot() now utilizes a number for which mode to shoot instead of a full string. 0 for primary, 1 for secondary, 2 for overcharge. This should help smooth things out a little for those 100-active-player servers.
  • Weapon Base: New settings SWEP.Muzzles = nil, SWEP.MuzzleCycle = 0, and SWEP.MuzzleResetOnReload = true -- automatically set by the base if left this way. Use intention:
SWEP.Muzzles = {
	[1] = {"muzzle", nil, nil}, -- muzzle attachment name, optional activity override, optional ironsight activity override
}
SWEP.MuzzleCycle = 0 -- 0 in order, 1 random
SWEP.MuzzleResetOnReload = true
  • Weapon Base: New setting SWEP.MuzzleCycle = 0 -- 0 or 1. At 0 muzzles will be cycled sequentually, at 1 they will be picked randomly.
  • Weapon Base: New setting SWEP.MuzzleResetOnReload = true -- Whether the active muzzle resets to 1 or not when a gun is reloaded.
  • Weapon Base: New function SWEP:GetCurrentMuzzle()
  • Weapon Base: New function SWEP:SetCurrentMuzzle(number)
  • Weapon Base: New function SWEP:IncrementCurrentMuzzle() -- makes the weapon increment the current muzzle based on SWEP.MuzzleCycle.
  • Weapon Base: New setting SWEP.Primary.MuteSound = false -- mutes all primary firing sounds coming from this weapon when set to true.
  • Weapon Base: New setting SWEP.Secondary.MuteSound = false -- mutes all secondary firing sounds coming from this weapon when set to true.
  • Weapon Base: Fixed SWEP.WeaponSkinSpecialMats.
  • Weapon Base: Added third optional setting for entries of SWEP.WeaponSkinSpecialMats, icon. Can be a VMT or a PNG file.
  • Weapon Base/Misc: Added serverside convar sv_drc_npc_uses_integratedlights. Default 0. Will force non-players holding a Draconic SWEP which have integrated lights set up to turn them on as long as this value is set to 1. If you have custom NPC code to already utilize this you have nothing to worry about, this runs on the weapon itself and does nothing if this value is set to 0.
  • Attachment Base: New setting ENT.AttachTable.OnAttach = function(info) -- Custom lua to execute when the attachment is activated. info is a table that contains elements for easy manipulation within the custom lua.
  • Attachment Base: New setting ENT.AttachTable.OnDetach = function(info) -- Custom lua to execute when the attachment is deactivated. info is a table that contains elements for easy manipulation within the custom lua.
  • Projectile Base: New setting ENT.DynamicParticles = true -- Whether dynamic particles should be visible or not.
  • Projectile Base: New setting ENT.DynamicSounds = true -- Whether the sounds from dynamic particles should be audible or not. (This includes sounds like metal bending, glass cracking, wood shattering, and etc from explosions)
  • Shields: Fixed model not updating properly on players.
  • Shields: Fixed model sometimes tposing on animated entities.
  • Shields: Fixed model sometimes casting projected shadows in first person when applied to players (blocking flashlights).
  • Material Proxies: Fixed $envmapfallback & all related parameters on weapon camos.
  • Material Proxies: Fixed ReflectionTint's static envmaps being overriden by engine default on maps without cubemaps.
  • Material Proxies: FakePSX distance calculation uses global EyePos now, after being informed that is a thing.
  • Material Proxies: FakePSX now checks for mouse input as well, so props and other immobile objects will do their effects if the player looks around instead of just when moving.
  • Material Proxies: FakePSX now checks the entity it is applied to for ENT.ForcePSX = true as a method of always forcing psx distortion to take place regardless of if the entity/player is moving/looking around or not.
  • Material Proxies: Reworked FakePSX cycler. It should now be much more consistent, and obeys host_timescale.
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul (default 1) (influences all cycles)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_run (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_walk (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_crouch (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_sprint (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_swimidle (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_swimming (default 1)
  • Material Proxies: New parameter for FakePSX: $psx_cyclemul_swimsprint (default 1) -- These should only be defined on a single material your model uses. They can be used to tune the speed at which animations cycle, as some non-valvebiped playermodels can be off-sync.
  • Material Proxies: Added the following parameters to the internal material returns, enabling them for use with advanced weapon camos & the Function matproxies:
    • $phongexponentfactor
    • $emissiveblendenabled
    • $emissiveblendtexture
    • $emissiveblendbasetexture
    • $emissiveblendflowtexture
    • $emissiveblendtint
    • $emissiveblendstrength
    • $emissiveblendscrollvector
    • $blendtintcoloroverbase
  • Debug Mode: Optimized debug mode's HUD.
  • Debug Mode: Switched most font elements to a smaller font on the debug mode HUD.
  • Debug Mode: Added burst queue visualizer for weapons with burst fire.
  • Debug Mode: Added thirdperson values to debug mode HUD while it is in use.
Clone this wiki locally