-
gm_addon_optimization_tricks
Tips & Tricks to make your addon slim and fast -
gmod_random_patches
A kit of in-game fixes not affecting gameplay but making the game more productive and fixing some bugs.Most of the patches are already in the repository, but I thought it would be worth adding this as well.
-
cl_limit_render.lua
- Disables the HDR player hardware. (High Dynamic Range)
- Disables Pixel Shaders 2.0/1.4 and Vertex Shaders 2.0
- Sets the maximum available DirectX version.
-
Hook-Library
This is a simple, realible, fast and optimized hook library for Garry's Mod. It's well tested and will not mess anything when added to your server. It can/should improve your server performance. -
BadCoderz
"Find unoptimized gmod addons and KILL the devs who made them" -
Simple-Render-Distance
Addon that allows you to change render distance of certain categories of entities on your server -
gmod-lua-performance
A simple comparison of performance optimizations for gLUA- These are a few benchmarks that are tested on a Garry's Mod Server idling with DarkRP with only 1 player online. Some of those benchmarks, if possible, were also tested in a LUA5.3 console on Debian 10. If not otherwise stated differently all tests have been done on a gmod server on linux.
-
gmsv_async_stdout
This is a Garry's Mod server module that moves-condebug
file I/O out of the main thread, which should significantly improve performance for noisy servers. -
gm_microoptimisation_war_crime
This attractively named repository contains a Garry's Mod module that performs a micro optimisation that makes use of LuaJIT's constant folding on all Lua scripts.- The module intercepts the loading of Lua scripts and preprocesses the Lua code to replace all instances of
SERVER
andCLIENT
withtrue
andfalse
depending on the current realm.
- The module intercepts the loading of Lua scripts and preprocesses the Lua code to replace all instances of
-
sh_disable_widgets.lua
Disables unnecessary widget hooks that no one ever uses. -
sh_limit_phys.lua
Changes the physics of objects, both for the server and for the client. -
sh_nw_to_nw2.lua
"I don't think this is a good idea for now, NWVars2 have some problems right now which need fixing before this can be even considered." -
sh_remove_ents.lua
Deletes entities that are not normally used. I think it's worth checking if you're using any of the list. -
sh_remove_hooks.lua
Deletes hooks that. Also check if you need to. -
cl_remove_ragdolls.lua
- Starts a timer to delete all ragdolls and objects on the client side.
- Disables the unnecessary depth display hook after death.
-
sh_umsg_to_net.lua
Forces the obsolete umsg library to use the new net. -
sv_animation.lua
Disables server-side movement of the mouth and ears. -
sv_run_commands.lua
Runs a bunch of commands to optimize the client and its graphics. Some idiot wrote this, but it seems to work. -
sv_seatsoptimaize.lua
Makes corrections to the seat network? -
cl_fontcache.lua
Caches fonts and prevents them from being overwritten without changes. -
cl_blink_gc.lua
"This addon will check your client's current LUA memory and if too much memory is being used, will manually call for a collection of unused memory." BlinkGC- Reduces the amount of crashes you have due to bloated addons.
- Gives information in your console about your Active LUA Memory.
-
simplegc/sh_simplegc.lua
Regularly adjusts garbage collector behavior to reduce performance overhead. scuroinside/snippets
Here are just some observations that might help you.
-
In ./srcds_run - find the lines
ulimit -c 2000
and replace it withulimit -c unlimited
. This will allow us to use more resources and remove some segmentation errors. -
You can play with the values in
server.cfg
:mem_max_heapsize "2048" threadpool_affinity "4" // 8 for octa-core, 6 for hexa-core, 4 for quad-core, 2 for double-core
-
Startup parameters:
-high
High process priority-novid
Disables video decoding function - disables codec, not splash screen, does not affect video work directly in the game, - the effect on fps is negligible-malloc=system
Allows you to choose the size of memory blocks = loads the RAM, offloads the CPU-swapcores
allows you to change threads for materials-softparticlesdefaultoff
Disables particle depth filter - gives fps boost, reduces quality of particles-gl
or-r_emulate_gl
Simulates OpenGL on Windows - high fps boost, does not work for everyone