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

FREE TOOL · WEAPONS.META

FiveM weapon list, with the numbers behind it

Every weapon a ped can hold, with the damage, range, clip size and fire rate the game actually ships — not a wiki’s estimate of them. Each row carries the weapon hash in all three forms, the weapon group GetWeapontypeGroup returns, the ammo type, every component the weapon will accept, and its tint indices. Search it, filter it by group, sort it by damage or range, and copy the call you came for.

  • 120weapons
  • 18weapon groups
  • 430components
  • 599attachment slots
  • 37ammo types
  • 4tint tables

Damage, range, clip size and the attach-point lists are read straight out of the game’s own weapons.meta files — the base weapons.meta plus one file per DLC weapon. Labels, component hashes and tint names come from the published GTA V data dumps. Weapon names, models and weapon hashes are the same list our weapon hash reference uses, so a weapon is called the same thing everywhere on this site. Group and ammo-type hashes we compute ourselves with the engine’s own Jenkins one-at-a-time function.

120 of 120

WeaponGroupDamageRangeClipRounds/minAmmo typePartsTints
WEAPON_HEAVYSNIPER_MK2Heavy Sniper Mk IISniperGROUP_SNIPER2301,500 m650AMMO_SNIPER2633
WEAPON_MARKSMANPISTOLMarksman PistolPistolGROUP_PISTOL220120 m124AMMO_PISTOL18
WEAPON_HEAVYSNIPERHeavy SniperSniperGROUP_SNIPER2161,500 m650AMMO_SNIPER48
WEAPON_REVOLVER_MK2Heavy Revolver Mk IIPistolGROUP_PISTOL200120 m645AMMO_PISTOL2033
WEAPON_GADGETPISTOLPerico PistolPistolGROUP_PISTOL195120 m148AMMO_PISTOL18
WEAPON_MUSKETMusketSniperGROUP_SNIPER165250 m138AMMO_SHOTGUN18
WEAPON_REVOLVERHeavy RevolverPistolGROUP_PISTOL160120 m633AMMO_PISTOL48
WEAPON_NAVYREVOLVERNavy RevolverPistolGROUP_PISTOL160120 m645AMMO_PISTOL11
WEAPON_HEAVYSHOTGUNHeavy ShotgunShotgunGROUP_SHOTGUN11750 m6200AMMO_SHOTGUN68
WEAPON_PRECISIONRIFLEPrecision RifleSniperGROUP_SNIPER1011,500 m1038AMMO_SNIPER18
WEAPON_REMOTESNIPERRemote SniperNo group—1015,000 m10150AMMO_SNIPER_REMOTE08
WEAPON_SNIPERRIFLESniper RifleSniperGROUP_SNIPER1011,500 m1038AMMO_SNIPER58
WEAPON_DOUBLEACTIONDouble-Action RevolverPistolGROUP_PISTOL81120 m6129AMMO_PISTOL11
WEAPON_MARKSMANRIFLE_MK2Marksman Rifle Mk IISniperGROUP_SNIPER751,000 m8200AMMO_SNIPER3233
WEAPON_MARKSMANRIFLEMarksman RifleSniperGROUP_SNIPER651,000 m8200AMMO_SNIPER88
WEAPON_PISTOL50Pistol .50PistolGROUP_PISTOL51120 m9115AMMO_PISTOL58
WEAPON_COMBATMG_MK2Combat MG Mk IIMachine gunGROUP_MG47120 m100556AMMO_MG3033
WEAPON_COMBATMGCombat MGMachine gunGROUP_MG45120 m100556AMMO_MG68
WEAPON_RAYCARBINEUnholy HellbringerMachine gunGROUP_MG45120 m9,999556AMMO_MG07
WEAPON_ASSAULTRIFLE_MK2Assault Rifle Mk IIRifleGROUP_RIFLE40120 m30380AMMO_RIFLE3233
WEAPON_HEAVYPISTOLHeavy PistolPistolGROUP_PISTOL40120 m18143AMMO_PISTOL58
WEAPON_MGMGMachine gunGROUP_MG40120 m54438AMMO_MG48
WEAPON_SAWNOFFSHOTGUNSawed-Off ShotgunShotgunGROUP_SHOTGUN4040 m860AMMO_SHOTGUN28
WEAPON_BATTLERIFLEBattle RifleRifleGROUP_RIFLE38120 m20444AMMO_RIFLE38
WEAPON_MILITARYRIFLEMilitary RifleRifleGROUP_RIFLE37.5120 m30462AMMO_RIFLE68
WEAPON_PISTOLXM3WM 29 PistolPistolGROUP_PISTOL35120 m12180AMMO_PISTOL28
WEAPON_TACTICALRIFLEService CarbineRifleGROUP_RIFLE34.75120 m30444AMMO_RIFLE58
WEAPON_ADVANCEDRIFLEAdvanced RifleRifleGROUP_RIFLE34120 m30500AMMO_RIFLE68
WEAPON_COMPACTRIFLECompact RifleRifleGROUP_RIFLE34120 m30380AMMO_RIFLE38
WEAPON_GUSENBERGGusenberg SweeperMachine gunGROUP_MG34120 m30556AMMO_MG28
WEAPON_HEAVYRIFLEHeavy RifleRifleGROUP_RIFLE34120 m30380AMMO_RIFLE88
WEAPON_VINTAGEPISTOLVintage PistolPistolGROUP_PISTOL34120 m7150AMMO_PISTOL38
WEAPON_BULLPUPRIFLE_MK2Bullpup Rifle Mk IIRifleGROUP_RIFLE33120 m30500AMMO_RIFLE3233
WEAPON_CARBINERIFLE_MK2Carbine Rifle Mk IIRifleGROUP_RIFLE33120 m30444AMMO_RIFLE3233
WEAPON_SPECIALCARBINE_MK2Special Carbine Mk IIRifleGROUP_RIFLE32.5120 m30444AMMO_RIFLE3233
WEAPON_ASSAULTSHOTGUNAssault ShotgunShotgunGROUP_SHOTGUN3240 m8200AMMO_SHOTGUN58
WEAPON_BULLPUPRIFLEBullpup RifleRifleGROUP_RIFLE32120 m30500AMMO_RIFLE88
WEAPON_CARBINERIFLECarbine RifleRifleGROUP_RIFLE32120 m30444AMMO_RIFLE108
WEAPON_CERAMICPISTOLCeramic PistolPistolGROUP_PISTOL32120 m12162AMMO_PISTOL38
WEAPON_PISTOL_MK2Pistol Mk IIPistolGROUP_PISTOL32120 m12162AMMO_PISTOL3233
WEAPON_PUMPSHOTGUN_MK2Pump Shotgun Mk IIShotgunGROUP_SHOTGUN3240 m875AMMO_SHOTGUN2233
WEAPON_SPECIALCARBINESpecial CarbineRifleGROUP_RIFLE32120 m30444AMMO_RIFLE98
WEAPON_COMBATSHOTGUNCombat ShotgunShotgunGROUP_SHOTGUN3140 m6240AMMO_SHOTGUN38
WEAPON_ASSAULTRIFLEAssault RifleRifleGROUP_RIFLE30120 m30380AMMO_RIFLE98
WEAPON_DBSHOTGUNDouble Barrel ShotgunShotgunGROUP_SHOTGUN3030 m2600AMMO_SHOTGUN18
WEAPON_MINIGUNMinigunHeavyGROUP_HEAVY30120 m∞3,000AMMO_MINIGUN18
WEAPON_RAILGUNRailgunHeavyGROUP_HEAVY30500 m130AMMO_RAILGUN18
WEAPON_SNSPISTOL_MK2SNS Pistol Mk IIPistolGROUP_PISTOL30120 m6162AMMO_PISTOL3233
WEAPON_RAYMINIGUNWidowmakerHeavyGROUP_HEAVY30120 m∞3,000AMMO_MINIGUN17
WEAPON_PUMPSHOTGUNPump ShotgunShotgunGROUP_SHOTGUN2940 m875AMMO_SHOTGUN68
WEAPON_COMBATPDWCombat PDWSMGGROUP_SMG28120 m30444AMMO_SMG68
WEAPON_SNSPISTOLSNS PistolPistolGROUP_PISTOL28120 m6162AMMO_PISTOL48
WEAPON_COMBATPISTOLCombat PistolPistolGROUP_PISTOL27120 m12162AMMO_PISTOL58
WEAPON_MACHINEPISTOLMachine PistolSMGGROUP_SMG27120 m12508AMMO_SMG48
WEAPON_AUTOSHOTGUNSweeper ShotgunShotgunGROUP_SHOTGUN2740 m10163AMMO_SHOTGUN18
WEAPON_PISTOLPistolPistolGROUP_PISTOL26120 m12162AMMO_PISTOL68
WEAPON_APPISTOLAP PistolPistolGROUP_PISTOL25120 m18600AMMO_PISTOL68
WEAPON_RAILGUNXM3RailgunHeavyGROUP_HEAVY25500 m130AMMO_RAILGUNXM318
WEAPON_SMG_MK2SMG Mk IISMGGROUP_SMG25120 m30508AMMO_SMG3133
WEAPON_TECPISTOLTactical SMGSMGGROUP_SMG25120 m33522AMMO_SMG48
WEAPON_ASSAULTSMGAssault SMGSMGGROUP_SMG23120 m30462AMMO_SMG68
WEAPON_MINISMGMini SMGSMGGROUP_SMG22120 m20652AMMO_SMG28
WEAPON_SMGSMGSMGGROUP_SMG22120 m30508AMMO_SMG88
WEAPON_MICROSMGMicro SMGSMGGROUP_SMG21120 m16600AMMO_SMG78
WEAPON_STUNGUN_MPStun GunStun gunGROUP_STUNGUN2011 m∞5AMMO_STUNGUN08
WEAPON_BULLPUPSHOTGUNBullpup ShotgunShotgunGROUP_SHOTGUN1440 m1460AMMO_SHOTGUN48
WEAPON_FLAREGUNFlare GunPistolGROUP_PISTOL10120 m1143AMMO_FLAREGUN18
WEAPON_RAYPISTOLUp-n-AtomizerPistolGROUP_PISTOL10120 m130AMMO_RAYPISTOL17
WEAPON_STUNGUNStun GunStun gunGROUP_STUNGUN111 m∞21AMMO_STUNGUN08
WEAPON_TRANQUILIZERStun GunTranquilizerGROUP_TRANQILIZER111 m∞21AMMO_TRANQUILIZER08
WEAPON_ACIDPACKAGEAcid PackageThrownGROUP_THROWN030 m1—AMMO_ACIDPACKAGE08
WEAPON_DAGGERAntique Cavalry DaggerMeleeGROUP_MELEE01.6 m0——08
WEAPON_BALLBallThrownGROUP_THROWN040 m1—AMMO_BALL08
WEAPON_BATBaseball BatMeleeGROUP_MELEE01.6 m0——08
WEAPON_BATTLEAXEBattle AxeMeleeGROUP_MELEE01.6 m0——08
WEAPON_BOTTLEBottleMeleeGROUP_MELEE01.6 m0——08
WEAPON_BZGASBZ GasThrownGROUP_THROWN030 m1—AMMO_BZGAS08
WEAPON_CANDYCANECandy CaneMeleeGROUP_MELEE01.6 m0——08
WEAPON_EMPLAUNCHERCompact EMP LauncherHeavyGROUP_HEAVY0150 m149AMMO_EMPLAUNCHER18
WEAPON_COMPACTLAUNCHERCompact Grenade LauncherHeavyGROUP_HEAVY0150 m149AMMO_GRENADELAUNCHER18
WEAPON_CROWBARCrowbarMeleeGROUP_MELEE01.6 m0——08
WEAPON_FERTILIZERCANFertilizer CanPetrol canGROUP_PETROLCAN050 m4,500—AMMO_FERTILIZERCAN08
WEAPON_FIREEXTINGUISHERFire ExtinguisherFire extinguisherGROUP_FIREEXTINGUISHER050 m2,000—AMMO_FIREEXTINGUISHER08
WEAPON_FIREWORKFirework LauncherHeavyGROUP_HEAVY085 m175AMMO_FIREWORK18
WEAPON_FLAREFlareThrownGROUP_THROWN024 m1—AMMO_FLARE08
WEAPON_FLASHLIGHTFlashlightMeleeGROUP_MELEE010 m0——18
WEAPON_GOLFCLUBGolf ClubMeleeGROUP_MELEE01.6 m0——08
WEAPON_GRENADEGrenadeThrownGROUP_THROWN030 m1—AMMO_GRENADE08
WEAPON_GRENADELAUNCHERGrenade LauncherHeavyGROUP_HEAVY0150 m1049AMMO_GRENADELAUNCHER48
WEAPON_HACKINGDEVICEHacking DeviceHacking deviceGROUP_HACKINGDEVICE050 m17180—08
WEAPON_HAMMERHammerMeleeGROUP_MELEE01.6 m0——08
WEAPON_HATCHETHatchetMeleeGROUP_MELEE01.6 m0——08
WEAPON_HAZARDCANHazardous Jerry CanPetrol canGROUP_PETROLCAN050 m4,500—AMMO_HAZARDCAN08
WEAPON_HOMINGLAUNCHERHoming LauncherHeavyGROUP_HEAVY0300 m175AMMO_HOMINGLAUNCHER18
WEAPON_PASSENGER_ROCKETInvalidHeavyGROUP_HEAVY085 m175AMMO_RPG18
WEAPON_AIRSTRIKE_ROCKETInvalidHeavyGROUP_HEAVY085 m175AMMO_RPG18
WEAPON_VEHICLE_ROCKETInvalidHeavyGROUP_HEAVY085 m175AMMO_RPG18
WEAPON_PETROLCANJerry CanPetrol canGROUP_PETROLCAN050 m4,500—AMMO_PETROLCAN08
WEAPON_KNIFEKnifeMeleeGROUP_MELEE01.6 m0——08
WEAPON_KNUCKLEKnuckle DusterUnarmedGROUP_UNARMED030 m0——108
WEAPON_MACHETEMacheteMeleeGROUP_MELEE01.6 m0——08
WEAPON_METALDETECTORMetal DetectorMetal detectorGROUP_METALDETECTOR050 m17180—08
WEAPON_MOLOTOVMolotovThrownGROUP_THROWN030 m1—AMMO_MOLOTOV08
WEAPON_NIGHTSTICKNightstickMeleeGROUP_MELEE01.6 m0——08
WEAPON_PIPEBOMBPipe BombThrownGROUP_THROWN030 m1—AMMO_PIPEBOMB08
WEAPON_WRENCHPipe WrenchMeleeGROUP_MELEE01.6 m0——08
WEAPON_POOLCUEPool CueMeleeGROUP_MELEE01.6 m0——08
WEAPON_PROXMINEProximity MineThrownGROUP_THROWN030 m1—AMMO_PROXMINE08
WEAPON_RPGRPGHeavyGROUP_HEAVY085 m175AMMO_RPG18
WEAPON_STINGERRPGHeavyGROUP_HEAVY085 m175AMMO_STINGER18
WEAPON_SNOWBALLSnowballThrownGROUP_THROWN040 m1—AMMO_SNOWBALL08
WEAPON_SNOWLAUNCHERSnowball LauncherHeavyGROUP_HEAVY0150 m2024AMMO_SNOWLAUNCHER08
WEAPON_STICKYBOMBSticky BombThrownGROUP_THROWN030 m1—AMMO_STICKYBOMB08
WEAPON_STONE_HATCHETStone HatchetMeleeGROUP_MELEE01.6 m0——08
WEAPON_SWITCHBLADESwitchbladeMeleeGROUP_MELEE01.6 m0——38
WEAPON_SMOKEGRENADETear GasThrownGROUP_THROWN030 m1—AMMO_SMOKEGRENADE08
WEAPON_GRENADELAUNCHER_SMOKETear Gas LauncherHeavyGROUP_HEAVY025 m1049AMMO_GRENADELAUNCHER_SMOKE38
WEAPON_STUNRODThe ShockerMeleeGROUP_MELEE01.6 m05—08
WEAPON_UNARMEDUnarmedUnarmedGROUP_UNARMED030 m0——08
WEAPON_DIGISCANNERWEAPON_DIGISCANNERDigiscannerGROUP_DIGISCANNER050 m17180—08

HOW TO USE IT

Give a weapon, attach the parts, set the tint

Three natives, and an order they have to run in. Get the order wrong and the engine says nothing at all.

GiveWeaponToPed takes a ped, a weapon hash, an ammo count and two booleans — whether the weapon is hidden, and whether to force it into the ped’s hands. That is the easy one. The two that cost people an afternoon are the components and the tints, for the same two reasons every time.

A component is given after the weapon, never before

GiveWeaponComponentToPed attaches a part to a weapon the ped already owns. Call it on a ped that does not hold the weapon yet and nothing happens — no error, no warning, no return value to check. The attachment simply never appears, which looks exactly like a wrong component name, so that is where people go looking. The fix is the order: weapon first, component second. If your loadout code builds a list and loops it, give the weapon before the loop.

The same silence covers the other common case: giving a component to a weapon that does not take it. COMPONENT_AT_AR_SUPP fits the assault rifles and nothing else. The table above lists only the components each weapon actually declares an attach point for, which is the part a generic component list cannot tell you.

The component hash is not the component name

The name is a string. The native wants a number — the Jenkins one-at-a-time hash of that string, which GetHashKey works out at runtime. Lua will pass the string itself to the native without complaint, the call fails quietly, and nothing in the console mentions it. Every component in the table shows both, so you can hard-code the number if you would rather not hash at runtime.

client.lua — a full loadout, in the right order

Weapon, then components, then tint, then put it in their hands.

RegisterCommand('loadout', function()
    local ped = PlayerPedId()
    local weapon = GetHashKey('WEAPON_CARBINERIFLE')

    GiveWeaponToPed(ped, weapon, 250, false, true)

    for _, part in ipairs({
        'COMPONENT_CARBINERIFLE_CLIP_02',
        'COMPONENT_AT_SCOPE_MEDIUM',
        'COMPONENT_AT_AR_SUPP',
    }) do
        GiveWeaponComponentToPed(ped, weapon, GetHashKey(part))
    end

    SetPedWeaponTintIndex(ped, weapon, 5)
    SetCurrentPedWeapon(ped, weapon, true)
end, false)

Tints are indices, not colours

SetPedWeaponTintIndex takes a number that indexes the weapon’s own tint table. There is no RGB anywhere in this: a tint is a texture the game already has, and the index picks which one. Expand any row above and every index is there with its name and a copy button.

There are only 4 distinct tables across all 120 weapons. Almost everything points at the standard eight — black, green, gold, pink, army, LSPD, orange, platinum. The Mk II weapons use a 33-entry table, the alien weapons a seven-entry one, and two revolvers declare a single black entry. The table a weapon points at is tint-spec data from the dump rather than a promise that the game draws a finish for it — a knife points at the standard eight the same way a pistol does, and only the ones Ammu-Nation sells a finish for have anything to show.

A camo is a different thing wearing a similar name. Mk II camos are components: you give them with GiveWeaponComponentToPed like a scope, then choose the colourway on top with SetPedWeaponComponentTintIndex. That is why the Mk II rows carry a long list of COMPONENT_..._CAMO entries as well as a tint table. We do not print names for those camos — our sources repeat the same English label across every camo index of a weapon, and a wrong name is worse than none.

client.lua — reading back what the ped is holding

The engine's own getters, for when you need to check rather than set.

local ped = PlayerPedId()
local ok, weapon = GetCurrentPedWeapon(ped, true)

if ok and IsWeaponValid(weapon) then
    print(('group %s · clip %d · tint %d'):format(
        GetWeapontypeGroup(weapon),
        GetWeaponClipSize(weapon),
        GetPedWeaponTintIndex(ped, weapon)
    ))

    print('damage', GetWeaponDamage(weapon, 0))

    if HasPedGotWeaponComponent(ped, weapon, GetHashKey('COMPONENT_AT_AR_SUPP')) then
        print('suppressed')
    end
end

READING THE COLUMNS

What each number actually is

Three of these columns mean something slightly different from what their name suggests.

Damage

The meta’s own Damage value, per bullet, before any multiplier. It is 0 for 50 of the 120 entries, and that is not a gap in our data — explosive weapons do their damage through the explosion tables and melee weapons through the melee tables, so the number is not stored on the weapon at all. Cfx.re documents the same thing from the other direction: GetWeaponDamage returns nothing useful for the melee and explosive groups. The hardest hitter that does carry a figure is Heavy Sniper Mk II at 230.

Range

WeaponRange in metres: how far the weapon will damage anything. It is not the scope range and not the accuracy falloff. The longest in the file is Remote Sniper at 5,000 m, which is a mission weapon rather than anything you buy — the snipers you can carry stop at 1,500, and a knife reaches 1.6. Where the weapon also has a LockOnRange, you will find it in the expanded row, because for a homing launcher that is the number that matters.

Rounds per minute

Ours, worked out rather than copied: sixty divided by the meta’s TimeBetweenShots. It is the engine’s theoretical ceiling, so treat it as a comparison between weapons rather than a figure you could count in game — spin-up on a minigun, the pump on a shotgun and every reload push the real rate lower. The raw interval in seconds is in the expanded row if you would rather use that.

Clip size

Rounds in the default clip, from ClipSize. An extended clip is a component, so it is in the attachment list rather than this column. Three weapons — the two stun guns and the tranquilizer — carry a clip size of 2,104,529,083 in Rockstar’s own file, which is the game’s way of saying it never empties. We show ∞ for those rather than pretend the number means something.

REFERENCE

Weapon groups and ammo types, with their hashes

GetWeapontypeGroup returns the hash of the group string, not an index — these are the numbers it can give back.

GroupNameHashWeapons
PistolGROUP_PISTOL416,676,50319
MeleeGROUP_MELEE3,566,412,24418
HeavyGROUP_HEAVY2,725,924,76716
RifleGROUP_RIFLE970,310,03414
ThrownGROUP_THROWN1,548,507,26711
ShotgunGROUP_SHOTGUN860,033,9459
SMGGROUP_SMG3,337,201,0938
SniperGROUP_SNIPER3,082,541,0957
Machine gunGROUP_MG1,159,398,5885
Petrol canGROUP_PETROLCAN1,595,662,4603
Stun gunGROUP_STUNGUN690,389,6022
UnarmedGROUP_UNARMED2,685,387,2362
DigiscannerGROUP_DIGISCANNER3,539,449,1951
Fire extinguisherGROUP_FIREEXTINGUISHER4,257,178,9881
Hacking deviceGROUP_HACKINGDEVICE1,175,761,9401
Metal detectorGROUP_METALDETECTOR3,759,491,3831
No group—01
TranquilizerGROUP_TRANQILIZER75,159,4411

GROUP_TRANQILIZER is spelled that way in the game’s file. Hash it as written or it will not match. One weapon declares no group at all, so GetWeapontypeGroup has nothing to return for it.

Ammo typeHashWeapons
AMMO_ACIDPACKAGE1,003,730,9301
AMMO_BALL4,287,981,1581
AMMO_BZGAS2,608,103,0761
AMMO_EMPLAUNCHER4,057,942,2051
AMMO_FERTILIZERCAN1,963,932,6341
AMMO_FIREEXTINGUISHER1,359,393,8521
AMMO_FIREWORK2,938,367,5031
AMMO_FLARE1,808,594,7991
AMMO_FLAREGUN1,173,416,2931
AMMO_GRENADE1,003,688,8811
AMMO_GRENADELAUNCHER1,003,267,5662
AMMO_GRENADELAUNCHER_SMOKE826,266,4321
AMMO_HAZARDCAN1,618,528,3191
AMMO_HOMINGLAUNCHER2,568,293,9331
AMMO_MG1,788,949,5675
AMMO_MINIGUN2,680,539,2662
AMMO_MOLOTOV1,446,246,8691
AMMO_PETROLCAN3,395,492,0011
AMMO_PIPEBOMB357,983,2241
AMMO_PISTOL1,950,175,06017
AMMO_PROXMINE2,938,243,2391
AMMO_RAILGUN2,034,517,7571
AMMO_RAILGUNXM31,322,889,0871
AMMO_RAYPISTOL2,768,943,9881
AMMO_RIFLE218,444,19114
AMMO_RPG1,742,569,9704
AMMO_SHOTGUN2,416,459,06710
AMMO_SMG1,820,140,4728
AMMO_SMOKEGRENADE3,859,679,3981
AMMO_SNIPER1,285,032,0596
AMMO_SNIPER_REMOTE4,275,731,7601
AMMO_SNOWBALL2,182,627,6931
AMMO_SNOWLAUNCHER843,865,4651
AMMO_STICKYBOMB1,411,692,0551
AMMO_STINGER2,437,710,1381
AMMO_STUNGUN2,955,849,1842
AMMO_TRANQUILIZER1,964,004,5531

The AmmoInfo each weapon points at. Weapons that share an ammo type share a pool, which is why adding rifle ammo tops up every rifle the ped carries.

HARDEST HITTING

The five highest damage values in the file

  • 230Heavy Sniper Mk IIWEAPON_HEAVYSNIPER_MK2
  • 220Marksman PistolWEAPON_MARKSMANPISTOL
  • 216Heavy SniperWEAPON_HEAVYSNIPER
  • 200Heavy Revolver Mk IIWEAPON_REVOLVER_MK2
  • 195Perico PistolWEAPON_GADGETPISTOL

Per bullet, before headshot and limb multipliers, and with the explosive weapons absent for the reason above — their damage is not on the weapon.

QUESTIONS

About the weapon table

Why does GiveWeaponComponentToPed do nothing?
Almost always because the ped does not have the weapon yet. A component attaches to a weapon the ped already owns, so the order is GiveWeaponToPed first and GiveWeaponComponentToPed second. Get it the wrong way round and the native does not complain — it returns nothing, the attachment never appears, and you go looking for a broken component name that was fine all along. The other common cause is handing a component to the wrong weapon: COMPONENT_AT_AR_SUPP fits the assault rifles, and giving it to a pistol is simply ignored.
Is the component hash the same as the component name?
No, and this is the second thing that breaks attachment code. The name is a string such as COMPONENT_CARBINERIFLE_CLIP_02; the native takes the Jenkins one-at-a-time hash of that string, which GetHashKey works out at runtime. Lua will happily pass the string itself to a native that wants a number, the call quietly fails, and nothing in the console tells you why. Every component in this table shows its hash as well as its name, so you can hard-code the number instead if you prefer.
Why is the damage 0 for the RPG, the grenade and every melee weapon?
Because the game's own weapons.meta really does set Damage to 0 for them — 50 of the 120 entries here. An explosive weapon does its damage through the explosion tables and a melee weapon through the melee tables and the animation that lands the hit, so the figure is simply not stored on the weapon. The Cfx.re documentation for GetWeaponDamage says the same thing from the other side: it does not return damage for weapons in the melee and explosive groups. We print what the file says rather than inventing a plausible number.
What is the difference between a weapon tint and a Mk II camo?
A tint is an index into the weapon’s own tint table and is set with SetPedWeaponTintIndex — eight entries on a standard weapon, thirty-three on a Mk II. A camo is a component: you give it with GiveWeaponComponentToPed like any other attachment, then pick the colourway on top of it with SetPedWeaponComponentTintIndex. That is why the Mk II weapons here carry a long list of COMPONENT_..._CAMO entries as well as a tint table.
Why does the stun gun say its clip size is 2,104,529,083?
Because that is the number in the file. WEAPON_STUNGUN, WEAPON_STUNGUN_MP and WEAPON_TRANQUILIZER all carry that ClipSize in the game’s own weapons.meta — Rockstar’s way of saying the clip never empties and the recharge timer is what limits the weapon instead. It looks like a bug in our table, so we would rather say out loud that it is not one.
Where do the rounds-per-minute figures come from?
We work them out, from the meta’s own TimeBetweenShots value: sixty divided by the interval in seconds. The carbine rifle’s 0.135 s becomes 444 rpm. That is arithmetic on a real value rather than a measurement, so read it as the engine’s theoretical ceiling — spin-up time on a minigun, the pump on a shotgun and the reload animation all push the rate you would count in game lower.

7 of the 120 rows — WEAPON_REMOTESNIPER, WEAPON_PASSENGER_ROCKET, WEAPON_AIRSTRIKE_ROCKET, WEAPON_STINGER, WEAPON_DIGISCANNER, WEAPON_VEHICLE_ROCKET, WEAPON_TRANQUILIZER — are weapons our own vanilla list does not carry, so their labels and hashes come from the data dump instead. Each of those rows says so when you expand it. Native behaviour is as described in the Cfx.re native reference.

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