Плагин mcRewards - Награды за время в игре в Майнкрафт
mcRewards - Награды за время в игре

Плагин mcRewards - Награды за время в игре 1.0.6


Требуется UtilM
https://mcdev.su/resources/utilm.73/
Для версий
  1. 1.8.x-1.21.x

mcRewards - Плагин для Майнкрафт: Награды за время в игре​

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

Увлекательные возможности плагина​

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

Четыре типа наград​

Плагин предлагает четыре основных типа наград, доступные игрокам, которые находятся в игровой среде:
  1. Привилегии – получают активные игроки, которые проводят время на сервере, открывая доступ к дополнительным командам и функционалу.​
  2. Ежедневные награды – предоставляются игрокам за регулярное посещение сервера, что поощряет их возвращаться и поддерживать активность.​
  3. Увеличивающаяся награда – с каждым игровым сеансом награды становятся более ценными, мотивируя игроков оставаться на сервере дольше.​
  4. Награда за наигранное время – игроки получают вознаграждения на основе общего времени, проведенного на сервере, что еще больше стимулирует их активность.​

Screen Shot 2024-11-11 at 8.24.31 PM.png
Screen Shot 2024-11-11 at 9.19.09 PM.png
Screen Shot 2024-11-11 at 9.20.29 PM.png
Screen Shot 2024-11-11 at 9.20.45 PM.png
Screen Shot 2024-11-11 at 9.20.50 PM.png

Конфигурация плагина:

YAML:
# Плагин: mcRewards (Награды)
# Версия: 1.8+
#
# Описание:
# Плагин добавляет награды за проведенное время в игре.
#
# Опциональные зависимости: (плагины без которых не будет полного функционала, но работать будет)
# - PlaceholdersAPI https://www.spigotmc.org/resources/placeholderapi.6245/
#
# Плейсхоледры:
# %mcrewards_time_played_formatted% - Форматированное наигранное время (например: "1 нед. 5 дн."), конфигурация цвета цифр и сокращений в секции ниже "placeholder.time_played_color".
# %mcrewards_time_played_seconds% - Наигранное число секунд (например: "0", "863", "2,455" и тд.).
# %mcrewards_time_played_hours% - Наигранное число часов (например: "0", "0.2", "1", "4", "1,203" и тд.) после 1 часа дробная часть не будет показываться.
# %mcrewards_repeatable_reward_id_N_time_left% - Число секунд до следующей возможности забрать награду, где N это ID "REPEATABLE" награды согласно конфигурации.
# %mcrewards_streak_reward_id_N_streak% - Число забранных наград (подряд), где N это ID "STREAK" награды согласно конфигурации.
# %mcrewards_streak_reward_id_N_streak_required% - Число требуемых забранных наград (подряд), где N это ID "STREAK" награды согласно конфигурации.
#
# %mcrewards_leaderboard_id_N1_player_name_position_N2% - Ник зинимающего "N2" место в топе с ID: "N1".
# Например: %mcrewards_leaderboard_id_leaderboard_time_played_player_name_position_6% - Ник занимающего 6 место в топе с ID: "leaderboard_time_played".
#
# %mcrewards_leaderboard_id_N1_player_score_position_N2% - Счет зинимающего "N2" место в топе с ID: "N1".
# Например: %mcrewards_leaderboard_id_leaderboard_time_played_player_score_position_7% - Счет занимающего 7 место в топе с ID: "leaderboard_time_played".
#
# %mcrewards_leaderboard_id_N_last_update% - Время последнего обновления топа с ID "N", (конфигурируемый) подробнее в секии "leaderboard_list.N.last_update".
# %mcrewards_leaderboard_id_N_time_to_update% - Время до следующего обновления топа с ID "N", (конфигурируемый) подробнее в секии "leaderboard_list.N.time_to_update".

message:
  # Поддерживается вывод сообщений в мультистрочном формате.
  reload_success:
    - "&aПлагин перезагружен!"
  permission_denied: "&cОтказано в доступе."
  this_command_is_only_available_in_game: "&cЭта команда доступна только в игре."
  reward_received: "&aНаграда &r%reward_display_name%&r &aполучена!"
  reward_already_received: "&cНаграда &r%reward_display_name%&r &cуже получена!"
  reward_is_not_available: "&cНаграда &r%reward_display_name%&r &cне доступна!"
  help:
    - "&e/free &7- открыть меню наград"
    - "&e/free reload &7- перезагрузить плагин"
    - "&e/free help &7- показать список команд"

permission:
  reload: rewards.reload # Разрешение на перезагрузку этого плагина.

# Конфигурация базы данных.
#
# Примечание:
# Раскомментируйте нужный вариант, но закомментируйте все не нужные.
# По умолчаницию раскомментирован "Пример конфигурации если база данных H2 (просто локальный файл).", а
# все остальные закомментированы.
#
# Доступные типы баз данных на данный момент:
# - H2
# - MYSQL
database:
  # Пример конфигурации если база данных H2 (просто локальный файл).
  type: H2

  # Пример конфигурации если база данных это MySQL сервер.
  # type: MYSQL
  # database: "database"
  # host: "127.0.0.1"
  # port: 3306
  # username: "username"
  # password: "password"

placeholder:
  time_played_color:
    # Цвет цифр плейсхолдера времени проведенного в игре.
    # Используйте цвета версии ядра на котором запускаете плагин (по умолничаю: 1.8.8).
    # Списки всех цветов для каждой версии:
    # https://helpch.at/docs/1.8.8/org/bukkit/ChatColor.html
    # https://helpch.at/docs/x.x.x/org/bukkit/ChatColor.html
    # ...
    number: AQUA
    abbreviation: YELLOW

# Список наград.
reward_list:

  # ID награды.
  reward_1:

    # Тип награды "TIME_PLAYED" которая становится доступа после "required_time_played" секунд
    # времени проведенного в игре. Выполняет набор команд при получении этой награды.
    type: TIME_PLAYED
    display_name: "&aНаграда за время в игре 1" # Название награды.
    required_time_played: 900 # (Сек.) Через сколько секунд времени проведенного в игре игрок получит эту награду в меню "/free"?
    command_list: # Список команд которые будут выполнены при получении награды.
      - "minecraft:tell %player% &aкоманда &aнаграды &a1"
      - "minecraft:tell %player% &bкоманда &bнаграды &b2"
    available_item: # Визуализация награды "доступна чтобы получить".
      # Тип материала.
      # Используйте материалы версии ядра на котором запускаете плагин (по умолничаю: 1.8.8).
      # Списки всех материалов для каждой версии:
      # https://helpch.at/docs/1.8.8/org/bukkit/Material.html
      # https://helpch.at/docs/x.x.x/org/bukkit/Material.html
      # ...
      material: CHEST
      display_name: "%reward_display_name%" # Название.
      description: # Описание.
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item: # Визуализация награды "недоступна чтобы получить".
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fТребуемое время в игре: &r%reward_formatted_required_time_played%"
        - "&fДо получения осталось: &r%reward_formatted_time_played_left%"
        - "&fСтатус: &cНедоступна"
    received_item: # Визуализация награды "награда получена".
      material: MINECART
      durability_data: 4
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &eПолучена"


  reward_2:
    type: TIME_PLAYED
    display_name: "&bНаграда за время в игре 2"
    required_time_played: 1200
    command_list:
      - "minecraft:tell %player% &cкоманда &cнаграды &c3"
      - "minecraft:tell %player% &dкоманда &dнаграды &d4"
    available_item:
      material: ENDER_CHEST
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fТребуемое время в игре: &r%reward_formatted_required_time_played%"
        - "&fДо получения осталось: &r%reward_formatted_time_played_left%"
        - "&fСтатус: &cНедоступна"
    received_item:
      material: MINECART
      durability_data: 4
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &eПолучена"


  reward_3:
    # Тип награды "PERMITTED_TIME_PLAYED" которая становится доступа после "required_time_played" секунд
    # времени проведенного в игре. Позволяет забрать награду только если у игрока нет разрешения "permission".
    type: PERMITTED_TIME_PLAYED
    display_name: "&aЛорд &eза время в игре"
    required_time_played: 300
    permission: "mcrewards.reward-1" # Разрешение которого не должно быть у игрока чтобы забрать награду в меню "/free".
    command_list:
      - "minecraft:tell %player% &aполучен &aранг &r%reward_display_name%"
    available_item:
      material: WOOL
      durability_data: 14 # (Опционально) Дата материала, удалите эту строку и дата учитываться не будет.
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fТребуемое время в игре: &r%reward_formatted_required_time_played%"
        - "&fДо получения осталось: &r%reward_formatted_time_played_left%"
        - "&fСтатус: &cНедоступна"
    received_item:
      material: MINECART
      durability_data: 4
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &eПолучена"

  reward_4:
    type: PERMITTED_TIME_PLAYED
    display_name: "&bПовелитель &eза время в игре"
    required_time_played: 600
    permission: "mcrewards.reward-2"
    command_list:
      - "minecraft:tell %player% &aполучен &aранг &r%reward_display_name%"
    available_item:
      material: LEATHER_CHESTPLATE
      rgb: # (Опционально) Цвет кожаной брони.
        r: 255 # (0-255) Красный.
        g: 0 # (0-255) Зеленый.
        b: 0 # (0-255) Синий.
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fТребуемое время в игре: &r%reward_formatted_required_time_played%"
        - "&fДо получения осталось: &r%reward_formatted_time_played_left%"
        - "&fСтатус: &cНедоступна"
    received_item:
      material: MINECART
      durability_data: 4
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &eПолучена"


  reward_5:
    # Тип награды "REPEATABLE" которая выдается игроку онлайн каждый раз по истечении "interval_seconds" секунд.
    type: REPEATABLE
    display_name: "&aЕжедневная награда"
    interval_seconds: 86400 # (Сек.) Интервал получения этой награды.
    command_list:
      - "minecraft:tell %player% &aкоманда &aнаграды &e5"
      - "minecraft:tell %player% &aкоманда &aнаграды &e6"
    available_item:
      material: IRON_BLOCK
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтанет доступна через: &r%mcrewards_repeatable_reward_id_reward_5_time_left%"
        - "&fСтатус: &cНедоступна"


  reward_6:
    type: REPEATABLE
    display_name: "&bНедельная награда"
    interval_seconds: 604800
    command_list:
      - "minecraft:tell %player% &aкоманда &aнаграды &e7"
      - "minecraft:tell %player% &aкоманда &aнаграды &e8"
    available_item:
      material: DIAMOND_BLOCK
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&fСтанет доступна через: &r%mcrewards_repeatable_reward_id_reward_6_time_left%"
        - "&fСтатус: &cНедоступна"


  reward_7:
    # Тип награды "STREAK" которую можно забрать каждый раз когда награда с ID "target_reward_id" забрана "streak" раз.
    type: STREAK
    display_name: "&aБонус серии"
    target_reward_id: reward_5 # ID награды которую нужно забрать несколько раз, чтобы эта награда стала доступна.
    required_streak: 3 # Требуемое число забираний награды с ID "target_reward_id" чтобы эта награда стала доступна.
    command_list:
      - "minecraft:tell %player% &aкоманда &aнаграды &e9"
      - "minecraft:tell %player% &aкоманда &aнаграды &e10"
    available_item:
      material: DIAMOND
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&7Заберите награду &r%target_reward_display_name%"
        - "&e%mcrewards_streak_reward_id_reward_7_streak_required% &7раз(а) и эта награда станет доступна."
        - ""
        - "&fПрогресс: &e%mcrewards_streak_reward_id_reward_7_streak%&f/&e%mcrewards_streak_reward_id_reward_7_streak_required%"
        - "&fСтатус: &aДоступна"
        - ""
        - "&eКликните чтобы забрать!"
    unavailable_item:
      material: STAINED_GLASS_PANE
      durability_data: 14
      display_name: "%reward_display_name%"
      description:
        - ""
        - "&7Заберите награду &r%target_reward_display_name%"
        - "&e%mcrewards_streak_reward_id_reward_7_streak_required% &7раз(а) и эта награда станет доступна."
        - ""
        - "&fПрогресс: &e%mcrewards_streak_reward_id_reward_7_streak%&f/&e%mcrewards_streak_reward_id_reward_7_streak_required%"
        - "&fСтатус: &cНедоступна"


gui:
  # Список глобальных кнопок.
  global_button_list:

    # Глобальная кнопка вернуться "Вернуться".
    return:
      material: ARROW
      display_name: "&eВернуться"
      description:
        - "&8&oВернуться в предыдущий каталог."

  # Основное меню "Награды".
  main:
    title: "Награды"
    size: 45

    # Предмет заливки, полностью закомментируйте эту секцию "fill_item" или закомментируйте ее содержимое,
    # а значение установите в "fill_item: {}", это предотвратит заливку меню этим предметом.
    fill_item:
      material: STAINED_GLASS_PANE
      durability_data: 5
      display_name: "&0"

    # Список предметов декораций. Значение установите в "decorate_item_list: {}", а все
    # элементы спика полностью удалите, это предотвратит заливку меню этими предметами.
    decorate_item_list:
      decorate_item_1: # ID предмета декорации.
        slot: # Расположение предмета декорации по X и Y.
          x: 1 # X.
          y: 1 # Y.
        item: # Визуализация предмета декорации.
          material: STAINED_GLASS_PANE
          durability_data: 6
          display_name: "&eexample.com"
      decorate_item_2:
        slot:
          x: 9
          y: 1
        item:
          material: STAINED_GLASS_PANE
          durability_data: 6
          display_name: "&eexample.com"
      decorate_item_3:
        slot:
          x: 1
          y: 5
        item:
          material: STAINED_GLASS_PANE
          durability_data: 6
          display_name: "&eexample.com"
      decorate_item_4:
        slot:
          x: 9
          y: 5
        item:
          material: STAINED_GLASS_PANE
          durability_data: 6
          display_name: "&eexample.com"

    # Вы можете полностью закомментировать эту секцию "command_list_reward_list_button" и ее содержимое или
    # например только закомментировать содержимое а саму секцию присвоить значение пустой "command_list_reward_list_button: {}".
    # Оба варианта приведут к тому, что кнопка меню той-или иной награды перестанер работать и показываться в меню.
    command_list_reward_list_button:
      slot:
        x: 2
        y: 3
      item:
        material: WOOL
        durability_data: 1
        display_name: "&aНаграды за время в игре"
        description:
          - ""
          - "&eКликните чтобы открыть!"
    permitted_command_list_reward_list_button:
      slot:
        x: 4
        y: 3
      item:
        material: WOOL
        durability_data: 2
        display_name: "&bРанги за время в игре"
        description:
          - ""
          - "&eКликните чтобы открыть!t"
    repeatable_command_list_reward_list_button:
      slot:
        x: 6
        y: 3
      item:
        material: WOOL
        durability_data: 3
        display_name: "&cЕжедневные награды"
        description:
          - ""
          - "&eКликните чтобы открыть!"
    repeatable_streak_command_list_reward_list_button:
      slot:
        x: 8
        y: 3
      item:
        material: WOOL
        durability_data: 4
        display_name: "&dНаграды подряд"
        description:
          - ""
          - "&eКликните чтобы открыть!"


  # Меню "Награды за время в игре".
  command_list_reward_list:
    title: "Награды за время в игре"
    size: 45
    return_button: # Кнопка "Вернуться".
      slot:
        x: 1
        y: 5
    reward_button_list: # Список кнопок наград.
      reward_button_1: # ID кнопки награды.
        slot: # Позиция кнопки награды в GUI.
          x: 4
          y: 3
        reward_id: reward_1 # ID визуализируемой награды.
      reward_button_2:
        slot:
          x: 6
          y: 3
        reward_id: reward_2


  # Меню "Ранги за время в игре".
  permitted_command_list_reward_list:
    title: "Ранги за время в игре"
    size: 45
    return_button:
      slot:
        x: 1
        y: 5
    reward_button_list:
      reward_button_1:
        slot:
          x: 4
          y: 3
        reward_id: reward_3
      reward_button_2:
        slot:
          x: 6
          y: 3
        reward_id: reward_4


  # Меню "Ежедневные награды".
  repeatable_command_list_reward_list:
    title: "Ежедневные награды"
    size: 45
    return_button:
      slot:
        x: 1
        y: 5
    reward_button_list:
      reward_button_1:
        slot:
          x: 4
          y: 3
        reward_id: reward_5
      reward_button_2:
        slot:
          x: 6
          y: 3
        reward_id: reward_6


  # Меню "Награды подряд".
  repeatable_streak_command_list_reward_list:
    title: "Награды подряд"
    size: 45
    return_button:
      slot:
        x: 1
        y: 5
    reward_button_list:
      reward_button_2:
        slot:
          x: 5
          y: 3
        reward_id: reward_7

# Список лидербордов.
leaderboard_list:

  # ID лидерборда.
  leaderboard_time_played:

    # Тип лидербоарда.
    # "TIME_PLAYED" - лидербоард по наигранному времени в игре.
    type: TIME_PLAYED

    # (Сек.) Интервал обновления лидерборда.
    update_interval_seconds: 60

    # Максимальное число хранимых лидеров лидерборда.
    # Например: 1, 2 ... 10 места, "max_leaderboard_slots: 10".
    max_leaderboard_positions: 10

    # Конфигурация визуализации плейсхолдера времени последнего обновления.
    last_update:

      # Формат плейсхолдера.
      string: "&fОбновлено: &a%date%"

      # Формат времени.
      # Полный список форматов времени можно найти по адресу: https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html.
      date_format: "EEEE, dd MMM yyyy"

    # Конфигурация визуализации плейсхолдера времени до следующего обновления.
    time_to_update:

      # Формат плейсхолдера.
      string: "&fОбновится через: %time%"

      # Цвет цифр.
      # Полный список цветов можно найти по адресу: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/ChatColor.html.
      number_color: GREEN

      # Цвет аббревиатур (час. мин. сек. и тд.).
      abbreviation_color: WHITE
  • Мне нравится
Реакции: ЛИНКОЛЬН LOUD
Автор
mcdev
Покупатели
7
Показов
575
Первый выпуск
Обновление

Оценки

5.00 звёзд 1 оценок

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

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

  1. 1.0.6

    - Добавлен топ по наигранному времени. - В конфигурацию добавлены следующие секции (учитывайте...

Последние отзывы

Очень хороший плагин, cоветую к покупке для любых серверов. Благодаря плагину повысил удержание онлайна на сервере за счёт того что игроки хотят отыграть нужное количества времени чтобы получить свою награду.