Grand opening25% off everything with FAM-261023-261025-UL4B9this weekendTick it in your cart Halloween Edition36 maps, limited runlimited runShop the drop

FREE TOOL · WEAPON BALANCE

weapons.meta editor for FiveM

Weapon balance goes wrong because the file lies about what matters. Damage looks like the important number and is not; TimeBetweenShots is. There are two headshot multipliers and they stack. The bars on the weapon wheel are connected to nothing. Start from the real values for 120 weapons, change what you mean to change, and watch damage per second and shots-to-kill move while you do.

120 weapons loaded from the set this site already parses out of the game's own weapons.meta files. Of the 35 fields here, 14 carry that weapon's real value and 21 do not — those are labelled reconstructed or derived on every single control, because the set we load does not carry them and we would rather say so than pretend.

WEAPON_CARBINERIFLE · stock values

32 damage · 237 per second · 7 shots to kill a 200-health ped · 13 through full armour

  • HeadShotDamageModifierPlayer The two headshot multipliers stack to 36×. That is in stock territory and it means any headshot is lethal. Pull both down together if you want headshots to matter without ending the fight.

Start from a real weapon

Group GROUP_RIFLE · damage type BULLET · fire type INSTANT_HIT · ammo AMMO_RIFLE

Or start from an intent

Damage at distance

What the three falloff fields actually do, against the damage figure above. Torso hit, no armour.

  • 0m32.0
  • 10m32.0
  • 20m32.0
  • 40m32.0
  • 60m26.4
  • 80m20.8
  • 100m15.2
  • 120m9.6

Damage

What one bullet takes off. Every number here is a multiplier on the base figure except the base figure itself, and the headshot numbers are the ones that decide how a fight actually plays.

from the dump

Health removed by one bullet landing on the torso at close range, before any of the modifiers below. A freemode ped has 200 health, of which 100 is the health bar most servers show, so 50 here is a four-shot kill on an unarmoured target.

reconstructed

Multiplier for a hit on an arm or a leg in single player. 0.5 in both of the real files we read, which is why limb shots feel so weak.

reconstructed

The same thing in multiplayer, and the one that matters for a FiveM server. It is a separate field because Rockstar wanted limb shots to hurt more online than off: 0.8 against 0.5.

reconstructed

Multiplier against a target wearing body armour. Lowering this is how you make armour worth buying; raising it is how you make a rifle punch through it.

reconstructed

Multiplier for a headshot on a player. The stock values are enormous — 18 on a rifle, 20 on a pistol — because the intent is a one-shot kill rather than a percentage boost. If you want headshots to be strong but survivable, this is the single number to change.

reconstructed

A second headshot multiplier that applies in multiplayer, stacked on the one above. 1.7 on the rifle we read and 2.0 on the pistol. Two fields doing the same job is exactly why weapons.meta tuning goes wrong: halve one and the other is still multiplying.

reconstructed

Blanket multiplier against players in multiplayer. Leave it at 1 and change Damage instead — this field is the right place only when you want the weapon to behave differently against players than against NPCs.

reconstructed

The same blanket multiplier against NPCs. Useful for making a weapon strong in roleplay against AI without making it dominant in player fights.

reconstructed

How much of the damage survives passing through a surface. 0.1 on the rifle we read. Raise it and cover stops being cover.

Range and damage falloff

Where the bullet stops existing, and where it stops hurting. Those are two different distances and conflating them is why a weapon can feel accurate and useless at the same time.

from the dump

Maximum distance in metres at which the weapon does anything at all. Beyond it the shot simply does not register. 120 for every bullet weapon in the set we loaded — Rockstar changes falloff rather than this.

from the dump

How far soft aim will grab a target. Lower it and controller players lose their free tracking; raise it and you have given them a lock across the street.

derived

The distance at which damage starts dropping. Below this you get the full figure. 40 on the pistol we read and 47.5 on the rifle, against a WeaponRange of 120 in both — roughly a third of the range.

derived

The distance at which the drop finishes and damage sits at the modifier below. Both real files set this equal to WeaponRange, so the falloff curve runs right out to the edge of the weapon.

reconstructed

What the damage is multiplied by once you are past the max distance. 0.3 in both real files: a rifle doing 32 at close range does about 10 at 120 metres. Set it to 1 and the weapon never falls off, which is the usual mistake in a "buffed guns" pack.

Accuracy and recoil

Spread is where the bullet goes; recoil is where the camera goes. Both are in degrees-ish units with no documented scale, so tune them by feel and change one at a time.

from the dump

The cone the bullet can land in. Zero is a laser. 1.5 is a stock pistol, 3 is a stock assault rifle, and the shotguns go much higher because the pellets are meant to scatter.

reconstructed

Spread multiplier while aiming down the sights. 0.5 in both real files, so careful aim halves the cone. This is the field that makes aiming feel like it does something.

from the dump

How far accuracy is allowed to degrade as you keep firing. Lower is tighter. The MK2 revolver runs 1.75 and an AP pistol 0.5, which is most of the difference between them in a sustained exchange.

reconstructed

How long the accumulated recoil error lasts before it starts to come back. 3.0 on the rifle, 3.3 on the pistol.

reconstructed

How fast it comes back. 1.0 in both real files. Raise it for a weapon that settles quickly between bursts.

reconstructed

How hard the camera kicks. Purely how the weapon feels — it does not move the bullet, it moves the view. 1.0 on the pistol we read and 0.333 on the rifle. Set it to 0 and the weapon fires like it is on a tripod.

Rate of fire, the clip and reloading

The timing fields. TimeBetweenShots is the one with real balance consequences, and it is a delay in seconds rather than a rate, so smaller is faster.

from the dump

Rounds per magazine before a reload. Note that a few stock weapons use a deliberately silly number — the stun gun and the tranquilliser both carry very large clips because the recharge timer is what actually limits them.

from the dump

Seconds between shots. 0.1 is 600 rounds a minute, 0.135 is about 444, 0.37 is a stock pistol. This is the most powerful number in the file: halving it doubles damage per second without touching the Damage field, which is why a "balanced" damage pass that ignores it does nothing.

from the dump

How many projectiles leave the barrel per trigger pull. 1 for everything except shotguns, where it is the pellet count.

reconstructed

How far apart the pellets of a batch land. Meaningless at BulletsInBatch 1, and the whole character of a shotgun when it is higher.

from the dump

Projectile speed in metres per second. 2000 for every bullet weapon in the set, because an instant-hit weapon does not really use it. It matters for a PROJECTILE fire type.

reconstructed

Playback rate of the reload animation. 1.0 is normal, 2.0 is twice as fast, 0.5 is half. This is how you make a weapon reload quickly without touching the timings below, and it is the field most "fast reload" packs actually change.

reconstructed

An explicit reload time in multiplayer. Both real files hold -1, which is the "use the animation" value. Give it a positive number only if you want to override the animation length outright.

reconstructed

The same thing in single player. Also -1 in both files. Harmless on a server; keep the pair consistent.

Impact force

How hard a hit shoves the thing it hits. Cosmetic in the sense that it does no damage, and very much not cosmetic in how a fight reads on screen.

reconstructed

The base impulse. 75 on the rifle we read.

reconstructed

The impulse specifically against a ped. 140 on the rifle. Crank it and shots visibly throw people around, which is either the effect you wanted or the bug report you are about to get.

The weapon wheel bars

Five integers that draw the bars on the weapon wheel and nothing else. They are not connected to the real numbers in any way, which is why a stock weapon can show a 26 damage bar while the Damage field says 25 — or 160 against a bar of 70.

from the dump

The damage bar, 0 to 100.

from the dump

The fire-rate bar, 0 to 100.

from the dump

The capacity bar. Usually near the clip size but rounded to something tidy.

from the dump

The accuracy bar, 0 to 100.

from the dump

The range bar, 0 to 100.

weapons.meta0 changed fields · 27 lines
<?xml version="1.0" encoding="UTF-8"?>
<CWeaponInfoBlob>
	<SlotNavigateOrder>
		<Item>
			<WeaponSlots>
				<Item>
					<OrderNumber value="500"/>
					<Entry>SLOT_CARBINERIFLE</Entry>
				</Item>
			</WeaponSlots>
		</Item>
	</SlotNavigateOrder>
	<Infos>
		<Item>
			<Infos>
				<Item type="CWeaponInfo">
					<Name>WEAPON_CARBINERIFLE</Name>
					<DamageType>BULLET</DamageType>
					<FireType>INSTANT_HIT</FireType>
					<Group>GROUP_RIFLE</Group>
					<AmmoInfo ref="AMMO_RIFLE"/>
				</Item>
			</Infos>
		</Item>
	</Infos>
	<Name>CARBINERIFLE</Name>
</CWeaponInfoBlob>
Read this before you ship the file above

A real CWeaponInfo entry has well over two hundred elements — the muzzle flash effects, the camera hashes, the first-person offsets, the attachment points, the weapon flags. This editor knows 35 of them, the ones with a balance consequence. We have not verified whether the game's mounter merges an incomplete entry over the stock one or replaces it outright, and the difference decides whether the missing two hundred fields keep their stock values or fall back to parser defaults.

So treat the output as a patch, not a product. Get the stock .meta for your weapon, open it, and replace the matching lines with these. The block below is exactly those lines with nothing around them, in the element order a real file uses, so it pastes straight in.

The 0 changed lines, to paste over the stock file

Element order matches the order these fields appear in a real weapons.meta, so you can walk down the stock file and replace in place.

<Name>WEAPON_CARBINERIFLE</Name>

The smaller approach: a component modifier

A multiplier that hangs off an attachment instead of rewriting the weapon. This nesting is copied from a real weaponcomponents.meta: the stock suppressors carry a CWeaponDamageModifier of 1.0 and the angled grip carries a CWeaponAccuracyModifier of 1.1, so the mechanism is real and in use. What it is multiplying, and how it combines with the weapon's own figure, is not documented anywhere we could find — so change it in small steps and test.

The modifier applies only while this component is fitted. A clip is the usual choice, because the default clip is always on — which makes it the closest thing to an always-on multiplier.

At exactly 1 the tool writes <DamageModifier type="NULL" />, which is what most stock components carry.

The stock angled grip uses 1.1. Also written as NULL when it is exactly 1.

weaponcomponents.meta

Mount it with data_file 'WEAPONCOMPONENTSINFO_FILE'. Smaller than a weapons.meta and it leaves every other field on the weapon alone.

<?xml version="1.0" encoding="UTF-8"?>
<CWeaponComponentInfoBlob>
	<Infos>
		<Item type="CWeaponComponentInfo">
			<Name>COMPONENT_CARBINERIFLE_CLIP_01</Name>
			<AccuracyModifier type="NULL" />
			<DamageModifier type="CWeaponDamageModifier">
				<DamageModifier value="1.250000" />
			</DamageModifier>
		</Item>
	</Infos>
</CWeaponComponentInfoBlob>
The third way: the native, client-side

_SET_WEAPON_DAMAGE_MODIFIER, hash 0x4757F00BC6323CFE. The native reference says: "Changes the weapon damage output by the given multiplier value. Does NOT need to be called every frame." The multiplier here is your Damage against the stock figure. No files to stream, and no restart to change it — but it is a game native, so it runs on the client and only for the client that ran it.

SetWeaponDamageModifier(`WEAPON_CARBINERIFLE`, 1)

CLIENT AND SERVER

What the server enforces: nothing

This is the section most weapon tutorials leave out, and it is the one that decides whether your balance pass is a design choice or a security assumption.

Where the numbers live

weapons.meta is mounted through data_file 'WEAPONINFO_FILE'. A data file is an entry in the resource manifest that references a file to load into the game's extra-content mounting system — and the game is the client. The file is downloaded to every player and mounted there. The FiveM server process is not a game instance; it holds no CWeaponInfo table, so there is nothing on the server to read Damage out of.

Which means every field on this page is client-side, without exception. Damage is computed on the shooting player's machine, from the file on that machine, and the outcome is networked. A player who has edited their copy of your resource has edited their weapon stats, and nothing in the file is capable of noticing.

That is not a reason to stop tuning weapons.meta. It is the right tool for how a weapon feels — the spread, the recoil, the rate, the falloff, the reload. It is simply the wrong tool for anything you need to be true. A damage cap, a weapon ban, a per-job restriction: those are server script work, written against what the server can actually observe, which is health changing and people dying.

client, always

The whole file

Damage, range, falloff, spread, recoil, clip size, fire rate, reload rate, force, the HUD bars. Read by the game on each player's machine.

Consequence: the file is a shared assumption, not a constraint. Everyone who has not tampered with it agrees on the numbers, which is exactly enough for balance and not nearly enough for security.

client, per player

The native

_SET_WEAPON_DAMAGE_MODIFIER, hash 0x4757F00BC6323CFE. The reference says it "changes the weapon damage output by the given multiplier value" and does not need calling every frame.

Consequence: it is a game native, so it runs in the client runtime and affects only the client that ran it. Excellent for a temporary change — a zone, an event, a job — with no file to stream and no restart. Not a control.

server, your code

The only real enforcement

A server script that watches outcomes. The health a player lost this tick against the most any weapon on your server can do. A kill with a weapon that player was never given. A damage rate no fire rate explains.

Consequence: this is the layer that holds, and it is the one nobody ships with their weapon pack. Build it against your own artifact's event surface, and verify what that surface is rather than copying a snippet.

HOW TO USE IT

A balance pass that does what you intended

The order matters. Change one axis at a time and read the two derived figures, because neither of them is a field you can edit.

  1. Load the weapon you are actually changing. Not a weapon like it. The stock numbers vary enormously inside a group — the revolver does 160 and the pistol 26 — so a multiplier that is right for one is wrong for the other.
  2. Decide whether you are changing power or feel. Power is Damage, TimeBetweenShots and the falloff. Feel is AccuracySpread, RecoilShakeAmplitude and AnimReloadRate. Mixing the two in one pass is why nobody can tell you afterwards which change caused the complaint.
  3. Watch shots-to-kill, not Damage. A freemode ped has 200 health. The figure at the top of the editor is the one your players will describe to you, and it moves in steps — a change from 51 to 49 damage is invisible, a change from 51 to 50 might not be.
  4. Check both headshot multipliers. They stack. If you pulled one down and the fight is still ending in one hit, the other one is still at 18 or 20.
  5. Look at the falloff curve before you leave the range group. A modifier of 1 means no falloff at all, which is the usual accident. The stock value in both real files we read is 0.3.
  6. Export the changed lines, not the whole file. Open the stock .meta for the weapon and replace the matching lines with the block this page gives you. The element order is the order a real file uses, so you can walk down it in place.

THE FIELDS

35 fields in six groups

Every control in the editor says where its starting value came from. Here is the same thing as a list, so you can see at a glance how much of a weapons.meta we can honestly fill in.

GroupFieldStarting valueWhat it does
DamageDamagethis weaponHealth removed by one bullet landing on the torso at close range, before any of the modifiers below. A freemode ped has 200 health, of which 100 is the health bar most servers show, so 50 here is a four-shot kill on an unarmoured target.
HitLimbsDamageModifierreconstructedMultiplier for a hit on an arm or a leg in single player. 0.5 in both of the real files we read, which is why limb shots feel so weak.
NetworkHitLimbsDamageModifierreconstructedThe same thing in multiplayer, and the one that matters for a FiveM server. It is a separate field because Rockstar wanted limb shots to hurt more online than off: 0.8 against 0.5.
LightlyArmouredDamageModifierreconstructedMultiplier against a target wearing body armour. Lowering this is how you make armour worth buying; raising it is how you make a rifle punch through it.
HeadShotDamageModifierPlayerreconstructedMultiplier for a headshot on a player. The stock values are enormous — 18 on a rifle, 20 on a pistol — because the intent is a one-shot kill rather than a percentage boost. If you want headshots to be strong but survivable, this is the single number to change.
NetworkHeadShotPlayerDamageModifierreconstructedA second headshot multiplier that applies in multiplayer, stacked on the one above. 1.7 on the rifle we read and 2.0 on the pistol. Two fields doing the same job is exactly why weapons.meta tuning goes wrong: halve one and the other is still multiplying.
NetworkPlayerDamageModifierreconstructedBlanket multiplier against players in multiplayer. Leave it at 1 and change Damage instead — this field is the right place only when you want the weapon to behave differently against players than against NPCs.
NetworkPedDamageModifierreconstructedThe same blanket multiplier against NPCs. Useful for making a weapon strong in roleplay against AI without making it dominant in player fights.
PenetrationreconstructedHow much of the damage survives passing through a surface. 0.1 on the rifle we read. Raise it and cover stops being cover.
Range and damage falloffWeaponRangethis weaponMaximum distance in metres at which the weapon does anything at all. Beyond it the shot simply does not register. 120 for every bullet weapon in the set we loaded — Rockstar changes falloff rather than this.
LockOnRangethis weaponHow far soft aim will grab a target. Lower it and controller players lose their free tracking; raise it and you have given them a lock across the street.
DamageFallOffRangeMinderivedThe distance at which damage starts dropping. Below this you get the full figure. 40 on the pistol we read and 47.5 on the rifle, against a WeaponRange of 120 in both — roughly a third of the range.
DamageFallOffRangeMaxderivedThe distance at which the drop finishes and damage sits at the modifier below. Both real files set this equal to WeaponRange, so the falloff curve runs right out to the edge of the weapon.
DamageFallOffModifierreconstructedWhat the damage is multiplied by once you are past the max distance. 0.3 in both real files: a rifle doing 32 at close range does about 10 at 120 metres. Set it to 1 and the weapon never falls off, which is the usual mistake in a "buffed guns" pack.
Accuracy and recoilAccuracySpreadthis weaponThe cone the bullet can land in. Zero is a laser. 1.5 is a stock pistol, 3 is a stock assault rifle, and the shotguns go much higher because the pellets are meant to scatter.
AccurateModeAccuracyModifierreconstructedSpread multiplier while aiming down the sights. 0.5 in both real files, so careful aim halves the cone. This is the field that makes aiming feel like it does something.
RecoilAccuracyMaxthis weaponHow far accuracy is allowed to degrade as you keep firing. Lower is tighter. The MK2 revolver runs 1.75 and an AP pistol 0.5, which is most of the difference between them in a sustained exchange.
RecoilErrorTimereconstructedHow long the accumulated recoil error lasts before it starts to come back. 3.0 on the rifle, 3.3 on the pistol.
RecoilRecoveryRatereconstructedHow fast it comes back. 1.0 in both real files. Raise it for a weapon that settles quickly between bursts.
RecoilShakeAmplitudereconstructedHow hard the camera kicks. Purely how the weapon feels — it does not move the bullet, it moves the view. 1.0 on the pistol we read and 0.333 on the rifle. Set it to 0 and the weapon fires like it is on a tripod.
Rate of fire, the clip and reloadingClipSizethis weaponRounds per magazine before a reload. Note that a few stock weapons use a deliberately silly number — the stun gun and the tranquilliser both carry very large clips because the recharge timer is what actually limits them.
TimeBetweenShotsthis weaponSeconds between shots. 0.1 is 600 rounds a minute, 0.135 is about 444, 0.37 is a stock pistol. This is the most powerful number in the file: halving it doubles damage per second without touching the Damage field, which is why a "balanced" damage pass that ignores it does nothing.
BulletsInBatchthis weaponHow many projectiles leave the barrel per trigger pull. 1 for everything except shotguns, where it is the pellet count.
BatchSpreadreconstructedHow far apart the pellets of a batch land. Meaningless at BulletsInBatch 1, and the whole character of a shotgun when it is higher.
Speedthis weaponProjectile speed in metres per second. 2000 for every bullet weapon in the set, because an instant-hit weapon does not really use it. It matters for a PROJECTILE fire type.
AnimReloadRatereconstructedPlayback rate of the reload animation. 1.0 is normal, 2.0 is twice as fast, 0.5 is half. This is how you make a weapon reload quickly without touching the timings below, and it is the field most "fast reload" packs actually change.
ReloadTimeMPreconstructedAn explicit reload time in multiplayer. Both real files hold -1, which is the "use the animation" value. Give it a positive number only if you want to override the animation length outright.
ReloadTimeSPreconstructedThe same thing in single player. Also -1 in both files. Harmless on a server; keep the pair consistent.
Impact forceForcereconstructedThe base impulse. 75 on the rifle we read.
ForceHitPedreconstructedThe impulse specifically against a ped. 140 on the rifle. Crank it and shots visibly throw people around, which is either the effect you wanted or the bug report you are about to get.
The weapon wheel barsHudDamagethis weaponThe damage bar, 0 to 100.
HudSpeedthis weaponThe fire-rate bar, 0 to 100.
HudCapacitythis weaponThe capacity bar. Usually near the clip size but rounded to something tidy.
HudAccuracythis weaponThe accuracy bar, 0 to 100.
HudRangethis weaponThe range bar, 0 to 100.

What the three labels mean. This weapon is the real figure out of the game's own weapons.meta for the weapon you selected. Reconstructed means the set we load does not carry that field, so it starts at the value two complete real .meta files agree on — which is a sensible starting point and is not that weapon's original. Derived means we worked it out: DamageFallOffRangeMax starts equal to WeaponRange because both real files do that, and DamageFallOffRangeMin starts at a third of the range because the two attested pairs are 40 of 120 and 47.5 of 120. If a field matters to you, read it out of the stock file for your weapon rather than trusting our default.

THE SMALLER WAY

A component modifier instead of a whole weapon

Verified from a real weaponcomponents.meta: components carry their own damage and accuracy multipliers, in this exact nesting.

What the stock components actually contain

Every component entry carries an AccuracyModifier and a DamageModifier, and almost all of them are type="NULL". The exceptions are the interesting part. The angled grip COMPONENT_AT_AR_AFGRIP carries an AccuracyModifier of type CWeaponAccuracyModifier with a value of 1.1. The five stock suppressors — the pistol pair, the rifle pair and the sniper one — carry a DamageModifier of type CWeaponDamageModifier with a value of exactly 1.0. Scope components carry a RecoilShakeAmplitude, which is the one recoil field that appears at component level at all.

So the mechanism is real and shipped. Attach a multiplier to a component and it applies while that component is fitted — and because the default clip is always fitted, a modifier on COMPONENT_X_CLIP_01 is about as close to an always-on multiplier as this route gets. The appeal is the blast radius: you are editing two numbers in a small file rather than two hundred in a large one.

The caveat, stated plainly: nothing we could find documents what those multipliers multiply, or how a component's 1.1 combines with the weapon's own figure. The stock values being exactly 1.0 on the suppressors suggests they are there to be overridden rather than to do anything by default. Move in small steps, test in game, and do not assume it composes the way you would write it.

Item typeWhat it is
CWeaponComponentInfoThe plain case — grips, rails, stocks. The one that carries a bare AccuracyModifier.
CWeaponComponentClipInfoA magazine. Carries its own ClipSize and AmmoInfo.
CWeaponComponentScopeInfoA sight. This is where RecoilShakeAmplitude shows up on real components.
CWeaponComponentSuppressorInfoA suppressor or muzzle brake. The stock ones carry a DamageModifier of exactly 1.0.
CWeaponComponentFlashLightInfoA torch or laser.
CWeaponComponentVariantModelInfoA finish or a camo. Changes the look, nothing else.

All six of those type names were read out of a real weaponcomponents.meta or a published component dump, so they are spellings the game accepts. The root element is CWeaponComponentInfoBlob, with a <Data> section holding CWeaponSwapData and CWeaponComponentReloadData items and an <Infos> section holding the components themselves. Mount it with data_file 'WEAPONCOMPONENTSINFO_FILE'.

QUESTIONS

About weapons.meta and weapon balance

Which weapons.meta fields does the server actually enforce?
None of them. weapons.meta is mounted through WEAPONINFO_FILE, which is a data_file in a resource — the file is downloaded to each client and mounted by the game's extra-content system on that client. The FiveM server process is not a game instance: it has no CWeaponInfo table, so there is nothing on the server to read the numbers. Every value in the file is therefore client-side by construction, which has one blunt consequence: a player running a modified copy of your resource has modified weapon stats, and nothing in the file prevents it. Treat weapons.meta as game feel, not as a rule. Anything you need to be a rule — a damage cap, a weapon ban, a headshot limit — has to be enforced by your own server script against what it observes happening, not by the numbers you shipped.
So how do I stop someone editing the file and doing 500 damage?
You cannot stop the edit. What you can do is notice the result. The only thing the server sees is the outcome: a player's health changing, a death. So the enforcement that actually works is a server-side script watching health deltas and acting on ones that are impossible — more damage in one tick than any weapon on your server can do, a kill from a weapon the player was never issued, a rate of damage that no fire rate explains. That is a different kind of work from editing a .meta, and it is the only kind that holds. Be careful what you build it on: FiveM gives the server hooks for a handful of net events, the set changes between artifact versions, and the current event reference does not list a weapon-damage one — so do not design around the assumption that it does without checking your own artifact first.
Which single field changes a fight the most?
TimeBetweenShots, not Damage. It is a delay in seconds, so it is inverted — 0.1 is 600 rounds a minute and 0.2 is 300 — and halving it doubles damage per second without the Damage number moving at all. A great many "balanced weapon packs" lower Damage by 20% and leave TimeBetweenShots alone, which does roughly nothing, or raise the fire rate as a feel change and accidentally double the weapon's output. The editor on this page shows damage per second and shots-to-kill as you drag, because those two figures are what a player experiences and neither of them is a field in the file.
Why are there two headshot multipliers?
Because Rockstar wanted different behaviour in single player and online. HeadShotDamageModifierPlayer is the base one and it is enormous — 18 on an assault rifle, 20 on a pistol — because the intent is a one-shot kill rather than a bonus. NetworkHeadShotPlayerDamageModifier then multiplies again in multiplayer, at 1.7 or 2.0. They stack, so a headshot pass that halves one of them and leaves the other is still giving you a 9× or 10× multiplier. The same split exists for limb damage: HitLimbsDamageModifier at 0.5 and NetworkHitLimbsDamageModifier at 0.8, and on a FiveM server it is the Network one that is in play.
What is the damage falloff actually doing?
Three fields describe one curve. Inside DamageFallOffRangeMin you get the full Damage figure. Past DamageFallOffRangeMax you get Damage multiplied by DamageFallOffModifier, and between the two it slides from one to the other. The stock values in the two real files we read are a modifier of 0.3 with the max set equal to WeaponRange, so a rifle doing 32 up close does about 10 at the edge of its range. The failure mode is setting the modifier to 1: the weapon then does full damage at every distance, which turns every rifle into a sniper and is almost never what somebody meant when they wrote "buffed". The page draws the curve as you drag so you can see it rather than imagine it.
Is the exported file complete enough to ship?
Not on its own, and the page says so where you cannot miss it. A real CWeaponInfo entry has well over two hundred elements: the muzzle flash effects, the camera hashes, the first-person offsets, the attachment points, the weapon flags. This editor covers the fields with a balance consequence, which is a few dozen. We have not been able to verify whether the game's mounter merges an incomplete entry over the stock one or replaces it wholesale — and the difference decides whether the other two hundred fields keep their values or fall back to parser defaults. So the output is a patch. Get the stock .meta for your weapon, open it, and replace the matching lines. The page gives you those lines on their own, in the element order a real file uses, for exactly that.
What is the component modifier approach, and when is it better?
Real GTA V components carry their own multipliers. The stock suppressors hold a CWeaponDamageModifier of 1.0 and the angled grip holds a CWeaponAccuracyModifier of 1.1, nested inside the component entry in weaponcomponents.meta. So you can ship a tiny file that attaches a multiplier to a component rather than rewriting the weapon, and because the default clip is always fitted, a modifier on the default clip is close to an always-on multiplier. It is a much smaller change with a much smaller blast radius — you are not touching the two hundred fields you did not mean to touch. The honest caveat: nothing we could find documents what those multipliers are multiplying or how they combine with the weapon's own figure, so move in small steps and test in game.
Why does the weapon wheel show a different number from the Damage field?
Because the five Hud fields are decoration. HudDamage, HudSpeed, HudCapacity, HudAccuracy and HudRange are integers from 0 to 100 that draw the bars on the weapon wheel and are connected to nothing. The stock files prove it: WEAPON_REVOLVER carries Damage 160 and HudDamage 70, and WEAPON_APPISTOL carries Damage 25 with HudDamage 26. If you change the real numbers and leave the bars alone, your players see the stock bars. If you change only the bars, you have changed nothing but the picture.

FROM THE SHOP

What we build when it is not free

The free tools and the paid work come out of the same place. These are the lines closest to what this page is about.

Grand opening: 25% off every product with FAM-261023-261025-UL4B9, until 25 October. It is applied at checkout.

A pistol model from the weapon library, rendered with custom artwork on the slide
Weapon skins

Weapon skins for FiveM

Put your own artwork on any model in the library and export it as its own resource, inventory icons cut to match. The first one costs nothing.

Free538 weapon modelsOpen the weapon library
The Onyx weapon wheel design in polished black glass, drawn over the game HUD
Weapon wheels

Weapon wheels for FiveM

A native hud.gfx replacement rather than an NUI overlay, so it costs no frame time. Colours, shape and motion are yours before you pay.

From $15.0050 wheel designsBrowse the wheels
Orange EMBER FiveM-compatible minimap for GTA 5 — google style — showing Los Santos street detail
Minimaps

Minimaps for FiveM

Twelve colour palettes across three base map styles, each one a drop-in resource. Add your logo and your district labels in the editor.

From $8.0036 finished mapsBrowse the minimaps