Ox Inventory Install
Step 1: Locate the OX Inventory Folder
Navigate to your FiveM server directory.
Open the
resources
folder.Find and open the ox_inventory resource folder.
Step 2: Open the data/items.lua
File
data/items.lua
FileInside the ox_inventory folder, go to:
ox_inventory/data/items.lua
Open
items.lua
using Notepad++, VS Code, or another code editor.
Step 3: Add Your New Item
Add a new entry for your item inside the
items.lua
file.Use the following format:
Items Config
['djs_beer_keg'] = {
label = 'Beer Keg',
stack = true,
close = false,
weight = 10,
},
['djs_cocktail_jigger'] = {
label = 'Cocktail Jigger',
stack = true,
close = false,
weight = 10,
},
['djs_cocktail_spoon'] = {
label = 'Cocktail Spoon',
stack = true,
close = false,
weight = 10,
},
['djs_coconutdrink'] = { --checked
label = 'Coconut Mix',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'amb@world_human_drinking@coffee@male@idle_a', clip = 'idle_c' },
prop = {model = 'djs_coconutdrink',
bone = 57005,
pos = vec3(0.17, -0.1, -0.06),
rot = vec3(-71.0, 34.0, -14.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_cup_moscowmule'] = { --checked
label = 'Moscowmule',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'amb@world_human_drinking@coffee@male@idle_a', clip = 'idle_c' },
prop = {model = 'djs_cup_moscowmule',
bone = 57005,
pos = vec3(0.121000, -0.048000, 0.000000),
rot = vec3(-111.000748, 0.000000, -9.599999),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_baileys'] = { --checked
label = 'Baileys',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_baileys',
bone = 18905,
pos = vec3(0.14, -0.03, 0.03),
rot = vec3(258.0, 0.0, 0.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_beerempty'] = {
label = 'Empty Beer Glass',
stack = true,
close = false,
weight = 10,
},
['djs_glass_beer'] = { --checked
label = 'Glass of Beer',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_beer',
bone = 18905,
pos = vec3(0.12, -0.1, 0.07),
rot = vec3(-104.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_bluecosmopolitan'] = { --checked
label = 'Blue Cosmopolitan',
stack = true,
close = true,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_bluecosmopolitan',
bone = 18905,
pos = vec3(0.12, -0.08, 0.07),
rot = vec3(-109.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_bluemaita'] = { --checked
label = 'Blue Maita',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_bluemaita',
bone = 18905,
pos = vec3(0.12, -0.11, 0.08),
rot = vec3(-114.0, -21.0, -1.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_champagne'] = { --checked
label = 'Glass of Champagne',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_champagne',
bone = 18905,
pos = vec3(0.12, -0.11, 0.08),
rot = vec3(-114.0, -21.0, -1.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_greencosmopolitan'] = { --checked
label = 'Green Cosmopolitan',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_greencosmopolitan',
bone = 18905,
pos = vec3(0.12, -0.08, 0.07),
rot = vec3(-109.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_kiwiflight'] = { --checked
label = 'Kiwi Flight',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_kiwiflight',
bone = 18905,
pos = vec3(0.12, -0.11, 0.08),
rot = vec3(-114.0, -21.0, -1.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_mojito'] = { --checked
label = 'Mojito',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_mojito',
bone = 18905,
pos = vec3(0.1, -0.06, 0.03),
rot = vec3(-104.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_pinacolada'] = { --checked
label = 'Pinacolada',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_pinacolada',
bone = 18905,
pos = vec3(0.11, -0.11, 0.09),
rot = vec3(-114.0, -21.0, -1.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_pinkmaitai'] = { --checked
label = 'Pink Maitai',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_pinkmaitai',
bone = 18905,
pos = vec3(0.11, -0.11, 0.09),
rot = vec3(-114.0, -21.0, -1.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_redcosmopolitan'] = { --checked
label = 'Red Cosmopolitan',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_redcosmopolitan',
bone = 18905,
pos = vec3(0.12, -0.08, 0.07),
rot = vec3(-109.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_seabreeze'] = { --checked
label = 'Seabreeze',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_seabreeze',
bone = 18905,
pos = vec3(0.14, -0.11, 0.09),
rot = vec3(-111.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_shotblue'] = { -- checked
label = 'Blue Shot',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'anim@djs@drink@shot', clip = 'djs_drink_shot_quick' },
prop = {model = 'djs_glass_shotblue',
bone = 57005,
pos = vec3(0.148000, 0.009000, 0.000000),
rot = vec3(-131.100800, 0.000000, 18.299980),
},
usetime = 950,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_shotgreen'] = { --checked
label = 'Green Shot',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_shotgreen',
bone = 57005,
pos = vec3(0.148000, 0.009000, 0.000000),
rot = vec3(-131.100800, 0.000000, 18.299980),
},
usetime = 950,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_shotorange'] = { --checked
label = 'Orange Shot',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_shotorange',
bone = 57005,
pos = vec3(0.148000, 0.009000, 0.000000),
rot = vec3(-131.100800, 0.000000, 18.299980),
},
usetime = 950,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_shotpurple'] = { --checked
label = 'Purple Shot',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_shotpurple',
bone = 57005,
pos = vec3(0.148000, 0.009000, 0.000000),
rot = vec3(-131.100800, 0.000000, 18.299980),
},
usetime = 950,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_strawberrysunrise'] = { --checked
label = 'Strawberry Sunrise',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_strawberrysunrise',
bone = 18905,
pos = vec3(0.13, -0.14, 0.11),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkablue'] = { --checked
label = 'Slush Vodka Blue',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkablue',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkagreen'] = { --checked
label = 'Slush Vodka Green',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkagreen',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkaorange'] = { --checked
label = 'Slush Vodka Orange',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkaorange',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkapurple'] = { --checked
label = 'Slush Vodka Purple',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkapurple',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkarainbow'] = { --checked
label = 'Slush Vodka Rainbow',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkarainbow',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkared'] = { --checked
label = 'Slush Vodka Red',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkared',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_summerslushwithvodkayellow'] = { --checked
label = 'Slush Vodka Yellow',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_summerslushwithvodkayellow',
bone = 18905,
pos = vec3(0.13, -0.21, 0.13),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_tropico'] = { --checked
label = 'Tropico Cocktail',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_tropico',
bone = 18905,
pos = vec3(0.14, -0.05, 0.06),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodka'] = { --checked
label = 'Glass of Vodka',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodka',
bone = 18905,
pos = vec3(0.15, -0.02, 0.06),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkabannanapineapple'] = { --checked
label = 'Vodka Bannana Pineapple',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkabannanapineapple',
bone = 18905,
pos = vec3(0.12, -0.08, 0.06),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkanightlava'] = { --checked
label = 'Vodka Night Lava',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkanightlava',
bone = 18905,
pos = vec3(0.12, -0.12, 0.07),
rot = vec3(-112.0, -12.0, -7.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkaorangesky'] = { --checked
label = 'Vodka Orange Sky',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkaorangesky',
bone = 18905,
pos = vec3(0.1, -0.02, 0.06),
rot = vec3(-125.0, -18.0, -28.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkapeachbeachpunch'] = { --checked
label = 'Vodka Peach Beach Punch',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkapeachbeachpunch',
bone = 18905,
pos = vec3(0.1, -0.02, 0.06),
rot = vec3(-125.0, -18.0, -28.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkapineapplecherry'] = { --checked
label = 'Vodka Pineapple Cherry',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkapineapplecherry',
bone = 18905,
pos = vec3(0.06, -0.08, 0.05),
rot = vec3(-108.0, -10.0, -29.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_vodkawatermelonlemonade'] = { --checked
label = 'Vodka Watermelon Lemonade',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_vodkawatermelonlemonade',
bone = 18905,
pos = vec3(0.06, -0.08, 0.05),
rot = vec3(-108.0, -10.0, -29.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_whisky'] = {
label = 'Glass of Whisky',
stack = true,
close = false,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_whisky',
bone = 18905,
pos = vec3(0.15, -0.02, 0.06),
rot = vec3(-112.0, -12.0, -2.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_glass_yellowcosmopolitan'] = { --checked
label = 'Yellow Cosmopolitan',
stack = true,
close = true,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'mp_player_intdrink', clip = 'loop' },
prop = {model = 'djs_glass_yellowcosmopolitan',
bone = 18905,
pos = vec3(0.12, -0.08, 0.07),
rot = vec3(-109.0, -16.0, -11.0),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_pineappledrink'] = { --checked
label = 'pineapple drink',
stack = true,
close = true,
weight = 10,
client = {
status = { thirst = 2000000, alcohol = 175000},
anim = { dict = 'amb@world_human_drinking@coffee@male@idle_a', clip = 'idle_c' },
prop = {model = 'djs_pineappledrink',
bone = 57005,
pos = vec3(0.128000, 0.016000, 0.000000),
rot = vec3(-103.350670, 0.000000, -15.599984),
},
usetime = 17500,
cancel = true,
notification = 'You have satisfied your Thirst'
},
},
['djs_shaker_black'] = {
label = 'shaker black',
stack = true,
close = false,
weight = 10,
},
['djs_shaker_bronze'] = {
label = 'shaker bronze',
stack = true,
close = false,
weight = 10,
},
['djs_shaker_gold'] = {
label = 'shaker gold',
stack = true,
close = false,
weight = 10,
},
['djs_shaker_silver'] = {
label = 'shaker silver',
stack = true,
close = false,
weight = 10,
},
['djs_wine_keg'] = {
label = 'wine keg',
stack = true,
close = false,
weight = 10,
},
Adjust label, weight, stack, animations, and props as needed.
Step 4: Add Item Image
OX Inventory allows you to display custom images for items in the inventory.
Where to Place Item Images
Navigate to:
ox_inventory/web/images/
Place your item image inside the
images/
folder.
Step 5: Save the File & Restart Server
Save the
items.lua
file.Restart your FiveM server using one of the following methods:
Console Command:
restart ox_inventory
Full Server Restart: Stop and start the server manually.
Step 6: Test the Item
Spawn the item using an admin command:
/giveitem yourID prop_name 1
(Replace
yourID
with your actual player ID andburger
with your item name.)Open OX Inventory (
F2
default key).Verify the item appears and functions correctly.
Step 6: Debugging & Adjustments
If the item does not show, check the server console for errors.
Verify spelling and commas in
items.lua
.Ensure
ox_inventory
is running properly.Look at the FiveM forums or Discord for troubleshooting help.
Last updated