Skip to content

Releases

pnCases 1.5.4-remaster

Choose a tag to compare

@github-actions github-actions released this 01 Nov 21:41

pnCases 1.5.4-remaster

Paper 1.16.5–26.x. После замены JAR нужен полный перезапуск сервера.

Главное

1. Сцены при подходе к кейсу. Когда игрок подходит к кейсу, вокруг него меняется местность, только для этого игрока, в мире ничего не ломается.

  • Осенняя: пугало, клёны, тыквы, грибы, сено, корзина с урожаем вместо блока кейса, музыка и частицы.
  • Зимняя (новогодняя): снег, ёлки, снеговики, Дед Мороз, северное сияние в небе, подарок вместо блока кейса.
  • Сцену можно повернуть (0, 90, 180, 270 градусов) и настроить в Machine.

2. Новые анимации открытия кейса.

  • «Осенний клён»: вырастает клён, светлячок перелетает от плода к плоду и садится на выигрышный.
  • «Новогодняя ёлка»: на месте кейса растёт ёлка, огонёк бежит по лампочкам-наградам и замирает на выигрышной.
  • «Сани Деда Мороза»: под звон бубенцов по небу пролетают сани с оленями. Над кейсом с них падает подарок, плюхается в снег и дрожит, ленты загораются цветом редкости, крышка слетает, и появляется приз.
  • «Ледяная глыба»: иней бежит по земле, кейс вмерзает в лёд, вокруг вырастают сосульки. Удар за ударом по льду расходятся трещины, глыба светится цветом редкости, затем разлетается на осколки и выпускает приз.
  • Все четыре лежат в группе «Сезонные» и доступны сразу, без привязки к дате.
  • Новые анимации поворачиваются к открывающему игроку, поэтому награда всегда показывается перед ним, а не сбоку.

3. Gift: передача ключей. /pncases gift <игрок>: подарить другому игроку 1, 5 или все свои ключи. Право pncases.gift.

4. Открытие сразу несколько раз. Shift + ПКМ: 1, 3, 5 или 10 кейсов за раз, одна анимация на всю серию и общее окно с наградами.

5. Machine переделан. Редактор кейсов прямо в игре, без YAML: создание кейса, добавление наград кликом по предмету, шансы, проверка «что мешает кейсу работать», симулятор шансов на 100 000 открытий, откат правки, привязка блока.

6. Кейс-контейнер. Несколько кейсов в одном блоке: игрок открывает блок, выбирает нужный кейс из меню (например, Железный или Золотой) и открывает его. Настраивается в bundle.cases или в Machine.

7. Готовые примеры кейсов. В plugins/pnCases/examples/ лежат образцы всех типов наград (предметы, деньги, поинты, LuckPerms, консольные команды) и список всех плейсхолдеров. Сервером они не загружаются, их копируют в cases.

8. Крафт ключей в обычном верстаке. Ключ кейса теперь можно не только выдать или купить, а сделать самим: игрок раскладывает предметы в обычном верстаке Minecraft, и если раскладка совпала с рецептом, ключ сразу попадает на его счёт. Рецепты вы собираете сами, прямо в игре. Для рецепта подойдут и обычные предметы Minecraft, и особые предметы из других плагинов. На один кейс можно сделать несколько разных рецептов.

Как сделать рецепт ключа

Рецепты есть у каждого кейса отдельно. По умолчанию их нет, пока вы их не добавите.

Где настроить. Два способа, оба открывают одно и то же:

  • /pncases machine → нужный кейс → «Дополнительно» → «Крафт ключа»;
  • /pncases workbench (список кейсов) или /pncases workbench <кейс> (сразу нужный кейс). Команда только для администраторов.

Как добавить рецепт.

  1. В списке рецептов нажмите «Добавить рецепт». На кейс можно сделать до 14 рецептов, то есть до 14 разных способов получить один и тот же ключ.
  2. Откроется сетка 3×3, как в верстаке. Возьмите нужный предмет в руку (он окажется на курсоре) и нажмите на слот сетки. Предмет в руке при этом не пропадёт.
  3. Так заполните нужные слоты. Правый клик по слоту очищает его.
  4. «Ключей за крафт» задаёт, сколько ключей получит игрок за один крафт.
  5. Кнопкой «Рецепт включён» рецепт включается и выключается. В списке то же делает правый клик по рецепту. Выключенный рецепт не работает.

Какие предметы можно положить в рецепт.

  • Любой обычный предмет Minecraft: алмазы, золото, звезда Незера, книги и так далее. Название и описание у такого предмета не важны.
  • Особые предметы из других плагинов. Если плагин помечает свои предметы тегом вида namespace:key (например, myplugin:key_shard), положите такой предмет в слот как образец. Плагин сам прочитает его теги и в игре будет принимать только предметы с этими тегами. Название и описание при этом снова не важны. В подсказке слота видно, какие теги запомнены.
  • Сколько нужно предметов. Берётся столько, сколько лежит в стопке в вашей руке в момент нажатия. Положите в руку 3 алмаза, и в этом слоте рецепта будет нужно 3 алмаза.

Что важно знать.

  • Обычный слот не принимает предмет с особыми тегами: особый предмет за обычный не сойдёт. А для особого слота нужны все запомненные теги.
  • Рецепт работает строго по слотам, как кастомный рецепт верстака: каждый предмет лежит на своём месте, и в остальных слотах сетки должно быть пусто.
  • Работает в обычном верстаке 3×3. В малой сетке 2×2 в инвентаре ключи не создаются.
  • Если те же предметы подходят и под обычный рецепт Minecraft, сработает ключ.

Как это выглядит у игрока. Игрок раскладывает предметы в верстаке. Когда рецепт собран, в окне результата появляется ключ с названием кейса. Клик по нему списывает предметы и зачисляет виртуальный ключ на счёт, в чат приходит сообщение. Shift + клик создаёт ключи, пока хватает предметов. Сам предмет-ключ игроку в руки не попадает.

В файле кейса (plugins/pnCases/cases/<кейс>.yml) рецепты лежат в разделе workbench. Слоты считаются от 0 до 8 слева направо и сверху вниз:

workbench:
  recipes:
    1:
      enabled: true
      result-amount: 1
      slots:
        0: { material: DIAMOND, amount: 2 }
        4: { material: NETHER_STAR, amount: 1, tags: ['myplugin:key_shard'] }
    2:
      enabled: true
      result-amount: 3
      slots:
        3: { material: GOLD_INGOT, amount: 8 }

Как настроить сцену при подходе к кейсу

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

В игре (Machine): /pncases machine → нужный кейс → «Дополнительно» → «Ближняя анимация». Включаешь сцену и выбираешь, какую: осеннюю или зимнюю. Изменения применяются сразу, без перезагрузки.

Что можно менять:

  • Общее: радиус, на каком расстоянии сцена появляется, насколько декор разбросан вокруг, плавность появления и исчезновения, поворот сцены (0, 90, 180, 270 градусов).
  • Звук: музыка и звуки, громкость, пауза между повторами музыки.
  • Частицы: падающие листья или снег, вихрь, искры, северное сияние (в зимней сцене), их количество.
  • Декор: сколько деревьев, куч, тыкв, грибов, снеговиков, гирлянд и подарков.
  • Пугало / Дед Мороз: вкл/выкл, цвет одежды, фразы, которые он говорит.
  • Мир: вид кейса вблизи (корзина или подарок, снежный шар, кристалл, обычный блок или без изменений), цвет, земля вокруг (какие блоки и как часто), оставлять ли вид кейса во время открытия.

В файле кейса (plugins/pnCases/cases/<кейс>.yml) то же самое лежит в разделе proximity-animation. Готовый образец с комментариями: plugins/pnCases/examples/07-proximity.yml.

proximity-animation:
  enabled: true
  scene: AUTUMN        # AUTUMN или WINTER
  radius: 8            # с какого расстояния появляется сцена
  rotation: 90         # поворот сцены: 0, 90, 180 или 270
  music:
    enabled: true
    volume: 0.3

Что важно знать:

  • Игрок видит сцену, только когда стоит рядом. Блоки меняются только на его экране, в мире ничего не ломается.
  • Сцену видит каждый игрок отдельно, остальные ничего не замечают.
  • Когда игрок уходит, всё плавно исчезает.
  • Если выключить в сцене музыку, звуки или частицы, остальное продолжит работать.

Ещё добавлено

  • Избранные анимации для каждого кейса: при открытии выбирается случайная из набора.
  • Гарант редкости: если долго не выпадает, награда выпадет гарантированно.
  • Несколько команд в одной награде (commands); срок LuckPerms-награды и сообщение настраиваются в Machine.
  • Плейсхолдеры PlaceholderAPI: %pncases_keys_<кейс>%, %pncases_cases%, %pncases_opening%, %pncases_version%.
  • Команда /pncases copycase <откуда> <куда>.
  • Резервная копия настроек в plugins/pnCases/backups/ при каждом обновлении (5 последних).
  • Историю открытий можно отключить (features.history в config.yml).
  • События для других плагинов: CaseOpenEvent, CaseRewardGrantEvent, CaseKeyGiveEvent.

Изменено

  • Файл плагина стал меньше (около 3,6 МБ вместо 10 МБ): драйверы MySQL и MongoDB сервер скачивает сам при первом запуске, нужен интернет. SQLite и Redis работают как раньше.
  • Подарок ключей и серия открытий на MongoDB работают только с репликой (replica set): одиночный сервер MongoDB их не поддерживает, чтобы ключи не терялись. На SQLite, MySQL и Redis ограничений нет.
  • Мобовые анимации проверяют место кейса (сложность мира, запрет спавна). Если нельзя, играет «Круг фортуны», а в меню причина.
  • «Призма»: над крутящимися наградами больше нет подписей, название показывается только у выигранной награды.
  • Быстрая серия показывает одно сообщение с итогом, а не по сообщению на каждую награду.
  • Постоянная группа LuckPerms заменяет временную такую же.
  • pnLibrary теперь 0.0.1-dev.5. Если её нет, pnCases скачает сама (около 7 МБ). Старую pnLibrary 2.x нужно удалить.

Исправлено

  • Цифры после цвета пропадали: версия сервера 26.3 показывалась как .3, а числа в меню (страницы, суммы, сроки) могли исчезать.
  • Правка суммы награды стирала её сообщение (Vault, PlayerPoints).
  • Сообщение награды-предмета и {amount} работали неправильно.
  • Подписи голограмм FancyHolograms обновлялись с задержкой.
  • Ошибка анимаций на Paper 1.20 / 1.20.1.
  • Частицы и AnvilGUI на Paper 1.21.11.
  • Ошибка при нехватке ключей на SQLite.

Благодарности

Спасибо за ваши сообщения и идеи: lolsawq, lipsy, Секретно, 𝐅𝐎𝐁𝐙𝐄𝐒, 𝖋𝖗𝖆𝖟𝖇𝖎𝖐.

Часть имён тех, кто писал нам, к сожалению, потерялась, поэтому здесь они не указаны. Большое спасибо и вам, и всем остальным за фидбэк: мы видим каждое сообщение, и с вами плагин становится лучше!

Поддержка

Если возникнут проблемы, ошибки или идеи, пишите в наш [Discord](https...

Read more

pnCases 1.5.3

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 23 Aug 14:42

pnCases 1.5.3

Версия 1.5.3 обновляет анимации открытия, интерфейсы настройки, голограммы наград, хранение данных и работу конфигураций. Обновление рассчитано на переход с 1.5.2 без повторного создания кейсов и наград.

Добавлено

  • Новая анимация «Грозовая дуэль». Два вооружённых бойца появляются во время грозы, сходятся у кейса, обмениваются атаками и завершают бой электрическим столкновением.
  • Новая анимация «Искажение времени». Часовщик прокручивает разрушение кейса назад, сталкивается со своей будущей версией и стирает произошедшее из времени. После окончания сцены награда появляется отдельно, без закрывающих её частиц.
  • Обе новые анимации отмечены тегом NEW в меню выбора.
  • Поддержка Redis в качестве хранилища наряду с SQLite, MySQL и MongoDB.
  • Автоматическая синхронизация config.yml, gui.yml, messages.yml и файлов cases/*.yml при запуске и перезагрузке плагина.
  • Локализация названий предметов, блоков, зачарований и зелий через pnLibrary.
  • Настраиваемое оформление голограммы выпавшей награды: масштаб, высота, дальность отображения, яркость, задержка появления и плавность перемещения.

Анимации

  • Полные современные анимации используются на Minecraft 1.20.x и 1.21.x с одинаковыми сценариями и визуальным оформлением.
  • Все анимации получили собственные названия и описания в меню выбора.
  • Обычные и мобовые анимации объединены в один список без отдельных разделов.
  • «Круг фортуны» прокручивает предметы наград текущего кейса, постепенно замедляется и останавливается на выбранной награде. Размер предметов автоматически уменьшается при большом количестве элементов.
  • В «Отравлении» восстановлено последовательное отображение ударов.
  • В «Дыхании дракона» восстановлен финальный выдох по кейсу.
  • Для запуска и завершения сцен используется общий жизненный цикл: созданные сущности, временно скрытые блоки и задачи очищаются после завершения или ошибки.
  • При аварии визуальной части выбранная награда всё равно выдаётся безопасно.
  • Удалена отдельная команда и реализация previewanimation, дублировавшая основную систему.

Исправлено

  • Исправлено повторное включение через PlugManX: классы pnCases и встроенные YAML-шаблоны подготавливаются до закрытия JAR, а локализация предметов кэшируется pnLibrary. После restart команды и GUI больше не обращаются к закрытому ZIP-файлу.
  • Исправлено открытие текстовых полей Machine GUI на Paper 1.21.11: в сборку включена актуальная версия AnvilGUI с wrapper 1_21_R7, а JAR явно помечен для преобразования Spigot NMS mappings в серверные Mojang mappings.
  • Исправлено аварийное завершение «Грозовой дуэли» и «Искажения времени» на Paper 1.21.11: частица FLASH теперь получает обязательный Color, сохраняя совместимость с предыдущими версиями сервера.
  • Исправлена ошибка IncompatibleClassChangeError при работе с InventoryView на новых сборках Paper и Purpur.
  • Исправлено аварийное завершение «Грозовой дуэли» на Paper 1.21.4 при экипировке ArmorStand.
  • Исправлены рывки и рассинхронизация предмета с текстом награды в финальных сценах.
  • Увеличена читаемость названия выпавшей награды.
  • Исправлена обработка RGB, RGBA и legacy-цветов в GUI, названиях кейсов и сообщениях, включая последний цвет &f в префиксе.
  • Исправлено применение idle-particles.radius: параметр теперь масштабирует всю фигуру витрины.
  • Значение idle-particles.interval_ticks: 2 больше не заменяется принудительно более медленным интервалом.
  • Исправлена повторная обработка ожидающей награды: до подтверждения удаления записи из хранилища повторное открытие и повторная выдача игроку блокируются.

Голограммы

  • Названия наград отображаются через FancyHolograms или DecentHolograms.
  • Удалён встроенный fallback на TextDisplay.
  • Для работы pnCases требуется один установленный провайдер: FancyHolograms либо DecentHolograms.
  • Логика постоянных голограмм кейсов и временного текста анимаций разделена, поэтому обновление одной голограммы не затрагивает остальные.

GUI и настройка кейсов

  • Переработаны экраны сведений о кейсе, наград, анимаций, меню игроков, голограммы, витрины, покупки ключей и редактора раскладки.
  • Карточки настроек приведены к единой схеме: название, краткое описание, текущее значение и понятные действия ЛКМ/ПКМ.
  • Обновление слотов и анимации открытия GUI выполняются через ProtocolLib.
  • В редакторе наград показывается нормализованный фактический шанс выпадения вместо технического значения веса.
  • Редкости перенесены в основной config.yml и используют формат rarity.<id>.
  • Для предпросмотра награды используется один шаблон lore; отдельный type-lore удалён.
  • Удалён глобальный символ награды. Оформление задаётся названием и визуальным предметом самой награды.
  • Удалена система модулей. Редкости и предпросмотр теперь включаются напрямую через features.rarity и features.preview.
  • GUI-анимация и заголовок открытия всегда являются частью интерфейса и не требуют отдельных переключателей.
  • Убрано неиспользуемое поле usage команды из plugin.yml.

Конфигурации

  • Новые параметры автоматически добавляются в существующие YAML-файлы.
  • Устаревшие стандартные параметры удаляются автоматически.
  • Изменённые владельцем значения не заменяются стандартными.
  • Сохраняются пользовательские награды, привязанные блоки и раскладка меню кейса.
  • Перед заменой файл проверяется через повторное чтение; при ошибке рабочая конфигурация остаётся без изменений.
  • Ручное удаление конфигов или повторная настройка кейсов при переходе с 1.5.2 не требуются.

pnLibrary и данные

  • Запуск плагина, bStats и проверка обновлений переведены на общий PluginRuntime pnLibrary.
  • Выбор SQLite, MySQL, MongoDB или Redis выполняется через DatabaseRouter pnLibrary.
  • Vault и PlayerPoints подключаются через общую экономическую систему pnLibrary.
  • Через хранилище сохраняются ключи, история открытий, выбранные игроками анимации и ожидающие выдачи награды.
  • Удалены локальные копии общих утилит предметов, визуальных сущностей, экономики и локализации.

Совместимость

  • Paper и Purpur: 1.16.5–1.21.11.
  • Java: 17 или новее.
  • Minecraft 1.20.x–1.21.x: полный набор современных анимаций.
  • Minecraft 1.17–1.19: совместимый режим анимаций.
  • Minecraft 1.16.5: совместимая версия «Круга фортуны».
  • ProtocolLib обязателен.
  • FancyHolograms или DecentHolograms обязателен.
  • LuckPerms, Vault и PlayerPoints остаются необязательными.
  • Поддержка Folia в версии 1.5.3 не заявлена.

Обновление с 1.5.2

  1. Полностью остановите сервер.
  2. Замените старый файл на pnCases-1.5.3.jar.
  3. Убедитесь, что установлены ProtocolLib и FancyHolograms либо DecentHolograms.
  4. Запустите сервер и дождитесь завершения автоматической синхронизации конфигураций.
  5. Проверьте сообщения запуска и несколько настроенных кейсов перед открытием сервера игрокам.

pnCases 1.5.2

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 10 Aug 18:11

pnCases 1.5.2

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

Добавлено

  • Полноценный GUI-редактор наград в Machine.
  • Через GUI можно создавать награды предметами, монетами Vault, поинтами PlayerPoints, привилегиями LuckPerms, отдельными правами и командами.
  • Для каждой награды можно настроить название, иконку, содержимое, шанс, редкость и положение в списке.
  • Добавлена отдельная настройка отображения награды в анимации и истории. Командной награде теперь можно назначить понятное название и любой предмет или Base64-иконку.
  • Добавлена AnvilGUI для удобного ввода названий, сумм, команд, привилегий, прав и других значений без ручного редактирования YAML.
  • Добавлена настройка разметки меню кейса через GUI. Можно назначать слоты открытия, истории, анимации и декора, а также устанавливать собственные предметы.
  • Добавлена система модулей. Через Machine или config.yml можно отдельно включать и отключать редкости, просмотр наград, анимацию GUI и анимацию заголовка.

Изменено

  • Настройка кейса в Machine полностью переработана и разделена на понятные категории.
  • Отдельная секция keys удалена. Каждый созданный кейс автоматически получает собственный виртуальный ключ.
  • Список наград получил новый дизайн, понятные подписи, тематические иконки и отдельное подтверждение удаления.
  • Порядок наград теперь настраивается через наглядный список позиций.
  • Название меню кейса теперь изменяется через AnvilGUI.
  • config.yml, gui.yml и messages.yml очищены от устаревших и неиспользуемых настроек. Старые параметры удаляются автоматически при обновлении.
  • В gui.yml оставлен один плейсхолдер {rarity}, который сразу содержит цвет, символ и название редкости.
  • Справка /pncases стала компактнее: убраны неработающие клики, лишние сообщения обновления и технический текст.

Исправлено

  • Исправлен спам ошибки missing required data class java.lang.Float у анимации дракона на Paper 1.21.11. Анимация корректно передаёт данные частице DRAGON_BREATH и гарантированно завершает задачу.
  • Исправлены плейсхолдеры редкости: цвет, символ и название теперь отображаются правильно.
  • Исправлено отображение версии сервера в административной информации /pncases.

Скриншоты

Редактор наград

Редактор наград

Ввод значения награды через AnvilGUI

Ввод значения награды

Изменение названия меню

Изменение названия меню

Управление модулями

Управление модулями

Настройка командной награды

Настройка командной награды

pnCases 1.5.1

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 29 Jul 21:12

pnCases 1.5.1

Версия 1.5.1 — большое обновление системы кейсов, анимаций, витрин и интерфейсов. Кейсы стали самостоятельными YAML-конфигурациями, Machine получил новую структуру меню, добавлены новые анимации и темы витрины, а хранение наград и пользовательских настроек стало надёжнее.

Что нового

Самостоятельные кейсы в cases/*.yml

  • Убрана привязка кейсов к заранее заданным типам вроде money или luckperms.
  • Каждый кейс создаётся командой /pncases createcase <id> и хранится в отдельном файле cases/<id>.yml.
  • В одном кейсе можно свободно сочетать предметы, деньги Vault, поинты PlayerPoints, группы и права LuckPerms, а также персональные команды.
  • Имя файла является внутренним ID кейса, а display-name отвечает за отображаемое название в GUI, голограммах, ключах и сообщениях.
  • Новый кейс сразу получает одноимённый ключ без суффикса _key.
  • /givekey, /takekey, /setcase, /delcase и автодополнение работают с актуальными ID кейсов и ключей.
  • Исправлено удаление файла кейса и его привязанных блоков через /pncases delcase <id>.
  • Команда /pncases setcase <id> привязывает выбранный кейс к блоку без копирования чужого шаблона.

Новая архитектура конфигурации кейса

  • blocks расположен в начале файла, а списки слотов сохраняются в компактном формате [0, 1, 2].
  • Конфигурация разбита на понятные секции: голограмма, витрина, GUI, broadcast, стоимость, анимация и награды.
  • Виртуальный ключ и цена открытия теперь определяются самим кейсом: всегда используется один ключ с ID кейса, поэтому лишние cost.type, cost.key и cost.amount удалены.
  • Покупка ключа за опыт вынесена из плоских buy_xp_* в понятную секцию cost.xp-purchase.
  • Убраны лишние технические поля витрины из создаваемых файлов: interval_ticks, radius, height и speed используют внутренние безопасные значения.
  • Удалён дублирующий параметр idle-particles.effects: включение витрины теперь управляется одним параметром enabled.
  • В начале нового файла выводится единая подробная подсказка по плейсхолдерам, типам наград и всем доступным редкостям.
  • Убраны повторяющиеся комментарии-заголовки перед каждой секцией.
  • Обычное сохранение больше не создаёт рядом лишние .bak-файлы. Резервная копия .broken.bak создаётся только при обнаружении повреждённого YAML.
  • Запись YAML выполняется через временный файл с проверкой и атомарной заменой.

Настройки GUI внутри каждого кейса

  • Кнопка кейса перенесена из общего gui.yml в cases/<id>.yml -> gui.button.
  • Каждый кейс может иметь собственные материал, Base64-текстуру, название и lore основной кнопки.
  • Старое поле gui.open-item автоматически переносится в gui.button.
  • Устранено предупреждение о якобы отсутствующем gui.open-item.
  • Сохраняются пустые строки в конце lore, поэтому оформление больше не обрезается.
  • item_data больше не мешает явно заданным name и lore.
  • Название кнопки, ключа и голограммы корректно обновляется после изменения display-name.
  • Для состояния нехватки ключей добавлены настраиваемые gui.insufficient-keys.name и gui.insufficient-keys.lore.
  • Добавлен gui.preview_enabled:
    • true — ЛКМ показывает содержимое, ПКМ открывает кейс;
    • false — и ЛКМ, и ПКМ сразу открывают кейс.
  • Переключатель просмотра содержимого доступен в Machine.

Настраиваемая история и разметка слотов

  • Пустой элемент истории настраивается для каждого кейса через gui.history.empty.
  • Старое поле gui.history.empty-item автоматически переносится в новую секцию.
  • Иконку пустой истории можно изменить предметом с курсора в Machine.
  • Разметка меню позволяет назначать слоты основной кнопки, выбора анимации, истории, декора и пустого пространства.
  • Обязательные роли при переносе корректно меняются местами и больше не создают дубликаты.
  • Если выбор анимации отключён и слот 49 освобождён, его автоматически занимает история.
  • При повторном включении пользовательского выбора слот возвращается кнопке анимации.
  • Исправлен пустой 50-й слот в стандартной разметке нового кейса.

Редкости и предпросмотр наград

  • Добавлены редкости COMMON, UNCOMMON, RARE, EPIC, LEGENDARY и MYTHIC.
  • Название, цвет, символ и свечение каждой редкости настраиваются в gui.yml -> preview.rarities.
  • Цвет и символ объединены в одном поле name, например &d✹ Мифическая.
  • В заголовке создаваемого кейса перечислены все допустимые ID редкостей.
  • Предпросмотр показывает реальную вероятность выпадения без технического веса.
  • Из публичного lore убраны внутренний тип награды, команды и служебные пояснения.
  • Кнопка «Содержимое кейса» получила отдельную Base64-иконку и короткое RGB-название без lore.
  • Стрелки страниц полностью скрываются, если все награды помещаются на одной странице.
  • Для нескольких страниц используются Base64-кнопки назад, вперёд и недоступного направления.

Персональные сообщения и broadcast

  • Сообщение об успешной выдаче задаётся непосредственно в конкретной награде через rewards[].message.
  • Удалены общие успешные сообщения reward.default, reward.luckperms, reward.vault и reward.playerpoints из messages.yml.
  • Если message у награды отсутствует, лишнее сообщение игроку не отправляется.
  • Системные ошибки провайдеров и неверных предметов по-прежнему настраиваются в messages.yml.
  • Broadcast перенесён из общего messages.yml в каждый файл кейса.
  • Для каждого кейса broadcast можно отдельно включить или выключить через broadcast.enabled.
  • Строки задаются в broadcast.lines и поддерживают {player}, {case}, {case_id} и {reward}.

Тип награды PERSONAL

  • Добавлен тип награды PERSONAL, выполняющий персональную консольную команду.
  • В командах доступны {player} и {uuid}.
  • Команда сохраняется вместе с отложенной наградой в SQLite, MySQL и MongoDB.
  • Для JDBC-хранилищ добавлена автоматическая миграция поля command.
  • В комплект добавлен cases/test.yml с примерами ITEM, VAULT, PLAYERPOINTS, LUCKPERMS, PERSONAL и кастомных Base64-голов.

Анимации открытия

Новые анимации

  • Добавлена «Дыхание дракона»: крупный дракон из частиц облетает кейс, снижается и выдыхает пламя, из которого появляется награда.
  • Добавлен «Голодный мимик»: сундук оживает, проглатывает ложные награды и выдаёт выигранную.
  • Обе новые анимации отмечены меткой NEW в меню выбора.
  • Полностью удалена старая анимация CAULDRON — «Астральный разлом».

Новая архитектура анимаций

  • Современные реализации для Minecraft 1.21+ перенесены в animation/main, совместимые — в animation/legacy.
  • Для Minecraft 1.16.5 принудительно используется совместимый «Круг фортуны».
  • Для Minecraft 1.17–1.20 используется отдельный совместимый режим без загрузки классов Display Entities.
  • Все открытия работают через единый жизненный цикл AnimationRun.
  • Контекст открытия централизованно отслеживает задачи, временные сущности, listener-ы и изменённые блоки.
  • Завершение, ошибка запуска, выход игрока, выгрузка мира и выключение плагина используют одну очистку.
  • Добавлен watchdog, который завершает зависшее открытие и не оставляет кейс заблокированным.
  • Звуки анимаций перенесены в код и приведены к единому безопасному диапазону громкости.

Единое отображение награды

  • Все современные анимации используют единый визуальный предмет и подпись награды.
  • Убран отдельный title с названием награды по центру экрана.
  • Название остаётся над вращающимся предметом и следует за ним до завершения.
  • Исправлены лишние и зависшие TextDisplay, появлявшиеся под блоком кейса.
  • Для отображения используется настоящий визуальный предмет награды, включая Base64-голову.
  • Количество частиц в момент выпадения уменьшено: предмет и его название больше не перекрываются финальным эффектом.

Защита сцены

  • Пока идёт анимация, посторонние игроки мягко отталкиваются от кейса в радиусе 5 блоков.
  • Открывающий игрок удерживается за пределами радиуса 3 блоков.
  • Защита отключается сразу после завершения или отмены открытия.

Полностью новая витрина кейса

  • Старые стили заменены полноценными темами витрины.
  • Доступны:
    • «Арканный ритуал»;
    • «Разлом пустоты»;
    • «Штормовая клетка»;
    • «Огненный феникс»;
    • «Ядовитая кобра»;
    • «Ледяная корона»;
    • «Плач душ»;
    • «Зов левиафана»;
    • «Небесные крылья»;
    • «Драконья орбита».
  • Темы получили отдельные силуэты, движение, траектории и цветовые композиции.
  • Феникс, левиафан и дракон перемещаются вокруг кейса; крылья взмахивают; статичным сценам сохранена устойчивая композиция.
  • Витрина больше не создаёт предмет или сундук над блоком — отображается только выбранная анимация частиц.
  • Оставлена одна кнопка включения витрины и одна кнопка выбора темы без дублирующего переключателя эффектов.
  • После изменения в Machine обновляется только витрина выбранного кейса, а не все кейсы сервера.
  • Старые служебные display-сущности витрин очищаются при загрузке и выключении.

Новый Machine и дизайн GUI

  • Machine полностью перестроен на отдельные понятные экраны: основные настройки, меню кейса, анимация, голограмма, витрина, покупка за опыт и разметка.
  • Удалён лишний экран «Быстрые настройки».
  • Повторяющиеся иконки заменены уникальными Base64-текстурами.
  • Кнопки «Вернуться» и «Выйти» используют единую красную Base64-иконку без лишнего lore.
  • Основные кнопки, категории, анимации, темы витрины и системные действия получили собственные Base64-иконки.
  • Заголовки Machine и выбора анимации используют чёрный цвет &0; пользовательские заголовки самих кейсов остаются настраиваемыми.
  • Lore Machine приведён к единому RGB-дизайну с разделами «Основная информация», «Текущие параметры» и «Действие».
  • Плейсхолдеры голограммы отображаются в Machine уже подставленными, а не буквальным текстом {display-name}.
  • В gui.yml оставлены только изменяемые пользовательские тексты, lore предпросмотра и оформление редкостей.
  • Слоты, навигация, системные иконки, звуки и дизайн Machine теперь находятся в коде.

Выбор анимаций

  • Анимации разделены на «Обычные» и «С мобами».
  • Разделы д...
Read more

pnCases 1.5.0

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 17 Jul 12:55

pnCases 1.5.0

Версия 1.5.0 полностью обновляет создание и настройку кейсов: теперь каждый кейс — самостоятельный файл, а интерфейсы стали проще, аккуратнее и стабильнее.

Важно для обновления с 1.4.9. В 1.5.0 полностью изменена логика создания, хранения и настройки кейсов. Рекомендуем удалить старую папку plugins/pnCases от версии 1.4.9, установить новый JAR и настроить кейсы заново через /pncases createcase <id>.

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

Что нового

Самостоятельные кейсы

  • Кейсы создаются через /pncases createcase <id> и хранятся в отдельных файлах cases/<id>.yml.
  • Базовые шаблоны кейсов убраны: новый кейс можно настроить с нуля под любые награды.
  • При создании автоматически появляется ключ с ID кейса — без суффикса _key.
  • Отображаемое название ключа берётся из display-name самого кейса.
  • /pncases delcase <id> удаляет сам файл кейса и его ключ.
  • /pncases setcase <id> не создаёт кейс по опечатке: сначала его нужно явно создать через /pncases createcase <id>.
  • После создания или выбора кейса команда подсказывает дальнейшую настройку через /pncases machine.

Награды

  • Добавлен пятый тип награды PERSONAL для собственных команд.
- type: PERSONAL
  chance: 10
  command: "give {player} diamond 1"
  name: "&dЛичная награда"
  visual:
    material: COMMAND_BLOCK
  • Команда выполняется от консоли; доступны плейсхолдеры {player} и {uuid}.
  • Все типы наград корректно отображаются в предпросмотре и в анимациях.

Machine и интерфейсы

  • Machine GUI переработан: настройка названия, разметки, кнопки открытия, декора, истории, витрины, голограммы и анимаций собрана в понятные разделы.
  • Оформление Machine перенесено из gui.yml в код: в конфиге больше нет конфликтующих секций machine.
  • Название, lore и остальные визуальные настройки корректно меняются после редактирования кейса.
  • Переработаны выбор кейса, выбор игрока и выбор анимации: компактный lore, понятные действия и аккуратная сетка кнопок.
  • Витрина кейса очищена от лишних технических параметров и дублей иконок.
  • Настройка витрины оставляет только нужные параметры: предмет, тему, стиль и переключатели эффектов.
  • AIR в gui.yml можно использовать как пустой слот.
  • У предметов GUI скрыты атрибуты: урон, скорость атаки и служебные подсказки не мешают дизайну.
  • Предпросмотр наград встроен в главную кнопку кейса:
    • ЛКМ — посмотреть содержимое;
    • ПКМ — открыть кейс.
  • Убрана отдельная кнопка предпросмотра и повторяющиеся подсказки действий.
  • Кнопки навигации и возврата используют кастомные Base64-иконки.
  • Иконка «Содержимое кейса» получила отдельную текстуру и RGB-название без лишнего lore.
  • Ошибка нехватки ключей оформлена отдельной иконкой без дублирования текста.
  • Предметы и заголовки GUI появляются с анимацией, без полного переоткрытия меню.
  • Динамические изменения GUI отправляются только в изменившиеся слоты, поэтому меню не мигает и не открывается заново.
  • При выключении pnCases все открытые меню корректно закрываются, а задачи их анимации отменяются.

Анимации и мир

  • Добавлены и обновлены анимации открытия, включая «Водяную капсулу» и «Охоту на стражей».
  • В «Охоте на стражей» новые режимы отмечаются в Machine, а служебное предупреждение о мобах видит только администратор.
  • «Водяная капсула» временно превращает кейс в стеклянную сцену с сердцем моря, призмариновыми кристаллами, частицами воды и плавным появлением награды.
  • Сердце моря в «Водяной капсуле» увеличено и дополнено движением, чтобы сцена не выглядела статичной.
  • «Круг фортуны», «Набег разбойников» и «Водяная капсула» сохраняют полный BlockState исходного блока перед началом эффекта.
  • Во время анимации вокруг кейса действует защитная зона:
    • открывающего отталкивает ближе 3 блоков;
    • остальных игроков — ближе 5 блоков.
  • Временные сущности, витрины и блок кейса корректно очищаются и восстанавливаются после завершения, отмены, unload мира или выключения плагина.

Хранилище и форматирование

  • Поддерживаются SQLite, MySQL и MongoDB.
  • Через pnLibrary поддерживаются MiniMessage, обычные цвета &a и §a, а также HEX-формат &#RRGGBB.

Исправления

  • Исправлена смена визуала кейса в Machine: теперь после изменения применяются название, lore, GUI, голограмма, витрина и анимация выбранного кейса.
  • Исправлено обновление display-name в меню и у ключа.
  • Исправлено удаление кейса через /pncases delcase.
  • Устранены дубли строк «ПКМ — открыть кейс».
  • Исправлены конфликты слотов в меню и обновление GUI без мигания.
  • В GUI размером 9–54 исправлены коллизии ролей open, animation, history и decor: кнопка открытия сохраняет приоритет.
  • Улучшена безопасная загрузка и сохранение файлов кейсов: повреждённая конфигурация не должна сбросить уже работающие кейсы.
  • Один блок нельзя одновременно привязать к нескольким кейсам.
  • ID самостоятельного кейса канонически берётся из имени cases/<id>.yml, поэтому поле id не может незаметно подменить другой кейс.
  • Запись config.yml и cases/*.yml выполняется через временный файл, повторное чтение, .bak-копию и атомарную замену; при ошибке команда не сообщает ложный успех.
  • Миграция старых кейсов из config.yml:cases в отдельные файлы не теряет привязки: экспорт проверяется до удаления старой секции, а прошлые файлы сохраняются в .bak.
  • Обновления применяются точечно к нужному кейсу: чужие голограммы и витрины не пересоздаются.
  • Экраны Machine после изменения обновляют только изменившиеся слоты и не запускают повторную анимацию появления.
  • Исправлена ситуация, в которой изменение анимации или Machine одного кейса заставляло голограммы других кейсов пропадать и появляться заново.
  • Усилена очистка объектов витрины: при unload, load, reload и выключении плагина не остаются предметы или display-сущности над кейсом.
  • Устранены дубли названий анимаций и лишние элементы в меню настроек.

Совместимость

  • Paper / Purpur 1.16.5–1.21.11
  • Java 17+
  • На современных версиях используются Display-сущности и расширенные эффекты; на старых версиях сохраняется безопасный режим анимаций.
  • Дополнительно поддерживаются LuckPerms, Vault, PlayerPoints, FancyHolograms, DecentHolograms и ProtocolLib.

Установка

  1. Замените старый JAR на pnCases-1.5.0.jar в папке plugins/.
  2. Полностью перезапустите сервер.
  3. Для создания нового кейса используйте /pncases createcase <id>.

pnCases 1.4.9

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 11 Jul 08:43

pnCases 1.4.9

В версии 1.4.9 стало проще настроить внешний вид наград под свой сервер. Основное внимание уделено окну «Содержимое кейса» и редкостям.

Что нового

  • Полностью настраиваемое окно «Содержимое кейса». В gui.yml можно изменить размер меню, расположение наград, декор, информационную кнопку, навигацию между страницами и звуки.
  • Для предметов в списке наград можно настроить название, описание, показ исходного lore, свечение, Custom Model Data и порядок отображения информации.
  • Добавлена настройка собственных редкостей. Для каждой редкости можно задать название, цвет, символ, описание, отдельную иконку и свечение. Разрешено добавлять свои варианты, а не только использовать стандартный список.
  • Для разных типов наград можно отдельно оформить информацию: предметы, деньги Vault, поинты PlayerPoints, группы LuckPerms и команды.
  • Настройка анимации теперь занимает одну кнопку. ЛКМ выбирает следующий режим открытия, ПКМ возвращает предыдущий. На Minecraft 1.16.5 автоматически остаётся доступный для этой версии «Круг фортуны».
  • Внутренняя структура pnCases полностью перестроена. Работа с кейсами, наградами, интерфейсами, голограммами, хранилищем и проверкой обновлений разделена на самостоятельные части. Это упрощает дальнейшее развитие плагина и делает его поведение стабильнее.

Совместимость

  • Paper и Purpur 1.16.5–1.21.11.
  • Java 17 или новее.
  • LuckPerms, Vault, PlayerPoints, FancyHolograms и DecentHolograms подключаются только для соответствующих возможностей.

Установка

  1. Скачайте pnCases-1.4.9.jar.
  2. Замените старый JAR в папке plugins/.
  3. Полностью перезапустите сервер.
  4. Пользовательские настройки и данные сохраняются. Новые параметры gui.yml добавляются безопасными значениями по умолчанию.

pnCases 1.4.8

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 09 Jul 23:00

pnCases 1.4.8

Скачать: pnCases-1.4.8.jar

Что нового в 1.4.8

  • Поддержка Paper и Purpur 1.16.5.
  • Поддержка MiniMessage во всех YAML-настройках: messages.yml, gui.yml, config.yml и файлах кейсов.
    Можно использовать старые цвета &a, RGB &#42A5F5 и MiniMessage: <red>, <bold>, <gradient:#42A5F5:#AB47BC>.
  • Анимация Осада разбойников для Minecraft 1.21+: четыре разбойника окружают кейс, ломают бочку, затем появляется награда.
  • Отдельный gui.yml. В нём можно менять названия, lore, подсказки, декоративные предметы и оформление меню.
  • Расширенная Machine GUI: настройка анимаций, голограммы, частицы, витрина, покупка за опыт и разметка меню кейса.
  • Команда /pncases createcase <id> для создания нового кейса.
  • Алиас /cases для основной команды.
  • Один и тот же кейс можно поставить в нескольких местах через /pncases setcase <кейс>.

Совместимость версий

  • Paper/Purpur 1.16.5: плагин и кейсы работают, доступна одна совместимая анимация Круг фортуны. Современные Display-анимации и меню их выбора на этой версии не используются.
  • Paper/Purpur 1.17–1.20: используется совместимый режим анимаций без современных Display-сущностей.
  • Paper/Purpur 1.21–1.21.11: доступен полный режим, включая современные анимации и Осаду разбойников.

Установка

  1. Скачайте pnCases-1.4.8.jar.
  2. Поместите файл в папку plugins/.
  3. Полностью перезапустите сервер.
  4. Настройте plugins/pnCases/config.yml, messages.yml, gui.yml и файлы в папке cases/.

pnCases 1.4.7

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 06 Jul 16:39

pnCases 1.4.7

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

Что нового

  • У команды /pncases givekey <игрок> <ключ> <кол-во> появился необязательный флаг -s (или -silent).
  • Если указан флаг -s, игрок не получает сообщение о выдаче ключа в чат.
  • Ключ всё равно добавляется на баланс игрока как обычно.
  • Администратору или системе, которая выполнила команду (например, сайт через RCON), по-прежнему приходит подтверждение выдачи.
  • Флаг добавлен в автодополнение команды.

Пример использования

/pncases givekey Evgeniy51234 donate_key 1 -s

Ключ будет выдан скрытно — игрок не увидит уведомление в чате, но получит ключ на баланс.
Удобно для связки с сайтом: после доната сайт выполняет команду через RCON или консоль.


Скачать: pnCases-1.4.7.jar

pnCases 1.4.6 GlobalVersion

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 05 Jul 22:52

pnCases 1.4.6 GlobalVersion

Версия 1.4.6 GlobalVersion делает pnCases готовым для серверов Paper/Purpur 1.19 - 1.21.11. Главная цель обновления - чтобы один JAR нормально запускался на разных версиях, а админ не ловил ошибки из-за новых API Minecraft.

Что нового

  • Добавлена поддержка Paper/Purpur 1.19 - 1.21.11.
  • JAR теперь собирается под Java 17, поэтому подходит для 1.19/1.20 и продолжает работать на Java 21.
  • api-version изменён на 1.19, чтобы старые серверы не отклоняли плагин как 1.21-only.
  • При запуске pnCases проверяет версию сервера. Если версия ниже 1.19, плагин сам отключится и напишет понятную причину.
  • Для 1.21+ остаются полноценные красивые анимации открытия.
  • Для 1.19-1.20 добавлен совместимый режим анимаций, который не зависит от новых display/particle API.
  • Витрина над кейсом стала безопаснее для разных версий и больше не привязана жёстко к ItemDisplay.
  • Голограммы продолжают работать через FancyHolograms или DecentHolograms, а при отсутствии этих плагинов кейсы просто работают без голограммы.
  • Команда /pncases теперь показывает единое меню: версия, статус обновления, поддержка и все команды в одном сообщении.

Что изменилось внутри

  • Общая сборка подготовлена под Java 17 bytecode.
  • Настройки плагина переведены на api-version: 1.19.
  • Для 1.19-1.20 добавлен отдельный runtime-выбор анимаций.
  • Для общих элементов интерфейса и витрины добавлены безопасные варианты материалов, частиц и подсветки.
  • Новые 1.21-only анимации не загружаются на старых серверах, где этих API ещё нет.

Важно

На 1.21+ используются основные красивые анимации pnCases.

На 1.19-1.20 используется совместимый режим анимаций: кейсы открываются стабильно, награды выдаются корректно, но визуал может быть проще, чем на 1.21.

Скачать

Скачать pnCases 1.4.6

После замены JAR перезапустите сервер.

pnCases 1.4.5

Choose a tag to compare

@Dy6HiLa Dy6HiLa released this 05 Jul 10:28

pnCases 1.4.5

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

Что нового

  • Добавлена живая витрина над кейсом.
  • Над свободным кейсом теперь может плавно висеть и вращаться отдельный предмет.
  • Предмет витрины можно поставить прямо в /pncases machine.
  • Чтобы поменять предмет, возьмите нужный предмет на курсор и нажмите по кнопке Предмет витрины.
  • ПКМ по Предмет витрины без предмета на курсоре возвращает обычный предмет кнопки кейса.
  • Эффекты вокруг витрины теперь включаются отдельно.
  • Можно оставить только вращающийся предмет без частиц.
  • В примеры кейсов добавлены готовые настройки витрины.

Что исправлено

  • Исправлен краш частиц на новых сборках Paper/Purpur 1.21.11.
  • Витрина стала спокойнее: меньше лишнего визуального шума и меньше спама частиц.
  • При открытии кейса витрина скрывается, чтобы не мешать анимации открытия.
  • При reload и выключении сервера временные предметы витрины корректно убираются.

Где настраивать

Витрина настраивается в /pncases machine или в файле кейса:

idle-particles:
  enabled: true
  effects: true
  style: AURORA
  theme: MAGIC
  interval_ticks: 2
  radius: 0.85
  height: 1.35
  speed: 0.14
  view_distance: 28
  item:
    material: NETHER_STAR
    name: "&aДонат кейс"

enabled отвечает за всю витрину.
effects отвечает только за эффекты вокруг предмета.
item отвечает за предмет, который будет вращаться над кейсом.

Скачать

Скачать pnCases 1.4.5

После замены JAR перезапустите сервер.