Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →For most Garry’s Mod servers, damage is adjusted with server-side Lua rather than one universal damage-multiplier convar. Use GM:ScalePlayerDamage when you need to change bullet damage to players by hit group, and use GM:EntityTakeDamage when the rule must cover explosions, fire, fall damage, poison and other damage types. NPCs use a separate path through GM:ScaleNPCDamage and sk_npc_* skill convars. A Workshop addon can provide convar-based controls if you do not want to maintain Lua, but its behavior should be checked on your exact server build.
Godlike.Host offers hosted Garry's Mod servers with its own game panel, SFTP access and free DDoS protection, if you would rather not host it yourself.
Choose the damage method that matches your goal
Start by deciding who should be affected, which damage types count, and whether you are comfortable editing a server addon. There is no confirmed built-in convar that acts as a single global player-damage multiplier across Garry’s Mod.
As an Amazon Associate I earn from qualifying purchases.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →| Method | Targets | Damage scope | Lua required | Important limitation |
|---|---|---|---|---|
GM:ScalePlayerDamage |
Players | Bullet damage, with hit-group information | Yes | It is not the general hook for explosions, fire, fall or poison. |
GM:EntityTakeDamage |
Any entity, filtered in your code | All damage types reported to the hook | Yes | Body-part information is not the normal focus; avoid scaling the same bullet twice. |
GM:ScaleNPCDamage |
NPCs | NPC hit groups | Usually, if overriding defaults | Player settings do not automatically apply to NPCs. |
sk_npc_* convars |
NPCs | Per-hit-group NPC skill values | No, when the built-in values are sufficient | They are NPC controls, not player controls. |
| Workshop damage-multiplier addon | Players and NPCs | Per-part and additional categories, depending on the addon | No | Compatibility and exact behavior vary by addon version and gamemode. |
Use one authoritative rule for each category. If both an addon and your own Lua modify the same hit, their multipliers can compound, making a headshot far stronger or weaker than intended.
Adjust bullet damage to players with ScalePlayerDamage
GM:ScalePlayerDamage is the documented hook for changing how much damage a player receives when a hit lands on a specific body part. It is called for bullet damage to a player and supplies the player, hit group and damage-information object. The usual pattern is to call dmginfo:ScaleDamage(multiplier) after selecting a multiplier.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Install a server-side script
- On the server, open the active server or addon directory.
- Create the path
lua/autorun/server/if it does not already exist. - Create a file such as
damage_scaling.luain that directory. - Restart the server or change level so the autorun file loads. Keep the file on the server; clients do not need a copy.
Basic per-hit-group example
hook.Add('ScalePlayerDamage', 'ExamplePlayerHitGroupScale', function(ply, hitgroup, dmginfo)
local multiplier = 0.5
if hitgroup == HITGROUP_HEAD then
multiplier = 2.0
elseif hitgroup == HITGROUP_LEFTARM or hitgroup == HITGROUP_RIGHTARM then
multiplier = 0.75
elseif hitgroup == HITGROUP_LEFTLEG or hitgroup == HITGROUP_RIGHTLEG then
multiplier = 0.75
end
dmginfo:ScaleDamage(multiplier)
end)
This example doubles bullet damage to the head, reduces arm and leg damage to 75 percent, and halves every other player hit. A multiplier of 1.0 leaves damage unchanged; 0 prevents that damage from reaching the player, although invulnerability rules and other hooks can still affect the final result.
Use a table when you have several body-part rules
local playerMultipliers = {
[HITGROUP_HEAD] = 2.0,
[HITGROUP_CHEST] = 1.0,
[HITGROUP_STOMACH] = 1.0,
[HITGROUP_LEFTARM] = 0.5,
[HITGROUP_RIGHTARM] = 0.5,
[HITGROUP_LEFTLEG] = 0.5,
[HITGROUP_RIGHTLEG] = 0.5
}
hook.Add('ScalePlayerDamage', 'TableDrivenPlayerScale', function(ply, hitgroup, dmginfo)
local multiplier = playerMultipliers[hitgroup] or 1.0
dmginfo:ScaleDamage(multiplier)
end)
Hit-group constants identify the head, chest, stomach, arms and legs. If a model reports an unusual or unknown group, the fallback in this example is normal damage. Test with the exact playermodels used by your server because custom models can have different hitbox layouts.
Recommended Free Tools
Make the rule conditional
You can restrict scaling to a team, weapon, role or round state. For example, return without changing the damage when the victim belongs to a protected team:
hook.Add('ScalePlayerDamage', 'TeamLimitedScale', function(ply, hitgroup, dmginfo)
if ply:Team() == TEAM_ADMIN then
return
end
if hitgroup == HITGROUP_HEAD then
dmginfo:ScaleDamage(1.5)
end
end)
Use the team constants defined by your gamemode rather than assuming a numeric team ID. If you are writing a reusable addon, check that a constant exists before comparing it, because team names and IDs differ between gamemodes.
Scale every kind of player damage
Bullet scaling does not automatically cover grenades, physics impacts, burns, fall damage, drowning, poison or scripted damage. For a global player rule, use GM:EntityTakeDamage and filter the entity before changing the damage.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Global player multiplier
hook.Add('EntityTakeDamage', 'GlobalPlayerDamageScale', function(target, dmginfo)
if not IsValid(target) or not target:IsPlayer() then
return
end
dmginfo:ScaleDamage(1.25)
end)
This increases every damage event delivered to players by 25 percent. It does not provide the same hit-group workflow as ScalePlayerDamage; use the player hook for bullet body-part rules and this hook for damage-type rules.
Apply different values by damage type
hook.Add('EntityTakeDamage', 'DamageTypeScale', function(target, dmginfo)
if not IsValid(target) or not target:IsPlayer() then
return
end
local damageType = dmginfo:GetDamageType()
if bit.band(damageType, DMG_BLAST) ~= 0 then
dmginfo:ScaleDamage(0.75)
elseif bit.band(damageType, DMG_BURN) ~= 0 then
dmginfo:ScaleDamage(1.5)
end
end)
The bit test matters because a damage event can carry more than one flag. Add or remove flags for the categories your rules actually need. Keep a bullet exception if you also use ScalePlayerDamage; otherwise the same bullet can be modified once by each hook. The safest arrangement is to let one script own bullet scaling and let the all-damage hook handle only non-bullet categories.
Do not infer a body part from a general damage event
An explosion or fire event can affect a player without a useful hit-group value. If your design requires head, chest or leg multipliers for non-bullet attacks, you need a separate detection system, such as the trace or scripted attack that created the damage, and must attach the intended category before applying it. A blanket EntityTakeDamage multiplier is not a substitute for hit-group data.
Adjust NPC damage separately
NPCs do not use the player hook. The counterpart is GM:ScaleNPCDamage, which is called with an NPC, hit group and damage information. NPC skill convars use the sk_npc_* naming scheme; examples include sk_npc_head. These values concern NPC damage handling and should not be expected to change damage dealt to human players.
Override an NPC hit group in Lua
hook.Add('ScaleNPCDamage', 'ExampleNPCScale', function(npc, hitgroup, dmginfo)
if hitgroup == HITGROUP_HEAD then
dmginfo:ScaleDamage(2.0)
elseif hitgroup == HITGROUP_LEFTLEG or hitgroup == HITGROUP_RIGHTLEG then
dmginfo:ScaleDamage(0.5)
end
end)
This script doubles head damage and halves leg damage for NPCs. The game and gamemode can also apply their own NPC skill values, so test the final result rather than assuming your multiplier is the only modifier.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteRank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Use NPC skill convars when appropriate
The sk_npc_* family is useful when you want a server configuration value instead of hard-coding every number. Names and available hit groups can vary with the game branch and NPC implementation. Set a value, restart or reload the relevant map if required by the gamemode, and verify against a known NPC. Do not substitute sk_player_head or similar player-looking names; their effect on Garry’s Mod player damage is not established.
Use a convar-based Workshop addon instead of Lua
The Workshop addon titled Another Player and NPC Damage Multiplier exposes separate convars for player and NPC damage, including names such as AnotherDMGMultiplier_Plr_Head and AnotherDMGMultiplier_Plr_Arm. Its listed defaults are a head multiplier of 2 and arm and leg multipliers of 0.25. The addon description also covers NPC damage, explosions and poison-headcrab damage.
Installation and configuration workflow
- Subscribe to the addon from the server’s Workshop collection or install it through the method used by your host.
- Restart the server and watch the server console for Lua errors or load failures.
- Use the exact convar names supplied by the addon in
server.cfgor your host’s server-configuration panel. - Change one value at a time, restart or reload as the addon requires, and test head, limb, NPC and explosion cases separately.
The listed defaults are not a guarantee for every release or gamemode. Exact behavior on a particular build has not been independently established here, so treat the addon as a convenience layer and keep a rollback copy of your configuration.
Sandbox toggles: what to verify before relying on them
Sandbox servers expose settings named sbox_plpldamage and sbox_godmode in some hosting guides. They are broad sandbox controls rather than a replacement for per-hit-group Lua. Documentation summaries disagree about the effective value of sbox_plpldamage, so do not publish or deploy a value based only on that summary.
On your own server, inspect the current convar with the server console, change it during a maintenance window, and test player-versus-player damage with two accounts. Check whether the gamemode reads or overwrites the value at startup. sbox_godmode can prevent damage altogether when enabled; it is therefore a protection switch, not a damage multiplier.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Why sk_player_* convars are a poor first choice
Some convar lists include familiar Half-Life 2-style names such as sk_player_head, sk_player_leg and sk_player_stomach. Their presence in a list does not prove that Garry’s Mod uses them to scale player damage. No reliable confirmation establishes that these convars change normal Garry’s Mod player damage, so build your system around the documented hooks instead.
Prevent conflicts with DarkRP, TTT and other gamemodes
Gamemodes can define their own damage hooks, load addons in a different order, or reset convars during initialization. Before installing a new rule:
- Search the gamemode and server addons for
ScalePlayerDamage,ScaleNPCDamageandEntityTakeDamage. - Check whether an existing hook already scales damage. Two multipliers of
2.0produce four times the original damage, not twice. - Place your script in
lua/autorun/server/only after confirming that the gamemode does not require a gamemode-file override. - Do not edit a workshop addon directly; place local overrides in your own addon so updates do not erase them.
- Record the intended final multiplier for each category and remove old test scripts before measuring results.
If the gamemode implements a GM:ScalePlayerDamage function rather than a hook callback, edit the gamemode’s supported configuration point or coordinate with its existing function. A second callback may not replace the first one in the way you expect.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteTest the result methodically
Damage changes are easy to misread when armor, spawn protection, NPC resistances or multiple hooks are active. Use a simple test plan on a private copy of the server.
- Make a backup of
server.cfg, addon files and the Lua script. - Start with one weapon that produces repeatable bullet damage and one target with no special protection.
- Record a baseline body-part hit for head, chest, arm and leg.
- Enable only one multiplier and repeat each hit several times.
- Test a non-bullet case such as an explosion or burn separately if you use
EntityTakeDamage. - Spawn an NPC and test its head and torso independently when using
ScaleNPCDamageorsk_npc_*. - Restart the server, reconnect, and repeat one test to confirm the setting survives startup.
For temporary diagnostics, add a server-console print inside your hook that reports the victim, hit group and incoming damage. Remove or disable verbose logging after verification so a busy server console does not become a performance or storage problem.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Troubleshooting common failures
The script never runs
Confirm the file is under lua/autorun/server/, uses the .lua extension, and is on the server rather than only in a client collection. Read the server console immediately after startup for syntax errors. A single missing parenthesis can prevent the file from loading.
Headshots change but explosions do not
That is expected when only ScalePlayerDamage is installed. Add a filtered EntityTakeDamage rule for the relevant damage type, and ensure your bullet path is not scaled twice.
Players change but NPCs do not
Player and NPC hooks are separate. Add ScaleNPCDamage logic or configure the applicable sk_npc_* values. Verify that the NPC actually reports the hit group you are testing.
The numbers are far from the multiplier
Look for armor, spawn protection, god mode, weapon-specific damage, NPC skill settings, another addon, or a gamemode hook. Disable competing modifiers one at a time and retest from a clean map.
The setting resets after a restart
Put persistent convars in the server’s startup configuration, check whether the gamemode writes them later, and confirm that the addon loads before the first player joins. If a gamemode resets a value, apply it from the gamemode’s documented initialization point.
Quick Recap
Recommended decision path
- For player bullet hit groups, start with
ScalePlayerDamageand a small server addon. - For one multiplier across all player damage, use
EntityTakeDamagewith explicit entity and damage-type filters. - For NPC-specific hit groups, use
ScaleNPCDamageand, where suitable,sk_npc_*convars. - Choose the Workshop addon only when convar administration is more important than code-level control, and verify its defaults on your build.
- Treat
sk_player_*and undocumented sandbox values as unverified until a controlled test proves their effect.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




