src Плагин GUI UIcore | Интерактивные интерфейсы прямо в мире Minecraft [2026-10-10]

UIcore | Интерактивные интерфейсы прямо в мире Minecraft
Краткое описание:
Зачем ограничиваться привычными окнами сундуков и инвентаря, когда интерфейс может стать полноценной
13
275
  • Лайк 0
Реакции:1 пользователя
Для версий
  1. 1.21.✘
  2. 26.✘
Источник
https://github.com/kekaop/UIcore
Java
  1. Java 17
  2. Java 21
  3. Java 25
Документация
https://github.com/kekaop/UIcore/wiki
Исходный код
https://github.com/kekaop/UIcore
Зависимости
PacketEvents 2.14.0
UIcore
Интерактивные интерфейсы прямо в мире Minecraft

YAML • Java API • Без обязательного ресурспака • Paper / Folia​

Новый подход к интерфейсам Minecraft

Зачем ограничиваться привычными окнами сундуков и инвентаря, если интерфейс может стать полноценной частью игрового пространства?

UIcore — фреймворк для создания интерактивных интерфейсов на Minecraft-серверах. Он размещает элементы меню вокруг камеры игрока, превращая обычные надписи, кнопки, предметы и поля ввода в элементы игрового мира.

Вместо стандартного инвентарного меню игрок получает интерфейс с визуальным курсором. Он может наводиться на элементы, нажимать кнопки, переключать экраны и вводить текст через игровой чат.

Главное преимущество: встроенные примеры используют стандартные предметы Minecraft и не требуют установки ресурспака.

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

Основные возможности

01. Интерактивные экраны

Создавайте полноценные меню с интерактивными элементами, которые располагаются непосредственно в игровом пространстве.

◆Текст и кнопки. Размещайте надписи и интерактивные элементы в собственных интерфейсах.

◆Визуальный курсор. Игрок может перемещать курсор и взаимодействовать с элементами меню.

◆Реакция на наведение. Изменяйте состояние элементов при наведении курсора.

◆Стили курсора. Используйте доступные варианты отображения курсора.

◆Всплывающие подсказки. Показывайте дополнительную информацию об элементах.

◆Анимации нажатия. Добавляйте визуальную обратную связь при взаимодействии.

◆Задержки между кликами. Настраивайте ограничения частоты нажатий.

◆Переключение экранов. Создавайте многостраничные интерфейсы с переходами между меню.

02. Ввод данных и динамические состояния

UIcore позволяет создавать не только статичные меню, но и интерфейсы, которые изменяются в зависимости от действий игрока.

◆Текстовый ввод. Получайте данные от игрока через игровой чат.

◆Переключатели. Создавайте элементы с несколькими состояниями.

◆Проверка прав. Ограничивайте доступ к действиям с помощью разрешений.

◆Условия взаимодействия. Определяйте требования для выполнения действий.

◆Индивидуальные состояния. Храните состояние элементов отдельно для каждого игрока.

◆Динамический текст. Меняйте содержимое надписей в зависимости от состояния.

◆Динамические предметы. Изменяйте материал отображаемого элемента.

◆Управление видимостью. Показывайте или скрывайте отдельные элементы.

Например, в меню настроек переключатель может изменять свой внешний вид, а недоступные функции — скрываться или отображаться иначе в зависимости от заданных условий.

03. Галереи предметов и аватары

Используйте привычные игровые объекты как часть собственного интерфейса.

◆ Отображение предметов Minecraft.

◆ Отображение аватаров игроков.

◆ Создание галерей предметов.

◆ Повторно используемые шаблоны элементов.

◆ Слоты с выбираемым содержимым.

Эти возможности подходят для создания каталогов, коллекций, экранов выбора и других интерфейсов, где важно визуально представить содержимое.

04. Персональный предпросмотр построек

Одна из интересных возможностей UIcore — отображение построек непосредственно внутри меню.

Фреймворк поддерживает предпросмотр до четырёх персональных схем формата Sponge .schem версий v2 и v3.

◆ До четырёх схем в одном меню.

◆ Предпросмотр отправляется только конкретному игроку.

◆ Настоящие блоки игрового мира не изменяются.

◆ Схемы можно использовать в каталогах и системах выбора построек.

Таким образом, игрок может ознакомиться с внешним видом постройки без её размещения в настоящем мире.

Ограничение: предпросмотр отображает состояния блоков, но не содержимое контейнеров и других block entities, сущности или биомы.

05. Видимость игроков и управление уроном

Для каждого меню предусмотрены отдельные настройки взаимодействия с окружающим миром.

◆ Определяйте, видят ли другие игроки элементы открытого меню.

◆ Скрывайте игрока, открывшего интерфейс, от остальных игроков.

◆ При необходимости скрывайте остальных игроков от пользователя меню.

◆ Разрешайте или запрещайте получение урона от других игроков во время работы с меню.

Это особенно полезно для серверных хабов, интерфейсов выбора режима и других сценариев, где необходимо контролировать взаимодействие с игровым окружением.

Создание интерфейсов: YAML и Java API

UIcore предоставляет два основных способа разработки и настройки интерфейсов.

YAML — настройка без отдельного плагина

Создавайте меню с помощью конфигурационных YAML-файлов.

Этот способ подходит для владельцев серверов, администраторов и разработчиков, которым необходимо быстро создавать интерфейсы без написания отдельного Java-плагина для каждого меню.

YAML можно использовать для настройки навигации, профилей, меню выбора, экранов настроек и других интерфейсов.

Файлы меню располагаются в директории:

plugins/UIcore/menu/

После изменения конфигурации выполните команду:

/uicore reload

Java API — расширение возможностей

Для разработчиков предусмотрен публичный Java API, позволяющий расширять функциональность UIcore.

◆Собственные действия. Добавляйте пользовательскую логику взаимодействия.

◆Источники данных. Подключайте информацию из других систем и плагинов.

◆Дополнительные условия. Реализуйте собственные требования и проверки.

◆Пользовательские компоненты. Расширяйте набор доступных элементов интерфейса.

Благодаря Java API UIcore можно использовать как интерфейсную основу для собственных серверных систем.

Что можно создать с UIcore?

◆ Главное меню сервера

Создавайте центральный интерфейс навигации с кнопками, надписями и переходами между разделами.

◆ Профиль игрока

Отображайте аватар, предметы, информацию и доступные действия в отдельном интерфейсе.

◆ Меню настроек

Используйте переключатели, условия и индивидуальные состояния для управления параметрами.

◆ Магазины и каталоги

Создавайте визуальные каталоги предметов и связывайте элементы меню с собственной логикой покупок.

◆ Выбор игрового режима

Разрабатывайте отдельные экраны для выбора режима или перехода между серверами.

◆ Галереи построек

Предоставляйте игрокам возможность просматривать схемы без изменения реального мира.

◆ Интерфейсы собственных плагинов

Подключайте Java API для реализации дополнительных действий, условий, источников данных и компонентов.

Важно: перечисленные варианты являются примерами систем, которые можно построить на основе UIcore. Специфическая логика, например обработка покупок или сохранение настроек, зависит от реализации и подключённых плагинов.

Интеграции

UIcore поддерживает подключение к другим популярным серверным плагинам.

Встроенные необязательные интеграции:

◆ Vault
◆ LuckPerms

Дополнительные необязательные интеграции:

◆ PlaceholderAPI
◆ FancyNpcs
◆ SkinsRestorer
◆ CraftEngine

Все перечисленные интеграции являются необязательными.

UIcore может запускаться без этих плагинов. Для использования функций конкретной интеграции необходимо установить соответствующий плагин.

Требования и совместимость

◆Minecraft: 1.21.1 и новее.

◆Серверное ядро: Paper или совместимое.

◆Folia: заявлена поддержка с учётом региональных ограничений.

◆Обязательная зависимость: PacketEvents 2.14.0.

◆Java: версия, требуемая выбранной версией Minecraft и серверного ядра.

Bytecode самого плагина и его публичного API собран для Java 17. Это не означает, что сервер Minecraft 1.21.x можно запускать на Java 17: необходимо соблюдать требования используемой версии Minecraft и ядра.

Особенность Folia: элементы одной сцены должны находиться в регионе камеры. Это необходимо учитывать при проектировании интерфейсов и их размещении.

Подробности и проверенные серверные сборки:

Compatibility Matrix

Быстрый старт

Шаг 1. Установка

Установите UIcore и обязательную зависимость PacketEvents 2.14.0 в папку plugins/ вашего сервера.

Шаг 2. Первый запуск

Запустите сервер. UIcore создаст конфигурацию и три демонстрационных меню.

Шаг 3. Открытие демонстрационного меню

Откройте главное демонстрационное меню командой:

/uicore run demo_main

Чтобы закрыть интерфейс:

/uicore stop

Шаг 4. Создание собственного меню

Добавляйте или редактируйте YAML-файлы в директории:

plugins/UIcore/menu/

После изменения конфигурации выполните:

/uicore reload

Шаг 5. Изучение документации

Инструкция по установке:

Installation Guide

Руководство по созданию меню:

Menu Authoring Guide

Матрица совместимости:

Compatibility Matrix

Видеодемонстрации

Демонстрационные меню UIcore

Посмотрите, как работают встроенные примеры интерфейсов.

Watch Demo Video

Пример интерфейса сервера

Пример использования UIcore для создания собственного серверного меню.

Watch Custom Menu Video

Известные ограничения

◆Предпросмотр схем. Отображаются состояния блоков, но не содержимое контейнеров и других block entities, сущности или биомы.

◆Консольные команды. Выполнение команд от имени консоли в меню отключено по умолчанию. Для использования требуется явно настроить список разрешённых команд.

◆NoChatReports. На некоторых клиентских конфигурациях может нарушать работу подписанного чата и текстового ввода через меню. Наблюдаемая проблема и обходной путь описаны в документации.

◆Folia. Необходимо учитывать региональные ограничения при размещении элементов интерфейса.

◆Совместимость. Перед установкой рекомендуется ознакомиться с матрицей проверенных серверных сборок.

Открытый исходный код

UIcore распространяется с открытым исходным кодом под лицензией GNU Affero General Public License v3.0 (AGPL-3.0).

Исходный код доступен для изучения, модификации и разработки расширений в соответствии с условиями лицензии.

Исходный код и документация:

GitHub - UIcore

Лицензия:

AGPL-3.0 License

Разработчик:Orven

UIcore основан на проекте CustomScreenMenu автора wuhaoxian123 и публикуется с разрешения оригинального разработчика.

Оригинальный проект:

CustomScreenMenu

UIcore — интерфейсы, которые становятся частью игрового мира.

github.com/kekaop/UIcore​

Автор

Orven

Еще ресурсы от Orven

WebConnector - мост между WEB и Minecraft
WebConnector - мост между WEB и Minecraft
Это плагин для связи Minecraft-сервера с внешними сервисами через HTTP API и webhooks: сайтами, пане
ВерхНиз