MonitoringMinecraft MonitoringMinecraft

MiaoMenu

Плагин BukkitFoliaPaper

Оптимальное решение для создания меню в мультисредах на серверах Майнкрафт.

16 скачиваний 3 подписчика
Оцените первым

🐱 MiaoMenu — The menu plugin that actually gets it right

Do what suits you best, make the difficult simple. That's the idea.

Bukkit API Maven Java Folia Supported License: GPL v3


Sound familiar?

Frustrating stuff Other plugins MiaoMenu
Bedrock players can't see menus Need a separate plugin Auto-detected, native support
Every config change means a reload /reload over and over Save the file, you're done — 0.5-second hot-reload
Cross-server menus are a pain Complex setups required BungeeCord / Velocity built in
Players lose the menu item No protection NBT-tagged clock, survives death
Folia breaks everything Console spam Runs natively on Folia

What it does

🎯 One config, both editions

MiaoMenu checks whether a player is on Java or Bedrock and serves the right UI automatically:

  • Java players get the classic chest inventory (1–6 rows, up to 54 slots)
  • Bedrock players get a native form UI designed for touch screens(need Floodgate)

You write the menu logic once. The plugin handles the rest.

Preview Preview

⚡ Hot-reload that actually works

Powered by Java's WatchService with a 0.5-second debounce. Edit a YAML file, hit save — the changes go live immediately. No commands needed.

(There's still a /dgm reload command if you prefer doing things manually. Moreover, tested with over 10 reloads, no memory leaks detected.)

🕰️ The Time Mirror (menu clock)

Every player receives a clock item tagged with NBT data:

  • Checked on login — if it's missing from their inventory, it gets replaced automatically. No duplicates.
  • Protected on death — the clock never drops, and it reappears after respawn.
  • Right-click to open the default menu instantly.
  • Uniquely identified via NBT, so it won't clash with other items.

🔗 Cross-server teleportation

Built-in support for BungeeCord and Velocity proxy setups. The plugin detects which one you're running and configures itself.

# config.yml — one line to enable
settings:
  velocity-network: true

Pair it with a server-selector menu and players can hop between servers in one click:

# server-selector.yml
survival:
  slot: 12
  material: DIAMOND_SWORD
  display_name: "&c&lSurvival"
  left_click_commands:
    - "[player] server survival"
    - "[message] &aConnecting to survival..."
    - "[close]"

🎨 Flexible menu configuration

Java Edition — straightforward YAML:

menu_title: "&6&lMain Menu &7| &fServer Name"
rows: 6

items:
  server_info:
    slot: 10
    material: KNOWLEDGE_BOOK
    display_name: "&e&lServer Info"
    lore:
      - "&7Click to view server information"
      - "&fOnline: &a%server_online%&f/&a%server_max_players%"
    left_click_commands:
      - "[message] &6=== Server Info ==="
      - "[player] list"
      - "[close]"

Bedrock Edition — native forms:

menu:
  title: "§6§lMain Menu"
  items:
    - text: "§e§lServer Info\n§7Click for details"
      icon: "textures/items/book_enchanted"
      icon_type: "path"
      command: "dgeysermenu open info"
      execute_as: "player"

🛠 Action system

Five built-in action types cover the usual interactions:

Action Syntax What it does
Run as player [player] spawn The player executes the command
Run as console [cmd] give %player% diamond 1 Console executes the command
Send a message [message] &aWelcome back! Sends chat text to the player
Close the menu [close] Closes the current menu
Open another menu [menu] shop Opens a different menu (nesting supported)

You can bind separate actions to left-click and right-click:

left_click_commands:
  - "[player] spawn"
right_click_commands:
  - "[close]"

🧩 Plugin integrations

Plugin What you get
PlaceholderAPI Full PAPI variable support — player stats, economy, online count, whatever you need
Floodgate / Geyser Automatic Bedrock detection, no extra setup
CraftEngine Use custom items as menu icons
bStats Anonymous usage metrics, bundled in

🎵 Menu sounds

Pick any Minecraft sound to play when a menu opens:

settings:
  open-menu-sound:
    enabled: true
    sound: "entity.experience_orb.pickup"
    volume: 1.0
    pitch: 1.0

🍃 Lightweight & Folia-ready

  • Minimal footprint — core features only, no bloat.
  • Detects Folia at startup and switches to the correct scheduler automatically.
  • Built on Paper 1.21.8+ API.

Getting started

Installation

  1. Drop the JAR into your server's plugins folder.
  2. Restart the server.
  3. Open plugins/MiaoMenu/ — sample menus are generated automatically.
  4. Edit configs to match your server; changes apply on save.

Commands

Command Description Permission
/dgm open <menu> Opens a menu dgeysermenu.use
/dgm reload Reloads configs (rarely needed) dgeysermenu.reload
/dgm help Shows help dgeysermenu.use
/getmenuclock Gives you a Time Mirror dgeysermenu.admin

Every command has Tab completion — no need to type the whole thing out.

Permissions

dgeysermenu.use      # Basic access (everyone by default)
dgeysermenu.admin    # Admin tools (OP by default)
dgeysermenu.reload   # Reload command (OP by default)
dgeysermenu.menu.*   # Per-menu access control

File layout

MiaoMenu/
├── java_menus/              # Java Edition menus
│   ├── test.yml             # Sample main menu
│   └── server-selector.yml  # Server selector
├── bedrock_menus/           # Bedrock Edition menus
│   └── test.yml             # Sample main menu
└── config.yml               # Plugin settings

Preview


Going further

PlaceholderAPI variables

items:
  player_stats:
    slot: 22
    material: PLAYER_HEAD
    display_name: "&b%player_name%"
    lore:
      - "&fLevel: &e%player_level%"
      - "&fBalance: &6%vault_eco_balance%"
      - "&fPlaytime: &b%player_time_hours% hours"

Nested menus

left_click_commands:
  - "[menu] shop"
  - "[message] &2Welcome to the shop!"

CraftEngine custom items

# config.yml
settings:
  craftengine:
    enabled: true
    fallback-material: STONE
# In a menu file
items:
  custom_sword:
    material: "my_pack:custom_sword"
    display_name: "&d&lLegendary Sword"

Why MiaoMenu?

MiaoMenu Typical alternative
Java + Bedrock Both, out of the box One or the other
Hot-reload 0.5s, automatic Manual /reload
Menu item Managed automatically Hand it out yourself
Cross-server BungeeCord + Velocity built in Needs another plugin
Folia Native support Errors everywhere
Custom items CraftEngine integration Vanilla materials only
Performance Lightweight Heavy
Price Free, GPL v3 Some are paid

Preview Preview

Try it now

/dgm open test          # Open the sample menu
/getmenuclock           # Get a Time Mirror
/dgm help               # See what's available

Java + Bedrock. No reload headaches. Five minutes to set up.


If MiaoMenu saves you some time, a ⭐ on GitHub goes a long way.

GPL v3 · by MingLi

Смотри также

Похожие подборки плагины — по версиям Майнкрафта, загрузчикам и жанрам.

Сервера Майнкрафт

Играть интереснее на сервере — выбирай в рейтинге серверов Майнкрафт и заходи прямо сейчас.

SkyBars
SkyBars Java + BE
891 онлайн
1.8 — 26.2 версия
🎮 ВЫЖИВАНИЕ ⚔️ АНАРХИЯ 🚗 ГТА РП 🎤 ГОЛОСОВОЙ ЧАТ 🎁 БЕСПЛАТНЫЙ ДОНАТ 🌟 СМП 💻 ПК+ТЕЛЕФОН
MigosMc
MigosMc Java + BE
736 онлайн
1.8 — 26.2 версия
🌿 MigosMc.net | Гриферский сервер с войс-чатом | Награды за онлайн ⭐ ВЫЖИВАНИЕ⭐ ОДИНБЛОК⭐ МИНИ-ИГРЫ
SeasonEra
0 онлайн
26.1.2 версия
Выживание • Экономика • Кланы • Приваты • Донат
PLIRGAME - ДЕВУШКИ ВОЙС ЧАТ
29 онлайн
1.21.10 — 26.1.1 версия
❤️ Выживание! ❤️ Войс Чат ❤️ Девушки ❤️ /free
MineLauncher
Лаунчер Майнкрафт без лицензии — все версии
Бесплатный лаунчер для ПК и Андроид — все версии 26.2, 1.21.11, 26.1.2, 1.21.8. Fabric, NeoForge, Forge, шейдеры, моды и скины в один клик.
Без лицензии Fabric, NeoForge, Forge Моды, шейдеры, скины Все версии Майнкрафта ПК и Андроид Для слабых ПК Сервера в лаунчере
Скачать бесплатно
Windows и Андроид · Бесплатно · Без лицензии
Наш чат