- Версия Java
-
- 17
- 21
- Ядро
-
- Paper
- Purpur
- Spigot
- PaperSpigot
- Поддерживаемые версии
-
- 1.16.x
- 1.17.x
- 1.18.x
- 1.19.x
- 1.20.x
- 1.21.x
- 1.22.x
- 1.23.x
- 1.24.x
- 1.25.x
- 1.26.x
- 1.27.x
- 1.28.x
- 1.29.x
- 1.30.x
pnSouls v1.0.0
Коллекционные души, спутники и уникальные способности для игроков
────────────────────────────────────
pnSouls добавляет на сервер систему коллекционных душ.
Игрок открывает /souls, выбирает полученную душу и призывает её одним кликом.
Душа появляется рядом с владельцем, сопровождает его в мире и предоставляет уникальные эффекты или способности.
Никаких физических предметов, свитков или специальных предметов души в инвентаре нет.
Вся коллекция и выбранная активная душа хранятся непосредственно у игрока.
────────────────────────────────────
• Виртуальная коллекция душ без предметов в руках и инвентаре.
• Анимированный GUI на pnLibrary с поддержкой нескольких страниц.
• Призыв и отзыв души непосредственно через /souls.
• Собственная визуальная модель души из головы, нагрудника и предмета в руке.
• Поддержка Base64-голов.
• Поддержка custom-model-data.
• Поддержка enchant-glow.
• Поддержка окрашенной кожаной брони.
• Плавное следование за владельцем с интерполяцией и прогнозом движения.
• Отдельное сглаживание движения при прыжках игрока.
• Плавный ограниченный поворот при резком вращении камеры на 360°.
• Настраиваемая позиция души справа и позади игрока.
• Настраиваемая высота и анимация парения.
• Настраиваемый цветной след у ног души.
• След синхронизирован с движением и не обгоняет визуального спутника.
• Защита камеры владельца с задержкой, исключающей мигание при быстрых поворотах.
• Безопасный невидимый marker ArmorStand без физического хитбокса.
• Полная блокировка урона и взаимодействия с визуальной сущностью.
• Скрытие души от других игроков, если владелец находится в SPECTATOR или vanish.
• Поддержка индивидуальной видимости vanish через Bukkit canSee.
• Сохранение коллекции и активной души в PDC игрока.
• Корректное удаление визуала при выходе игрока и смерти.
• Автоматическое восстановление после входа, возрождения и смены мира.
• Автоматическое удаление осиротевших сущностей после перезапуска или аварийного отключения.
• Встроенная статистика bStats.
• Встроенная проверка GitHub Releases через pnLibrary.
────────────────────────────────────
Душа Дублёра
• С шансом 25% увеличивает добычу с побеждённых существ в два раза.
• Поддерживает вечную сытость.
• Даёт ночное зрение I.
• Даёт свечение I.
────────────────────────────────────
Душа Опытного
• Утраивает опыт, выпадающий с побеждённых существ.
• Даёт свечение I.
• Даёт слепоту I.
────────────────────────────────────
Душа Урожайника
При движении владельца душа ускоряет рост культур в радиусе четырёх блоков.
Вероятности ускорения можно настраивать отдельно для каждого растения.
Стандартно поддерживаются:
• Картофель.
• Пшеница.
• Свёкла.
• Морковь.
• Сладкие ягоды.
• Арбуз.
• Тыква.
• Кактус.
• Сахарный тростник.
• Ламинария.
• Бамбук.
• Светящиеся ягоды.
• Адский нарост.
Дополнительно душа даёт свечение I.
────────────────────────────────────
Дополнительные демонстрационные души
Шахтёр
• Спешка II.
• Ночное зрение I.
Странник
• Скорость II.
• Прыгучесть I.
Хранитель
• Сопротивление I.
• Регенерация I.
Феникс
• Огнестойкость I.
• Регенерация I.
Океан
• Подводное дыхание I.
• Грация дельфина I.
Алхимик
• Удача I.
• Регенерация I.
Дополнительные души заполняют несколько страниц GUI и одновременно служат готовыми примерами для создания собственной конфигурации.
────────────────────────────────────
🛠 Собственные души
Новая душа создаётся отдельным разделом в файле:
Код:
souls.yml Для каждой души можно настроить:
• Технический ID.
• Русские алиасы для команд и tab-complete.
• Отображаемое название.
• Подробное lore.
• Base64-текстуру головы.
• Обычный Bukkit-материал вместо головы.
• Нагрудник.
• Предмет в руке.
• Позу руки.
• custom-model-data.
• Enchant-glow.
• RGB-цвет кожаной брони.
• Постоянные эффекты зелий.
• Уровни эффектов.
• Множитель опыта с мобов.
• Множитель дополнительного дропа.
• Вероятность дополнительного дропа.
• Вечную сытость.
• Ускорение роста культур.
• Собственный радиус ускорения культур.
• Тип следа.
• Цвет следа.
• Размер следа.
• Частоту следа.
• Положение следа.
Если стандартная душа отсутствует в пользовательском souls.yml, она аккуратно подгружается из JAR.
Существующий пользовательский файл при этом не перезаписывается.
────────────────────────────────────
🗂 GUI коллекции
GUI открывается командами:
Код:
/souls
/pnsouls list Обычным игрокам требуется право:
Код:
pnsouls.use Интерфейс показывает:
• Уже полученные души.
• Закрытые души.
• Текущую активную душу.
• Несколько страниц коллекции.
• Произвольные content-slots.
Для навигации и кнопки закрытия используются Base64-головы.
GUI анимируется средствами pnLibrary.
При наличии ProtocolLib отдельные слоты интерфейса обновляются через SET_SLOT без полного переоткрытия меню.
────────────────────────────────────
🛡 Безопасность визуальной сущности
Душа не должна влиять на бой или раскрывать скрытого администратора.
Поэтому визуальный ArmorStand создаётся как marker.
Он:
• Не имеет физического хитбокса.
• Не использует гравитацию.
• Неуязвим.
• Не принимает обычные взаимодействия.
• Не может использоваться в бою.
События урона и изменения экипировки дополнительно блокируются плагином.
Поддержка vanish
Если владелец:
• Переходит в режим SPECTATOR.
• Скрывается vanish-плагином.
• Не отображается другому игроку через Bukkit canSee.
• Имеет метаданные vanished или vanish.
его душа также скрывается от соответствующих игроков.
После возвращения владельца в обычный режим видимость души автоматически восстанавливается.
────────────────────────────────────
pnSouls использует общий UpdateChecker из pnLibrary.
Проверка выполняется асинхронно по последнему релизу репозитория:
Код:
Dy6HiLa/pnSouls Плагин не скачивает и не заменяет JAR автоматически.
Если доступна новая версия:
• В консоли появляется предупреждение.
• Игроки с правом pnsouls.update получают уведомление.
• Дополнительно отображается title.
• Воспроизводится звук.
• Ссылка на GitHub Release отправляется прямо в чат.
• Проверка автоматически повторяется каждые 6 часов.
────────────────────────────────────
/souls
Открывает коллекцию и позволяет выбрать активную душу.
/pnsouls list
Открывает коллекцию душ.
/pnsouls give <игрок> <id/название>
Выдаёт выбранную душу игроку.
/pnsouls take <игрок> <id/название>
Удаляет выбранную душу из коллекции игрока.
/pnsouls reload
Перезагружает конфигурацию, GUI, души и систему проверки обновлений.
────────────────────────────────────
pnsouls.use
Открытие коллекции и управление собственными душами.
По умолчанию: все игроки.
pnsouls.admin
Выдача, удаление душ и перезагрузка конфигурации.
По умолчанию: OP.
pnsouls.update
Получение уведомлений о новых версиях.
По умолчанию: OP.
────────────────────────────────────
Серверное ядро: Paper 1.16.5–1.21.x
Java: 17 или новее
ProtocolLib: необязателен
ProtocolLib используется только для улучшенного обновления GUI.
Kotlin runtime, pnLibrary и bStats уже встроены и изолированы внутри JAR.
────────────────────────────────────
Шаг 1.
Скачайте:
Код:
pnSouls-1.0.0.jar из файлов релиза.
Шаг 2.
Поместите JAR в папку:
Код:
plugins Шаг 3.
Полностью перезапустите сервер.
Шаг 4.
Настройте файлы:
• config.yml
• souls.yml
• gui.yml
• messages.yml
Шаг 5.
После обычных изменений YAML используйте:
Код:
/pnsouls reload Важно:
При обновлении самого JAR рекомендуется выполнять полный перезапуск сервера.
Динамические загрузчики плагинов могут оставлять старые команды и сущности в памяти.
────────────────────────────────────
Если у вас возникли вопросы, вы нашли ошибку или хотите предложить новую функцию — обращайтесь на наш Discord-сервер.
Первые новости об обновлениях, исправлениях и новых версиях появляются именно в Discord.
Присоединиться к Discord-серверу