RageNativeUI Tutorial for GTA V Menu Development
RageNativeUI is a powerful and flexible UI library for GTA V modding, commonly used in FiveM and RAGEPluginHook. It allows developers to create menus, lists, and custom interfaces with ease, enabling immersive user interaction in single-player or multiplayer mods.
Key Features
Menu Framework
Effortlessly build dynamic and nested game menus using a structured, object-oriented approach compatible with GTA V mod frameworks.
Item Variety
Supports multiple item types: checkboxes, sliders, lists, and more—giving developers flexibility to create interactive, responsive UIs.
Event Handling
React to user input with powerful callbacks—trigger game logic instantly when users select, check, or slide menu elements.
UI Customization
Easily personalize menu visuals including banners, titles, colors, and layouts to align with your mod or server branding.
Submenu Support
Create clean, layered user experiences using submenus and transitions—perfect for complex settings, controls, or admin tools.
Lightweight Integration
Designed for performance and ease, RageNativeUI seamlessly integrates with RAGEPluginHook and FiveM, requiring minimal setup.
Troubleshoot
If your UI isn't visible, ensure you're calling MenuPool.ProcessMenus() in OnTick. Also confirm the menu is initialized and set to visible.
Controller or keyboard input not working? Check if other scripts override controls. Use Game.DisableControl() wisely and prioritize input checks.
Menu items overlapping or broken? You might be reusing instances or skipping RefreshIndex(). Always update the pool after changes.
Callbacks not firing? Ensure event handlers like OnItemSelect are registered before calling menu.Visible = true. Order matters!
Too many menus? Use MenuPool properly to manage active menus. Clear unused ones with MenuPool.Remove() to avoid memory leaks and lag.
Installation Method
System Requirements
- Ensure you have .NET Framework 4.8+, Visual Studio, and either FiveM or RAGEPluginHook installed to develop GTA V mods using RageNativeUI.
Download Package
- Get the latest RageNativeUI.dll from the official GitHub repository or a trusted fork for FiveM or RPH.
Project Integration
- Add the .dll to your project’s references in Visual Studio. Ensure it’s included in your scripts folder if you're using RAGEPluginHook.
Folder Setup
- Place RageNativeUI.dll in the same directory as your compiled script. FiveM users should include it inside the resources/[local]/your_script/ folder.
Menu Initialization
- In your main script file, initialize the menu using UIMenu. Add it to the MenuPool for it to render and respond to input events properly.
Run & Test
- Launch GTA V via FiveM or RPH. Ensure your script loads without errors and that the menu displays correctly when triggered.
Frequently Asked Question (FAQ's)
What is RageNativeUI?
RageNativeUI is a C# library used to create in-game menus for Grand Theft Auto V mods built with FiveM or RAGEPluginHook.
Is RageNativeUI compatible with FiveM?
Yes. RageNativeUI is commonly used in FiveM client scripts to provide user interfaces for mods and servers.
How do I install RageNativeUI?
You can install it by downloading the compiled DLL from the GitHub repo or building it from source, then referencing it in your C# project.
Where can I download RageNativeUI?
You can find it on GitHub at: https://github.com/Guad/RageNativeUI
What are the dependencies for RageNativeUI?
You need .NET Framework (usually 4.5 or higher) and either FiveM’s scripting environment or RAGEPluginHook.
Can I create nested menus (submenus)?
Yes. RageNativeUI supports submenus that can be linked to parent menus using MenuPool and navigation methods.
How do I display a menu in-game?
Create a UIMenu, add it to a MenuPool, and call menu.Visible = true when a key is pressed or an event triggers.
Why is my menu not showing?
Ensure that MenuPool.ProcessMenus() is called in your game loop, and that menu.Visible is set to true.
What kinds of menu items are available?
Standard types include:
- UIMenuItem (basic)
- UIMenuCheckboxItem
- UIMenuListItem
- UIMenuSliderItem
- UIMenuSeparatorItem
Can I customize the look of the menu?
Yes. You can change the banner, subtitle, and even replace the default design with custom textures.
Can I dynamically add/remove menu items?
Yes. Use menu.AddItem() and menu.RemoveItem() during runtime.
How do I detect when a menu item is selected?
Use the OnItemSelect event or attach handlers to specific items for click/selection events.
Is RageNativeUI still maintained?
The official version is no longer actively developed, but community forks or modified versions may be maintained.
Can I use RageNativeUI with Lua or JavaScript in FiveM?
No. RageNativeUI is written in C# and is only usable within C# client scripts in FiveM.
How do I handle input conflicts with other UI?
Ensure that menu activation keys do not overlap with game controls or other script bindings, and check IsInputDisabled() if needed.
How do I close the menu programmatically?
Set menu.Visible = false or use menu.Close() depending on your implementation.
Can I create multiple independent menus?
Yes. Use a MenuPool to manage multiple menus and switch between them as needed.
Why is MenuPool important?
MenuPool manages all your active menus, processes their input, and ensures they are drawn and updated correctly each frame.
Does RageNativeUI support localization?
Not natively, but you can implement localization by dynamically replacing strings or using resource files.
Are there alternatives to RageNativeUI?
Yes. Some developers use custom NUI menus (HTML/JS) in FiveM or other C# UI frameworks, but RageNativeUI is ideal for simple, quick-to-implement native-style menus.
RageNativeUI Library for RAGE Plugins
Lightweight and user-friendly UI library for RAGE Plugin Hook, designed for creating custom game menus in GTA V mods.
Price: Free
Price Currency: $
Operating System: Windows
Application Category: Software
4.8