Configuration
wasabi_inventory separates shared, client, and server settings. Setting names are case-sensitive.
Shared configuration​
File: config/shared/config.lua
| Setting | Purpose |
|---|---|
Debug | Enables verbose diagnostic output. Disable in production. |
UIColor | Hex accent color pushed to the inventory UI at runtime. |
PlayerSlots | Default player inventory slot count. |
HotbarSlots | Number of slots reserved for the quick-use hotbar. |
PlayerMaxWeight | Default player capacity in grams. |
WeaponClipSizes | Server-owned base, extended, and drum magazine limits. |
WeaponMaxAmmo | Maximum ammunition tracked for a weapon. |
DropSlots / DropMaxWeight | Default slot and weight limits for ground drops. |
DropProximity | Client interaction distance for a nearby drop. |
DropOpenDistance | Server-side distance check applied when opening a drop. |
DropStayDistance | Distance at which an open drop closes automatically. |
DropProps / DropProp / DropMarker | Ground-drop prop and marker presentation. |
ShopProximity / ShopStayDistance | Shop interaction and automatic-close distances. |
VehicleTrunkDistance | Client trunk access-point distance in metres; default 1.5. |
VehicleOpenDistance | Server maximum distance to the vehicle entity when opening normally; default 16.0 metres. |
VehicleStayDistance | Client trunk stay-distance setting; default 2.0 metres. See the behavior note below. |
TrimVehiclePlate | Removes all whitespace from plate keys when enabled; default true. Plates are uppercased regardless. |
PoliceJobs | Jobs and minimum grades allowed to search living players. |
PlayerLoot | Enables and configures looting an eligible or dead player. |
PoliceSearch | Enables and configures police inventory searches. |
SafeSlot | Enables the protected slot beneath the backpack area. |
ItemNotify | Enables item-added and item-removed notifications. |
Accounts | Framework money accounts represented as inventory items. |
Throwing | Item/weapon throwing, keybind, force, distance, cooldown, and pickup behavior. |
Account items​
The default account entries are money and black_money. Each configured account must also have an item definition in data/items.lua.
QBCore and Qbox map money to the framework's cash account. ESX reads matching account names directly. Account synchronization is enabled separately with the server-side SyncAccounts option.
Player search​
PoliceJobs, PlayerLoot, and PoliceSearch control how another player's inventory may be opened. Keep the server-side range and eligibility checks enabled in production and test integrations such as police searches and death looting.
Throwing​
Throwing is opt-in per item after the feature is enabled. Normal items require canThrow = true and a throwProp. Weapons use canThrow = true in data/weapons.lua; native grenade-style weapons use the separate throwable = true behavior.
Vehicle storage definitions​
File: data/vehicles.lua
This file defines trunk and glovebox capacities independently of stash definitions:
classes: entries with a numeric GTA vehicle-classidand optionaltrunk/gloveboxcapacity tables. Each capacity usesslotsandmaxWeight(grams).models: model-hash entries overriding the class capacity for either compartment. A missing model override falls back to its class; a compartment with neither capacity is unavailable.rules.blocked: models with neither storage compartment available.rules.noTrunk/rules.noGlovebox: disable the specified compartment.rules.frontTrunk: models whose trunk access point is at the front/hood.
Keep a model in only one rule list. The current lookup retains one rule per model, not a combination of flags.
For example, an entry inside models can override just the trunk while keeping the class glovebox capacity:
{
model = `sultan`,
trunk = { slots = 30, maxWeight = 120000 },
},
VehicleTrunkDistance is measured at the client access point, while VehicleOpenDistance is a server check against the entity position. They are not interchangeable. The current trunk monitor rechecks access and uses VehicleStayDistance + VehicleTrunkDistance as its movement threshold when that access check fails; it is not an exact independent two-metre cutoff. Glovebox access requires remaining in the vehicle.
Changing plate normalization or reducing storage capacities on an existing server requires a database backup and staging checks. See Installation.
Client configuration​
File: config/client/config.lua
| Setting | Purpose |
|---|---|
interact | Selects ox_target, qb-target, sleepless_interact, or drawText. |
drawText | Distance and sprite options for the built-in world prompt fallback. |
OpenKey | Rebindable key used to open or close the inventory. |
HotbarKey | Rebindable key used to display the hotbar overlay. |
ImagePath | NUI path used to resolve item images. |
EnableHotbar | Enables the numbered hotbar slot keybinds. |
WeaponAnimations | Enables inventory weapon equip/holster animations. |
WeaponNotify | Enables weapon-related notifications. |
WeaponAutoReload | Controls automatic inventory weapon reload behavior. |
WeaponMismatch | Enforces inventory ownership of equipped weapons. |
WeaponAttachTime | Progress duration for component attachment. |
DisableNativeWeaponDrops | Blocks ambient/native weapon and ammunition pickups. |
GivePlayerList | Shows a nearby-player picker when multiple give targets are available. |
If the selected interaction resource is unavailable, the client falls back toward the built-in draw-text interaction.
Server configuration​
File: config/server/config.lua
| Setting | Purpose |
|---|---|
CheckForUpdates | Checks the Wasabi version endpoint during startup. |
SaveInterval | Interval between saves of dirty inventories. |
StashTable | Database table used for persistent stashes. Defaults to ox_inventory so existing stash rows from common ox installs migrate; set another name for a fresh table. |
SyncAccounts | Synchronizes configured account-item counts with framework balances. |
AdminRestricted | ACE restriction passed to inventory administration commands. |
The default ACE restriction is group.admin.