fivemHow to Install Custom Weapons in FiveM [2026]
What Are Custom Weapons in FiveM?
Custom weapons are community-made or converted firearm, melee, and equipment models that replace or extend the default GTA V weapon roster on your FiveM server. Unlike vanilla GTA V, custom weapons let you add:- Tactical rifles & military-grade firearms
- Realistic pistols & revolvers with custom animations
- Suppressed and modded weapon variants
- Melee weapons — batons, knives, machetes
- Law enforcement tools — tasers, pepper spray, stingers
- Prop weapons & roleplay-only items (radios, handcuffs, medkits)
If your scripts define your server's economy and your MLOs define your world, custom weapons define your server's combat identity. They're essential for military RP, gang RP, police RP, and any server where firefights are part of the experience.
Why Add Custom Weapons to Your Server
| Benefit | Why It Matters |
|---|---|
| Immersion | Realistic or themed weapons make every combat scenario feel authentic |
| Server identity | Unique weapon loadouts distinguish your server from stock GTA |
| Job integration | Custom police, EMS, and gang weapons tie directly into job systems |
| Roleplay depth | Prop weapons and tools expand what's possible in non-combat RP |
| Player engagement | Collecting and unlocking unique weapons keeps players invested |
Did you know? FiveVault hosts weapon packs and resources tagged by framework compatibility — ESX, QBCore, QBOX, OX Core, and Standalone. Browse all weapon resources →
Prerequisites
| Requirement | Details |
|---|---|
| FiveM server | Any artifact build, 6016+ recommended |
| Server access | SFTP (FileZilla, WinSCP) or file manager via hosting panel |
| A weapon resource | Downloaded from FiveVault — all resources are framework-tagged |
| server.cfg access | To add the ensure line |
| Inventory system | ox_inventory, qb-inventory, or esx_inventory (for item registration) |
| txAdmin | Recommended for resource management and restarts |
Step 1: Understand How Custom Weapons Work in FiveM
Custom weapons in FiveM come in two types — it's important to know which one you're installing:
Type 1 — Weapon replacement (skin swap):Replaces the model and texture of an existing GTA V weapon while keeping its stats and animations.
my-weapon-pack/
├── stream/
│ ├── w_pi_pistol.ydr ← replaces default pistol model
│ └── w_pi_pistol.ytd ← replaces default pistol texture
└── fxmanifest.luaAdds an entirely new weapon with its own weapon hash, name, and stats. Requires framework registration to give to players.
my-addon-weapon/
├── stream/
│ ├── w_custom_taser.ydr
│ └── w_custom_taser.ytd
├── data/
│ └── weaponarchetypes.meta
│ └── weapons.meta
│ └── weaponanimations.meta
└── fxmanifest.luaPro tip: Replacement weapons are easier to install — they work automatically once streamed. Addon weapons require additional metadata registration and framework config. FiveVault's weapon tags will tell you which type you're downloading.
Step 2: Download Your Weapon Pack
Head to FiveVault and pick a weapon pack. Once downloaded, extract the .zip or .rar. Check for the folder structure shown in Step 1 to confirm whether it's a replacement or addon weapon.
Pro tip: Always check the framework tag before downloading. A weapon pack tagged "Standalone" works on any server. One tagged "ESX" or "QBCore" requires framework-specific registration in your inventory system.
Step 3: Import the Weapon Metadata (Addon Weapons Only)
If your weapon pack is an addon weapon (has a data/ folder with .meta files), you need to declare these in fxmanifest.lua. Open the manifest and confirm these data files are registered:
fx_version 'cerulean'
game 'gta5'
description 'My Custom Weapon Pack'
version '1.0.0'
data_file 'WEAPONARCHETYPES_FILE' 'data/weaponarchetypes.meta'
data_file 'WEAPON_METADATA_FILE' 'data/weapons.meta'
data_file 'WEAPON_ANIMATIONS_FILE' 'data/weaponanimations.meta'
files {
'data/*.meta'
}If any of these data_file lines are missing but the corresponding .meta file exists in the folder — add them manually. Missing metadata is the most common cause of addon weapons not working.
Step 4: Upload to Your Server's Resources Folder
Connect via SFTP or your hosting panel's file manager. Upload the weapon pack into a dedicated subfolder:
resources/
└── [weapons]/
└── my-weapon-pack/Do not rename the folder after uploading — the name must match exactly what you put in server.cfg.
Step 5: Add the Weapon to server.cfg
Open your server.cfg and add the ensure line. Place it before your inventory system:
# Inventory (must load after weapon streams)
ensure ox_inventory
# or
ensure qb-inventory
# Weapons (load before inventory)
ensure [weapons]/my-weapon-pack
ensure [weapons]/police-taser-pack
ensure [weapons]/gang-weapon-packStep 6: Register the Weapon as an Item in Your Inventory
Replacement weapons skip this step — they use existing GTA weapon hashes and are already known to your inventory system. Addon weapons need to be registered as items so players can receive, store, and use them. For ox_inventory — add toox_inventory/data/items.lua:
['custom_taser'] = {
label = 'Custom Taser',
weight = 500,
stack = false,
close = true,
description = 'A custom police taser.',
},qb-core/shared/items.lua:
['custom_taser'] = {
name = 'custom_taser',
label = 'Custom Taser',
weight = 500,
type = 'item',
image = 'custom_taser.png',
unique = true,
useable = true,
shouldClose = true,
description = 'A custom police taser.'
},INSERT INTO items (name, label, weight)
VALUES ('custom_taser', 'Custom Taser', 500);Pro tip: The item name must exactly match the weapon hash defined inweapons.meta. Open the.metafile and look for— that's your hash/item name.
Step 7: Give the Weapon to Players
Once registered, you can give the weapon to players using standard framework commands or scripts.
Using a server-side script (universal):-- Give a weapon to a player by server ID
TriggerClientEvent('weapons:giveWeapon', playerId, 'WEAPON_CUSTOM_TASER', 100)local xPlayer = ESX.GetPlayerFromId(source)
xPlayer.addInventoryItem('custom_taser', 1)local Player = QBCore.Functions.GetPlayer(source)
Player.Functions.AddItem('custom_taser', 1)/giveweapon [playerid] custom_taser 100Step 8: Restart and Test
Restart the weapon resource in your txAdmin console or server console:
restart [weapons]/my-weapon-packJoin your server and give the weapon to a test character. For replacement weapons, the existing spawn name works:
/giveweapon [playerid] WEAPON_PISTOL 100For addon weapons, use the custom hash from weapons.meta:
/giveweapon [playerid] WEAPON_CUSTOM_TASER 100If the weapon spawns with the correct model — you're done.
Framework Compatibility
| Framework | Compatibility Notes |
|---|---|
| Standalone | Replacement weapons stream automatically. Addon weapons need metadata but no inventory config. |
| ESX | Register addon weapons in the items database table. Use esx_weaponshop for shop integration. |
| QBCore | Register addon weapons in qb-core/shared/items.lua. Use qb-shops for shop integration. |
| QBOX | Same as QBCore — fully compatible with shared items config. |
| OX Core | Register addon weapons in ox_inventory/data/items.lua. Use ox_inventory shops for access. |
stream/ + fxmanifest.lua with no data/ folder — it's a replacement weapon and works standalone. If you see a data/ folder with .meta files — it's an addon weapon requiring registration.
Troubleshooting Common Weapon Issues
❌ Weapon spawns but shows original GTA model
Solution: For a replacement weapon, the stream file names must exactly match the original GTA weapon filename (e.g.,w_pi_pistol.ydr). Any mismatch means the replacement doesn't apply.
❌ Addon weapon causes server crash on startup
Solution: One of the.meta files has a syntax error or references a missing animation/archetype. Comment out data_file lines one by one in fxmanifest.lua to find the culprit.
❌ "Could not find resource" error in console
Solution: The folder name inserver.cfg doesn't match the actual folder name on disk. Linux hosting is case-sensitive — My-Weapon-Pack and my-weapon-pack are different.
❌ Weapon item exists in inventory but has no model (invisible weapon)
Solution: The weapon stream resource isn't started or the hash inweapons.meta doesn't match the item name registered in your inventory. Double-check both match exactly.
❌ Weapon animations are broken or T-pose on equip
Solution: Theweaponanimations.meta file is missing or not declared in fxmanifest.lua. Add the data_file 'WEAPON_ANIMATIONS_FILE' line and restart.
❌ ox_inventory doesn't recognise the weapon item
Solution: The item isn't registered inox_inventory/data/items.lua. Add the entry from Step 6, save, and restart ox_inventory.
❌ QBCore shop doesn't show the weapon
Solution: The item isn't inqb-core/shared/items.lua or the shop config doesn't reference it. Add the item entry and the shop entry, then restart qb-core.
Recommended Weapon Resources for Your Server
| Resource | Type | Best For |
|---|---|---|
| Police Weapon Pack 2026 | Addon weapons | Police RP servers |
| Taser & Less-Lethal Pack | Replacement weapons | Law enforcement RP |
| Gang Weapon Collection | Addon weapons | Gang & street RP |
| Military Rifle Pack | Addon weapons | Military & war RP |
| Melee Weapon Pack | Replacement weapons | All RP servers |
| ox_inventory | Inventory system | All frameworks — weapon item management |
| esx_weaponshop / qb-shops | Shop system | In-game weapon purchasing |
Final Tips
- ✅ Know your weapon type — replacement vs. addon have completely different install steps
- ✅ Match stream filenames exactly — one character wrong and the replacement won't apply
- ✅ Declare all
.metafiles infxmanifest.lua— missing data files cause crashes - ✅ Load weapon streams before your inventory in
server.cfg - ✅ Match item names to weapon hashes — they must be identical for addon weapons
- ✅ Test on a dev server first — a broken
weapons.metawill crash your entire server on startup - ✅ Source from FiveVault — quality-checked packs reduce broken metadata issues
- ✅ Back up server.cfg before every session of adding new weapon resources
Frequently Asked Questions
Q: Do players need to download anything to see custom weapons?A: No — FiveM streams weapon assets to players automatically when they join the server.
Q: Can I use weapon mods from GTA V SP on FiveM?A: Not directly. SP weapon mods use a different format. They need to be converted to FiveM addon format first — look for FiveM-converted versions on trusted platforms like FiveVault.
Q: Can I restrict certain weapons to specific jobs?A: Yes — most inventory systems (ox_inventory, qb-inventory) support job-gated items. Only players with the correct job can carry or purchase the weapon.
Q: What's the difference between a weapon replacement and an addon weapon?A: A replacement swaps the look of an existing GTA weapon — it uses the same hash and stats. An addon adds a brand new weapon with its own hash, stats, and animations — it needs full registration.
Q: Why does my weapon show correctly in single-player but not on FiveM?A: SP and FiveM use different streaming systems. The weapon files need to be in FiveM's resource format with a valid fxmanifest.lua and correct data_file declarations.
A: Yes — if two replacement packs both replace the same weapon (e.g., both replace w_pi_pistol), whichever loads last in server.cfg wins. Addon weapons rarely conflict unless they share the same weapon hash.
Have questions about custom weapons? Drop by our Discord — 7,000+ members and counting.