Browse docs
Inventory Items
The restraint runtime belongs to sky_jobs_base, so its inventory items must be installed even when
you use the Crime System without the Police Job.
| Item | Used by | Default requirement |
|---|---|---|
handcuffs | Metal handcuffs | Required and consumed on use |
handcuffs_keys | Removing metal handcuffs | Optional while Config.PoliceCuffs.key.enabled = false; not consumed |
zipties | Plastic restraints | Required and consumed on use |
wire_cutter | Cutting zipties | Required when the cutter action is used |
legcuffs | Leg restraints | Optional while Config.LegRestraints.requireItem = false |
headbag | Head-bag interaction | Required |
The keys and requirement behavior are configured in sky_jobs_base/config/config.lua under
Config.PoliceCuffs, Config.LegRestraints, and Config.HeadBag.
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 config | Used by | Default behavior |
|---|---|---|
gps_jammer | Config.EmployeeGpsJammer | Enabled, required, and consumed on use |
tablet | Config.Tablet.item | Registers a usable tablet item; radial access does not require it by default |
gps | Config.ColleagueMapBlips.item | Only required when requireItem = true |
Config.PropPlacement.items | Usable Police/Ambulance props | Enabled; each retained entry needs its configured item |
printer_paper | Shared printer refill item | Only 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.
Config.EmployeeGpsJammer, Config.Tablet, Config.ColleagueMapBlips, and
Config.PropPlacement.items, plus the consuming job's printerSettings.refillItem when paper
handling is enabled.Restraint and printer-paper definitions
Copy the supplied handcuffs.png, handcuffs_keys.png, zipties.png, wire_cutter.png,
legcuffs.png, and headbag.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'
},
['printer_paper'] = {
label = 'Printer Paper',
weight = 100,
stack = true,
close = true,
description = 'Paper used to refill configured job printers'
},
['handcuffs'] = {
['name'] = 'handcuffs', ['label'] = 'Handcuffs', ['weight'] = 250,
['type'] = 'item', ['image'] = 'handcuffs.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Metal handcuffs for restraining suspects'
},
['handcuffs_keys'] = {
['name'] = 'handcuffs_keys', ['label'] = 'Handcuff Keys', ['weight'] = 100,
['type'] = 'item', ['image'] = 'handcuffs_keys.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = false, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Keys used to remove metal handcuffs'
},
['zipties'] = {
['name'] = 'zipties', ['label'] = 'Zipties', ['weight'] = 100,
['type'] = 'item', ['image'] = 'zipties.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Plastic zipties for restraining suspects'
},
['wire_cutter'] = {
['name'] = 'wire_cutter', ['label'] = 'Wire Cutter', ['weight'] = 800,
['type'] = 'item', ['image'] = 'wire_cutter.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Tool used to cut restraints'
},
['legcuffs'] = {
['name'] = 'legcuffs', ['label'] = 'Leg Cuffs', ['weight'] = 300,
['type'] = 'item', ['image'] = 'legcuffs.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Leg restraints that slow down a restrained suspect'
},
['headbag'] = {
['name'] = 'headbag', ['label'] = 'Head Bag', ['weight'] = 250,
['type'] = 'item', ['image'] = 'headbag.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Bag used to cover a restrained suspect'
},
['printer_paper'] = {
['name'] = 'printer_paper', ['label'] = 'Printer Paper', ['weight'] = 100,
['type'] = 'item', ['image'] = 'printer_paper.png', ['unique'] = false,
['rare'] = 'common', ['useable'] = true, ['shouldClose'] = true,
['combinable'] = nil, ['description'] = 'Paper used to refill configured job printers'
},
handcuffs = {name = 'handcuffs', label = 'Handcuffs', weight = 250, shouldClose = true, description = 'Metal handcuffs for restraining suspects', unique = false, type = 'item', image = 'handcuffs.png', useable = true},
handcuffs_keys = {name = 'handcuffs_keys', label = 'Handcuff Keys', weight = 100, shouldClose = true, description = 'Keys used to remove metal handcuffs', unique = false, type = 'item', image = 'handcuffs_keys.png', useable = false},
zipties = {name = 'zipties', label = 'Zipties', weight = 100, shouldClose = true, description = 'Plastic zipties for restraining suspects', unique = false, type = 'item', image = 'zipties.png', useable = true},
wire_cutter = {name = 'wire_cutter', label = 'Wire Cutter', weight = 800, shouldClose = true, description = 'Tool used to cut restraints', unique = false, type = 'item', image = 'wire_cutter.png', useable = true},
legcuffs = {name = 'legcuffs', label = 'Leg Cuffs', weight = 300, shouldClose = true, description = 'Leg restraints that slow down a restrained suspect', unique = false, type = 'item', image = 'legcuffs.png', useable = true},
headbag = {name = 'headbag', label = 'Head Bag', weight = 250, shouldClose = true, description = 'Bag used to cover a restrained suspect', unique = false, type = 'item', image = 'headbag.png', useable = true},
printer_paper = {name = 'printer_paper', label = 'Printer Paper', weight = 100, shouldClose = true, description = 'Paper used to refill configured job printers', unique = false, type = 'item', image = 'printer_paper.png', useable = true},
handcuffs = {
label = 'Handcuffs', weight = 250, type = 'item', image = 'handcuffs.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Metal handcuffs for restraining suspects'
},
handcuffs_keys = {
label = 'Handcuff Keys', weight = 100, type = 'item', image = 'handcuffs_keys.png',
hasMetadata = false, useable = false, shouldClose = true,
description = 'Keys used to remove metal handcuffs'
},
zipties = {
label = 'Zipties', weight = 100, type = 'item', image = 'zipties.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Plastic zipties for restraining suspects'
},
wire_cutter = {
label = 'Wire Cutter', weight = 800, type = 'item', image = 'wire_cutter.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Tool used to cut restraints'
},
legcuffs = {
label = 'Leg Cuffs', weight = 300, type = 'item', image = 'legcuffs.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Leg restraints that slow down a restrained suspect'
},
headbag = {
label = 'Head Bag', weight = 250, type = 'item', image = 'headbag.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Bag used to cover a restrained suspect'
},
printer_paper = {
label = 'Printer Paper', weight = 100, type = 'item', image = 'printer_paper.png',
hasMetadata = false, useable = true, shouldClose = true,
description = 'Paper used to refill configured job printers'
},
['handcuffs'] = {
label = 'Handcuffs', weight = 0.25, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'handcuffs.png',
description = 'Metal handcuffs for restraining suspects'
},
['handcuffs_keys'] = {
label = 'Handcuff Keys', weight = 0.1, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'handcuffs_keys.png',
description = 'Keys used to remove metal handcuffs'
},
['zipties'] = {
label = 'Zipties', weight = 0.1, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'zipties.png',
description = 'Plastic zipties for restraining suspects'
},
['wire_cutter'] = {
label = 'Wire Cutter', weight = 0.8, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'wire_cutter.png',
description = 'Tool used to cut restraints'
},
['legcuffs'] = {
label = 'Leg Cuffs', weight = 0.3, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'legcuffs.png',
description = 'Leg restraints that slow down a restrained suspect'
},
['headbag'] = {
label = 'Head Bag', weight = 0.25, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'headbag.png',
description = 'Bag used to cover a restrained suspect'
},
['printer_paper'] = {
label = 'Printer Paper', weight = 0.1, stackable = true, close = true,
maxStack = 100, type = 'item', rarity = 'common', image = 'printer_paper.png',
description = 'Paper used to refill configured job printers'
},
["handcuffs"] = {
["name"] = "handcuffs", ["label"] = "Handcuffs", ["weight"] = 250,
["type"] = "item", ["image"] = "handcuffs.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Metal handcuffs for restraining suspects"
},
["handcuffs_keys"] = {
["name"] = "handcuffs_keys", ["label"] = "Handcuff Keys", ["weight"] = 100,
["type"] = "item", ["image"] = "handcuffs_keys.png", ["unique"] = false,
["usable"] = false, ["shouldClose"] = true,
["description"] = "Keys used to remove metal handcuffs"
},
["zipties"] = {
["name"] = "zipties", ["label"] = "Zipties", ["weight"] = 100,
["type"] = "item", ["image"] = "zipties.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Plastic zipties for restraining suspects"
},
["wire_cutter"] = {
["name"] = "wire_cutter", ["label"] = "Wire Cutter", ["weight"] = 800,
["type"] = "item", ["image"] = "wire_cutter.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Tool used to cut restraints"
},
["legcuffs"] = {
["name"] = "legcuffs", ["label"] = "Leg Cuffs", ["weight"] = 300,
["type"] = "item", ["image"] = "legcuffs.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Leg restraints that slow down a restrained suspect"
},
["headbag"] = {
["name"] = "headbag", ["label"] = "Head Bag", ["weight"] = 250,
["type"] = "item", ["image"] = "headbag.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Bag used to cover a restrained suspect"
},
["printer_paper"] = {
["name"] = "printer_paper", ["label"] = "Printer Paper", ["weight"] = 100,
["type"] = "item", ["image"] = "printer_paper.png", ["unique"] = false,
["usable"] = true, ["shouldClose"] = true,
["description"] = "Paper used to refill configured job printers"
},
INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`) VALUES
('handcuffs', 'Handcuffs', 1, 0, 1),
('handcuffs_keys', 'Handcuff Keys', 1, 0, 1),
('zipties', 'Zipties', 1, 0, 1),
('wire_cutter', 'Wire Cutter', 1, 0, 1),
('legcuffs', 'Leg Cuffs', 1, 0, 1),
('headbag', 'Head Bag', 1, 0, 1),
('printer_paper', 'Printer Paper', 1, 0, 1);
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.