origen_inventory is configured through config.lua , config_sv.lua and the modular files inside the config/ folder. This page documents every variable grouped by area.
Variable Type Default Description Config.Debug boolean true Enables debug logging across all subsystems. Disable on production. Config.Language string "es" Locale loaded from locales/translations/ . Accepts es or en . Config.Framework string auto-detected "qbx" , "esx" , "qbcore" or "NONE" . Returned by AutoSelectFramework() .Config.Phone.Resource string "qs-smartphone-pro" Phone integration. Accepts "qs-smartphone-pro" , "lb-phone" , "none" . Config.Progressbar string "default" Progressbar provider. One of default , esx_progressbar , qb-core , qs-progressbar , ox_lib . Config.UseInventoryComsumables boolean true Enables built-in eat/drink/alcohol consumable handling. Config.CreateStashIfNoExists boolean true Auto-creates a stash row when an unknown stash ID is opened. Config.DefaultOpenKey string "F2" First-time-only key binding for opening the inventory. After registration, players change it from FiveM key bindings. Config.HotbarOpenKey string "TAB" Key bound to toggling the hotbar. Only used when Config.UI.Hotbar = true . Config.DisableEscOnInventoryOpen boolean true Disables ESC while the inventory UI is open. Config.DisableMovementOnInventoryOpen boolean false Freezes the player while the UI is open. Config.DisablePKey boolean true Disables the default map (P ) key while inventory is open. Config.NotifyExports.GiveItem boolean true Sends a notification to the player when giveItem is used. Config.NotifyExports.RemoveItem boolean true Sends a notification to the player when removeItem is used.
Variable Type Default Description Config.Drop.MaxWeight number 100000 Maximum total weight per ground drop. Config.Drop.MaxSlots number 10 Maximum slot count per ground drop.
Config. MarkerColors = {
give_player = vec4 ( 0 , 0 , 0 , 255 ),
}
Variable Type Default Description Config.Experimentals.giveItemAlgorithm string "no_stack" Algorithm used when giving items. stack_unique allows giving stacks of unique items, slot_based auto-assigns slots for weapons, no_stack is the legacy single-item behaviour.
Experimental flags can corrupt inventory data on edge cases. Only enable them on a test server first.
Variable Type Default Description Config.Player.GiveDistance number 3.5 Maximum distance in meters to give items to another player. Config.Player.DropMarkerDistance number 3.0 Distance at which the floor drop marker becomes visible. Config.Player.MaxWeight number 120000 Maximum total inventory weight (grams). Config.Player.MaxInventorySlots number 40 Maximum number of slots. Config.Player.SaveInterval number 40 Auto-save interval in minutes . Config.Player.ShopTimeout number 2 Cooldown in seconds before reopening a shop.
Variable Type Default Description Config.Player.CheatProtect.Enable boolean true Master switch for anti-cheat measures. Ignored for admins matched by Bridge.IsAdmin . Config.Player.CheatProtect.MaxDistanceRemoteOpen number 10.0 Max distance allowed between the player and the inventory they are opening. Config.Player.CheatProtect.EnableNoItemWeapons boolean true Removes weapons given to the player without going through the inventory (third-party scripts).
Variable Type Default Description Config.Player.ClothesAsItem.Enable boolean true Enables the Clothes-As-Item subsystem. Requires origen_clothing .
Variable Type Default Description Config.Player.MoneyAsItem.Enable boolean true Enables Money-As-Item. The money item is auto-registered by the resource. Config.Player.MoneyAsItem.Accounts table see below Accounts mapped to inventory items.
Config. Player . MoneyAsItem . Accounts = {
[ DetectMoneyOrCash ()] = {
account = DetectMoneyOrCash (),
label = 'Dinero' ,
description = 'El mundo gira a su alrededor' ,
weight = 0 ,
},
-- black_money = {
-- account = 'black_money',
-- label = 'Black Money',
-- description = 'Black Money',
-- weight = 0,
-- }
}
Variable Type Default Description Config.UI.Mini boolean true When opening a secondary inventory (stash, trunk, etc.), hides the player inventory until the secondary closes. Config.UI.ShowPlayerNameOnGiveItem boolean true Shows the receiver name on the give-item prompt. Config.UI.Hotbar boolean true Enables the hotbar. Config.UI.ShowCraftingIndicator boolean true Shows a small indicator while a crafting action runs. Config.UI.PlayerInventoryLabel string "Inventory" Label displayed at the top of the player inventory tab. Config.UI.Color string "default" UI color theme. Config.UI.DelayNuiFocusForTabKey boolean false Delays NUI focus when pressing TAB (fixes input issues on some clients). Config.UI.EnableTabs table see below Toggle visibility and sub-actions of inventory tabs.
Config. UI . EnableTabs = {
personal = {
enable = true ,
clothes = true ,
enableActions = true ,
actions = {
toggleHair = true ,
searchPlayer = true ,
carry = true ,
piggyback = true ,
rockstarEditor = true ,
}
},
settings = {
enable = true ,
keybinds = true ,
appearance = true
},
vehicle = {
enable = true ,
}
}
Config.Animations.Carry and Config.Animations.Piggyback define the animation dicts/clips used by the Carry and Piggyback actions. See config/player.lua for the full table.
Variable Type Default Description Config.OpenTrunkAnywhere boolean false Allows opening the trunk regardless of the player position around the car. Config.TrunkOpenDistance number 3.0 Maximum distance from the trunk to open it (when OpenTrunkAnywhere = false ). Config.BackEngineVehicles string[] see file Vehicles whose engine/trunk is at the front. The trunk position is auto-flipped for these. Config.Trunks.vehicles table see below Per-vehicle trunk capacity. The default key applies to any vehicle without an override. Config.Gloveboxes.vehicles table see below Per-vehicle glovebox capacity.
Config. Trunks . vehicles = {
default = {
slots = 35 ,
maxweight = 60000 ,
label = 'Maletero' ,
},
[ `speedo` ] = {
slots = 2 ,
maxweight = 40000 ,
label = 'Speedo Trunk' ,
bone = 'door_dside_r' ,
}
}
Config. Gloveboxes . vehicles = {
default = {
slots = 5 ,
maxweight = 12500 ,
label = 'Glovebox' ,
},
[ `sultan` ] = {
slots = 5 ,
maxweight = 12500 ,
label = 'Sultan Glovebox' ,
},
}
Use backticks (` ) around the vehicle model name, not single or double quotes. The script hashes the spawn name internally.
Config. Stashes = {
default = {
slots = 30 ,
maxweight = 120000 ,
},
[ 'example' ] = {
label = 'ORIGEN TEST' ,
slots = 8 ,
marker = {
type = 20 ,
size = vector3 ( 0.3 , 0.3 , 0.3 ),
color = { r = 0 , g = 0 , b = 0 , a = 255 },
},
locations = { vector3 ( - 1319.3 , - 2493.41 , 14.95 ) },
-- job = 'police',
-- job_gradeup = 0,
-- job_gradedown = 2,
-- gang = 'origen',
-- gang_gradeup = 0,
-- gang_gradedown = 3,
},
}
Field Description slots Slot count for this stash. maxweight Total weight allowed (only valid on default ). label Display label. locations Array of vector3 . The stash is created at every position. marker Optional type , size and color for the world marker. job / job_gradeup / job_gradedown Restrict access to a job grade range. gang / gang_gradeup / gang_gradedown Same as above for gangs.
The shops file is split into three pieces:
Config.Shop — defines the payment item for each shop ID ('money' if MAI is enabled, otherwise an account name).
Config.ShopItems — item lists, reusable across shops.
Config.Shops — the actual shop locations, with markers, blips and item assignments.
Config. Shops = {
[ 'weapons' ] = {
label = 'Shop' ,
slots = 4 ,
marker = {
type = 20 ,
size = vector3 ( 0.3 , 0.3 , 0.3 ),
color = { r = 0 , g = 0 , b = 0 , a = 255 },
distanceView = 5 ,
distanceInteract = 1 ,
},
blip = {
enabled = true ,
sprite = 52 ,
color = 2 ,
scale = 0.8 ,
name = 'ORIGEN Shop Armas' ,
},
locations = { vector3 ( - 1299.95 , - 2458.56 , 13.94 ) },
items = Config. ShopItems [ 'weapons' ],
},
}
Each item entry inside Config.ShopItems accepts:
Field Type Description name string Item or weapon name. price number Cost per unit. amount number Stock displayed in the shop. metadata table Optional metadata applied to the purchased item (e.g. weapon serial). type string Defaults to 'item' .
Job/gang restrictions (job , job_gradeup , job_gradedown , gang , gang_gradeup , gang_gradedown ) work the same as in stashes.
The world point system is the engine that renders sprites/markers for stashes, shops, crafting tables and drops.
Variable Type Default Description Config.WorldPoints.Enabled boolean true Master switch. Disabling it removes every world point. Config.WorldPoints.ForceGroundZ boolean true Forces points to ground level when copying coords. Config.WorldPoints.BlipsShortRange boolean true Blips are only visible nearby instead of always on the minimap. Config.WorldPoints.UseDropModel boolean true Spawns a prop on dropped item bags. Config.WorldPoints.DefaultDropModel hash `prop_med_bag_01b` Prop used when UseDropModel = true . Config.WorldPoints.MarkerColors table see file Marker colors per point type. Config.WorldPoints.DefaultMarkers table see file Default marker definitions for stash , shop and crafting . Config.WorldPoints.PointTypes table see file Sprite, marker, hooks and behaviour per point type. Config.WorldPoints.Initialization table see file Startup delays in milliseconds. Config.WorldPoints.Interaction.keys.interact number 38 (E)Interaction key. Config.WorldPoints.Interaction.behavior.cooldownMs number 100 Cooldown between interactions. Config.WorldPoints.Interaction.behavior.allowInteractionInVehicle boolean false Whether interactions are allowed while inside a vehicle. Config.WorldPoints.Interaction.feedback.playSounds boolean true Enables interaction sounds. Config.WorldPoints.VisualEffects.sprites.enableFloatingLight boolean true Adds a floating light below sprites. Config.WorldPoints.Debug.enabled boolean Config.Debug Enables verbose logs and debug visuals. Config.WorldPoints.Security.maxInteractionsPerSecond number 1 Anti-spam rate-limit. Config.WorldPoints.Security.checkPlayerState boolean true Disables interactions while the player is dead.
Variable Type Default Description Config.Weapons.InventoryWeaponSystem boolean true Enables built-in weapon system (attachments, sync, repair, reload, armor). Disable only if you are running an external weapon system. Config.Weapons.DisableDecay boolean false Disables the weapon durability decay. Config.Weapons.RepairSystem.enabled boolean true Enables the weapon repair workshops. Config.Weapons.RepairSystem.points table see file Repair point definitions: location , restrictions (job/items) and time in minutes. Config.Weapons.Draw.enabled boolean true Enables the weapon-draw subsystem. Config.Weapons.Draw.variants number[] { 130, 122, 3, 6, 8 } Component variants drawn on the holster. Config.Weapons.Draw.weapons string[] see file Weapons that support holster drawing. Config.Weapons.Draw.weapon_reload_animation.enable boolean true Plays a reload animation. Disable if you want the weapon to instantly reload. Config.Weapons.Draw.weapon_reload_animation.progress boolean true Shows progress bar during reload animation. Config.Weapons.AmmoReloadTime table see file Reload time per ammo type, in milliseconds. Config.Weapons.FastReload.enabled boolean true Enables the fast-reload key. Config.Weapons.FastReload.key string "R" Fast-reload key. Config.Weapons.FastReload.NeedAmmoInHotbar boolean false When true , requires ammo in slots 1–6 to fast-reload. Config.Weapons.Throwables table see file Whitelist of throwable weapons. Config.Weapons.Melee table see file Whitelist of melee weapons. Config.Weapons.AmmoTypes table see file Maps ammo items to ammo types and clip size. Config.DurabilityMultiplier table see file Per-weapon durability multiplier (lower = decays slower). Config.DurabilityBlockedWeapons string[] see file Weapons exempt from durability. Config.WeaponTints table see file Item-name → tint-id map. Config.Armors table armor = 50, heavyarmor = 100 Armor amount per armor item. Config.MaximumAmmoValues table weapon_pistol = 10 Display-only NUI cap. Config.WeaponAttachments table see file Attachment items mapped to component hashes per weapon. Config.Weapons.list string[] see file Master weapon registry.
Variable Type Default Description Config.Crafting.enable boolean true Enables the crafting system. Config.Crafting.items table see file Recipes. Each entry defines ingredients , optional resultItem , resultCount and time in milliseconds. Config.Crafting.zones table see file Crafting zones with enable , locations , radius , label and the list of items available.
[ "tosti" ] = {
ingredients = {
[ "sandwich" ] = 2 ,
[ "water_bottle" ] = 1 ,
[ "weapon_pistol" ] = 1 ,
},
resultCount = 1 ,
time = 5000 ,
}
The airdrop system is marked as WIP in the source. Use it on test environments first.
Variable Type Default Description Config.Airdrop.CrateModel string "prop_box_wood02a_pu" Crate prop model. Config.Airdrop.ParachuteModel string "prop_v_parachute" Parachute prop model. Config.Airdrop.DropHeight number 100.0 Drop height in meters above ground. Config.Airdrop.LandingTime number 10000 Landing time in milliseconds (0 = instant ground placement). Config.Airdrop.StashSlots number 20 Maximum slots inside the airdrop stash. Config.Airdrop.Smoke.enable boolean true Enables landing smoke. Config.Airdrop.Smoke.particle table dict = "scr_ar_planes", name = "scr_ar_trail_smoke" Particle dictionary and name. Config.Airdrop.Smoke.scale number 0.8 Particle scale. Config.Airdrop.Smoke.color table { r = 170, g = 30, b = 80 } Particle color (limited by particle support).
Variable Type Default Description Config.EnableDriftMode boolean false Enables the drift mode toggle (exports.origen_inventory:ToggleDriftMode(true) ). Config.DriftHandling.InitialDragCoeff number 90.22 Aerodynamic drag while drifting. Config.DriftHandling.DriveInertia number 0.31 Drive inertia. Higher = slower acceleration. Config.DriftHandling.SteeringLock number 22 Maximum steering angle. Config.DriftHandling.TractionCurveMax number -1.1 Max cornering traction. Negative values are intentional. Config.DriftHandling.TractionCurveMin number -0.4 Min cornering traction. Config.DriftHandling.TractionCurveLateral number 2.5 Lateral grip in turns. Config.DriftHandling.LowSpeedTractionLossMult number -0.57 Low-speed traction loss multiplier.
Config.SearchAnims is a list of animation pairs (dict , anim ) randomly used when a player is searched. Edit the file to add or remove animations.
Server-only Discord webhook URLs. Replace each WEBHOOK_URL_HERE value with your actual URL or leave the placeholder to disable that channel.
Config. Webhook = {
default = "WEBHOOK_URL_HERE" ,
giveItem = "WEBHOOK_URL_HERE" ,
search = "WEBHOOK_URL_HERE" ,
stash = "WEBHOOK_URL_HERE" ,
trunks = "WEBHOOK_URL_HERE" ,
glovebox = "WEBHOOK_URL_HERE" ,
drops = "WEBHOOK_URL_HERE" ,
money = "WEBHOOK_URL_HERE" ,
}
Defines Config.Clothings.Standalone , Config.Clothings.DefaultHairy , Config.Clothings.Variations , Config.Clothings.Drawables and Config.Clothings.Props . These tables drive the clothing component swaps used by the inventory clothing tab.
This file is large because it lists every component variation per gender. You typically only edit it to add custom variations via AddNewVariation(category, gender, source, target, single) .