Browse docs

Inventory items

Set up DOJ items for ox_inventory, CodeM V2, QS, QB-Core, Tgiann, Jaksam and CodeM, including icons, metadata and shared printer items.

Items used by DOJ

Default itemPurposeRequirement
doj_documentA physical printed DOJ document with its own copy metadataRequired for printed document delivery and reading
job_documentA printed register certificate or shared job documentRequired for registry certificate printing; supplied by Sky Jobs Base
doj_law_bookA readable law-book item with an archived editionRequired when using inventory law books
sky_briefcaseAn inventory-backed briefcase for carrying case materialOptional; supplied by Sky Jobs Base
sky_case_folderAn inventory-backed folder for case files and loose documentsOptional; supplied by Sky Jobs Base
printer_paperPaper refill itemRequired only when the configured printer consumes paper
printer_inkInk refill itemRequired only when the configured shared printer settings consume ink

The two DOJ-specific items are doj_document and doj_law_book. The remaining items belong to Jobs Base inventory items and use its definitions.

Prepare your inventory

Choose the active inventory

Use the tab for the inventory your server actually runs, regardless of the framework. An ESX or Qbox server running ox_inventory needs the ox_inventory definitions.

Add or correct the item definitions

Merge the DOJ definitions into the existing item table. Keep your other items and customized labels or weights. Both DOJ items must remain non-stackable and reusable, and the inventory must preserve each item's metadata.

Install the images and shared items

Download the DOJ icons below and copy them to your inventory's image directory. Add the shared items needed for register certificates, printer supplies and portable case containers.

Reload and test

Reload the inventory through its supported process before starting the Sky resources; restart the server if your inventory requires it. Test an issued document and a law book as a regular player using the steps under Metadata matters.

The resource registers usable actions through the Sky inventory adapter and preserves existing item definitions. Inventories such as ox_inventory and CodeM V2 require the catalog entries to exist before the Sky resources start. Automatic registration does not correct a pre-existing item's stack or metadata settings.

Printed documents and archived law books require individual item metadata. The standard ESX and VRP inventory adapters do not provide it, so adding rows to the ESX items table alone does not enable these workflows. Use an inventory with the required metadata support; an ESX server can still use the ox_inventory or other supported provider tab.

Ready-to-copy item definitions

Each tab contains both DOJ-specific items. Add them inside your existing item table, keeping the commas between entries.

TabWhere to add the definitionsImage destination
ox_inventoryox_inventory/data/items.lua, inside return { ... }ox_inventory/web/images/
codem-inventoryv2codem-inventoryv2/data/items.lua, inside the existing item tablecodem-inventory-images/images/
qs-inventoryqs-inventory/shared/items.lua on ESX, or qb-core/shared/items.lua on QBCoreThe image directory configured by QS
qb-coreqb-core/shared/items.lua, inside QBShared.Itemsqb-inventory/html/images/, or the image directory of your QB-compatible inventory
tgiann-inventorytgiann-inventory/items/items.lua, inside the existing item tableThe image directory configured by Tgiann
jaksam_inventoryjaksam_inventory/_data/items.lua, inside the existing item tableThe image directory configured by Jaksam
codem-inventorycodem-inventory/config/itemlist.lua, inside Config.ItemlistThe image directory configured by CodeM

The qb-core definitions also cover inventories such as ps-inventory and jpr-inventory that read QBShared.Items. For another inventory, use its own item format with the same names, labels and images, and enable per-item metadata and non-stackable items.

The starting weights are 10 grams for doj_document and 500 grams for doj_law_book. Jaksam uses kilograms in these definitions, so its values are 0.01 and 0.5.

Sky registers the Use actions. Do not add a second reader action or automatic consumption. Keep consume = 0 in the ox_inventory, CodeM V2 and Tgiann entries. CodeM V2 resolves icons by item name and does not need a client block; see CodeM V2 setup and limits.

["doj_document"] = {
    label = "Printed document",
    weight = 10,
    stack = false,
    close = true,
    consume = 0,
    description = "A printed DOJ document. Use it to read the issued copy.",
    client = { image = "doj_document.png" },
},
["doj_law_book"] = {
    label = "Law book",
    weight = 500,
    stack = false,
    close = true,
    consume = 0,
    description = "A law book with an archived edition. Use it to read.",
    client = { image = "doj_law_book.png" },
},

Item images

Both icons are included in sky_dojjob/config/inventory/. Copy them to the image directory in the table above, keeping their filenames. You can also download them here:

Image downloadDestination filename
Printed document PNGdoj_document.png
Law book PNGdoj_law_book.png

For example, ox_inventory needs ox_inventory/web/images/doj_document.png and ox_inventory/web/images/doj_law_book.png. Item definitions and image installation are separate steps. The same resource directory includes items_ox.lua as an ox_inventory merge template and a README.md with setup instructions. For an older package without this directory, use the definitions and downloads on this page.

Shared printer and case items

Printer supplies belong to the Jobs Base package. On ox_inventory, merge the definitions from sky_jobs_base/config/inventory/items_ox.lua and copy printer_paper.png and printer_ink.png from that directory into the inventory image folder. For other inventories, use the matching provider format described on Jobs Base inventory items. Both supplies are stackable; Sky consumes one only after the refill minigame succeeds. Custom supply names must match the job's printer settings.

For register certificates, also merge job_document from that Jobs Base file and copy job_document.png into ox_inventory/web/images/. It is a separate item from doj_document; keep the printer-issued metadata on both.

Portable case containers also belong to Jobs Base. Merge the sky_briefcase and sky_case_folder definitions from that same file and copy sky_briefcase.png and sky_case_folder.png into the inventory image folder. Both are non-stackable and keep their own contents through transfers. The briefcase can be shown or hidden on the player's right hand through the Jobs Base custom actions; the case folder is an inventory-only container. See the shared Jobs Base inventory items reference for capacities, provider bridges and the rename/show/hide exports.

Renaming items

Config.PrintedDocuments.item selects the printed-document item and Config.PrintedDocuments.weight supplies its registration weight. Config.LegalCodes.item selects the law-book item. Printer refill names are configured separately in the job's printer settings and shared Jobs Base printer configuration. Use /jobconfig for the managed job settings; saved overrides take precedence.

Changing a name does not automatically migrate items already held by players. Coordinate any rename with inventory definitions, images and stored copies, and test the resulting usable item before distributing it. The Jobs Base briefcase's default allowlist includes doj_document and doj_law_book; update that allowlist too if you rename either item.

Metadata matters

A printed document refers to an issued copy. Keep its copy metadata when moving, transferring or storing the item.

An uninitialized law book records its archived edition on first use. It must occupy its own slot: an existing stack needs to be split into individual books first. Later edits to the legal codes do not change that book's saved edition. The inventory must preserve and update the edition metadata in the exact item slot.

Before opening these workflows to players:

  • Print a saved DOJ document, collect it from the configured printer, and use the resulting doj_document to read that copy. A plain administrator-created doj_document has no issued copy to open.
  • Obtain a single doj_law_book, use it, and check the edition date shown by the reader.
  • Transfer or store each item, retrieve it, and confirm that the same copy or law-book edition opens again.
  • If you enable register certificate printing or portable case containers, test those flows with the shared items too. Printer placement and access are configured through /jobconfig; see Sharing and printing.

An item added to a shop or inventory does not grant tablet access, access to the original case file or permission to sign documents.