branchgarrysmod.main/maincancel
870 Commits over 1,065 Days - 0.03cph!
Merges from x86-64
More merges from x86-64
Change description of bot_zombie convar
Fixed missing antlion guard step sounds
Added Counter-Strike: Source content to Garry's Mod
Separate VPK with models, sounds and materials/textures that is mounted if CS:S is not manually mounted.
The version shipped with GMod does not have any music or voice over, duplicate content or any of the maps.
Fix compile issue on posix
Move VPK.exe to Tools (internally)
Update GameUI.vpc
Remove links to dead valve websites, link to VDC (Hammer & tools)
VPC Cleanups + build soundsystem.dll/vtex.exe instead of shipping a prebuilt
soundsystem is used by Hammer, and is built automatically on x86-64 beta. vtex.exe is also built on that beta
Removed duplicated projects from VPC groups, rearranged tool stuff
Remove 1 more dead link from Hammer
Merge KeyValue leak fixes from TF2 SDK
Some of them were already fixed
Adding Half-Life 2 Episodic content as fallbacks
Again, no voice over or music, but models, materials and sound shipped.
Remove sw.vtx from CSS vpk
Enable Episodic spawnmenu content (NPCs/Vehicle/Entity) by default
Do not build bootil 64 bit on linux/osx
Threadtools/tier0 merges from x86-64
Update Windows build scripts again
Build bootil 64 bit
Can now build 64bit filesystem, addons, addons_fs, vpklib, vpk and vtex
Fixed particle related crashes when attached to an entity
Pointless nullptr checks for CImage when basically OOM
Apply SendSnapshot hack from base game to HLTV
Allows full update snapshot to exceed 256KB limit, up to 1MB limit.
Also updated some console messages and kick reasons to include more useful data
Can now build 64bit map compilers
Update build scripts for Windows
Apply FCVAR_CHEAT to r_pixelfog
Minor cleanups
Fix missing Trails undo message localization
Sanity checks for VTF loading
Minor cleanups
Fixed some issues with save/load system
UniqueID/SteamID consistency for multirun clients
UniqueID will still be inconsistent for multirun clients because its based on data clients can't know
Only allow sound precache on level transitions/game load
Should help with singleplayer players and addons with hundreds of sounds per weapon
Reduce OBS_MODE_DEATHCAM time from 3 seconds to 1 second
Added some sanity checks when loading VTF files and possibly running out of memory.
Edit Entity window now shows prettier entity name (Community Contribution)
string.ToColor micro-optimization (Community Contribution)
More strict shader file whitelist (Requiring to be in `shaders/fxc/`)
Delete unused CDispInfo.m_pTags
Try to provide some useful info to "hit surface has no samples" warning
Fixed operator precedence in a certain validity check
Minor cleanups
Added more checks for invalid values
Increase MAX_NODES to 8192 (from 4096)
Fixed VRAD Lightmap crash due to static props using out of bounds skins
Fixed VRAD always forcing verbose to true
Fix "must be compiled with $staticprop" error in VRAD too (was VBSP only)
Since `-allowdynamicpropsasstatic` is not a thing in VRAD, it will just always allow such props. VBSP controls whether such props are written to the .BSP file, so it should be all good anyway, since VRAD only loads the model list from the BSP.
Merge Pull Requests
* Remove duplicate "Black and White" color modify preset (Community Contribution)
* Use player.iterator over player.GetAll in some base game functions (Community Contribution)
Fixed crash issues with VPC.exe on windows
Carefully updating win32 side of VPC scripts
Update windows built scripts a bit
Minor cleanups in gl_util.cpp
VPC Cleanups
▄▇▌ ▆▆▉▄▋▄▅ ▄▋▇█▍▄▅▌▍▍ ▉▌▉ ▉▍▅_▉▉▍▆▍█
▉▄▅▄▌▊▉ ▆▌▋▆-▍▊▌? ▆█▋ ▆▌▊█▊▇▆
Unify how libraries are imported (VPC merges from x86-64)
More VPC merges from x86-64
Fixing more VPC script issues for Linux
Can almost build 64bit vrad
Fix legacy hooks for entity iterators feeding entities to the callback
VPC script updates/fixes
Fixing Linux VPC scripts
Add some sanity checks for malformed models that could crash the game (to do w/ textures)
Can now build tier0, tier1, vstdlib and some others for x86-64
Build VPK.exe like x86-64 already does
Delete replay.dll/replay.so which are unused
Update Build-Game.bat
Improve V49 model support for VRAD static props
-allowdynamicpropsasstatic also allows props without $staticprop
VRAD static prop lightmaps respects skins (crash fix as well) + sanity checks for model loading
Fixed an issue with format strings
Added background to cl_pdump cvar
run iterator reset just after EntityRemoved, not before
Simplify optional argument checking for Entity:AddGesture/RestartGesture/AddGestureSequence
Update lights.rad
Remove leftover debug print
Cleanups from x86-64
Remove probably unused linux libraries related to Steam
Cleaning up VPC build scripts
Draw console notify text above all other panels
Minor cleanups
More minor merges from x86-64
Move HTMLPanel related files together
Try to make ents/player.Iterator more reliable during OnEntityCreated/EntityRemoved
Reset the cache just before the hooks are run, so the cached table would be up to date when ran inside those hooks by addons
Implement cubemap seam blending for HDR cubemaps
More minor cleanups
Fix Linux/OS X not building due to duplicate source files
Don't build certain projects that won't build
Minor cleanups
Port gmod-html from x86-64 for Windows only
Fixed some compile warnings
Added more sanity checks
Prop fading changes
If prop min fade distance is below 0 (i.e. -1), it will be set to max fade distance if max fade distance is below 500. This avoids props being always transparent in this scenario, even when walking up really close to it.
Fixed changing video settings always forcing map reload
Improve performance of ToGMODPlayer clientside
Matches serverside implementation now
Optimize player.Get* functions a bit
Optimize ents.Get* and ents.Find* functions
Remove -preload as well
Use safer Entity push function for recent changes to player/ents libs
Remove unused c_fire_smoke methods
Fixed worldspawn not calling create/remove hooks correctly clientside
Should now be consistently calling create AND remove hooks.
Fixed clientside ragdolls not calling GM:EntityRemoved
Add some sanity checks
Removing more unused convars
cl_burninggibs, r_propsmaxdist
cl_first_person_uses_world_model - does nothing
mat_max_worldmesh_vertices - no noticeable effect
Removing more unused convars
showparticlecounts, cl_team, cl_class
Remove cl_SetupAllBones
It was functional, but seems to be some sort of leftover hack which is disabled by default anyway
Removed cl_forcepreload
It is gone in newer versions of the engine anyway. It's functionality CAN be replicated via `-preload` launch param for whatever reason.
Added player.GetCountConnecting
Added more sanity checks
Added lua_matproxy_nobindmat & matproxy changes
The convar is for testing only (since not all servers have the updated Lua library), Lua mat proxies will reuse the already stored material in Lua for the bind callback, rather than pushing the stored material from C every frame. This prevents thousands of IMaterials being pushed to Lua a second, and should prevent hitching when GC deletes them all in batches.
Minor cleanups
Bump internal renderData buffer from 64k to 80k
Prevent TOGL crashes when encountering debugger break
Merge Pull Requests
* Minor optimizations to Problems panel, abilty to close it via ESC key or clicking empty space
* Numpad library discards bindings to KEY_NONE
* Remove tostring call on the argument of player.GetBySteamID64
Cleanup filesystem changes
Files over 2GB should kinda work now on Linux
Maybe this will allow loading of files above 2GB
Revert "Temp debugging stuff for linux"
This reverts commit 71d90d5d97ac4187eb36ec54f4f19e17f52d3f09.
Temp debugging stuff for linux
Update the DebugLuxel with actual vertex color support
Truncate killfeed names to 512 bytes to prevent overflows
Lets try registering private animation events as client events too
Removing more unused convars
mp_autocrosshair, mp_allowspectators, mp_friendlyfire, mp_fadetoblack
Removing more unused convars
mp_chattime, mp_waitingforplayers_time, mp_waitingforplayers_restart, mp_waitingforplayers_cancel, mp_clan_readyrestart, mp_clan_ready_signal, mp_readyrestart, mp_ready_signal
Remove more unused convars
mp_forcerespawn, mp_fraglimit
Speculative improvements for >2GB file support
Reject empty or near empty .gma files
More improvements to file support for >2GB
Fixed crashes with point_worldtext for good
Do not try to run HTTP requests with invalid URLs
Fix OSX not building
Run PlayerBindPress for unbound keys too
The binding will be an empty string.
This is consistent with the pre-existing behavior of the hook running after running "unbind <key>" even though the key is technically no longer bound.
Update misleading message "Can't save unknown type"
Update "Field %s is using the wrong FIELD_ type" warning
Test for unclosed Lua ISave/IRestore blocks
Add internal note about 64bit engine save warning
Saverestore Lua lib: Close started block on early return
Not sure if this is the correct approach, so also prints an error if it is hit.
Fixed DebugLuxels not accepting vertex color in Hammer
More colors for Lightmap Grid in Hammer
red for under 8, green for above 63
Fix GetAimVector clientside for non local players in vehicles being wrong
Restore functionality of m_filter
Minor cleanups for particles
Minor compile warning fixes
Minor bootil cleanups, remove bootil's HTTP stuff since we dont use it
Minor warning fixes
Remove CTakeDamageInfo.m_iDamageStats (unused)
When dealing physics stress damage on characters, apply inflictor
Will try to set the inflictor/attacker to something more useful than "World".
In case of multiple props, it will be the first one.
Added commented out Entity.GetConstraintParams
it works, but most values are garbage or not that useful, so I am not sure how useful this actually would be.
More compile warning fixes
Minor cleanups
Fixed crashes to do with particle loading
There will be a console warning when an invalid particle is loaded. Invalid particles will be ignored.
Fixed UTF-8 characters in console cmd name appearing as ?
Fixed crashes with point_worldtext
Fixed crashes with PCFs using ELEMENT_INDEX_EXTERNAL
Affected particle systems will not be able to load.
Remove unused convars
joy_yawsensitivity_default
joy_pitchsensitivity_default
option_duck_method_default
sv_stickysprint_default
Added sql.QueryTyped
Update RPG Launcher model
Added a few new sequences to map to view model activities, fixing the muzzle flash when drawing the weapon or when player shoots it
Added Color:Copy method (Community Contribution)
Fixed IGModAudioChannel:GetPos returning invalid values sometimes
Minor cleanups
Fix close caption norepeat not working
Fixed regressive crash with close captions
gmad compile warning fixes
Minor cleanups
Added ents.CreateClientRope
ents.CreateClientRope( ent1, attachment1, ent2, attachment2, extras )
Extras is an optional table with the following options:
* slack = 0
* width = 2
* segments = 8
* material = cable/cable
* nogravity = 0
Do not force "rate" cvar to 100k on start up
Remove archive flag from "rate" cvar
It effectively didn't do anything until previous commit, because the value was always reset on start up.
Fixed a crash issue with close caption HUD
constraint.Motor accepts a bool for "toggle" parameter
Very minor changes from CS:GO's framesnapshot stuff
Update DebugLuxels shader from HL2 repo
Remove "Use Bloom" checkbox from Video options, as it does nothing
Remove mat_hdr_level 1 from Video Options since it doesn't do anything
mat_hdr_level 1 will act as "NONE" in options.
Fixed options complaining about missing hap_HasDevice convar
Remove sv_contact and sv_consistency as they are unused
Rework arguments of OnClientLuaError
This is a bit messy until a network breaking update, but new arguments are:
( error, ply, stack, addon_name )
Also no longer affected by "5 a second" limit serverside
Lets try not delaying material/texture cleanup until render end
Add WriteTempEntities overflow warning from csgo
Bonemerged models inherit lighting origin from parent
Makes viewmodel hands match lighting of the viewmodel itself
Apply changes to CHudCloseCaption from TF2
Make Linux compile
Fixed regression to do with PrePlayerDraw
Fixed an infinite loop in weapon selection HUD
Faceposer uses localized "Other" string
Fixed 3D grid not rendering correctly in Hammer
Merge some Bootil changes from x86-64
Remove mp_usehwmmodels convar (unused)
AvatarImage panel changes + defer material cleanup till render end
AvatarImage keeps track of textures it creates and reuses them, preventing exhaustion of texture name symbol list
Deferring material cleanups a little makes it more likely the materials and textures are no longer used by any part of the renderer, allowing refcounts to reach 0 naturally.
Added GM:OnClientLuaError( strErr, ply )
Remove stray space indentation in some Lua files from PRs
Updated FGD files
Added inputs to light_environment, removed point_clientcommand and point_servercommand since they do not work in Garry's Mod.
Fake Combine Ball bounces from frozen props
Make crossbow bolts bounce from indestructable props
Prevent crashes when trying to write too much data to small texture
Added new info to util.GetModelInfo
IncludeModelCount, IncludeModels and HitBoxSets
Fix avatar image texture manager not respecting avatar size at all
Removing more unused convars
mp_teamlist, mp_teamoverride, mp_defaultteam, mp_allowNPCs
Remove mat_disablehwmorph as it does nothing
Remove unintended change that doesnt compile on main
Apply changes to type() function (Server/menu) (Community Contrib)
Fixed ragdoll boogie happening from +USE pickups/throws
Prevent throwing +USE pickup if holding M1/M2 while picking up
Ship a cleaner version of decals_mod2x, uncompressed
Eliminates green colors from some overstacked decals. Not perfect because some decals now have gray outlines instead of green ones, but much better still.
Also ship improved versions of decals/light, decals/dark and decals/alienfliesh/shot1 which appear in the paint tool, and suffer from DXT compression artifacts
Compile warning fixes
Update Metrocop player model to have a valid shadow LOD
Do not render dragndrop overlay when UI mouse input is not active
A bit of a bandaid fix, but it works.
Minor cleanups
FPS independent CUserCmd:GetMouseY/X on server
Client's FPS would affect the values the server gets (higher FPS - more intermittent results, causing "low sensitivity")
Now we accumulate the mouse deltas when client performs "extra mouse sampling" and send the accumulated value instead of whatever happened to be the latest delta value.
This affects Physics Gun +USE rotation and GMOD_Camera by default, but also all mods using the aforemention functions. They should now function more predictably regardless of client FPS.
Removed unused convars that do nothing
r_fastzrejectdisp
mat_shadowstate
mat_maxframelatency
mp_usehwmvcds
r_threaded_client_shadow_manager, r_threaded_renderables
r_decal_cullsize
r_drawopaquestaticpropslast
r_threaded_renderables
snd_mix_async
mat_parallaxmap
On dedicated servers, return "unknown" instead of "prerelease"
Since the builds are identical 99% of the time, "unknown" is the more expected value. This way, it's incorrect only in 0.01% instances, instead of most of the time.
Fixed resistance turrets being in combine overwatch squad
Added list.RemoveEntry (Community Contribution)