DUXPLIMA Documentation

In-Game Editor

Building and editing menus in-game, without touching a config file.

/menu editor builds and changes custom menus from inside the game. Everything the engine can express is editable there: the browser, the slot grid, item editing, the action and requirement builders, menu-wide settings, item capture from your hand, an edit lock and a live preview. Saves are validated and hot-reloaded, so no .conf file has to be opened by hand.

Opening the editor

/menu editor opens the browser: one entry per custom menu in plugins/uxmEssentials/menus/, with its title, size and item count. The management hub, /uxmess gui, reaches the same screen.

ActionWhat it does
CreateType a name; a fresh, empty menu is created and saved
DuplicateCopy an existing menu to a new name
RenameGive a menu a new name, renaming its file too
DeleteRemove a menu, behind a confirmation step
Click a menuOpen its overview
Every change is validated and hot-reloaded

When you save, the editor checks that every action and requirement the menu references actually exists, then writes the file and reloads that one menu live: no server restart, and a menu with a typo is caught before it's written.

The slot grid

Open a menu from the browser and you get a live grid that mirrors the real menu: every item drawn in its actual slot, empty slots shown as clickable placeholders, and a control bar along the bottom (Back, Save, and page arrows for bigger menus). Your own inventory stays usable underneath it, so the fastest way to build a menu is to drag items straight from your bags onto the grid.

Do thisTo…
Drag an item from your inventory onto a slotDrop a copy of it there, exactly as it is: name, lore, enchants, custom model and all. Your real item stays in your bag.
Pick an item onto your cursor, then click slots"Stamp" a copy into every slot you click: fill a whole row of the same item in seconds.
Shift-click an item in your inventorySend a copy to the next empty slot: tap through a stack of items to lay them out fast.
Click an empty slot with an empty cursorAdd a plain item there and open its editor.
Click a filled slotOpen its item editor (name, lore, actions…).
Right-click an item, then click another slotPick it up and move it (swap if the target is filled).
Shift-click an item in the gridClear that slot (with a confirmation).
PreviewOpen the menu exactly as a player would see it, without saving.
SaveWrite your changes and reload the menu live.

Dragging copies; it never eats your items. The grid only ever copies the item's look into the menu; the real stack never leaves your inventory. Drag the same diamond onto ten slots and you still have one diamond. Use your survival or creative inventory as a palette without worrying.

You're always editing a working copy: the real menu only changes when you hit Save, so a menu someone else has open won't shift under them mid-edit. And while you have a menu open in the editor it's locked: anyone else who tries to edit the same menu is told you're editing it, so two people can't save over each other. The lock lifts when you leave the editor or log off.

Editing an item

Click an item in the grid and you get a property panel: the same kind of editor uxmEssentials uses for kits, warps and worlds, where each row is one setting:

SettingHow you edit it
MaterialType any material or token (DIAMOND, head:…, itemsadder:…), or press capture from hand to grab whatever you're holding, exactly as it is.
NameType it in an anvil (supports MiniMessage colours).
LoreAdd, edit, remove and reorder lines one by one.
Amount / Priority / Model-dataStep up/down (hold shift for bigger jumps).
Glow & item flagsToggle on/off.
Lore mode / Item typePick from a list.
SlotsSet which slot(s) the item occupies.

Changes land on your working copy as you make them; Back returns to the grid, and Save writes everything at once.

Click actions & requirements

An item's editor also has Click Actions and Requirements rows, so you can wire up behaviour without knowing the config syntax:

  • Click actions: pick a click type (left, right, shift-left, …), then build a list of things that happen on that click. Add picks an action from a menu of everything the plugin supports (message, open another menu, run a command, give money, play a sound, and dozens more), then you fill in its value. You can reorder and remove them.
  • Requirements: decide who sees or can use the item: add conditions (a permission, enough money, an item in hand, a placeholder comparison…) from the same kind of picker, and set how many must pass.

Because the action and condition lists come straight from the live plugin, you can only pick things that actually exist, and every menu is re-checked before it saves, so a broken reference is caught rather than written.

Building from your inventory

The fastest way to fill a menu is to use your own inventory as a palette and drag items onto the grid:

  • Drag an item from your bags onto a slot: a copy lands there, exactly as it is (custom name, lore, enchants, model data, custom-model items, the lot), captured byte-for-byte. Your real item never moves.
  • Stamp: pick an item onto your cursor, then click one slot after another to drop a copy into each. Great for filling a border or a row with the same item.
  • Shift-click an item in your inventory to send a copy to the next empty slot: tap down a stack of items and they lay themselves out in order.
  • By command: /menu captureitem <slot> puts whatever you're holding in your hand into that slot of the menu you're currently editing (handy when you've closed the grid window to type). An empty hand or an out-of-range slot just tells you and changes nothing.

Captured items round-trip perfectly, so a fully-built item from your inventory becomes a menu button with zero fuss. To fine-tune afterwards, click the slot and use the item editor as normal (its capture from hand button does the same thing for the material field).

Live preview

Hit Preview in the grid to open the menu exactly as a player would see it: rendered through the real menu engine, with your unsaved changes, but without committing anything to disk. It's a look-only view: close it to return to the editor. Preview it, tweak it, preview again, and only Save when it's right.

Open a menu's overview (click it in the browser) to edit the whole menu, not just its items:

SettingWhat it controls
TitleThe menu's name at the top.
RowsHow big the menu is, 1 to 6 (shrinking drops items that fall off the end).
Inventory typeChest, hopper, dropper or dispenser.
Click cooldownA small delay between clicks, to stop spam.
Chest-only / Bottom-inventoryRendering options for how the menu behaves.
Open requirementConditions a player must meet to open the menu at all.
Open / Close actionsThings that happen when the menu opens or closes.
RefreshWhether the menu re-draws itself on a timer, and how often.
Open commandGive the menu its own command (/shop), with aliases, a permission and a deny message.

From here you also jump to the grid, Save the whole menu, or Delete it.

Naming rules

Menu names use letters, numbers, - and _. A few names are reserved for the engine's own files (openers, patterns, placeholders, example) and can't be used, and you can't overwrite a menu that already exists by accident.

Permissions

NodeWhat it grantsDefault
uxmessentials.menu.editorUse /menu editor and edit menus in-gameOperators

Related: Custom Menu Engine, Actions & Requirements, Converting Other Menus