๐ŸŽ’NOXEN OX INVENTORY

OX_INVENTORY - Custom Enhanced Version

๐Ÿš€ Overview

This is a custom enhanced version of ox_inventory with several advanced features added on top of the official version. This documentation covers all the additional functionality that makes this version unique and powerful for server owners looking for advanced inventory management.

๐Ÿ”„ Based on Latest ox_inventory

  • โœ… Latest official version - Built on the most recent ox_inventory release

  • โœ… Original source untouched - Core ox_inventory files remain completely unchanged

  • โœ… Fully open source base - All standard ox_inventory functionality remains accessible

  • โœ… Update compatible - Easy integration of future ox_inventory updates

  • โœ… Additive approach - New features added alongside, not replacing original code

๐ŸŽฏ Key Custom Features Added

1. Player Clone System ๐ŸŽญ ๐Ÿ”’

  • Central clone display in inventory UI

  • Nearby players visualization for item exchange

  • Interactive 3D player models in the top-right corner

  • โš ๏ธ PROTECTED: Core system files are secured and non-modifiable

2. Weapon Component System ๐Ÿ”ง ๐Ÿ”’

  • Right-click weapon modification interface

  • 3D weapon preview with camera effects

  • Component categorization and conflict management

  • โš ๏ธ PROTECTED: Core system files are secured and non-modifiable

3. Clothing System ๐Ÿ‘• โœ๏ธ

  • Dedicated clothing slots (hat, mask, top, pants, shoes, etc.)

  • Configurable clothing categories

  • Drop-and-equip functionality

  • โœ… CUSTOMIZABLE: Full access to modify and extend functionality

4. Advanced Filtering System ๐Ÿ” โœ๏ธ

  • Customizable item categories with configurable icons

  • Dynamic filter buttons in inventory UI

  • FontAwesome icon support

  • โœ… CONFIGURABLE: Complete control via convars and configuration

5. Redesigned UI โœจ ๐Ÿ“ฆ

  • Completely rebuilt frontend with TypeScript/React

  • Fully configurable interface elements

  • Modern responsive design

  • ๐Ÿ“ฆ BUILD INCLUDED: Pre-compiled UI ready to use


๐Ÿ” Access Level & Modification Rights

๐Ÿ”’ Protected Systems (FxAP Secured)

  • Clone System (clone/ folder) - Core functionality protected

  • Weapon Components (component/ folder) - Core functionality protected

  • These systems work out-of-the-box but cannot be modified

โœ๏ธ Customizable Systems (Full Access)

  • Clothing System (modules/clothe/ folder) - Fully modifiable with debug prints included

  • Filter Configuration (via convars) - Complete customization available

  • UI Styling (pre-built but configurable via CSS/convars)

๐Ÿ“ฆ Pre-built Systems (Ready to Use)

  • Frontend UI - Pre-compiled React/TypeScript build included

  • Configuration System - Full convar control without source access


๐Ÿ“‹ Detailed Feature Documentation

๐ŸŽญ Clone System ๐Ÿ”’

Central Player Clone

The inventory displays a 3D clone of your character in the center, providing visual feedback for equipment changes.

Files involved: ๐Ÿ”’

  • clone/clone.lua - Main clone management (PROTECTED)

  • Configuration: Automatically enabled with inventory

Features:

  • Real-time character preview

  • Automatic clothing/equipment updates

  • Optimized rendering performance

Nearby Players Clone Exchange

When the inventory is open, nearby players (within 10 units) appear as interactive 3D models in the top-right corner.

Files involved: ๐Ÿ”’

  • clone/clone_players.lua - Nearby players detection and rendering (PROTECTED)

Features:

  • Automatic detection of nearby players (up to 3)

  • 3D player models positioned in camera view

  • Drag-and-drop item exchange

  • Visual feedback with alpha transparency

  • Distance-based sorting (closest players first)

How it works:

  1. Players within 10 units are detected

  2. 3D clones are created and positioned in the upper-right area

  3. Items can be dragged onto these clones to give items

  4. Visual feedback shows interaction states

โš ๏ธ Important: This system is fully protected and works out-of-the-box. No modifications possible but complete functionality included.


๐Ÿ”ง Weapon Component System ๐Ÿ”’

Right-Click Weapon Modification

Configuration:

weaponcomponent = GetConvarInt('inventory:weaponcomponent', 1) == 1

Files involved: ๐Ÿ”’

  • component/client.lua - Client-side weapon component UI (PROTECTED)

  • component/server.lua - Server-side component management (PROTECTED)

Features:

  • Right-click weapons to open component menu

  • 3D weapon preview with zoom camera

  • Component categorization (scopes, suppressors, grips, etc.)

  • Conflict detection (mutually exclusive components)

  • Drag-and-drop component installation/removal

Component Categories:

  • skin - Weapon skins/tints

  • flashlight - Flashlights and lights

  • suppressor - Silencers and muzzle attachments

  • laser - Laser sights

  • scope - Scopes and sights

  • grip - Foregrips and handles

  • stock - Stocks and stabilizers

  • magazine - Extended magazines

Usage:

  1. Right-click on any weapon in inventory

  2. 3D weapon preview opens with camera focus

  3. Drag components onto weapon to install

  4. Click installed components to remove them

  5. Automatic conflict resolution prevents incompatible combinations

โš ๏ธ Important: This system is fully protected and works out-of-the-box. Configuration via convars only, core files cannot be modified.


๐Ÿ‘• Clothing System โœ๏ธ

Configurable Clothing Slots

Configuration:

clothingslots = GetConvarInt('inventory:clothingslots', 1) == 1

Files involved: โœ๏ธ

  • modules/clothe/client.lua - Clothing slot management (FULLY CUSTOMIZABLE)

Available Slots:

  • Hat - Hats and helmets (Component 0)

  • Mask - Masks and face coverings (Component 1)

  • Top - Shirts and jackets (Component 3)

  • Undershirt - Undershirts (Component 8)

  • Pants - Pants and shorts (Component 4)

  • Shoes - Shoes and boots (Component 6)

  • Glasses - Glasses and eyewear (Props)

  • Earring - Earrings (Props)

  • Chain - Necklaces and chains (Props)

  • Watch - Watches and bracelets (Props)

Customization: โœ๏ธ Each clothing slot has configurable callbacks for custom behavior:

callback = function(action, data)
    if action == 'click' then
        print('Hat slot clicked') -- Debug prints included
        -- Handle slot click
    elseif action == 'drop' then
        print('Item dropped on hat slot:', (data.itemName or 'unknown')) -- Debug prints included
        -- Handle item drop on slot
        -- data.itemName contains the dropped item
        -- TODO: Add event handler for clothing slot usage
        -- TriggerEvent('ox_inventory:clothingSlotUsed', 'hat', action, data)
    end
end

โœ… Developer Friendly:

  • Full source access to clothing system

  • Debug prints included for easy development

  • TODO comments showing integration points

  • Modifiable callbacks for custom functionality

  • Easy integration with skinchanger/esx_skin


๐Ÿ” Advanced Filtering System

Configurable Item Categories

Configuration:

-- Enable/disable filters
inventoryfilters = GetConvarInt('inventory:inventoryfilters', 1) == 1

-- Define custom categories
filtercategories = json.decode(GetConvar('inventory:filtercategories', '["food", "weapon", "tool", "other", "money"]'))

-- Define custom icons (FontAwesome classes)
filtercategoryicons = json.decode(GetConvar('inventory:filtercategoryicons', 
    '{"food": "fas fa-utensils", "weapon": "fas fa-gun", "tool": "fas fa-tools", "other": "fas fa-box-open", "money": "fas fa-dollar-sign"}'))

Features:

  • Dynamic category buttons in inventory UI

  • FontAwesome icon support for categories

  • Configurable category list via convars

  • Automatic item filtering based on item category

  • Multi-language support for category names

Adding Custom Categories:

  1. Add category to filtercategories array

  2. Define icon in filtercategoryicons object

  3. Set category field in item definitions (data/items.lua)

  4. Add translation in locales (optional)

Example:

-- In server.cfg
set inventory:filtercategories '["food", "weapon", "tool", "vehicle", "other", "money"]'
set inventory:filtercategoryicons '{"food": "fas fa-utensils", "weapon": "fas fa-gun", "tool": "fas fa-tools", "vehicle": "fas fa-car", "other": "fas fa-box-open", "money": "fas fa-dollar-sign"}'

โš™๏ธ Configuration Guide

Essential Convars

Add these to your server.cfg to configure the custom features:

# Enable weapon component system (right-click weapons)
set inventory:weaponcomponent 1

# Enable clothing slots
set inventory:clothingslots 1

# Enable inventory filters
set inventory:inventoryfilters 1

# Configure filter categories (JSON array)
set inventory:filtercategories '["food", "weapon", "tool", "medical", "other", "money"]'

# Configure category icons (JSON object with FontAwesome classes)
set inventory:filtercategoryicons '{"food": "fas fa-utensils", "weapon": "fas fa-gun", "tool": "fas fa-tools", "medical": "fas fa-medkit", "other": "fas fa-box-open", "money": "fas fa-dollar-sign"}'

Optional Convars

# Standard ox_inventory convars still apply
set inventory:slots 50
set inventory:weight 30000
set inventory:screenblur 1
set inventory:keys '["F2", "K", "TAB"]'

๐Ÿ› ๏ธ Installation & Setup

Prerequisites

  • ox_lib (minimum version 3.27.0)

  • oxmysql (minimum version 2.7.3)

  • ESX/QBCore framework support

Installation Steps

  1. Replace your existing ox_inventory with this enhanced version

  2. Ensure the resource starts after ox_lib and oxmysql

  3. Configure convars in server.cfg (see Configuration Guide)

  4. Restart the resource or server

  5. Test all features in-game

File Structure

ox_inventory/
โ”œโ”€โ”€ clone/                    # Clone system files
โ”‚   โ”œโ”€โ”€ clone.lua            # Central player clone
โ”‚   โ””โ”€โ”€ clone_players.lua    # Nearby players system
โ”œโ”€โ”€ component/               # Weapon component system
โ”‚   โ”œโ”€โ”€ client.lua          # Component UI and management
โ”‚   โ””โ”€โ”€ server.lua          # Component server logic
โ”œโ”€โ”€ modules/clothe/          # Clothing system
โ”‚   โ””โ”€โ”€ client.lua          # Clothing slots management
โ”œโ”€โ”€ web/                     # Enhanced UI (React/TypeScript)
โ”‚   โ””โ”€โ”€ src/                # Source files for UI
โ””โ”€โ”€ ... (standard ox_inventory files)

๐ŸŽจ UI Customization ๐Ÿ“ฆ

Frontend Framework

  • React with TypeScript

  • Tailwind CSS for styling

  • FontAwesome icons

  • Fully responsive design

Customizable Elements โœ๏ธ

  • Filter categories and icons (via convars)

  • Clothing slot labels and behavior (via source access)

  • Component categories for weapons (protected)

  • Color schemes and themes (via CSS overrides)

  • Configuration via convars (no source needed)

Pre-built UI ๐Ÿ“ฆ

  • Build included - No compilation required

  • Source not included - Pre-compiled for protection

  • Configuration via convars - Full customization without source access

  • CSS overrides supported for styling modifications

โš ๏ธ Note: While the source is not included, the UI is fully functional and customizable through configuration options and CSS overrides.


๐Ÿ“ฆ What's Included in This Package

โœ… Ready-to-Use Systems

  • Complete ox_inventory with all custom features

  • Pre-compiled UI build (web/build/ folder)

  • Clone system (protected but fully functional)

  • Weapon component system (protected but fully functional)

  • Clothing system (source included with debug prints)

  • Filter system (fully configurable)

  • Complete documentation and setup guide

โœ๏ธ Source Code Included

  • Clothing system (modules/clothe/client.lua) - Full access with helpful debug prints

  • Configuration files (init.lua) - Enhanced with new convars, original functionality preserved

  • All standard ox_inventory modules - Complete original source code untouched and accessible

  • Data files - Items, shops, etc. fully accessible as per original ox_inventory

  • Original ox_inventory functionality - 100% preserved and open source

๐Ÿ”’ Protected Systems

  • Clone logic (clone/ folder) - Functional but secured

  • Weapon component logic (component/ folder) - Functional but secured

  • UI source code - Pre-built only, no TypeScript/React source

๐Ÿšซ Not Included

  • UI source files (TypeScript/React source code)

  • Raw clone system source (protected via FxAP)

  • Raw weapon component source (protected via FxAP)

๐Ÿ’ก This approach ensures:

  • Immediate functionality - Everything works out of the box

  • Customization where needed - Clothing system fully modifiable

  • Protection of core innovations - Clone and weapon systems secured

  • Full configuration control - Complete customization via convars

  • Original code preserved - All standard ox_inventory remains open source and accessible

  • Future update compatibility - Easy integration of new ox_inventory versions


๐Ÿค Support & Compatibility

Framework Support

  • โœ… ESX Legacy (fully supported)

  • โœ… QBCore (fully supported)

  • โœ… Standalone mode

ox_inventory Compatibility

  • ๐Ÿ”„ Based on latest official version (v2.44.1+)

  • โœ… 100% backward compatible with existing ox_inventory setups

  • โœ… All original functionality preserved and open source

  • โœ… Easy migration from standard ox_inventory

  • ๐Ÿ”„ Update strategy: New ox_inventory versions can be integrated by updating core files while preserving custom additions

Known Compatibility

  • Works with esx_skin and skinchanger

  • Compatible with weapon shops and crafting systems

  • Supports custom item categories and metadata

  • Fully compatible with existing ox_inventory plugins and extensions

Performance

  • Optimized clone rendering with automatic cleanup

  • Minimal performance impact on nearby player detection

  • Efficient component preview system

  • Smart filtering without lag

  • No performance degradation compared to standard ox_inventory


๐Ÿ› Troubleshooting

Common Issues

Clone not showing:

  • Ensure ox_lib is properly installed

  • Check for console errors related to clone creation

  • Verify resource load order

Weapon components not working:

  • Check inventory:weaponcomponent convar is set to 1

  • Ensure weapon has proper metadata structure

  • Verify component items exist in items.lua

Filters not appearing:

  • Check inventory:inventoryfilters convar is set to 1

  • Verify filtercategories JSON syntax is valid

  • Ensure item categories match configured filters

Clothing slots not working:

  • Check inventory:clothingslots convar is set to 1

  • Verify clothing items have proper subcategory metadata


๐Ÿ“ Credits & License

Original Work

  • ox_inventory by Overextended Team - Full credit to the original developers

  • Base framework and structure - 100% preserved and open source

  • Core functionality - All original features remain intact and accessible

Our Custom Enhancements (Added On Top)

  • Clone system implementation - New feature addition

  • Weapon component management - Enhanced functionality

  • Advanced filtering system - UI improvements

  • Clothing slots integration - New feature addition

  • UI redesign and improvements - Enhanced user experience

๐Ÿค Respect for Original Work

  • โœ… No original code modified - We added features alongside, not replacing

  • โœ… Full attribution to Overextended team maintained

  • โœ… Original license respected - Same terms as official ox_inventory

  • โœ… Open source commitment - All standard ox_inventory functionality remains open

  • โœ… Community contribution - Designed to enhance, not replace the original

License

This enhanced version maintains the exact same license as the original ox_inventory. We fully respect and credit the Overextended Team for their exceptional work. Our additions are built as enhancements on top of their solid foundation.

๐Ÿ“‹ Important Note:

  • Original ox_inventory source code is 100% preserved and fully accessible

  • Latest official version used as base (regularly updated)

  • No vendor lock-in - You have complete access to the underlying ox_inventory

  • Future-proof - Easy to update with new ox_inventory releases


๐Ÿš€ Future Features

Planned Additions

  • Animation system for clothing changes

  • Preview system for clothing items

  • Advanced weapon customization

  • Player trading interface improvements

  • Mobile-responsive UI optimization

Community Contributions

We welcome contributions and suggestions for improving this enhanced version. Please maintain code quality and follow the established patterns when contributing.


This documentation covers all custom features added to the standard ox_inventory. For standard ox_inventory documentation, please refer to the official Overextended documentation.

Last updated