PlayerPoints: вторая валюта сервера

PlayerPoints добавляет на сервер очки, отдельную от денег валюту: её обычно используют для доната, наград за голосование и магазинов за очки. Плагин бесплатный, работает без зависимостей и отдаёт баланс и топ игроков через PlaceholderAPI.

Установка и где хранятся очки

  1. Скачайте jar со SpigotMC или Modrinth и положите в plugins.
  2. Перезапустите сервер. Появится папка plugins/PlayerPoints с config.yml и файлами локализации.
  3. Если нужны плейсхолдеры, поставьте PlaceholderAPI. Расширение PlayerPoints встроено в сам плагин, качать его через eCloud не нужно.

По умолчанию очки хранятся в SQLite внутри папки плагина. Для сети серверов включите MySQL в config.yml, чтобы у игрока был один баланс везде:

mysql-settings:
  enabled: true
  hostname: 127.0.0.1
  port: 3306
  database-name: ''
  user-name: ''
  user-password: ''
  use-ssl: false

Параметр bungeecord-send-updates: true рассылает изменения баланса на другие серверы сети.

Команды выдачи и списания очков

Основная команда /points, короткий алиас /p. Выдача работает и из консоли, поэтому её удобно вызывать из автодоната, голосований или других плагинов.

/points give Steve 100
/points take Steve 50
/points set Steve 1000
/points giveall 10
/points reset Steve
  • give прибавляет очки, take списывает, set ставит точное значение.
  • giveall выдаёт очки всем, кто сейчас онлайн.
  • reset обнуляет баланс игрока.
  • pay переводит очки со своего баланса другому игроку. Минимальную сумму перевода задаёт minimum-pay-amount, значение -1 снимает ограничение.

Плейсхолдеры PlaceholderAPI

Подходят для TAB, скорборда, голограмм и меню DeluxeMenus. В сообщениях самого PlayerPoints тоже можно использовать любые плейсхолдеры PlaceholderAPI.

ПлейсхолдерЧто показывает
%playerpoints_points%баланс игрока, например 1337
%playerpoints_points_formatted%баланс с разделителями, 1,337
%playerpoints_points_shorthand%сокращённо, 1.3k
%playerpoints_leaderboard_1%ник игрока на 1-м месте топа
%playerpoints_leaderboard_1_amount%очки игрока на 1-м месте
%playerpoints_leaderboard_position%место игрока в топе
%playerpoints_points_for_Steve%баланс конкретного игрока

У суммы в топе есть варианты _amount_formatted и _amount_shorthand, у места _position_formatted, у баланса другого игрока _points_formatted_for_ник и _points_shorthand_for_ник. Число в leaderboard_1 меняется на нужное место.

Топ в плейсхолдерах обновляется раз в 15 секунд и держит 10 мест. Это задают leaderboard-placeholder-refresh-interval и leaderboard-placeholder-entries.

Права для игроков

Все права PlayerPoints по умолчанию выдаются только операторам, включая просмотр своего баланса и перевод. Игрокам свободно доступен лишь сам вызов /points (право playerpoints.basecommand). Обычный набор для группы default через LuckPerms:

/lp group default permission set playerpoints.me true
/lp group default permission set playerpoints.pay true
/lp group default permission set playerpoints.lead true
/lp group default permission set playerpoints.look true

playerpoints.* даёт доступ ко всем командам, его оставьте администрации.

Полезные настройки config.yml

  • starting-balance: 0: сколько очков получает новый игрок.
  • vault: false: если включить, PlayerPoints зарегистрируется в Vault как экономика. Если на сервере уже есть другая экономика, например EssentialsX, порядок решает vault-priority: чем выше приоритет, тем раньше PlayerPoints загружается перед другими экономическими плагинами.
  • vote.enabled и vote.amount: 100: очки за голос через Votifier, vote.online выдаёт их только игроку в сети.
  • leaderboard-per-page: 10: строк на странице /points lead.
  • base-command-redirect: me: какую подкоманду выполнять при вводе /points без аргументов.
  • log-transactions: true: запись операций в таблицу playerpoints_transaction_log базы данных.

После правок выполните /points reload.

Перевод на русский

Русская локализация ru_RU уже есть в плагине. Поменяйте в config.yml строку locale: en_US на locale: ru_RU и выполните /points reload. Название валюты и тексты сообщений правятся в файле локали в папке plugins/PlayerPoints.

Команды и права PlayerPoints

КомандаЧто делаетПраво
/pointsбез подкоманды выполняет base-command-redirect (по умолчанию me)playerpoints.basecommand
/points helpсписок команд плагина—
/points meсвой балансplayerpoints.me
/points look <name>баланс другого игрокаplayerpoints.look
/points pay <name> <amount>перевести свои очки игрокуplayerpoints.pay
/points give <name> <amount>выдать очки игрокуplayerpoints.give
/points giveall <amount>выдать очки всем онлайнplayerpoints.giveall
/points take <name> <amount>списать очкиplayerpoints.take
/points set <name> <amount>установить точный балансplayerpoints.set
/points reset <name>обнулить балансplayerpoints.reset
/points lead [next/prev/#]страница топа по очкамplayerpoints.lead
/points broadcast <name>объявить баланс игрока в чатplayerpoints.broadcast
/points exportвыгрузить все балансы в storage.ymlplayerpoints.export
/points importзагрузить балансы из storage.ymlplayerpoints.import
/points reloadперечитать конфиг и локализациюplayerpoints.reload

Частые вопросы про PlayerPoints

Какие плейсхолдеры есть у PlayerPoints?
Основной %playerpoints_points% показывает баланс, есть варианты _formatted и _shorthand. Для топа используются %playerpoints_leaderboard_N% и %playerpoints_leaderboard_N_amount%, для места игрока %playerpoints_leaderboard_position%.
Нужно ли скачивать расширение PlaceholderAPI для PlayerPoints?
Нет, расширение встроено в плагин. Достаточно, чтобы на сервере стоял PlaceholderAPI.
Как выдать очки игроку в PlayerPoints?
Командой /points give ник количество, например /points give Steve 100. Она работает и из консоли, поэтому подходит для автодоната. Списать очки можно через /points take.
Как перевести PlayerPoints на русский?
В config.yml поставьте locale: ru_RU и выполните /points reload. Русский файл локализации идёт вместе с плагином.
Почему игроки не могут посмотреть свой баланс?
Все права плагина по умолчанию только у операторов. Выдайте группе default права playerpoints.me, playerpoints.pay и playerpoints.lead через LuckPerms.
Работает ли PlayerPoints на 1.21?
Да, плагин поддерживает версии от 1.8 до 26.2 на Spigot, Paper и Folia.

Не хочется настраивать самому

PlayerPoints уже стоит и настроен в готовых сборках Cloud Delight: права, меню, защита и донат собраны в одно целое. Скачали, запустили, играете.