- Поддерживаемые версии
- 1.21
- 26.1
- 26.2
- 26.3
- 26.4
- Ядра и Прокси
- Paper
- Минимальная версия Java
- 21
hAntiFarmKills
Защита PvP-статистики от фарма повторных убийств
Парные кулдауны • статистика и топ • SQLite/MySQL • PlaceholderAPI
О ПЛАГИНЕ
hAntiFarmKills ведёт собственную статистику PvP-убийств и защищает её от фарма одной и той же жертвы.
После засчитанного убийства повторный килл того же игрока тем же убийцей не увеличит счётчик до окончания настроенного кулдауна. Проверка работает отдельно для каждой пары
убийца → жертва, поэтому убийства других противников учитываются независимо.ВОЗМОЖНОСТИ
- собственный постоянный счётчик PvP-убийств;
- защита статистики от повторного убийства одной жертвы;
- общий кулдаун и отдельные значения для конкретных миров;
- полное отключение плагина в выбранных мирах;
- настройка учёта самоубийств;
- переводы названий миров для сообщений;
- просмотр статистики игроков и таблицы лидеров;
- SQLite по умолчанию или подключение MySQL;
- кэширование статистики и пакетное сохранение в отдельном потоке;
- настраиваемые многострочные сообщения с MiniMessage;
- интеграция с PlaceholderAPI;
- API-события для других плагинов;
- перезагрузка всех настроек без перезапуска сервера.
КАК РАБОТАЕТ АНТИФАРМ
При кулдауне
60 секунд:- первое убийство игрока засчитывается;
- повторное убийство этой же жертвы раньше 60 секунд не увеличивает статистику;
- убийство другого игрока засчитывается независимо;
- после окончания кулдауна следующая победа над первой жертвой снова засчитывается.
Таймер отсчитывается от последнего засчитанного убийства. Попытка фарма его не продлевает. Значение
0 отключает кулдаун.НАСТРОЙКА МИРОВ
Общие правила и настройки отдельных миров задаются в
config.yml:
YAML:
settings:
cooldown: 60
allowSelfKills: false
topSize: 10
disableWorlds:
enable: true
worlds:
- event
worldCooldowns:
pvp: 30
arena: 10
worldTranslations:
world: "обычный"
world_nether: "адский"
arena: "PvP-арена"
worldCooldowns переопределяет общий кулдаун для указанных миров, а worldTranslations задаёт понятные названия миров в сообщениях игрокам.СООБЩЕНИЯ
В
messages.yml настраиваются:- уведомление убийцу о незачтённом повторном килле;
- подтверждение успешно засчитанного убийства;
- сообщение жертве с именем убийцы, миром и координатами смерти;
- ответы команд, заголовок и строки топа.
Сообщения поддерживают MiniMessage, HEX-цвета, форматирование, click- и hover-события. Каждый шаблон может быть одной строкой или списком строк.
Доступны контекстные переменные:
{prefix}, {killer}, {victim}, {cooldown}, {world}, {x}, {y}, {z}, {player}, {kills}, {count}, {position} и {name}.СТАТИСТИКА И ХРАНИЛИЩЕ
hAntiFarmKills сохраняет UUID, последнее известное имя и количество засчитанных убийств. Имена автоматически обновляются при входе игрока, поэтому в топе корректно отображаются и ранее игравшие пользователи.
- SQLite — локальный файл
data.db, работает сразу после установки; - MySQL — подключение к удалённой базе через
storage.yml; - автоматическое создание таблицы;
- настраиваемый интервал и размер пакетного сохранения;
- отдельный поток для операций с базой данных.
КОМАНДЫ
/hantifarmkills reload— перезагрузить конфигурацию, сообщения, логи и хранилище;/hantifarmkills stats [игрок]— показать количество засчитанных убийств;/hantifarmkills top [количество]— показать топ игроков по убийствам.
ПРАВА
hantifarmkills.reload— перезагрузка плагина;hantifarmkills.stats— просмотр статистики;hantifarmkills.top— просмотр топа.
Все права по умолчанию доступны операторам. Команда поддерживает автодополнение подкоманд и имён онлайн-игроков.
PLACEHOLDERAPI И API
%hantifarmkills_kills% — количество засчитанных убийств игрока.Для разработчиков доступны два Bukkit-события:
FarmKillDetectEvent— срабатывает при обнаружении повторного убийства;KillRegisteredEvent— срабатывает после добавления убийства в статистику.
ФАЙЛЫ КОНФИГУРАЦИИ
config.yml— кулдауны, миры, размер топа, префикс и переводы;messages.yml— игровые сообщения и ответы команд;storage.yml— SQLite/MySQL и параметры сохранения;logs.yml— диагностические сообщения плагина.
ТРЕБОВАНИЯ
- Сервер: Paper 1.21.x;
- Java: 21;
- Обязательные плагины: отсутствуют;
- Необязательная интеграция: PlaceholderAPI.
УСТАНОВКА
- Остановите сервер и поместите
hAntiFarmKills-1.0.jarв папкуplugins. - Запустите сервер для создания файлов конфигурации.
- Настройте кулдауны и миры в
config.yml. - При необходимости выберите MySQL в
storage.yml. - Настройте сообщения и выдайте нужные права.
- Перезапустите сервер или выполните
/hantifarmkills reload.
- Зависимости
- PlaceholderAPI (Не обязательно)
- Команды и права
- Всё выше написано