- Для версий
- 1.21.✘
- Документация
- https://github.com/igormaclakoff-dev/SearchPvP
- Исходный код
- https://github.com/igormaclakoff-dev/SearchPvP
- Зависимости
- LuckPerms, PlaceholderAPI, TAB
S E A R C HP V P
Ранговый поиск PvP-поединков для Paper 1.21.x
Матчмейкинг по уровню брони, ELO-рейтинг, сезоны и награды топ-3
Версия 1.0.0|Paper 1.21.x|Java 21+
О ПЛАГИНЕ
SearchPvP добавляет на сервер полноценную систему ранговых PvP-поединков. Игроки в полном сете брони (незерит или алмаз) встают в очередь поиска и находят соперника своего уровня, сражаются на случайной арене за тысячи блоков от спавна и борются за место в таблице лидеров. Рейтинг считается по классической ELO-формуле, а каждый сезон приносит награды топ-3.
ВОЗМОЖНОСТИ
- Меню игрока — /pvp: статистика (рейтинг, ранг, победы, K/D, серия побед, сезон) и кнопка запуска поиска.
- Матчмейкинг по броне — в поиск попадают только игроки в полном сете брони (незерит или алмаз).
- Защита от смены брони — при смене брони во время поиска показываются предупреждающие титулы, 10 секунд на восстановление.
- Boss-bar и анонсы — прогресс поиска у игрока и уведомление всему серверу о начале боя.
- Отмена поиска — командой /pvp cancel или повторным кликом по кнопке в меню.
- Случайные арены — телепортация бойцов на расстояние 2000–5000 блоков с заморозкой на время отсчёта.
- ELO-рейтинг — настраиваемые стартовый рейтинг и коэффициент K.
- Сезоны — таймер сезона; в последние сутки отсчёт идёт по часам и минутам.
- Награды топ-3 — свои описания и команды выдачи на 1–3 место, выдаются автоматически в конце сезона и видны в /top.
- Топ игроков — пагинированная таблица лидеров по рейтингу с блоком наград сезона.
- Хранение в YAML — данные игроков и сезон переживают перезапуск сервера.
- Полная настройка — вся текстовая часть в messages.yml с поддержкой MiniMessage (градиенты, HEX).
КОМАНДЫ ДЛЯ ИГРОКОВ
| Команда | Описание | Право |
| /pvp | Открыть меню арен | searchpvp.use |
| /pvp cancel | Отменить поиск противника | searchpvp.use |
| /top | Таблица лидеров сезона | searchpvp.use |
КОМАНДЫ АДМИНИСТРАЦИИ
| Команда | Описание |
| /pvpadmin help | Справка по командам |
| /pvpadmin reload | Перезагрузить конфиги |
| /pvpadmin setpvpcommand <команда> | Задать команду включения PvP-режима |
| /pvpadmin season info | Информация о сезоне и таймере |
| /pvpadmin season set <номер> | Установить сезон (таймер заново) |
| /pvpadmin season reset | Новый сезон со сбросом рейтинга |
| /pvpadmin season finish | Завершить сезон сейчас (анонс + награды) |
| /pvpadmin forcestop <игрок> | Остановить поиск/бой игрока |
| /pvpadmin forcesearch <игрок> | Принудительно отправить игрока в поиск |
| /pvpadmin setelo <игрок> <число> | Установить рейтинг игрока |
| /pvpadmin reward <1-3> ... | Настройка награды за место (lines / commands) |
ПРАВА
- searchpvp.use— пользование аренами —default: true
- searchpvp.admin— все админ-команды —default: op
- searchpvp.command.reload— перезагрузка конфигов —default: op
- searchpvp.command.setpvpcommand— команда PvP-режима —default: op
- searchpvp.command.season— управление сезоном —default: op
- searchpvp.command.forcestop— остановка поиска/боя —default: op
- searchpvp.command.forcesearch— принудительный поиск —default: op
- searchpvp.command.setelo— изменение рейтинга —default: op
- searchpvp.command.reward— настройка наград —default: op
КАК ЭТО РАБОТАЕТ
- Игрок надевает полный сет брони и открывает /pvp.
- Нажимает «Начать поиск» — попадает в очередь, видит boss-bar, сервер получает анонс.
- При смене брони во время поиска появляются предупреждения (10 секунд на восстановление), иначе поиск отменяется.
- При нахождении соперника оба игрока телепортируются на арену за 2000–5000 блоков.
- После отсчёта включается PvP-режим, бой идёт до победы.
- Пересчитывается ELO, обновляется статистика, результат анонсируется на весь сервер.
- По окончании сезона объявляются победители топ-3, выдаются награды и стартует новый сезон.
УСТАНОВКА
- Скачайте SearchPvP-1.0.0.jar.
- Положите файл в папку plugins/ вашего Paper-сервера.
- Перезапустите сервер — создадутся config.yml, messages.yml, playerdata.yml, season.yml.
- Задайте команду включения PvP-режима: /pvpadmin setpvpcommand <команда>.
Требования:Paper 1.21.x, Java 21+.
КОНФИГУРАЦИЯ (config.yml)
Код:
settings:
placement-command: "pvp give %name%"
arena:
world: "world"
min-distance: 2000
max-distance: 5000
same-location: true
spawn-offset: 5
matchmaking:
interval-ticks: 20
armor-change-grace-seconds: 10
elo:
starting-elo: 1000
k-factor: 32
season:
length-days: 30
match:
countdown-seconds: 3
return-to-origin: true
keep-inventory: true
season-rewards:
1:
lines: []
commands: []
2:
lines: []
commands: []
3:
lines: []
commands: []AuraCode • SearchPvP 1.0.0 • MIT License
Сделано студией AuraCode (IgMacla)