Browse docs

Inventory Items

Register the restraint, drug-test, tablet, GPS-jammer, and prop-placement items used by Sky Jobs Base.

The restraint and drug-test runtimes belong to sky_jobs_base, so their inventory items must be installed even when you use the Crime System without the Police or Ambulance Job resources.

ItemUsed byDefault requirement
handcuffsMetal handcuffsRequired and consumed on use
handcuffs_keysRemoving metal handcuffsOptional while Config.PoliceCuffs.key.enabled = false; not consumed
ziptiesPlastic restraintsRequired and consumed on use
wire_cutterCutting ziptiesRequired when the cutter action is used
legcuffsLeg restraintsOptional while Config.LegRestraints.requireItem = false
headbagHead-bag interactionRequired
drug_test_kitPolice rapid drug screeningRequired while the simple drug test is enabled; consumed after a successful test
advanced_drug_test_kitAmbulance advanced drug screeningRequired while the advanced drug test is enabled; consumed after a successful test
fake_drug_sample_cleanTransferable clean fake sampleRequired for the fake-sample workflow; consumed when prepared

The keys and requirement behavior are configured in sky_jobs_base/config/config.lua under Config.PoliceCuffs, Config.LegRestraints, Config.HeadBag, and Config.DrugTests.

Other item-backed Jobs Base systems

The default Jobs Base configuration also contains these item-backed systems. Register the matching items for every system you keep enabled, or disable/remove the item binding before first start.

Item or configUsed byDefault behavior
gps_jammerConfig.EmployeeGpsJammerEnabled, required, and consumed on use
tabletConfig.Tablet.itemRegisters a usable tablet item; radial access does not require it by default
gpsConfig.ColleagueMapBlips.itemOnly required when requireItem = true
Config.PropPlacement.itemsUsable Police/Ambulance propsEnabled; each retained entry needs its configured item
printer_paperShared printer refill itemOnly required when a consuming job enables printer paper handling and keeps this item key

The shipped prop-item keys are:

  • Shared: job_traffic_cone, job_worklight_stand, job_worklight
  • Police: police_barrier, police_road_barrier, police_evidence_marker, police_stinger_spikes, police_checkpoint_tent
  • Ambulance: ambulance_barrier, ambulance_medical_crate, ambulance_defibrillator, ambulance_medical_bag

Jobs Base does not ship preview images for these additional items, including printer_paper. Supply matching images from your inventory pack, rename the configured keys to existing items, or disable the corresponding system. Set Config.Tablet.item = "" when the tablet should not register a usable item.

Use the same inventory-specific structure shown below for additional Jobs Base items. The item names must exactly match Config.EmployeeGpsJammer, Config.Tablet, Config.ColleagueMapBlips, and Config.PropPlacement.items, plus the consuming job's printerSettings.refillItem when paper handling is enabled.

Shared item definitions

Copy the supplied handcuffs.png, handcuffs_keys.png, zipties.png, wire_cutter.png, legcuffs.png, headbag.png, drug_test_kit.png, advanced_drug_test_kit.png, and fake_drug_sample_clean.png files from sky_jobs_base/config/inventory into your inventory image folder. The optional printer_paper definition is included for convenience, but Jobs Base does not ship printer_paper.png; provide your own icon when a printer consumes this item.

['handcuffs'] = {
    label = 'Handcuffs',
    weight = 250,
    stack = true,
    close = true,
    description = 'Metal handcuffs for restraining suspects'
},
['handcuffs_keys'] = {
    label = 'Handcuff Keys',
    weight = 100,
    stack = true,
    close = true,
    description = 'Keys used to remove metal handcuffs'
},
['zipties'] = {
    label = 'Zipties',
    weight = 100,
    stack = true,
    close = true,
    description = 'Plastic zipties for restraining suspects'
},
['wire_cutter'] = {
    label = 'Wire Cutter',
    weight = 800,
    stack = true,
    close = true,
    description = 'Tool used to cut restraints'
},
['legcuffs'] = {
    label = 'Leg Cuffs',
    weight = 300,
    stack = true,
    close = true,
    description = 'Leg restraints that slow down a restrained suspect'
},
['headbag'] = {
    label = 'Head Bag',
    weight = 250,
    stack = true,
    close = true,
    description = 'Bag used to cover a restrained suspect'
},
['drug_test_kit'] = {
    label = 'Drug Test Kit',
    weight = 100,
    stack = true,
    close = true,
    description = 'A rapid screening test for active drug influence'
},
['advanced_drug_test_kit'] = {
    label = 'Advanced Drug Test Kit',
    weight = 150,
    stack = true,
    close = true,
    description = 'A medical screening test that identifies active substances and dose amounts'
},
['fake_drug_sample_clean'] = {
    label = 'Clean Fake Drug Sample',
    weight = 100,
    stack = true,
    close = true,
    description = "A transferable clean sample that falsifies the carrier's next drug test after use"
},
['printer_paper'] = {
    label = 'Printer Paper',
    weight = 100,
    stack = true,
    close = true,
    description = 'Paper used to refill configured job printers'
},
The qb-core definitions also cover qb-inventory, ps-inventory, and jpr-inventory because those inventories read QBShared.Items. For another inventory, transfer the same item names, labels, weights, and image names into its supported format.