Skip to content

Menu Guide

Orven edited this page Oct 10, 2026 · 1 revision

Menu authoring

Language: English | Русская версия

Menus are YAML files stored in plugins/UIcore/menu/. Each menu contains a camera position and a layout of world-space elements. The camera-relative axes are intuitive: positive X moves right, positive Y moves up, and positive Z moves forward from the camera.

Minimal example

welcome:
  camera-position:
    type: player
    distance: 1.5
  layout:
    title:
      type: text
      name: "<gold>Welcome"
      x: 0
      y: 0.45
      z: 3.5

Save as welcome.yml, run /uicore reload, then open it with /uicore run welcome.

Elements and interactions

Use text for labels and buttons, items for item displays, and the documented input, avatar, slot, and schematic features for their specific use cases. Element properties control position, appearance, hitbox, hover behavior, permissions, click requirements, cooldowns, and actions. Menus can navigate to another menu and can collect typed input through chat.

Per-player states let an action update multiple elements, such as changing a label, material, or visibility after a toggle. Templates and slots help reuse layouts and cycle through selectable content.

Menu privacy defaults

welcome:
  hide-menu-for-other-player: true
  hide-player-for-other-player: true
  hide-other-players: false
  can-damaged: false

These settings control whether nearby players see menu displays, whether the menu owner is hidden from others, whether other players are hidden from the owner, and whether other players can damage the owner. They are independent. can-damaged concerns player-caused damage only; mobs and environmental damage follow normal server rules.

Schematic previews

Put Sponge .schem v2 or v3 files in plugins/UIcore/schematics/. A menu can display up to four personal previews. These previews do not alter world blocks. Block-entity contents, entities, and biomes are not included.

For all supported element properties and examples, use the full English menu authoring guide. The bundled examples are in demo_main, demo_gallery, and demo_states.

Clone this wiki locally