Pterohost docs

Votifier на сервере Minecraft: награды за голосование

Как установить NuVotifier, подключить сервер к топам и настроить VotingPlugin для автоматических наград за голоса игроков.

Кратко: NuVotifier принимает уведомления с топ-сайтов, VotingPlugin обрабатывает их и выдаёт награды. Настройка занимает 20-30 минут и сразу даёт инструмент для роста аудитории через голосование.

Votifier на сервере Minecraft: награды за голосование

Голосование за сервер на топ-сайтах - один из самых дешёвых способов привлечь новых игроков без рекламного бюджета. Механика простая: игрок заходит на minecraft-server.ru, planetminecraft.com или аналогичный топ и жмёт “проголосовать”. Топ отправляет HTTP-запрос на ваш сервер, плагин его принимает и автоматически выдаёт награду. В 2026 году эта система работает стабильно на Spigot, Paper и Purpur, а связка NuVotifier + VotingPlugin стала де-факто стандартом для серверов любого размера. В этой статье разберём установку от нуля до полноценной системы наград со стриками, напоминаниями и поддержкой BungeeCord-сетей.

Pterohost - хостинг Minecraft-серверов с защитой от DDoS, быстрыми NVMe-дисками и поддержкой 24/7. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

Что такое Votifier и как работает вся цепочка

Votifier - это не плагин наград, а плагин-приёмник. Он открывает дополнительный TCP-порт (обычно 8192) и слушает зашифрованные пакеты от топ-сайтов. Сам по себе он ничего не выдаёт - он просто принимает голос и передаёт событие другим плагинам.

Цепочка работает так:

  1. Игрок голосует за сервер на топ-сайте.
  2. Топ делает зашифрованный запрос на ваш-ip:8192.
  3. NuVotifier расшифровывает пакет и генерирует событие VoteEvent в Bukkit API.
  4. VotingPlugin слушает это событие и выдаёт награды по вашей конфигурации.

Оригинальный Votifier не обновлялся с 2013 года и не поддерживает новые версии Minecraft. NuVotifier - его современная замена с поддержкой протокола v2 (HMAC-SHA256), встроенным режимом BungeeCord и активными релизами на SpigotMC.

Установка NuVotifier

Загрузка и базовая настройка

Скачайте актуальную версию NuVotifier с SpigotMC. На момент написания статьи актуальна версия 2.7.x, совместимая с Minecraft 1.20-1.21.

Поместите NuVotifier.jar в папку plugins/ и перезапустите сервер. При первом запуске создаётся структура:

plugins/
  NuVotifier/
    config.yml
    rsa/
      public.key
      private.key

Откройте plugins/NuVotifier/config.yml:

host: 0.0.0.0
port: 8192

# Токен для протокола v2 (современные топы используют именно его)
tokens:
  default: ваш-секретный-токен

# Для старых топов с протоколом v1 (RSA)
disable-v1-protocol: false

# Отладочный вывод в консоль
debug: false

Параметр host: 0.0.0.0 означает “слушать на всех интерфейсах”. Если у вас несколько сетевых адаптеров, укажите конкретный IP.

Открытие порта

Порт 8192 должен быть доступен извне. Если сервер управляется через Pterodactyl (как на Pterohost), добавьте дополнительную аллокацию в панели или попросите поддержку открыть порт. На VPS с UFW:

ufw allow 8192/tcp
ufw reload

Проверьте доступность порта снаружи:

nmap -p 8192 ваш-ip

Строка 8192/tcp open означает, что порт слышен. filtered или closed - нужно разбираться с файрволом.

Где взять токен для v2

Токен генерируется один раз и вписывается в config.yml. Можно использовать любую случайную строку - для надёжности генерируйте через консоль:

openssl rand -hex 32

Этот токен вы потом вставите в форму регистрации на каждом топ-сайте.

Регистрация сервера на топах

Каждый топ-сайт требует отдельной регистрации. При добавлении сервера вам нужно указать:

  • IP и порт Votifier (обычно это ваш IP и порт 8192, отдельно от игрового порта).
  • Тип протокола: выбирайте v2 если доступно, иначе v1 (RSA-ключ).
  • Токен (для v2) или публичный ключ (для v1).

Публичный RSA-ключ находится в plugins/NuVotifier/rsa/public.key. Копируйте его полностью вместе со строками -----BEGIN PUBLIC KEY----- и -----END PUBLIC KEY-----.

Популярные русскоязычные топы для регистрации:

ТопПротоколПримечание
minecraft-server.ruv1 (RSA)Один из крупнейших в RU-сегменте
minecraftrating.ruv1 / v2Поддерживает оба протокола
topcraft.ruv1 (RSA)Хорошая аудитория выживания
planetminecraft.comv2 (токен)Международная аудитория
minecraft-mp.comv2 (токен)Международная аудитория

После добавления сервера большинство топов предлагают кнопку “Тест голоса” - нажмите её и проверьте, что в консоли Minecraft появилась строка вроде:

[NuVotifier] Got a vote record from planetminecraft.com for test

Установка и настройка VotingPlugin

Почему VotingPlugin

Из актуальных плагинов наград в 2026 году VotingPlugin (SpigotMC, автор BenCodez) - наиболее полный: Vault-интеграция, LuckPerms-группы, стрики, Milestones, напоминания, поддержка нескольких топов с раздельными наградами, оффлайн-накопление голосов. GAListener и SuperbVote проще, но беднее функционалом.

Скачайте VotingPlugin.jar с SpigotMC и положите в plugins/. Также убедитесь, что установлен Vault - VotingPlugin использует его для работы с экономикой.

Структура конфига

После первого запуска создаётся plugins/VotingPlugin/config.yml. Основные секции:

# Включить/выключить плагин
Enabled: true

# Добавить в таб-лист количество голосов
VotingPluginTabList:
  Enabled: false

# Оффлайн-очередь: голос сохранится и выдастся при входе
OfflineVoting:
  Enabled: true
  StorageMethod: File   # или SQL

Настройка сайтов и наград

Каждый топ-сайт конфигурируется отдельным файлом в plugins/VotingPlugin/VoteSites/. При первом запуске создаются примеры. Создайте файл planetminecraft.yml:

VoteSite:
  ServiceName: planetminecraft.com
  Enabled: true
  VoteDelay: "1d"   # минимум 24 часа между голосами с одного аккаунта

  Rewards:
    Commands:
      - "give %player% diamond 1"
      - "eco give %player% 500"
      - "broadcast &a%player% проголосовал за сервер и получил алмаз!"

  Reminder:
    Enabled: true
    Message: "&eТы ещё не голосовал сегодня на planetminecraft.com! /vote"
    Interval: "4h"

Аналогично создайте файлы для других топов. Переменная %player% заменяется именем игрока автоматически.

Стрики - стимул голосовать каждый день

Стрики начисляются, когда игрок голосует несколько дней подряд. Настройка в основном config.yml:

VoteStreaks:
  Enabled: true
  ResetOnMissed: true   # обнулить стрик, если пропустил день

  Streaks:
    5:
      Commands:
        - "give %player% emerald 5"
        - "eco give %player% 1000"
        - "broadcast &6%player% держит стрик 5 дней подряд!"
    10:
      Commands:
        - "give %player% diamond 5"
        - "eco give %player% 2500"
        - "lp user %player% parent addtemp vip 7d"
    30:
      Commands:
        - "give %player% netherite_ingot 2"
        - "eco give %player% 10000"
        - "lp user %player% parent addtemp mvp 30d"

Интеграция с LuckPerms (lp user %player% parent addtemp) позволяет автоматически давать временную группу за длинный стрик - хороший способ мотивировать игроков без постоянного ручного управления правами.

Кумулятивные Milestones

Milestones - накопительные награды за суммарное количество голосов за всё время. Они не сбрасываются. Пример:

Milestones:
  Enabled: true

  Milestones:
    10:
      Commands:
        - "give %player% gold_ingot 10"
        - "eco give %player% 2000"
    50:
      Commands:
        - "lp user %player% parent addtemp elite 14d"
        - "eco give %player% 10000"
    100:
      Commands:
        - "give %player% netherite_block 1"
        - "lp user %player% parent set legend"
        - "broadcast &c%player% достиг 100 голосов! Легенда сервера!"

За 100 голосов можно выдать постоянную группу - это мощный стимул для лояльных игроков.

Напоминания при входе

VotingPlugin умеет напоминать игроку, что он не голосовал, прямо при входе на сервер:

VoteReminders:
  Enabled: true
  OnJoin:
    Enabled: true
    Message:
      - "&eПомни, что можно проголосовать за сервер!"
      - "&eКоманда: &b/vote"
      - "&eНаграда: &aalмаз + 500 монет"
    # Показывать только если последний голос был больше 20 часов назад
    VoteDelay: "20h"

Напоминание при входе не раздражает, если правильно настроить VoteDelay - игрок не будет видеть его сразу после того, как проголосовал.

Команды для игроков

VotingPlugin добавляет несколько полезных команд:

КомандаЧто делает
/voteПоказывает список топов для голосования
/vote statusСтатус голосов: когда последний раз, текущий стрик
/vote topТоп игроков по количеству голосов
/vote claimПолучить накопленные оффлайн-голоса вручную

Настройте сообщение /vote в config.yml:

VoteCommand:
  Enabled: true
  Messages:
    - "&6=== Голосуй за наш сервер ==="
    - "&aplanetminecraft.com: &fhttps://planetminecraft.com/server/..."
    - "&aminecraftrating.ru: &fhttps://minecraftrating.ru/server/..."
    - "&6За каждый голос: алмаз + 500 монет"
    - "&6Стрик 10 дней: временная группа VIP"

Настройка BungeeCord-сети

Если вы запускаете сеть серверов через BungeeCord или Velocity, NuVotifier поддерживает проброс голосов. Установите NuVotifier на прокси-сервер (BungeeCord/Velocity) и на каждый бэкенд.

На прокси в config.yml:

# Режим BungeeCord: принимать голоса и рассылать по бэкендам
bungee:
  enabled: true
  forward-method: pluginMessaging  # или 'nuvotifier' для прямых соединений

  servers:
    survival:
      host: 127.0.0.1
      port: 8193
      token: токен-survival
    skyblock:
      host: 127.0.0.1
      port: 8194
      token: токен-skyblock

На каждом бэкенде NuVotifier работает в режиме получателя - он не слушает внешние соединения, а только принимает голоса от прокси. Порты бэкендов (8193, 8194) не нужно открывать наружу.

VotingPlugin на каждом бэкенде обрабатывает голоса независимо - игрок получит награду на том сервере, где находится в момент голосования, или в оффлайн-очередь, если его нет онлайн.

Тестирование и диагностика

Ручной тест без регистрации на топе

VotingPlugin включает команду для симуляции голоса в консоли:

votingplugin fakevote ИмяИгрока planetminecraft.com

Выполните в консоли сервера и проверьте, что игрок получил награды.

Частые проблемы

Топ отвечает “Connection refused”:

  • Порт 8192 закрыт файрволом. Команда: ufw allow 8192/tcp.
  • NuVotifier не запустился - проверьте консоль на ошибки при старте.
  • Указан неверный IP в настройках топа.

Топ принимает голос, но награды не выдаются:

  • Проверьте, что Vault установлен и экономика (например, EssentialsX Economy) подключена.
  • Имя сайта в настройках VotingPlugin должно совпадать с именем, которое отправляет топ. Посмотрите в логах NuVotifier: [NuVotifier] Got a vote record from НАЗВАНИЕ.
  • Если игрок оффлайн, голос должен быть в очереди: /vote claim или автовыдача при входе.

Ошибка “Invalid token” в логах NuVotifier:

  • Токен в config.yml и в настройках топа не совпадают. Перепроверьте без лишних пробелов.

Протокол v1 не работает:

  • На новых версиях Minecraft некоторые топы переходят на v2. Если топ поддерживает только v1, убедитесь что disable-v1-protocol: false в конфиге NuVotifier и публичный ключ скопирован корректно.

Связанные материалы

Для полноценной настройки сервера с системой наград рекомендуем изучить настройку LuckPerms - он нужен для управления временными группами через VotingPlugin. Защита игровых зон от гриферов описана в статье о WorldGuard и регионах. Если вы выбираете ядро для сервера, сравнение Paper, Purpur и других вариантов - в материале о ядрах Minecraft.

Заключение

Система голосования с наградами - один из немногих бесплатных инструментов продвижения, который работает на постоянной основе. NuVotifier надёжно принимает голоса с топов, VotingPlugin гибко настраивает награды под любую игровую концепцию: от простой выдачи ресурсов до временных привилегий за стрики и постоянных титулов за сотни голосов. Важно регистрировать сервер одновременно на нескольких топах - суммарный поток голосов будет выше, а стабильность не зависит от одного ресурса. Настройка занимает меньше часа, а результат виден в статистике активности уже через неделю.

Pterohost - игровой хостинг для Minecraft с NVMe-хранилищем, автоматическими бэкапами и круглосуточной поддержкой. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг