Many thanks to @Gravxd for the original repository and to-do list which will be continued in this repository as his has since been archived
This is a fork of vMenu designed to integrate with ox_lib you will require it for this to work.
This fork introduces some new exports that work with ox_lib for better UI features and to make the menu more convenient/easier to use for players.
Here's an example where we can move away from 3 separate input popups for rgb number values and to ox_lib's native inputDialog where the user can easily select a custom colour and visually see what they're choosing.
Click here to go to the releases page and download vMenu.zip - this will be your fivem resource folder.
Support for this repository going forward can be found below! Atlas Development
- Input Dialog Replace
- Replaces the base game user input and replaces with ox_lib input dialog for easier use such as copy/pasting spawncodes etc.
- Adds ox_lib input slider for predefined values to prevent issues on inputs
- User Confirmations
- Important actions like weather/time changes have user confirmation buttons preventing unwanted mishaps with a misclick.
For code sharing to function, you will require oxmysql
If you have oxmysql, you can enable the outfit/vehicle sharing systems in the permissions.cfg
This is a custom sharing system I designed for vMenu to follow similar behaviour i've seen in some clothing creators on economy servers. This allows for super easy & simple sharing MP ped configurations between players.
Players create unique codes for a saved MP Ped and can give that code out where others can then load said outfit keeping their unique characteristics like hair, tattoos etc but getting clothing & prop options allowing super easy sharing!
This has since been added to vehicles and weapon loadouts.
Each code system is toggleable via a convar in the permissions.cfg meaning you can enable some and disable others
Say goodbye to huge spreadsheets with different numbers and say hello to simple one code input for your roleplay servers!
Previously, addons.json would load into a separate section of the menu for vehicles, weapons and peds. This has since been changed so that the addons load directly into existing lists and show up in the menu like a base game asset.
Custom weapons also support component menus
- Currently custom weapons are UNABLE to be assigned custom permissions without a recompile as the Permission enum is compiled not generated at runtime
- Custom weapons can only be accessed through the
WP.Allpermission or can be assigned a permission in the Permission file (you can get support for this here)
- Colour Selector
- Gives users a hex selector for custom colour setting within vehicle options (primary/secondary)
- New Permissions
- Bulletproof Tires
vMenu.VehicleOptions.BulletproofTires(default: denied)
- Bulletproof Tires
- Fixed getting disarmed (weapon taken away) when locking/unlocking personal vehicles
- Implemented cooldown between usage of close all doors to patch exploit to make cars float/fly
- Configurable cooldown when spawning vehicles to prevent players from spam spawning vehicles
setr vmenu_vehicle_spawner_cooldown 1000
- Added handling menu to be able to read and write handling live to vehicles
- Added engine sound menu to edit the sound of the vehicle from vMenu
- Changed component buttons to checkboxes to reveal which components are equipped or not at a glance
- Also updates so that clashing components update each other --> when Extended Clip is selected, Default Clip unselects
- Added live weapon statistics editing (LIMITED OPTIONS CURRENTLY)
- Added convar
vmenu_blackout_affect_vehicles(default: false) so that vehicle headlights/police lightbars continue to operate during blackouts
- Keybinds for Thermal & Night Vision Modes
- This is locked to users that have the permissions assigned to them.
- Patched vulnerability on weather events that could easily be exploited - thanks to this pull that isn't merged as of 7th Jan 25.
- Disable AI with ease, with a simple convar in your permissions.cfg -
set vmenu_disable_ai true(false by default)
- Auto freeze entites created with the entity spawner menu (to avoid them falling through map automatically on contact)
- Copy Coordinates Button (vector4)
- Copy Vehicle Model Hash
Below is information related to exposed events/functions you can use in your resources to integrate your server better with vMenu.
In the FiveM resource, head to the client & server folders and you will see files labelled integrations.
Here you will find any events/exports for use and you can implement your server specific needs.
Example Client Event:
---@class logAction
---@field action string
---@field data table
AddEventHandler("vMenu:Integrations:Action", function(action, data)
if action == "infinitefuel" then
---@class data table
---@field enabled boolean
lib.print.debug("Infinite Fuel: " .. tostring(data.enabled))
elseif action == "licenseplate" then
---@class data table
---@field handle integer
---@field plate string
lib.print.debug("License Plate Updated: " .. data.handle .. " - " .. data.plate)
--[[
Example Usage:
if doesTextContainBlacklistedWord(plate) then
SetVehicleNumberPlateText(handle, "PLATE")
TriggerServerEvent("banplayer")
end
--]]
elseif action == "noclip" then
---@class data table
---@field enabled boolean
lib.print.debug("NoClip: " .. tostring(data.enabled))
end
end)We also built a handy export for developers to block simple actions like spawning vehicles in restricted areas (jail, whilst dead etc)
---@field type string
exports("canDoInteraction", function(action)
if action == "spawnvehicle" then
if exports.core.isJailed() then return false end -- would block the user from spawning vehicles in jail.
end
return true
end)- Alphabetically sort weapons in categories
- Implement ids into notifications to cleanup / stop duplicate spammy notifications
-
Sync Time/Weather into GlobalStatesAdd export for time / weather - Add new event for ban manager so that developers can easily integrate their own anticheat/banning functions for event exploiters
- Ratelimit on close all/open all doors (exploit to make cars fly)
- Configurable vehicle spawn cooldown
-
Take weapon spawning functionality out of c# and add export for LUA so that devs can easily integrate ox_inventory - Export to add weapons + attachments into vmenu categories without them having to rebuild [REMOVE ADDON WEAPON SUBMENU / CODE] (maybe this gets extended to peds/vehicles?)
- Add a export before weapon/vehicle spawning/teleports such as isRestrained() so developers can easily block actions and add their own cuff/death scripts etc
-
Separate branch (maybe?) for outfit/weapon/vehicle code systemPlanned to go ahead in main fork and add dependency of oxmysql as most servers use it. Maybe ill just do a resource check so if the resource isnt installed the buttons just error and say plugin not installed or smth? - Update weapon attachment right button if it is equipped (checkmark)
- Copy Coords Button (devtools)
- Ability to save BP tires on vehicles? (would need to perm check on re-apply)
- Add an event that is triggered when infinite fuel is enabled so developers can easily integrate with scripts other than FRFUEL
- Modify weapon stats (both on weapon spawn and dynamically)
- Ability to create weapon loadout codes
-
Update Voice Chat menu to use pma-voice insteadRemoving vMenu integrated voice chat - Searchable menus (incl. convar to enable / disable)
- Convert show player names to LUA function to allow for easier developer integration
- Fix non-custom notifications
- Incorporate engine /
sirensound modification to VO - Allow live handling editing for vehicles
- Add in vMenu Discord webhook logs
Below is the information for the source project, all credit to the creation goes to Vespura, thank you to him for making an easy to use open source project for everyone. If you have an issue with a feature of this work or the ox_lib/dev integrations of THIS FORK, please use my discord as they will not be able to provide support for you. In accordance to the license, this is released as a fork with proper credit as well as a link to the original repository.
vMenu is a server-side menu for FiveM servers created by Vespura - find the original repository here
Tom Grobbe - https://www.vespura.com/ Copyright © 2017-2025
You can use and edit this code to your liking as long as you don't ever claim it to be your code and always provide proper credit. You're not allowed to sell vMenu or any code you take from it. If you want to release your version of vMenu, you have to link the original GitHub repo or release it via a Forked repo.
