rExpLevel - Опыт в бутылочках [1.21.4-26.X]

Плагин rExpLevel - Опыт в бутылочках [1.21.4-26.X] 1.4

Создайте и подтвердите аккаунт для скачивания
Поддерживаемые версии
  1. 1.21
Ядра и Прокси
  1. Bukkit
  2. Spigot
  3. Paper
Минимальная версия Java
21
Исходный код
https://github.com/Truhott/rExpLevel
rVisualBoards — Update Banner (2).png


Твои игроки упаковывают опыт в бутылочки командой или автоматически. Ты задаёшь вид бутылочек, порог и правила конвертации.

Paper 1.21.4+ • Folia • Java 21​


Как это работает
  1. Игрок вводит /rexp pack bottle 30.
  2. Плагин забирает 30 уровней и одну пустую стеклянную бутылку.
  3. Игрок получает бутылочку на 30 уровней.
  4. ПКМ по бутылочке возвращает опыт ему или тому, кому он её передал.


Возможности

Бутылочки

  • Свой вид для каждого уровня: материал, название, описание, блеск и CustomModelData. В стандартном конфиге есть бутылочки на 15 и 30 уровней.
  • Режим свободного создания: игрок упаковывает любой уровень до 500.
  • Два способа забрать опыт: выпить по ПКМ или бросить как обычный пузырёк.
  • Два способа начисления. ADD прибавляет уровни: 15 и 30 дают 45. FOLD считает в XP как ванилла: 15 и 30 дают около 33.
  • Пустая стеклянная бутылка как расходник, отключается одной строкой.
  • Возврат пустой бутылки после использования.

Упаковка
  • Кастомные бутылочки: /rexp pack bottle 30 5 создаёт 5 штук по 30 уровней.
  • Обычные пузырьки опыта: /rexp pack experience all упаковывает весь опыт, 7 XP за пузырёк.
  • Количество XP за один обычный пузырёк задаёшь сам.
  • Выдача бутылочек игрокам командой /rexp give.

Автоконвертация
  • Игрок включает её командой /rexp auto on bottle.
  • Опыт сверх порога уходит в бутылки. По умолчанию игроку остаётся 30 уровней, фасовка по 15.
  • Два режима: кастомные бутылочки или обычные пузырьки.
  • Два триггера: сразу после получения опыта или по таймеру раз в 3 секунды.
  • Лимит 64 бутылки за одну проверку.
  • Плата голодом за каждую бутылку, по умолчанию выключена.

Настройка
  • MiniMessage во всех текстах: градиенты, тени, HEX.
  • Любое сообщение уходит в экшен-бар, если начать его с [actionbar].
  • PlaceholderAPI: %rexp_auto% и %rexp_mode%, тексты значений меняешь сам.
  • Название команды и алиас меняются в config.yml.
  • /rexp reload применяет настройки без перезапуска.
  • Встроенного меню нет. Команды плагина ты ставишь на кнопки своего меню, например в DeluxeMenus.

YAML:
settings:
  debug: false # подробные сообщения в консоль для поиска ошибок
  metrics: true # анонимная статистика bStats
  update-check: true # проверка новой версии плагина

commands:
  main: rexp # название основной команды
  aliases: # дополнительные названия команды
    - rx

config-version: 2 # служебное поле, не меняй

YAML:
# true: игрок создаёт бутылочку с любым уровнем до bottle.max-levels
# false: в /rexp pack bottle доступны только уровни из секции bottles
bottle-create: false

# Общий вид бутылочки. Работает для уровней, которых нет в секции bottles.
bottle:
  material: EXPERIENCE_BOTTLE # предмет бутылочки
  name: "<gray>[<#b3f79c>🧪</#b3f79c>] <white>Пузырек с опытом</white> <gray>({points} xp)</gray>" # {points}: опыт в XP
  lore: # {levels}: уровни в бутылочке
    - ''
    - " <white>Содержит в себе: <#99ff66>{levels} LVL</white>"
    - " <gray>Используйте ПКМ, чтобы поглотить</gray>"
    - ''
  glint: true # блеск зачарования
  custom-model-data: 0 # CustomModelData для ресурспака, 0 выключает
  max-levels: 500 # потолок уровней в одной бутылочке для pack и give
  require-glass-bottle: true # true: создание тратит пустую стеклянную бутылку
  # true: игрок получает пустую бутылку обратно после использования.
  # Работает при require-glass-bottle: true здесь и в auto.yml.
  return-glass-bottle: false
  # DRINK: опыт по ПКМ. THROW: бросок как у обычного пузырька.
  # Бросается только EXPERIENCE_BOTTLE, другой материал всегда выпивается.
  redeem: DRINK
  # ADD: уровни прибавляются, 15 lvl и бутылочка 30 lvl дают 45 lvl.
  # FOLD: опыт считается в XP как в ванилле, 15 lvl и бутылочка 30 lvl дают около 33 lvl.
  exp-give: FOLD

# Бутылочки со своим видом. Ключ: уровень опыта от 1 до bottle.max-levels.
# Поля material, name, lore, glint и custom-model-data необязательны, пропущенные берутся из секции bottle.
# Пустой список: bottles: {}
bottles:
  15:
    material: EXPERIENCE_BOTTLE
    name: "<gray>[<#b3f79c>🧪</#b3f79c>] <white>Пузырек с 15 уровнем</white>"
    lore:
      - ''
      - " <white>Содержит в себе: <#99ff66>15</#99ff66> уровней опыта"
      - " <gray>Используйте ПКМ, чтобы использовать</gray>"
      - ''
  30:
    material: EXPERIENCE_BOTTLE
    name: "<gray>[<#b3f79c>🧪</#b3f79c>] <white>Пузырек с 30 уровнем</white>"
    lore:
      - ''
      - " <white>Содержит в себе: <#99ff66>30</#99ff66> уровней опыта"
      - " <gray>Используйте ПКМ, чтобы использовать</gray>"
      - ''

experience:
  xp-per-bottle: 7 # сколько XP стоит один обычный пузырёк опыта

config-version: 4 # служебное поле, не меняй

YAML:
auto-convert:
  enabled-by-default: false # true: автоконвертация включена у новых игроков с первого входа
  default-mode: BOTTLE # режим по умолчанию: BOTTLE кастомные бутылочки, EXPERIENCE обычные пузырьки
  trigger: EVENT # EVENT: проверка после получения опыта. PERIODIC: проверка по таймеру
  interval-seconds: 3 # пауза таймера в секундах, читается при trigger: PERIODIC

  bottle: # режим кастомных бутылочек
    keep-levels: 30 # сколько уровней остаётся у игрока, остальное уходит в бутылочки
    bottle-levels: 15 # сколько уровней в одной бутылочке
    max-bottles-per-cycle: 64 # максимум бутылочек за одну проверку
    require-glass-bottle: true # true: каждая бутылочка тратит пустую стеклянную бутылку
    hunger-per-bottle: 0 # сколько голода снимает одна бутылочка, 0 выключает. Дробные значения: 0.1

  experience: # режим обычных пузырьков
    keep-levels: 30 # сколько уровней остаётся у игрока
    max-bottles-per-cycle: 64 # максимум пузырьков за одну проверку
    hunger-per-bottle: 0 # сколько голода снимает один пузырёк, 0 выключает

config-version: 1 # служебное поле, не меняй

YAML:
# Все тексты в формате MiniMessage. {prefix} подставляет строку prefix, {command} название команды.
# Сообщение с [actionbar] в начале уходит в экшен-бар. На список help это не действует.
prefix: "<b><gradient:#b3f79c:#b3f79c>rExpLevel</gradient></b> <dark_gray>»</dark_gray> "

command:
  no-permission: "..." # у игрока нет права
  player-only: "..." # команду ввели из консоли
  unknown: "..." # неизвестная подкоманда
  invalid-number: "..." # неверное число. {value}: ввод
  amount-limit: "..." # слишком много бутылочек за раз. {max}: лимит
  levels-limit: "..." # уровень вне диапазона. {max}: потолок
  player-not-found: "..." # игрок не в сети. {player}: ник
  not-ready: "..." # данные плагина ещё грузятся

  pack: # команда /rexp pack
    usage: "..." # подсказка по использованию
    not-enough: "..." # не хватает XP. {required}, {current}
    not-enough-levels: "..." # не хватает уровней. {required}, {current}
    levels-not-allowed: "..." # уровня нет в секции bottles. {value}, {levels}: доступные уровни
    no-glass: "..." # нет пустых стеклянных бутылок
    success: "..." # кастомные бутылочки созданы. {amount}, {levels}, {points}
    experience-not-enough: "..." # опыта меньше, чем на один пузырёк. {xp}
    experience-success: "..." # обычные пузырьки созданы. {amount}, {spent}, {remaining}

  auto: # команда /rexp auto
    usage: "..." # подсказка по использованию
    enabled-bottle: "..." # включён режим кастомных бутылочек. {keep}: порог, {levels}: фасовка
    enabled-experience: "..." # включён режим обычных пузырьков. {keep}: порог
    already-enabled-bottle: "..." # режим уже включён
    already-enabled-experience: "..."
    disabled-bottle: "..." # автоконвертация выключена
    disabled-experience: "..."
    already-disabled-bottle: "..." # режим уже выключен
    already-disabled-experience: "..."
    disabled-no-glass: "..." # выключена, потому что закончились пустые бутылки
    no-glass: "..." # для включения нужна хотя бы одна пустая бутылка
    mode-conflict: "..." # включён другой режим. {mode}
    mode-mismatch: "..." # игрок выключает не тот режим. {mode}
    packed-bottle: "..." # опыт упакован в кастомные бутылочки. {amount}
    packed-experience: "..." # опыт упакован в обычные пузырьки. {amount}

  give: # команда /rexp give
    usage: "..."
    sender: "..." # сообщение администратору. {player}, {amount}, {levels}
    target: "..." # сообщение получателю. {amount}, {levels}

  reload: # команда /rexp reload
    usage: "..."
    success: "..." # конфиги перечитаны
    failed: "..." # ошибка в конфиге, подробности в консоли

  drink: "..." # игрок использовал бутылочку. {points}: полученный XP
  drink-full: "..." # опыт из бутылочки не помещается
  help: [] # строки справки /rexp help

# Что возвращают плейсхолдеры %rexp_auto% и %rexp_mode%
placeholder:
  auto-on: "on"
  auto-off: "off"
  mode-bottle: "bottle"
  mode-experience: "experience"

config-version: 3 # служебное поле, не меняй
Зависимости
PlaceholderAPI (необязательно)
Команды и права
КомандаЧто делаетПраво
/rexp helpПоказывает список командrexp.use
/rexp pack bottle <уровни> [количество]Упаковывает опыт в кастомные бутылочкиrexp.pack
/rexp pack experience <XP|all>Упаковывает опыт в обычные пузырькиrexp.pack
/rexp auto <on|off> <bottle|experience> [уровни]Включает и выключает автоконвертациюrexp.auto
/rexp give <игрок> <уровни> [количество]Выдаёт бутылочки игрокуrexp.give
/rexp reloadПеречитывает конфигиrexp.reload

Алиас: /rx. Права rexp.use, rexp.pack и rexp.auto выданы всем игрокам. Права rexp.give и rexp.reload выданы операторам.
Автор
Rulhot
Скачивания
13
Просмотры
492
Первый выпуск
Обновление
Оценка
5.00 звёзд 1 оценок

Другие ресурсы пользователя Rulhot

Поделиться ресурсом

Последние обновления

  1. 1.4

    Добавлено После использования пузырька с опытом игроку может возвращаться пустая стеклянная...
  2. 1.3

    Новое 1) Бутылочки на конкретные уровни: в bottle.yml появилась секция bottles, где для каждого...
  3. 1.2

    Добавлена настройка exp-give в bottle.yml - как начисляется опыт из бутылочки: FOLD (по...

Последние рецензии

Хороший плагин. Большой функционал и совсем немного вешает, использовал бы на своем сервере
Rulhot
Rulhot
Спасибо за отзыв! Рад, что плагин понравился :3
Назад
Сверху Снизу