- Поддерживаемые версии
- 1.16
- 1.17
- 1.18
- 1.19
- 1.20
- 1.21
- Ядра и Прокси
- Bukkit
- Spigot
- Paper
- Минимальная версия Java
- 17
hArenas
Менеджер приватных арен для Minecraft-серверов
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Менеджер приватных арен для Minecraft-серверов
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
hArenas — это плагин для управления приватными аренами на сервере.
С его помощью можно создавать арены с ограниченным доступом, выдавать игрокам временный проход, ограничивать время нахождения на арене, задавать лимит игроков, выдавать варны, блокировать нарушителей, запрещать команды внутри арены и отправлять логи в Discord.
Плагин подойдёт для приватных PvP-арен, дуэльных комнат, тренировочных арен, донат-локаций, event-зон, staff-controlled зон и любых мест, куда игрок должен получать доступ только на определённое время.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Основные возможности
Несколько арен
Каждая арена настраивается отдельным YAML-файлом.
Код:
plugins/hArenas/arenas/test.yml
ID арены берётся из названия файла:
Код:
test.yml -> test
Вы можете создать несколько арен с разными настройками, лимитами, временем доступа, точками телепортации, сообщениями, действиями и Discord webhook-логами.
────────────────────────────────────────
Временный доступ к арене
Игрок может войти на арену только если у него есть активный доступ.
Администратор может выдать доступ на определённое время:
Код:
/harenas access <ник> <арена> give [секунды]
Если секунды не указаны, используется стандартное время доступа из конфига арены.
Доступ можно забрать вручную:
Код:
/harenas access <ник> <арена> take
Это удобно для арен, которые должны быть доступны только выбранным игрокам или только на ограниченный срок.
────────────────────────────────────────
Точки входа и выхода
Для каждой арены можно настроить отдельную точку входа и отдельную точку выхода.
Когда игрок входит на арену, он телепортируется в указанную точку.
Когда игрок выходит, его время заканчивается или он удаляется с арены, он может быть телепортирован в точку выхода.
────────────────────────────────────────
Ограничение времени на арене
У каждой арены есть максимальное время нахождения игрока.
Пример:
Код:
maxTimeSeconds: 300
Когда время заканчивается, игрок удаляется с арены, а плагин может выполнить настроенные действия.
────────────────────────────────────────
Лимит игроков
Для каждой арены можно указать максимальное количество игроков.
Пример:
Код:
maxPlayers: 10
Если арена заполнена, плагин не пустит новых игроков и может выполнить действия из конфига или отправить лог в Discord.
────────────────────────────────────────
Система варнов
Персонал сервера может выдавать игрокам варны на конкретной арене.
Код:
/harenas warn <ник> <арена>
У каждой арены есть свой лимит варнов.
Когда игрок достигает лимита, плагин может автоматически:
- Забрать доступ к арене
- Заблокировать игрока на арене
- Удалить игрока из текущей сессии
- Выполнить действия из конфига
- Отправить уведомление в Discord
Это помогает персоналу контролировать нарушения правил без ручного учёта.
────────────────────────────────────────
Временные блокировки на арене
Игрока можно временно заблокировать на конкретной арене.
Код:
/harenas block <ник> <арена> [секунды]
/harenas unblock <ник> <арена>
Если секунды не указаны, используется стандартное время блокировки из конфига арены.
Блокировки работают отдельно для каждой арены. Игрок может быть заблокирован на одной арене, но иметь доступ к другой.
────────────────────────────────────────
Запрет команд внутри арены
Внутри арены можно заблокировать определённые команды.
Пример:
Код:
blockedCommands:
- spawn
- home
Это помогает запретить команды вроде spawn, home, back, tpa и другие команды, которые могут нарушать правила арены.
Если игрок использует запрещённую команду, плагин отменяет её и может выполнить действия из конфига или отправить лог в Discord.
────────────────────────────────────────
Bossbar и actionbar
Каждая арена может показывать игроку информацию через bossbar и actionbar.
Пример bossbar:
Код:
&fВы на арене #FDBE00{arena} &7| &fДо конца времени: #FDBE00{timeLeft}
Пример actionbar:
Код:
&fИгроков&7: #FDBE00{players}&7/#FDBE00{maxPlayers}
Доступные плейсхолдеры арены:
Код:
{player}
{arena}
{arenaId}
{timeLeft}
{players}
{maxPlayers}
{warns}
{maxWarns}
────────────────────────────────────────
Discord webhook-логи
Для каждой арены можно настроить собственный Discord webhook.
Плагин может отправлять логи по важным событиям:
- Игрок вошёл на арену
- Игрок вышел с арены
- Игрок попытался войти без доступа
- Арена заполнена
- Игрок заблокирован на арене
- Доступ выдан или забран
- Выдан варн
- Игрок заблокирован из-за варнов
- Ручная блокировка или разблокировка
- Варны сброшены
- Время на арене закончилось
- Игрок попытался использовать запрещённую команду
Webhook-сообщения поддерживают embeds, заголовок, описание, цвет и footer.
────────────────────────────────────────
Гибкая система действий
hArenas имеет систему действий, которая позволяет настраивать поведение плагина без изменения кода.
Доступные секции действий:
Код:
actions.alreadyInArena
actions.arenaFull
actions.noArenaAccess
actions.joined
actions.left
actions.accessGiven
actions.accessRemoved
actions.warned
actions.blocked
actions.unblocked
actions.warnsReset
actions.timeEnded
actions.warnBlocked
actions.arenaBanned
actions.commandBlocked
Поддерживаемые типы действий:
Код:
[MESSAGE]
[BROADCAST]
[CONSOLE]
[PLAYER]
[SOUND]
[ACTIONBAR]
[BOSSBAR]
[PARTICLE]
[FIREWORK]
[EFFECT]
[VAULT]
[CLOSE]
[ACHIVEMENT]
Пример:
Код:
actions:
joined:
- '[MESSAGE] {prefix}Вы вошли на арену #FDBE00{arena}'
- '[SOUND] ENTITY_PLAYER_LEVELUP:1:1'
left:
- '[MESSAGE] {prefix}Вы вышли с арены #FDBE00{arena}'
accessGiven:
- '[BROADCAST] {prefix}Доступ к арене #FDBE00{arena} &fвыдан игроку #FDBE00{player} &fна #FDBE00{time}'
commandBlocked:
- '[MESSAGE] {prefix}Для использования этой команды нужно покинуть арену'
────────────────────────────────────────
SQLite-хранилище
Плагин хранит данные арены в локальной SQLite-базе:
Код:
plugins/hArenas/arenas.db
В базе хранятся:
- Доступы к аренам
- Варны игроков
- Блокировки игроков
Внешняя база данных не требуется.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Команды
Код:
/harenas
/harenas join <арена>
/harenas leave
/harenas access <ник> <арена> give [секунды]
/harenas access <ник> <арена> take
/harenas warn <ник> <арена>
/harenas resetwarns <ник> <арена>
/harenas block <ник> <арена> [секунды]
/harenas unblock <ник> <арена>
/harenas reload
Описание команд:
Код:
/harenas - показать помощь
/harenas join <арена> - войти на арену
/harenas leave - выйти с текущей арены
/harenas access <ник> <арена> give - выдать доступ к арене
/harenas access <ник> <арена> take - забрать доступ к арене
/harenas warn <ник> <арена> - выдать варн
/harenas resetwarns <ник> <арена> - сбросить варны
/harenas block <ник> <арена> - временно заблокировать игрока
/harenas unblock <ник> <арена> - снять блокировку
/harenas reload - перезагрузить конфиг и арены
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Права
Код:
harenas.admin - доступ к административным командам
harenas.warn - доступ к /harenas warn
harenas.resetwarns - доступ к /harenas resetwarns
По умолчанию права доступны операторам.
Команды входа и выхода не требуют отдельного права, но для входа игрок должен иметь активный доступ к арене.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PlaceholderAPI
Если установлен PlaceholderAPI, hArenas регистрирует собственные плейсхолдеры.
Идентификатор плейсхолдеров:
Код:
harenas
Доступные плейсхолдеры:
Код:
%harenas_access_<arena>%
%harenas_warns_<arena>%
%harenas_ban_left_<arena>%
%harenas_ban_left_formatted_<arena>%
Примеры для файла арены test.yml:
Код:
%harenas_access_test%
%harenas_warns_test%
%harenas_ban_left_test%
%harenas_ban_left_formatted_test%
Значения плейсхолдеров:
Код:
%harenas_access_<arena>% возвращает: yes, no или banned
%harenas_warns_<arena>% возвращает количество варнов
%harenas_ban_left_<arena>% возвращает остаток блокировки в секундах
%harenas_ban_left_formatted_<arena>% возвращает отформатированный остаток блокировки
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Конфигурация
Пример настроек арены:
Код:
settings:
displayName: '#FDBE00Арена'
location:
join:
world: world
x: 0.0
y: 100.0
z: 0.0
yaw: 0.0
pitch: 0.0
leave:
world: world
x: 0.0
y: 100.0
z: 0.0
yaw: 0.0
pitch: 0.0
maxPlayers: 10
maxTimeSeconds: 300
maxWarns: 3
warnBanSeconds: 86400
accessSeconds: 86400
leaveOnDeath: true
blockedCommands:
- spawn
- home
Новые арены создаются добавлением YAML-файлов в папку:
Код:
plugins/hArenas/arenas/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Требования
- Java 17 или новее
- Minecraft server API 1.16 или новее
Опциональные интеграции:
- PlaceholderAPI для внешних плейсхолдеров
- Vault-экономика для Vault-действий
- Discord webhook URL для логов в Discord
Paper или Purpur рекомендуется для лучшей работы, особенно при использовании современных Adventure-сообщений и визуальных действий.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Установка
- Поместите hArenas.jar в папку plugins.
- Перезапустите сервер.
- Откройте папку plugins/hArenas/.
- Настройте арены в plugins/hArenas/arenas/.
- Выдайте персоналу нужные права.
- Выдайте игроку доступ к арене.
- Игрок сможет войти через /harenas join <арена>.
Пример:
Код:
/harenas access Steve test give 3600
/harenas join test
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Почему hArenas
hArenas даёт владельцу сервера удобную систему управления приватными аренами без ручного контроля времени, доступов, варнов и блокировок.
Вы можете создать несколько арен, выдавать временный доступ, ограничивать длительность сессии, задавать лимит игроков, блокировать команды, наказывать нарушителей, показывать информацию через bossbar и получать логи важных событий в Discord.
Всё настраивается через YAML, а данные игроков автоматически сохраняются в SQLite.
- Зависимости
- PlaceholderAPI, Vault (Опционально)
- Команды и права
Команда Право Описание /harenas join/leave Прав не нужно Команды для входа/выхода с арены /harenas warn harenas.warn Доступ к выдачи варнам игрокам на аренах /harenas access/block/unblock/reload harenas.admin Доступ к выдачи доступу к арене, сноса варнов, блокировки или разблокировки на арене и перезагрузке конфига плагин /harenas resetwarns harenas.resetwarns Доступ к снятию всех варнов игрока