QBox
qbx_core (and optionally ox_fuel). You'll need to re-apply these after any qbx_core update.Dependencies
ensure fmLib
ensure qbx_core
ensure one_inventory
Grab the latest fmLib release from GitHub.
Checklist
Drop the resources in
Drop one_inventory/ and the fmLib release folder into your resources/ folder.
Start it from server.cfg
ensure fmLib
ensure qbx_core
ensure one_inventory
Grant yourself admin access
The admin panel and every admin action/command are gated behind a single ACE: one_inventory.admin. Grant it in server.cfg before booting, to a single identifier (recommended) or to a whole group:
# Full access: opens the admin panel AND can run every admin action/command.
# Grant to owners/devs by identifier (recommended) or to a trusted group.
add_ace identifier.license:abc123... one_inventory.admin allow
# or: add_ace group.admin one_inventory.admin allow
Without one_inventory.admin the panel cannot be opened (/inventory:manage is permission-checked), so keep it to owners/devs. Per-group command permissions (who can run /giveitem etc.) are managed in-game in the panel's Permissions tab; out of the box the admin and god groups are seeded with all commands. See the Setting Permissions guide for the full breakdown.
Start the server
Database tables are created automatically on first boot.
(Optional) Migrate from another inventory
Coming from ox_inventory? Remove ensure ox_inventory from server.cfg: one_inventory now answers as ox_inventory, and your ox data is detected from the database. To also import its item, weapon, shop and stash definitions, keep the old folder under another name (for example ox_inventory_old) so its data files stay readable. Then run /inventory:manage in-game and use the migration wizard. See Migrate Inventory.
Apply the qbx_core patches
See the patch list below (plus the optional ox_fuel one if you use it).
Remove the old inventory
Stop the server, delete the (renamed) old inventory folder, then start the server again.
qbx_core patches
Patch 1: qbx_core/server/main.lua
Delete the two elseif blocks (4 lines total) that check for ox_inventory and the inventory:framework convar:
elseif not lib.checkDependency('ox_inventory', '2.42.1', true) then
startupErrors, errorMessage = true, 'ox_inventory version 2.42.1 or higher is required'
elseif GetConvar('inventory:framework', '') ~= 'qbx' then
startupErrors, errorMessage = true, 'inventory:framework must be set to "qbx" in order to use qbx_core'
The surrounding if not lib.checkDependency('ox_lib', ...) and if startupErrors then blocks stay as-is.
This patch is still required even though one_inventory answers as ox_inventory: the version check reads one_inventory's own version number, which is lower than the ox_inventory version qbx_core expects.
Patch 2: qbx_core/bridge/qb/server/main.lua
Delete these two lines near the top of the file:
local convertItems = require 'bridge.qb.shared.compat'.convertItems
convertItems(require '@ox_inventory.data.items', require 'shared.items')
Patch 3: qbx_core/bridge/qb/shared/main.lua
Delete the four for ... in pairs(ox...) loops (everything from the first local oxItems = require '@ox_inventory.data.items' line down through the end of the for ammo, data in pairs(oxWeapons.Ammo) do ... end block).
The file should go from:
local qbShared = require 'shared.main'
qbShared.Items = {}
local oxItems = require '@ox_inventory.data.items'
for item, data in pairs(oxItems) do
qbShared.Items[item] = { ... }
end
local oxWeapons = require '@ox_inventory.data.weapons'
for weapon, data in pairs(oxWeapons.Weapons) do
...
end
for component, data in pairs(oxWeapons.Components) do
...
end
for ammo, data in pairs(oxWeapons.Ammo) do
...
end
local starterItems = require 'config.shared'.starterItems
to:
local qbShared = require 'shared.main'
qbShared.Items = {}
-- ox_inventory data/items + data/weapons loops removed.
-- one_inventory populates QBCore.Shared.Items at runtime via
-- server/compat/qb.lua syncSharedItemsAndWeapons().
local starterItems = require 'config.shared'.starterItems
Patch 4: [ox]/ox_fuel/config.lua (optional)
Only if you use ox_fuel. Delete this line at the top of [ox]/ox_fuel/config.lua:
if not lib.checkDependency('ox_inventory', '2.30.0', true) then return end
