External Item Use Exports
External item-use exports let another resource own the gameplay behavior while Nord remains authoritative over the inventory transaction.
Admin Studio setup
Open the item and go to:
Behavior → Use behavior
Enable Usable, then select:
Use handler: External export
Configure:
- Resource name — resource that exposes the handler.
- Export name — export function name.
- Execution side —
ClientorServer. - Remove on use — whether Nord should consume the item after success.
External mode skips Nord's internal duration, animation, hand prop and stat effects.
Client handler contract
Definition:
client = {
export = 'UseScanner',
remove = 0
}
Handler:
exports('UseScanner', function(item, slot)
-- item.name
-- item.label
-- item.image
-- item.category
-- item.count
-- item.weight
-- item.metadata
-- item.slot
return true
end)
return false explicitly rejects the use. Returning true is recommended for clear success semantics.
Server handler contract
Definition:
server = {
export = 'UseRepairKit',
remove = 1
}
Handler:
exports('UseRepairKit', function(source, item, slot, definition)
-- validate permission/business state server-side
return true
end)
Server exports execute directly on the server in current builds.
Remove behavior
remove = 0 -- keep item
remove = 1 -- remove one after success
remove = 2 -- remove two after success, capped by stack count
Removal happens only after the external action is accepted.
Existing database item
If the item is already owned by Admin Studio/database, do not try to overwrite it with RegisterItem.
Attach only the use handler:
exports.nord_inventory:RegisterUseExport('carplay', 'carplay', 'client')
Because the export name is bare, it is bound to the resource making the registration call.
Failure behavior
The use is cancelled when:
- the target resource is not started;
- the export descriptor is invalid;
- the export throws an error;
- the export explicitly returns
false; - the pending use request expires;
- the player no longer owns the same item/slot instance.
Nord does not consume the item when the external use fails.