- Требуется UtilM
- https://mcdev.su/resources/utilm.73/
- Для версий
- 1.8.x-1.21.x
mcRewards - Плагин для Майнкрафт: Награды за время в игре
Оптимизируйте игровой процесс с помощью уникального плагина, который внедряет систему наград за проведенное в игре время. Этот плагин разработан специально для серверов Майнкрафт и предлагает игрокам четыре типа наград, что делает каждый момент, проведенный в игре, более значимым и увлекательным.
Увлекательные возможности плагина
С данным плагином игроки получают разнообразные награды, основанные на времени, проведенном на сервере. Это простое, но мощное решение повышает интерес к игре и стимулирует пользователей оставаться активными и возвращаться.
Четыре типа наград
Плагин предлагает четыре основных типа наград, доступные игрокам, которые находятся в игровой среде:
- Привилегии – получают активные игроки, которые проводят время на сервере, открывая доступ к дополнительным командам и функционалу.
- Ежедневные награды – предоставляются игрокам за регулярное посещение сервера, что поощряет их возвращаться и поддерживать активность.
- Увеличивающаяся награда – с каждым игровым сеансом награды становятся более ценными, мотивируя игроков оставаться на сервере дольше.
- Награда за наигранное время – игроки получают вознаграждения на основе общего времени, проведенного на сервере, что еще больше стимулирует их активность.
Конфигурация плагина:
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