Kartik Scripts

qb / ps / lj-inventory

This guide covers every qb-core based inventory: qb-inventory, ps-inventory, lj-inventory, and also works as a reference for qs-inventory, codem-inventory, tgiann-inventory and origen_inventory.

1. Add the item definitions

  1. Open your shared items file. Depending on your framework version this is one of:
    • qb-core/shared/items.lua
    • [qb]/qb-core/shared/items.lua
    • ox_inventory-style data files for qs / codem / tgiann / origen
  2. Scroll to the end of the QBShared.Items = { ... } table.
  3. Paste the following item code inside that table:
['bandage']           = { name = 'bandage', label = 'Bandage', weight = 50, type = 'item', image = 'bandage.png', unique = false, useable = true, shouldClose = true, description = 'Controls minor bleeding' },
['gauze']             = { name = 'gauze', label = 'Gauze Packing', weight = 40, type = 'item', image = 'gauze.png', unique = false, useable = true, shouldClose = true, description = 'Controls moderate bleeding' },
['pressure_dressing'] = { name = 'pressure_dressing', label = 'Pressure Dressing', weight = 80, type = 'item', image = 'pressure_dressing.png', unique = false, useable = true, shouldClose = true, description = 'Controls severe bleeding' },
['hemostatic_gauze']  = { name = 'hemostatic_gauze', label = 'Hemostatic Gauze', weight = 80, type = 'item', image = 'hemostatic_gauze.png', unique = false, useable = true, shouldClose = true, description = 'Stops arterial bleeding' },
['tourniquet']        = { name = 'tourniquet', label = 'Tourniquet', weight = 120, type = 'item', image = 'tourniquet.png', unique = false, useable = true, shouldClose = true, description = 'Stops limb bleeding' },
['antiseptic']        = { name = 'antiseptic', label = 'Antiseptic', weight = 100, type = 'item', image = 'antiseptic.png', unique = false, useable = true, shouldClose = true, description = 'Cleans wounds' },
['irrigation_kit']    = { name = 'irrigation_kit', label = 'Wound Irrigation Kit', weight = 250, type = 'item', image = 'irrigation_kit.png', unique = false, useable = true, shouldClose = true, description = 'Flushes infected wounds' },
['antibiotic_cream']  = { name = 'antibiotic_cream', label = 'Antibiotic Cream', weight = 60, type = 'item', image = 'antibiotic_cream.png', unique = false, useable = true, shouldClose = true, description = 'Treats mild infections' },
['suture_kit']        = { name = 'suture_kit', label = 'Suture Kit', weight = 150, type = 'item', image = 'suture_kit.png', unique = false, useable = true, shouldClose = true, description = 'Closes deep wounds' },
['splint']            = { name = 'splint', label = 'Splint', weight = 300, type = 'item', image = 'splint.png', unique = false, useable = true, shouldClose = true, description = 'Immobilises a broken limb' },
['cervical_collar']   = { name = 'cervical_collar', label = 'Cervical Collar', weight = 300, type = 'item', image = 'cervical_collar.png', unique = false, useable = true, shouldClose = true, description = 'Stabilises neck injuries' },
['cast_kit']          = { name = 'cast_kit', label = 'Cast Kit', weight = 600, type = 'item', image = 'cast_kit.png', unique = false, useable = true, shouldClose = true, description = 'Hospital cast' },
['burn_dressing']     = { name = 'burn_dressing', label = 'Burn Dressing', weight = 80, type = 'item', image = 'burn_dressing.png', unique = false, useable = true, shouldClose = true, description = 'Dresses burns' },
['ice_pack']          = { name = 'ice_pack', label = 'Ice Pack', weight = 200, type = 'item', image = 'ice_pack.png', unique = false, useable = true, shouldClose = true, description = 'Reduces bruising' },
['chest_seal']        = { name = 'chest_seal', label = 'Chest Seal', weight = 60, type = 'item', image = 'chest_seal.png', unique = false, useable = true, shouldClose = true, description = 'Seals an open chest wound' },
['decompression_needle'] = { name = 'decompression_needle', label = 'Decompression Needle', weight = 40, type = 'item', image = 'decompression_needle.png', unique = false, useable = true, shouldClose = true, description = 'Relieves a tension pneumothorax' },
['pelvic_binder']     = { name = 'pelvic_binder', label = 'Pelvic Binder', weight = 500, type = 'item', image = 'pelvic_binder.png', unique = false, useable = true, shouldClose = true, description = 'Holds a broken pelvis together' },
['airway_kit']        = { name = 'airway_kit', label = 'Suction & Airway Kit', weight = 400, type = 'item', image = 'airway_kit.png', unique = false, useable = true, shouldClose = true, description = 'Clears fluid from the airway' },
['xray_film']         = { name = 'xray_film', label = 'X-Ray Film', weight = 80, type = 'item', image = 'xray_film.png', unique = true, useable = true, shouldClose = true, description = 'Read it on a lightbox' },
['ultrasound']        = { name = 'ultrasound', label = 'Portable Ultrasound', weight = 1200, type = 'item', image = 'ultrasound.png', unique = true, useable = true, shouldClose = true, description = 'Bedside FAST scan' },
['io_needle']         = { name = 'io_needle', label = 'IO Needle', weight = 60, type = 'item', image = 'io_needle.png', unique = false, useable = true, shouldClose = true, description = 'Bone access needle' },
['intubation_kit']    = { name = 'intubation_kit', label = 'Intubation Kit', weight = 350, type = 'item', image = 'intubation_kit.png', unique = false, useable = true, shouldClose = true, description = 'Secures the airway' },
['morphine']          = { name = 'morphine', label = 'Morphine', weight = 20, type = 'item', image = 'morphine.png', unique = false, useable = true, shouldClose = true, description = 'Strong painkiller' },
['fentanyl']          = { name = 'fentanyl', label = 'Fentanyl', weight = 20, type = 'item', image = 'fentanyl.png', unique = false, useable = true, shouldClose = true, description = 'Very strong painkiller' },
['epinephrine']       = { name = 'epinephrine', label = 'Epinephrine', weight = 20, type = 'item', image = 'epinephrine.png', unique = false, useable = true, shouldClose = true, description = 'Adrenaline' },
['naloxone']          = { name = 'naloxone', label = 'Naloxone (Narcan)', weight = 20, type = 'item', image = 'naloxone.png', unique = false, useable = true, shouldClose = true, description = 'Reverses overdoses' },
['propofol']          = { name = 'propofol', label = 'Propofol', weight = 30, type = 'item', image = 'propofol.png', unique = false, useable = true, shouldClose = true, description = 'Sedative' },
['paracetamol']       = { name = 'paracetamol', label = 'Paracetamol', weight = 10, type = 'item', image = 'paracetamol.png', unique = false, useable = true, shouldClose = true, description = 'Mild painkiller' },
['ibuprofen']         = { name = 'ibuprofen', label = 'Ibuprofen', weight = 10, type = 'item', image = 'ibuprofen.png', unique = false, useable = true, shouldClose = true, description = 'Anti-inflammatory' },
['tramadol']          = { name = 'tramadol', label = 'Tramadol', weight = 10, type = 'item', image = 'tramadol.png', unique = false, useable = true, shouldClose = true, description = 'Prescription painkiller' },
['antibiotics']       = { name = 'antibiotics', label = 'Antibiotics', weight = 10, type = 'item', image = 'antibiotics.png', unique = false, useable = true, shouldClose = true, description = 'Bacterial infections' },
['antihistamine']     = { name = 'antihistamine', label = 'Antihistamine', weight = 10, type = 'item', image = 'antihistamine.png', unique = false, useable = true, shouldClose = true, description = 'Allergies' },
['cough_syrup']       = { name = 'cough_syrup', label = 'Cough Syrup', weight = 150, type = 'item', image = 'cough_syrup.png', unique = false, useable = true, shouldClose = true, description = 'Respiratory illness' },
['anxiolytic']        = { name = 'anxiolytic', label = 'Anti-Anxiety Medication', weight = 10, type = 'item', image = 'anxiolytic.png', unique = false, useable = true, shouldClose = true, description = 'Panic attacks' },
['antiviral']         = { name = 'antiviral', label = 'Antiviral', weight = 10, type = 'item', image = 'antiviral.png', unique = false, useable = true, shouldClose = true, description = 'Viral illness' },
['antiemetic']        = { name = 'antiemetic', label = 'Antiemetic', weight = 10, type = 'item', image = 'antiemetic.png', unique = false, useable = true, shouldClose = true, description = 'Nausea' },
['glucose_gel']       = { name = 'glucose_gel', label = 'Glucose Gel', weight = 40, type = 'item', image = 'glucose_gel.png', unique = false, useable = true, shouldClose = true, description = 'Low blood sugar' },
['insulin']           = { name = 'insulin', label = 'Insulin', weight = 30, type = 'item', image = 'insulin.png', unique = false, useable = true, shouldClose = true, description = 'High blood sugar' },
['oxygen_mask']       = { name = 'oxygen_mask', label = 'Oxygen Mask', weight = 800, type = 'item', image = 'oxygen_mask.png', unique = false, useable = true, shouldClose = true, description = 'Improves oxygen' },
['saline_bag']        = { name = 'saline_bag', label = 'Saline IV (500ml)', weight = 550, type = 'item', image = 'saline_bag.png', unique = false, useable = true, shouldClose = true, description = 'Restores fluid volume' },
['electrolytes']      = { name = 'electrolytes', label = 'Electrolyte Drink', weight = 350, type = 'item', image = 'electrolytes.png', unique = false, useable = true, shouldClose = true, description = 'Dehydration' },
['blood_bag']         = { name = 'blood_bag', label = 'Blood Bag', weight = 520, type = 'item', image = 'blood_bag.png', unique = true, useable = true, shouldClose = true, description = 'Check the blood type before use' },
['blood_tube']        = { name = 'blood_tube', label = 'Blood Tube', weight = 20, type = 'item', image = 'blood_tube.png', unique = true, useable = true, shouldClose = true, description = 'Patient blood sample' },
['pulse_oximeter']    = { name = 'pulse_oximeter', label = 'Pulse Oximeter', weight = 100, type = 'item', image = 'pulse_oximeter.png', unique = true, useable = true, shouldClose = true, description = 'Heart rate & oxygen' },
['bp_cuff']           = { name = 'bp_cuff', label = 'Blood Pressure Cuff', weight = 400, type = 'item', image = 'bp_cuff.png', unique = true, useable = true, shouldClose = true, description = 'Blood pressure' },
['thermometer']       = { name = 'thermometer', label = 'Thermometer', weight = 50, type = 'item', image = 'thermometer.png', unique = true, useable = true, shouldClose = true, description = 'Temperature' },
['stethoscope']       = { name = 'stethoscope', label = 'Stethoscope', weight = 200, type = 'item', image = 'stethoscope.png', unique = true, useable = true, shouldClose = true, description = 'Lung & heart sounds' },
['penlight']          = { name = 'penlight', label = 'Penlight', weight = 50, type = 'item', image = 'penlight.png', unique = true, useable = true, shouldClose = true, description = 'Pupil reaction' },
['glucometer']        = { name = 'glucometer', label = 'Glucometer', weight = 100, type = 'item', image = 'glucometer.png', unique = true, useable = true, shouldClose = true, description = 'Blood sugar' },
['defibrillator']     = { name = 'defibrillator', label = 'Defibrillator', weight = 2500, type = 'item', image = 'defibrillator.png', unique = true, useable = true, shouldClose = true, description = 'Shocks a shockable rhythm' },
['patient_monitor']   = { name = 'patient_monitor', label = 'Patient Monitor', weight = 4000, type = 'item', image = 'patient_monitor.png', unique = true, useable = true, shouldClose = true, description = 'Deployable monitor' },
['medbag']            = { name = 'medbag', label = 'Medical Bag', weight = 1500, type = 'item', image = 'medbag.png', unique = true, useable = true, shouldClose = true, description = 'Deployable medical bag' },
['stretcher']         = { name = 'stretcher', label = 'Folded Stretcher', weight = 8000, type = 'item', image = 'stretcher.png', unique = true, useable = true, shouldClose = true, description = 'Deploy a stretcher' },
['wheelchair']        = { name = 'wheelchair', label = 'Wheelchair', weight = 9000, type = 'item', image = 'wheelchair.png', unique = true, useable = true, shouldClose = true, description = 'Deploy a wheelchair' },
['crutch']            = { name = 'crutch', label = 'Crutch', weight = 1200, type = 'item', image = 'crutch.png', unique = true, useable = true, shouldClose = true, description = 'Walk with a leg injury' },
['breathalyzer']      = { name = 'breathalyzer', label = 'Breathalyzer', weight = 200, type = 'item', image = 'breathalyzer.png', unique = false, useable = false, shouldClose = true, description = 'Reads blood alcohol from a breath sample' },
['dna_swab']          = { name = 'dna_swab', label = 'DNA Swab', weight = 10, type = 'item', image = 'dna_swab.png', unique = false, useable = false, shouldClose = true, description = 'Collect DNA from a dead body' },
['dna_sample']        = { name = 'dna_sample', label = 'DNA Sample', weight = 15, type = 'item', image = 'dna_sample.png', unique = true, useable = false, shouldClose = true, description = 'Analyse it at the hospital lab' },
['bodybag']           = { name = 'bodybag', label = 'Body Bag', weight = 1000, type = 'item', image = 'bodybag.png', unique = false, useable = true, shouldClose = true, description = 'For deceased patients' },
['first_aid_kit']     = { name = 'first_aid_kit', label = 'First Aid Kit', weight = 500, type = 'item', image = 'first_aid_kit.png', unique = false, useable = true, shouldClose = true, description = 'Basic first aid' },
['revive_kit']        = { name = 'revive_kit', label = 'Revive Kit', weight = 800, type = 'item', image = 'revive_kit.png', unique = false, useable = true, shouldClose = true, description = 'Emergency revive' },
['pager']             = { name = 'pager', label = 'Pager', weight = 150, type = 'item', image = 'pager.png', unique = true, useable = true, shouldClose = true, description = 'Receive EMS pages' },
['medical_report']    = { name = 'medical_report', label = 'Medical report', weight = 10, type = 'item', image = 'medical_report.png', unique = true, useable = true, shouldClose = true, description = 'A signed medical document' },
['prescription']      = { name = 'prescription', label = 'Prescription', weight = 10, type = 'item', image = 'prescription.png', unique = true, useable = true, shouldClose = true, description = 'Use it to read the prescription' },
['saline_bag_small']  = { name = 'saline_bag_small', label = 'Saline IV (250ml)', weight = 300, type = 'item', image = 'saline_bag_small.png', unique = false, useable = false, shouldClose = true, description = 'Small fluid bag' },
['thermal_blanket']   = { name = 'thermal_blanket', label = 'Thermal Blanket', weight = 300, type = 'item', image = 'thermal_blanket.png', unique = false, useable = true, shouldClose = true, description = 'Warms up a cold patient' },
['magnesium']         = { name = 'magnesium', label = 'Magnesium Sulfate', weight = 60, type = 'item', image = 'magnesium.png', unique = false, useable = false, shouldClose = true, description = 'IV antiarrhythmic' },
['amiodarone']        = { name = 'amiodarone', label = 'Amiodarone', weight = 60, type = 'item', image = 'amiodarone.png', unique = false, useable = false, shouldClose = true, description = 'IV antiarrhythmic' },
['vicodin']           = { name = 'vicodin', label = 'Vicodin', weight = 20, type = 'item', image = 'vicodin.png', unique = false, useable = true, shouldClose = true, description = 'Prescription pain relief' },
['melatonin']         = { name = 'melatonin', label = 'Melatonin', weight = 20, type = 'item', image = 'melatonin.png', unique = false, useable = true, shouldClose = true, description = 'Helps with sleep' },

2. Remove duplicates

qb-core ships with some of these names already. Search for them and keep one definition of each:

bandage   medbag   first_aid_kit   defibrillator   stretcher   wheelchair

Old qb medical items often have useable = true with a handler in qb-ambulancejob. Since that resource is removed, those handlers are gone, use our definitions.


3. Add the images

Copy every PNG from the script's images/items/ folder into your inventory's image folder:

InventoryFolder
qb-inventoryqb-inventory/html/images/
ps-inventoryps-inventory/html/images/
lj-inventorylj-inventory/html/images/
qs-inventoryqs-inventory/html/images/

4. Restart

restart qb-core
restart qb-inventory
restart kartik-ambulancejob

Or restart the server.


✅ Check it worked

/giveitem 1 bandage 5

The item should appear with its icon and description.

On this page