Skip to main content

Updating ox_inventory

caution

Never make changes to ANY script without making a backup first, you never know what might happen!

Adding Inventory Images

Upload your image files to your inventory resource

We can start the modification for our inventory system by adding the images for our new items, for the default qb-inventory resource we will simply navigate to our ox_inventory/web/images directory and drag and drop the images contained in our keymaster download package. Once this is completed, images will be available on next reset, and we can continue to our next step adding our items and then modifying our weapons table.

Adding Our Items

danger

If you have edited the name of the r14-evidence, you MUST edit the name of the server export contained in the items being added here. If you fail to do so you will not be able to use the items as ox_inventory will fail to find the exports generated for them.

We will need to navigate to our ox_inventory/data/ directory and open our items.lua file in order to add the new items used by r14-evidence. If you are using qb-core, you will likely need to find and delete the existing filled_evidence_bag and empty_evidence_bag directories that have been auto-generated by ox_inventory so that they do not override our the new items we are adding. You can add these items at the bottom, but please take care not to delete the closing bracket or FiveM will be fail to parse the file. After the Version 1.6 update, if you specify any custom cleaning items that already exist here, its required to add the server export with the name of the item, you can find an exmaple down below!

Items to be added to ox_inventory/data/items.lua
    ['filled_evidence_bag'] = {
consume = 0.0,
label = 'Collected Evidence',
weight = 0,
stack = false,
description = 'This is police evidence.',
server = {export = 'r14-evidence.filled_evidence_bag'},
},


['empty_evidence_bag'] = {
consume = 0.0,
label = 'Empty Evidence Bag',
weight = 0,
stack = true,
description = 'This is an evidence bag.',
},

['nikon'] = {
consume = 0.0,
label = 'Nikoff G600',
weight = 500,
stack = false,
description = 'Caught in 4k',
server = {export = 'r14-evidence.nikon'},
},

['sdcard'] = {
consume = 0.0,
label = 'SD Card',
weight = 100,
stack = false,
description = 'People still use these??',
server = {export = 'r14-evidence.sdcard'},
},

['gsrtestkit'] = {
consume = 0.0,
label = 'GSR Field Test Kit',
weight = 100,
stack = true,
close = true,
description = "A field GSR test kit containing several test strips",
server = {export = 'r14-evidence.gsrtestkit'},
},

['dnatestkit'] = {
consume = 0.0,
label = 'DNA Field Swab Kit',
weight = 100,
stack = true,
close = true,
description = "A field DNA swab kit containing several vials and swabs",
server = {export = 'r14-evidence.dnatestkit'},
},


['drugtestkit'] = {
consume = 0.0,
label = 'DNA Field Swab Kit',
weight = 100,
stack = true,
description = 'A multipanel oral drug test kit like the one your lame dad or boss buys... but for cops.',
server = {export = 'r14-evidence.drugtestkit'},
},

['breathalyzer'] = {
consume = 0.0,
label = 'Breathalyzer',
weight = 200,
stack = true,
close = true,
description = "A vintage 2000's WiWang breathalyzer engraved Property of LSPD",
server = {export = 'r14-evidence.breathalyzer'},
},

['fingerprintreader'] = {
consume = 0.0,
label = 'Pro Tech XFR8001',
weight = 200,
stack = false,
close = true,
description = "A Pro Tech mobile fingerprint reader that looks like it's seen better days, currently stuck in french.",
server = {export = 'r14-evidence.fingerprintreader'},
},

['accesstool'] = {
consume = 0.0,
label = 'Access Tool',
weight = 200,
stack = false,
description = 'Snap into an access tool.',
server = {export = 'r14-evidence.accesstool'},
},

['fingerprintkit'] = {
consume = 0.0,
label = 'Fingerprint Kit',
weight = 1000,
stack = true,
close = true,
description = "A small kit that includes fingerprint dust, chemicals, and a brush for developing fingerprints",
},

['mikrosil'] = {
consume = 0.0,
label = 'Mikrosil',
weight = 200,
stack = true,
close = true,
description = "Two tubes of silicon casting material used to lift fingerprints from irregular surfaces",
},

['fingerprinttape'] = {
consume = 0.0,
label = 'Fingerprint Tape',
weight = 200,
stack = true,
close = true,
description = "Extra clear tape used to lift fingerprints from smooth, nonporous surfaces",
},

['blox'] = {
consume = 0.0,
label = 'Blox Multisurface',
weight = 200,
stack = true,
close = true,
description = 'Kills everything!',
},

['microfibercloth'] = {
consume = 0.0,
label = 'Microfiber Cloth',
weight = 200,
stack = true,
description = 'Polyester, but fluffy',
server = {export = 'r14-evidence.microfibercloth'},
allowArmed = true,
},

If you are specifying custom rags items in your Config.EvidenceCleanup table in r14-evidence, you will need to add a server export that will be triggered by those items and allow it to be used while armed with a weapon. Unfortunately, if for some reason there is an existing export, you will not be able to easily add functionality without directly editing the resource which handles. In which case, please consult a developer if you are not familiar with scripting if this is required.

The export must match the resource name if you have changed the name of r14-evidence, as well as the name of the item you are modifying. Failure to do so will result in an error when ox_inventory is unable to locate the export.

Items to be added to ox_inventory/data/items.lua
    ['dirtyrag'] = {
consume = 0.0,
label = 'Dirty Ol' Rag',
weight = 200,
stack = true,
description = 'Gross, but probably fine.',
allowArmed = true,
server = {export = 'r14-evidence.dirtyrag'},
},

Modifying Our Weapons

We will need to navigate to our ox_inventory/data/weapons.lua file where we will be adding calibers to our existing weapons so that r14-evidence can pull from them when creating casings. By adding our calibers here in our weapons file, we ensure that we never create a firearm without a caliber, reducing the workload of adding new weapons to your FiveM server. A preconfigured version has been created below that will allow you to copy and replace the entire file to add calibers to the base game weapons.

As stated, please create a back up and ensure you transfer any add on weapons that may exist in your weapons.lua before saving over any work. If you overwrite custom weapons, you will likely cause major issues as you are deleting the item as well in ox_inventory.

caution

Never make changes to ANY script without making a backup first, this replacement for ox_inventory/data/weapons.lua DOES NOT contain any add on weapons, if you do not transfer them to this new file YOU WILL LOSE THEM

Replacement for the base ox_inventory data/weapons.lua as of 3/23/2023, THIS DOES NOT INCLUDE ADD ON WEAPONS.
return {
Weapons = {

['WEAPON_ADVANCEDRIFLE'] = {
label = 'Advanced Rifle',
weight = 3180,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '9x19mm Parabellum',
},

['WEAPON_APPISTOL'] = {
label = 'AP Pistol',
weight = 1220,
durability = 0.1,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_ASSAULTRIFLE'] = {
label = 'Assault Rifle',
weight = 3470,
durability = 0.03,
ammoname = 'ammo-rifle2',
caliber = '5.56x45mm NATO',
},

['WEAPON_ASSAULTRIFLE_MK2'] = {
label = 'Assault Rifle MK2',
weight = 3300,
durability = 0.03,
ammoname = 'ammo-rifle2',
caliber = '5.56x45mm NATO',
},

['WEAPON_ASSAULTSHOTGUN'] = {
label = 'Assault Shotgun',
weight = 3100,
durability = 0.05,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_ASSAULTSMG'] = {
label = 'Assault SMG',
weight = 2850,
durability = 0.05,
ammoname = 'ammo-rifle',
caliber = '9x19mm Parabellum',
},

['WEAPON_BALL'] = {
label = 'Ball',
weight = 149,
throwable = true,
},

['WEAPON_BAT'] = {
label = 'Bat',
weight = 1134,
durability = 0.1,
},

['WEAPON_BATTLEAXE'] = {
label = 'Battle Axe',
weight = 1200,
durability = 0.1,
},

['WEAPON_BOTTLE'] = {
label = 'Bottle',
weight = 350,
durability = 0.1,
},

['WEAPON_BULLPUPRIFLE'] = {
label = 'Bullpup Rifle',
weight = 2900,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.8x42mm DBP87',
},

['WEAPON_BULLPUPRIFLE_MK2'] = {
label = 'Bullpup Rifle MK2',
weight = 2900,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.8x42mm DBP87',
},

['WEAPON_BULLPUPSHOTGUN'] = {
label = 'Bullpup Shotgun',
weight = 3100,
durability = 0.2,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge'
},

['WEAPON_BZGAS'] = {
label = 'BZ Gas',
weight = 600,
throwable = true,
caliber = 'Grenade Pin'
},

['WEAPON_CARBINERIFLE'] = {
label = 'Carbine Rifle',
weight = 3100,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO'
},

['WEAPON_CARBINERIFLE_MK2'] = {
label = 'Carbine Rifle MK2',
weight = 3000,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO'
},

['WEAPON_CERAMICPISTOL'] = {
label = 'Ceramic Pistol',
weight = 700,
durability = 0.2,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_COMBATMG'] = {
label = 'Combat MG',
weight = 10000,
durability = 0.02,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO'
},

['WEAPON_COMBATMG_MK2'] = {
label = 'Combat MG MK2',
weight = 10500,
durability = 0.02,
ammoname = 'ammo-rifle2',
caliber = '7.62x51mm NATO',
},

['WEAPON_COMBATPDW'] = {
label = 'Combat PDW',
weight = 2700,
durability = 0.1,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_COMBATPISTOL'] = {
label = 'Combat Pistol',
weight = 970,
durability = 0.2,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_COMBATSHOTGUN'] = {
label = 'Combat Shotgun',
weight = 4400,
durability = 0.2,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_COMPACTRIFLE'] = {
label = 'Compact Rifle',
weight = 2700,
durability = 0.05,
ammoname = 'ammo-rifle2',
caliber = '7.62x39mm Soviet',
},

['WEAPON_CROWBAR'] = {
label = 'Crowbar',
weight = 2500,
durability = 0.1,
},

['WEAPON_DAGGER'] = {
label = 'Dagger',
weight = 800,
durability = 0.1,
},

['WEAPON_DBSHOTGUN'] = {
label = 'Double Barrel Shotgun',
weight = 3175,
durability = 0.4,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_DOUBLEACTION'] = {
label = 'Double Action Revolver',
weight = 940,
durability = 0.2,
ammoname = 'ammo-38',
caliber = '.38 Long Colt',
},

['WEAPON_EMPLAUNCHER'] = {
label = 'Compact EMP Launcher',
weight = 2750,
durability = 0.2,
ammoname = 'ammo-emp',
caliber = '40mm Grenade',
},

['WEAPON_FIREEXTINGUISHER'] = {
label = 'Fire Extinguisher',
weight = 8616,
},

['WEAPON_FIREWORK'] = {
label = 'Firework Launcher',
weight = 1000,
durability = 0.5,
caliber = 'Firework Packaging',
},

['WEAPON_FLARE'] = {
label = 'Flare',
weight = 235,
throwable = true,
caliber = 'Flare Cap',
},

['WEAPON_FLAREGUN'] = {
label = 'Flare Gun',
weight = 1000,
durability = 0.5,
ammoname = 'ammo-flare',
caliber = '25mm Flare',
},

['WEAPON_FLASHLIGHT'] = {
label = 'Flashlight',
weight = 125,
durability = 0.1,
},

['WEAPON_GOLFCLUB'] = {
label = 'Golf Club',
weight = 330,
durability = 0.1,
},

['WEAPON_GRENADE'] = {
label = 'Grenade',
weight = 600,
throwable = true,
caliber = 'Grenade Pin',
},

['WEAPON_GUSENBERG'] = {
label = 'Gusenberg',
weight = 4900,
durability = 0.04,
ammoname = 'ammo-45',
caliber = '.45 ACP',
},

['WEAPON_HAMMER'] = {
label = 'Hammer',
weight = 1200,
durability = 0.1,
},

['WEAPON_HATCHET'] = {
label = 'Hatchet',
weight = 1000,
durability = 0.1,
},

['WEAPON_HEAVYRIFLE'] = {
label = 'Heavy Rifle',
weight = 2750,
durability = 0.2,
ammoname = 'ammo-rifle',
caliber = '7.62x51mm NATO',
},

['WEAPON_HAZARDCAN'] = {
label = 'Hazard Can',
weight = 12000,
},

['WEAPON_METALDETECTOR'] = {
label = 'Metal Detector',
weight = 1200,
},

['WEAPON_FERTILIZERCAN'] = {
label = 'Fertilizer Can',
weight = 12000,
},

['WEAPON_HEAVYPISTOL'] = {
label = 'Heavy Pistol',
weight = 1100,
durability = 0.2,
ammoname = 'ammo-45',
caliber = '.45 ACP',
},

['WEAPON_HEAVYSHOTGUN'] = {
label = 'Heavy Shotgun',
weight = 3600,
durability = 0.1,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_HEAVYSNIPER'] = {
label = 'Heavy Sniper',
weight = 14000,
durability = 0.5,
ammoname = 'ammo-heavysniper',
caliber = '.50 BMG',
},

['WEAPON_HEAVYSNIPER_MK2'] = {
label = 'Heavy Sniper MK2',
weight = 10432,
durability = 0.5,
ammoname = 'ammo-heavysniper',
caliber = '.50 BMG',
},

['WEAPON_KNIFE'] = {
label = 'Knife',
weight = 300,
durability = 0.1,
},

['WEAPON_KNUCKLE'] = {
label = 'Knuckle Dusters',
weight = 300,
durability = 0.1,
},

['WEAPON_MACHETE'] = {
label = 'Machete',
weight = 1000,
durability = 0.1,
},

['WEAPON_MACHINEPISTOL'] = {
label = 'Machine Pistol',
weight = 1400,
durability = 0.05,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_MARKSMANPISTOL'] = {
label = 'Marksman Pistol',
weight = 1588,
durability = 0.5,
ammoname = 'ammo-22',
caliber = '.45-70 Government',
},

['WEAPON_MARKSMANRIFLE'] = {
label = 'Marksman Rifle',
weight = 7500,
durability = 0.4,
ammoname = 'ammo-sniper',
caliber = '7.76x51mm NATO',
},

['WEAPON_MARKSMANRIFLE_MK2'] = {
label = 'Marksman Rifle',
weight = 4000,
durability = 0.4,
ammoname = 'ammo-sniper',
caliber = '7.76x51mm NATO',
},

['WEAPON_MG'] = {
label = 'Machine Gun',
weight = 9000,
durability = 0.02,
ammoname = 'ammo-rifle2',
caliber = '7.76x51mm NATO',
},

['WEAPON_MICROSMG'] = {
label = 'Micro SMG',
weight = 4000,
durability = 0.1,
ammoname = 'ammo-45',
caliber = '9x19mm Parabellum',
},

['WEAPON_MILITARYRIFLE'] = {
label = 'Military Rifle',
weight = 3600,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO',
},

['WEAPON_MINISMG'] = {
label = 'Mini SMG',
weight = 2770,
durability = 0.05,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_MOLOTOV'] = {
label = 'Molotov',
weight = 1800,
throwable = true,
},

['WEAPON_MUSKET'] = {
label = 'Musket',
weight = 4500,
durability = 0.5,
ammoname = 'ammo-musket',
caliber = 'A Percussion Cap?',
},

['WEAPON_NAVYREVOLVER'] = {
label = 'Navy Revolver',
weight = 2000,
durability = 0.2,
ammoname = 'ammo-44',
caliber = '.38 Centerfire',
},

['WEAPON_NIGHTSTICK'] = {
label = 'Nightstick',
weight = 1000,
durability = 0.1,
},

['WEAPON_PETROLCAN'] = {
label = 'Gas Can',
weight = 12000,
},

['WEAPON_GADGETPISTOL'] = {
label = 'Perico Pistol',
weight = 1750,
durability = 0.1,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_PIPEBOMB'] = {
label = 'Pipe Bomb',
weight = 1800,
throwable = true,
},

['WEAPON_PISTOL'] = {
label = 'Pistol',
weight = 970,
durability = 0.1,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_PISTOL50'] = {
label = 'Pistol .50',
weight = 2000,
durability = 0.1,
ammoname = 'ammo-50',
caliber = '.50 Action Express',
},

['WEAPON_PISTOL_MK2'] = {
label = 'Pistol MK2',
weight = 970,
durability = 0.5,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_POOLCUE'] = {
label = 'Pool Cue',
weight = 146,
durability = 0.1,
},

['WEAPON_PROXMINE'] = {
label = 'Proximity Mine',
weight = 2500,
throwable = true,
},

['WEAPON_PUMPSHOTGUN'] = {
label = 'Pump Shotgun',
weight = 3400,
durability = 0.1,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_PUMPSHOTGUN_MK2'] = {
label = 'Pump Shotgun MK2',
weight = 3200,
durability = 0.1,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_REVOLVER'] = {
label = 'Revolver',
weight = 2260,
durability = 0.1,
ammoname = 'ammo-44',
caliber = '.357 Magnum',
},

['WEAPON_REVOLVER_MK2'] = {
label = 'Revolver MK2',
weight = 1500,
durability = 0.1,
ammoname = 'ammo-44',
caliber = '.44 Magnum',
},

['WEAPON_SAWNOFFSHOTGUN'] = {
label = 'Sawn Off Shotgun',
weight = 2380,
durability = 0.1,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_SMG'] = {
label = 'SMG',
weight = 3084,
durability = 0.8,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_SMG_MK2'] = {
label = 'SMG Mk2',
weight = 2700,
durability = 0.05,
ammoname = 'ammo-9',
caliber = '9x19mm Parabellum',
},

['WEAPON_SMOKEGRENADE'] = {
label = 'Smoke Grenade',
weight = 600,
throwable = true,
caliber = 'Grenade Pin',
},

['WEAPON_SNIPERRIFLE'] = {
label = 'Sniper Rifle',
weight = 6500,
durability = 0.5,
ammoname = 'ammo-sniper',
caliber = '.310 Win Mag',
},

['WEAPON_SNOWBALL'] = {
label = 'Snow Ball',
weight = 5,
throwable = true,
},

['WEAPON_SNSPISTOL'] = {
label = 'SNS Pistol',
weight = 465,
durability = 0.1,
ammoname = 'ammo-45',
caliber = '.40 S&W',
},

['WEAPON_SNSPISTOL_MK2'] = {
label = 'SNS Pistol MK2',
weight = 465,
durability = 0.1,
ammoname = 'ammo-45',
caliber = '.40 S&W',
},

['WEAPON_SPECIALCARBINE'] = {
label = 'Special Carbine',
weight = 3000,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '.40 S&W',
},

['WEAPON_SPECIALCARBINE_MK2'] = {
label = 'Special Carbine MK2',
weight = 3370,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO',
},

['WEAPON_STICKYBOMB'] = {
label = 'Sticky Bomb',
weight = 1000,
throwable = true,
},

['WEAPON_STONE_HATCHET'] = {
label = 'Stone Hatchet',
weight = 800,
durability = 0.1,
},

['WEAPON_STUNGUN'] = {
label = 'Tazer',
weight = 227,
durability = 0.1,
caliber = 'Taser AFID',
},

['WEAPON_AUTOSHOTGUN'] = {
label = 'Sweeper Shotgun',
weight = 4400,
durability = 0.05,
ammoname = 'ammo-shotgun',
caliber = '12 Gauge',
},

['WEAPON_SWITCHBLADE'] = {
label = 'Switch Blade',
weight = 300,
durability = 0.1,
anim = { 'anim@melee@switchblade@holster', 'unholster', 200, 'anim@melee@switchblade@holster', 'holster', 600 },
},

['WEAPON_VINTAGEPISTOL'] = {
label = 'Vintage Pistol',
weight = 100,
durability = 0.1,
ammoname = 'ammo-9',
caliber = '.32 ACP',
},

['WEAPON_WRENCH'] = {
label = 'Wrench',
weight = 2500,
durability = 0.1,
},

['WEAPON_PRECISIONRIFLE'] = {
label = 'Precision Rifle',
weight = 4800,
durability = 0.4,
ammoname = 'ammo-sniper',
caliber = '.223 Remington'
},

['WEAPON_TACTICALRIFLE'] = {
label = 'Tactical Rifle',
weight = 3400,
durability = 0.03,
ammoname = 'ammo-rifle',
caliber = '5.56x45mm NATO'
},
},

Components = {
['at_flashlight'] = {
label = 'Tactical Flashlight',
weight = 120,
type = 'flashlight',
client = {
component = { `COMPONENT_AT_PI_FLSH`, `COMPONENT_AT_AR_FLSH`, `COMPONENT_AT_PI_FLSH_02`, `COMPONENT_AT_AR_FLSH_REH` },
usetime = 2500
}
},

['at_suppressor_light'] = {
label = 'Suppressor',
weight = 280,
type = 'barrel',
client = {
component = {`COMPONENT_AT_PI_SUPP`, `COMPONENT_AT_PI_SUPP_02`},
usetime = 2500
}
},

['at_suppressor_heavy'] = {
label = 'Tactical Suppressor',
weight = 280,
type = 'barrel',
client = {
component = {`COMPONENT_AT_AR_SUPP`, `COMPONENT_AT_AR_SUPP_02`, `COMPONENT_AT_SR_SUPP`, `COMPONENT_AT_SR_SUPP_03`},
usetime = 2500
}
},

['at_grip'] = {
label = 'Grip Tape',
type = 'grip',
weight = 280,
client = {
component = {`COMPONENT_AT_AR_AFGRIP`, `COMPONENT_AT_AR_AFGRIP_02`},
usetime = 2500
}
},

['at_barrel'] = {
label = 'Heavy Barrel',
type = 'barrel',
weight = 280,
client = {
component = {`COMPONENT_AT_SR_BARREL_01`,`COMPONENT_AT_MRFL_BARREL_02`,`COMPONENT_AT_MG_BARREL_02`,`COMPONENT_AT_SC_BARREL_02`, `COMPONENT_AT_CR_BARREL_02`, `COMPONENT_AT_BP_BARREL_02`},
usetime = 2500
}
},

['at_clip_extended_pistol'] = {
label = 'Extended Pistol Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_PISTOL_CLIP_02`, `COMPONENT_APPISTOL_CLIP_02`, `COMPONENT_PISTOL_MK2_CLIP_02`, `COMPONENT_SNSPISTOL_MK2_CLIP_02`, `COMPONENT_COMBATPISTOL_CLIP_02`, `COMPONENT_PISTOL50_CLIP_02`, `COMPONENT_HEAVYPISTOL_CLIP_02`, `COMPONENT_SNSPISTOL_CLIP_02`, `COMPONENT_VINTAGEPISTOL_CLIP_02`},
usetime = 2500
}
},

['at_clip_extended_smg'] = {
label = 'Extended SMG Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_SMG_CLIP_02`, `COMPONENT_SMG_MK2_CLIP_02`, `COMPONENT_ASSAULTSMG_CLIP_02`, `COMPONENT_MICROSMG_CLIP_02`, `COMPONENT_MINISMG_CLIP_02`, `COMPONENT_COMBATPDW_CLIP_02`, `COMPONENT_MACHINEPISTOL_CLIP_02`},
usetime = 2500
}
},

['at_clip_extended_shotgun'] = {
label = 'Extended Shotgun Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_HEAVYSHOTGUN_CLIP_02`, `COMPONENT_ASSAULTSHOTGUN_CLIP_02`},
usetime = 2500
}
},

['at_clip_extended_rifle'] = {
label = 'Extended Rifle Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_ASSAULTRIFLE_CLIP_02`, `COMPONENT_CARBINERIFLE_CLIP_02`, `COMPONENT_MILITARYRIFLE_CLIP_02`, `COMPONENT_ADVANCEDRIFLE_CLIP_02`, `COMPONENT_SPECIALCARBINE_CLIP_02`, `COMPONENT_BULLPUPRIFLE_CLIP_02`, `COMPONENT_COMPACTRIFLE_CLIP_02`, `COMPONENT_ASSAULTRIFLE_MK2_CLIP_02`, `COMPONENT_CARBINERIFLE_MK2_CLIP_02`, `COMPONENT_SPECIALCARBINE_MK2_CLIP_02`, `COMPONENT_BULLPUPRIFLE_MK2_CLIP_02`},
usetime = 2500
}
},

['at_clip_extended_mg'] = {
label = 'Extended MG Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_MG_CLIP_02`, `COMPONENT_COMBATMG_CLIP_02`, `COMPONENT_GUSENBERG_CLIP_02`, `COMPONENT_COMBATMG_MK2_CLIP_02`},
usetime = 2500
}
},

['at_clip_extended_sniper'] = {
label = 'Extended Sniper Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_MARKSMANRIFLE_CLIP_02`, `COMPONENT_HEAVYSNIPER_MK2_CLIP_02`, `COMPONENT_MARKSMANRIFLE_MK2_CLIP_02`},
usetime = 2500
}
},

['at_clip_drum_smg'] = {
label = 'SMG Drum Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_MACHINEPISTOL_CLIP_03`, `COMPONENT_SMG_CLIP_03`, `COMPONENT_COMBATPDW_CLIP_03`},
usetime = 2500
}
},

['at_clip_drum_shotgun'] = {
label = 'Shotgun Drum Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_HEAVYSHOTGUN_CLIP_03`},
usetime = 2500
}
},

['at_clip_drum_rifle'] = {
label = 'Rifle Drum Clip',
type = 'magazine',
weight = 280,
client = {
component = {`COMPONENT_COMPACTRIFLE_CLIP_03`, `COMPONENT_CARBINERIFLE_CLIP_03`, `COMPONENT_SPECIALCARBINE_CLIP_03`},
usetime = 2500
}
},

['at_compensator'] = {
label = 'Compensator',
type = 'barrel',
weight = 280,
client = {
component = {`COMPONENT_AT_PI_COMP_02`, `COMPONENT_AT_PI_COMP_03`, `COMPONENT_AT_PI_COMP`},
usetime = 2500
}
},

['at_scope_small'] = {
label = 'Sight',
type = 'sight',
weight = 280,
client = {
component = {`COMPONENT_AT_SIGHTS`, `COMPONENT_AT_SCOPE_MACRO`, `COMPONENT_AT_SCOPE_MACRO_02`, `COMPONENT_AT_SCOPE_MACRO_02_MK2`, `COMPONENT_AT_SCOPE_MACRO`, `COMPONENT_AT_SCOPE_SMALL`, `COMPONENT_AT_SCOPE_SMALL_02`, `COMPONENT_AT_SCOPE_SMALL_MK2`, `COMPONENT_AT_SCOPE_MACRO_MK2`},
usetime = 2500
}
},

['at_scope_medium'] = {
label = 'Scope',
type = 'sight',
weight = 280,
client = {
component = {`COMPONENT_AT_SCOPE_MEDIUM`, `COMPONENT_AT_SCOPE_MEDIUM_MK2`, `COMPONENT_AT_PI_RAIL_02`, `COMPONENT_AT_PI_RAIL`},
usetime = 2500
}
},

['at_scope_advanced'] = {
label = 'Advanced Scope',
type = 'sight',
weight = 280,
client = {
component = {`COMPONENT_AT_SCOPE_MAX`},
usetime = 2500
}
},

['at_scope_zoom'] = {
label = 'Zoom Scope',
type = 'sight',
weight = 280,
client = {
component = {`COMPONENT_AT_SCOPE_LARGE_MK2`},
usetime = 2500
}
},

['at_scope_nv'] = {
label = 'NV Scope',
type = 'sight',
weight = 420,
client = {
component = {`COMPONENT_AT_SCOPE_NV`},
usetime = 2500
}
},

['at_scope_thermal'] = {
label = 'Thermal Scope',
type = 'sight',
weight = 420,
client = {
component = {`COMPONENT_AT_SCOPE_THERMAL`},
usetime = 2500
}
},

['at_muzzle_squared'] = {
label = 'Squared Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_08`},
usetime = 2500
}
},

['at_muzzle_bell'] = {
label = 'Bell Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_09`},
usetime = 2500
}
},

['at_muzzle_flat'] = {
label = 'Flat Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_01`},
usetime = 2500
}
},

['at_muzzle_tactical'] = {
label = 'Tactical Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_02`},
usetime = 2500
}
},

['at_muzzle_fat'] = {
label = 'Fat Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_03`},
usetime = 2500
}
},

['at_muzzle_precision'] = {
label = 'Precision Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_04`},
usetime = 2500
}
},

['at_muzzle_heavy'] = {
label = 'Heavy Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_05`},
usetime = 2500
}
},

['at_muzzle_slanted'] = {
label = 'Slanted Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_06`},
usetime = 2500
}
},

['at_muzzle_split'] = {
label = 'Split Muzzle',
type = 'barrel',
weight = 80,
client = {
component = {`COMPONENT_AT_MUZZLE_07`},
usetime = 2500
}
},

['at_skin_gold'] = {
label = 'Luxury Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_MARKSMANRIFLE_VARMOD_LUXE`,`COMPONENT_MARKSMANRIFLE_VARMOD_LUXE`, `COMPONENT_SNIPERRIFLE_VARMOD_LUXE`,`COMPONENT_PUMPSHOTGUN_VARMOD_LOWRIDER`, `COMPONENT_SAWNOFFSHOTGUN_VARMOD_LUXE`,`COMPONENT_ASSAULTRIFLE_VARMOD_LUXE`, `COMPONENT_CARBINERIFLE_VARMOD_LUXE`, `COMPONENT_ADVANCEDRIFLE_VARMOD_LUXE`, `COMPONENT_SPECIALCARBINE_VARMOD_LOWRIDER`, `COMPONENT_BULLPUPRIFLE_VARMOD_LOW`, `COMPONENT_MG_VARMOD_LOWRIDER`,`COMPONENT_PISTOL_VARMOD_LUXE`, `COMPONENT_PISTOL50_VARMOD_LUXE`, `COMPONENT_APPISTOL_VARMOD_LUXE`, `COMPONENT_COMBATPISTOL_VARMOD_LOWRIDER`},
usetime = 2500
}
},

['at_skin_camo'] = {
label = 'Camo Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO`,`COMPONENT_COMBATMG_MK2_CAMO`,`COMPONENT_PUMPSHOTGUN_MK2_CAMO`,`COMPONENT_ASSAULTRIFLE_MK2_CAMO`, `COMPONENT_CARBINERIFLE_MK2_CAMO`, `COMPONENT_SPECIALCARBINE_MK2_CAMO`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO`, `COMPONENT_BULLPUPRIFLE_VARMOD_LOW`, `COMPONENT_MG_VARMOD_LOWRIDER`,`COMPONENT_SNSPISTOL_MK2_CAMO`, `COMPONENT_REVOLVER_MK2_CAMO`, `COMPONENT_PISTOL_MK2_CAMO`},
usetime = 2500
}
},

['at_skin_brushstroke'] = {
label = 'Brushstroke Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_02`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_02`,`COMPONENT_COMBATMG_MK2_CAMO_02`,`COMPONENT_PUMPSHOTGUN_MK2_CAMO_02`,`COMPONENT_ASSAULTRIFLE_MK2_CAMO_02`, `COMPONENT_CARBINERIFLE_MK2_CAMO_02`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_02`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_02`,`COMPONENT_PISTOL_MK2_CAMO_02`, `COMPONENT_REVOLVER_MK2_CAMO_02`, `COMPONENT_SNSPISTOL_MK2_CAMO_02`},
usetime = 2500
}
},

['at_skin_woodland'] = {
label = 'Woodland Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_03`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_03`,`COMPONENT_COMBATMG_MK2_CAMO_03`,`COMPONENT_PUMPSHOTGUN_MK2_CAMO_03`,`COMPONENT_ASSAULTRIFLE_MK2_CAMO_03`, `COMPONENT_CARBINERIFLE_MK2_CAMO_03`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_03`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_03`,`COMPONENT_PISTOL_MK2_CAMO_03`, `COMPONENT_REVOLVER_MK2_CAMO_03`, `COMPONENT_SNSPISTOL_MK2_CAMO_03`},
usetime = 2500
}
},

['at_skin_skull'] = {
label = 'Skull Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_04`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_04`, `COMPONENT_COMBATMG_MK2_CAMO_04`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_04`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_04`, `COMPONENT_CARBINERIFLE_MK2_CAMO_04`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_04`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_04`, `COMPONENT_PISTOL_MK2_CAMO_04`, `COMPONENT_REVOLVER_MK2_CAMO_04`, `COMPONENT_SNSPISTOL_MK2_CAMO_04`},
usetime = 2500
}
},

['at_skin_sessanta'] = {
label = 'Sessanta Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_05`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_05`, `COMPONENT_COMBATMG_MK2_CAMO_05`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_05`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_05`, `COMPONENT_CARBINERIFLE_MK2_CAMO_05`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_05`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_05`, `COMPONENT_PISTOL_MK2_CAMO_05`, `COMPONENT_REVOLVER_MK2_CAMO_05`, `COMPONENT_SNSPISTOL_MK2_CAMO_05`},
usetime = 2500
}
},

['at_skin_perseus'] = {
label = 'Perseus Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_06`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_06`, `COMPONENT_COMBATMG_MK2_CAMO_06`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_06`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_06`, `COMPONENT_CARBINERIFLE_MK2_CAMO_06`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_06`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_06`, `COMPONENT_PISTOL_MK2_CAMO_06`, `COMPONENT_REVOLVER_MK2_CAMO_06`, `COMPONENT_SNSPISTOL_MK2_CAMO_06`},
usetime = 2500
}
},

['at_skin_leopard'] = {
label = 'Leopard Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_07`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_07`, `COMPONENT_COMBATMG_MK2_CAMO_07`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_07`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_07`, `COMPONENT_CARBINERIFLE_MK2_CAMO_07`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_07`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_07`, `COMPONENT_PISTOL_MK2_CAMO_07`, `COMPONENT_REVOLVER_MK2_CAMO_07`, `COMPONENT_SNSPISTOL_MK2_CAMO_07`},
usetime = 2500
}
},

['at_skin_zebra'] = {
label = 'Zebra Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_08`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_08`,`COMPONENT_COMBATMG_MK2_CAMO_08`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_08`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_08`, `COMPONENT_CARBINERIFLE_MK2_CAMO_08`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_08`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_08`, `COMPONENT_PISTOL_MK2_CAMO_08`, `COMPONENT_REVOLVER_MK2_CAMO_08`, `COMPONENT_SNSPISTOL_MK2_CAMO_08`},
usetime = 2500
}
},

['at_skin_geometric'] = {
label = 'Geometric Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_09`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_09`, `COMPONENT_COMBATMG_MK2_CAMO_09`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_09`,`COMPONENT_ASSAULTRIFLE_MK2_CAMO_09`, `COMPONENT_CARBINERIFLE_MK2_CAMO_09`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_09`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_09`, `COMPONENT_PISTOL_MK2_CAMO_09`, `COMPONENT_REVOLVER_MK2_CAMO_09`, `COMPONENT_SNSPISTOL_MK2_CAMO_09`},
usetime = 2500
}
},

['at_skin_boom'] = {
label = 'Boom Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_10`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_10`, `COMPONENT_COMBATMG_MK2_CAMO_10`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_10`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_10`, `COMPONENT_CARBINERIFLE_MK2_CAMO_10`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_10`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_10`, `COMPONENT_PISTOL_MK2_CAMO_10`, `COMPONENT_REVOLVER_MK2_CAMO_10`, `COMPONENT_SNSPISTOL_MK2_CAMO_10`},
usetime = 2500
}
},

['at_skin_patriotic'] = {
label = 'Patriotic Weapon Kit',
type = 'skin',
weight = 50,
client = {
component = {`COMPONENT_HEAVYSNIPER_MK2_CAMO_IND_01`, `COMPONENT_MARKSMANRIFLE_MK2_CAMO_IND_01`, `COMPONENT_COMBATMG_MK2_CAMO_IND_01`, `COMPONENT_PUMPSHOTGUN_MK2_CAMO_IND_01`, `COMPONENT_ASSAULTRIFLE_MK2_CAMO_IND_01`, `COMPONENT_CARBINERIFLE_MK2_CAMO_IND_01`, `COMPONENT_SPECIALCARBINE_MK2_CAMO_IND_01`, `COMPONENT_BULLPUPRIFLE_MK2_CAMO_IND_01`, `COMPONENT_SNSPISTOL_MK2_CAMO_IND_01_SLIDE`, `COMPONENT_REVOLVER_MK2_CAMO_IND_01`, `COMPONENT_PISTOL_MK2_CAMO_IND_01`},
usetime = 2500
}
},
},

Ammo = {
['ammo-22'] = {
label = '.22 Long Rifle',
weight = 3,
},

['ammo-38'] = {
label = '.38 Long Colt',
weight = 10,
},

['ammo-44'] = {
label = '.44 Magnum',
weight = 16,
},

['ammo-45'] = {
label = '.45 ACP',
weight = 9,
},

['ammo-50'] = {
label = '.50 AE',
weight = 19,
},

['ammo-9'] = {
label = '9mm',
weight = 8,
},

['ammo-flare'] = {
label = 'Flare round',
weight = 38,
},

['ammo-heavysniper'] = {
label = '.50 BMG',
weight = 45,
},

['ammo-musket'] = {
label = 'Musket round',
weight = 30,
},

['ammo-rifle'] = {
label = '5.56',
weight = 4,
},

['ammo-rifle2'] = {
label = '7.62',
weight = 8,
},

['ammo-shotgun'] = {
label = '12 Gauge',
weight = 38,
},

['ammo-sniper'] = {
label = '7.62 NATO',
weight = 11,
},

['ammo-emp'] = {
label = 'EMP round',
weight = 400,
},
}
}

This concludes the edits to ox_inventory, and we can now continue with our installation process. Please proceed to either the qb-core, ESX, or standalone instalation guide.