RedM documentation
Murphy Menu
Getting Started
Installation and API
Installation and API for Murphy Menu.
Install the complete resource
Download Murphy Menu from its Workshop page. Keep the folder name murphy_menu, with fxmanifest.lua at its root. Include the complete client/ and html/ directories, including the fonts, images, CSS and JavaScript.
If you only need Menu as a dependency, this is the installation step. The dependent script supplies its own entries and actions.
The examples below follow the official Menu source. Its manifest is unversioned. An inherited README may refer to redemrp_menu_base; Murphy integrations use the resource and event names shown here.
Open a small example menu
For your own integration, place this in a client Lua file of a separate resource that starts after Menu:
Run /docs_menu to open this example. It only prints a value; it does not buy, grant or remove anything.
Arguments and focus
The complete signature is:
submit handles selection, cancel handles closing/back input, and change handles changes such as sliders. The final setnui is the ninth argument. Set it to true when the integration needs cursor/typing focus. Keep the two nil arguments in the example when you do not provide change and close callbacks.
Use a distinct namespace/name for each menu. Close your own menu with menu.close() or MenuData.Close(type, namespace, name). CloseAll() also closes menus opened by other resources using this library.
Adjust entries
| Field | Use |
|---|---|
label |
Visible row text |
value |
Value returned to your callback |
desc |
Description for the selected row |
type = "slider" |
Numeric selector |
min, max, hop |
Slider bounds and step |
type = "text" |
Text-entry row |
image |
Image shown with the row |
descriptionimages |
Additional images, text and counts below the selected entry |
The menu object has update(query, newData), setElement(index, key, value), setElements(elements) and setTitle(title) methods. Call menu.refresh() after modifying its data. Element indices in Lua start at 1.
Images must use paths to files available to the game's UI. Do not copy an old nui://redemrp_menu_base/ image path if that resource is not installed.
Menu callbacks handle presentation and input. Your server code still decides whether a player may purchase an item, access storage or perform a restricted action.
Last updated: September 15, 2026