Persistence: All animations saved and restored automatically
👁️ Preview System
Real-time preview before applying skins
Toggle preview on/off
Hover preview for quick viewing
Smart conflict management
💾 Save System
Client-side KVP storage
Per-weapon customization saving
Automatic restoration on spawn/restart
🛠️ Installation
Prerequisites
FiveM Server with lua54 enabled
No framework required (works standalone)
Steps
Download and extract the resource to your server:
Add to server.cfg:
Restart your server or start the resource:
⚙️ Configuration
All configuration is done in shared/config.lua.
Basic Settings
Camera Settings
Tenor GIF Integration
🔌 Framework Support
The script automatically detects your framework:
✅ ESX Legacy - Detected if es_extended is started
✅ QBCore - Detected if qb-core is started
✅ Standalone - Used if no framework detected (uses playerSpawned event)
No configuration needed! The script will display a console message indicating which framework was detected.
👑 VIP System
Enable VIP System
Make Modules VIP-Only
📦 Modules
Enable or disable any module:
Note: If you disable a module, it will be hidden from the menu automatically.
⌨️ Commands
Command
Description
/weaponmenu
Open the weapon customization menu
/resetweaponkvp
Reset all saved weapon customizations
Default Key: F9 (configurable in Config.KeyMapping)
🎯 Usage
Equip a weapon in-game
Open the menu with /weaponmenu or F9
Browse categories:
Weapon Tint
Skin Limited Edition (Patterns)
Custom Skin (URL)
Weapon Skin (Components)
Weapon Animation
Holster Animation
Preview before applying (toggle with eye icon)
Apply your customization
All customizations are automatically saved and restored when you respawn or restart.
🌐 Multi-Player Synchronization
✅ Synchronized between clients
The following elements are visible to all players :
Weapon Tints : Weapon tints are synchronized and visible to everyone
Weapon Skins : Weapon skins (components) are synchronized
Holster Animations : Holster animations are synchronized
❌ Not synchronized (client-side only)
The following elements are only visible to you :
Skin Limited Edition : Patterns (textures) cannot be synchronized because they replace the weapon texture. If they were synchronized, it would replace all weapons for all clients
Custom Skin : Custom skins via URL cannot be synchronized for the same technical reason (global texture replacement)
Weapon Animations : Weapon animations are not synchronized because they are too costly server-side in terms of performance
Note : Even if some elements are not visually synchronized, they are still saved locally and automatically restored on your next connection.
📝 Adding Custom Patterns
Add patterns in shared/config.lua:
Place pattern images in ui/images/pattern/ as WebP files.
🔧 Troubleshooting
Menu doesn't open
Make sure you have a weapon equipped
Check console for errors
Verify the resource is started: ensure weaponmenu
Skins not saving
Check client console for errors
Verify KVP storage is working
Try /resetweaponkvp and reapply
VIP system not working
Ensure Config.VIP.enabled = true
Check your checkVIP function returns correct values