Minecraft: мониторинги серверов и голосование с наградой
Как попасть в каталоги серверов Minecraft, подключить голосование через плагин-приёмник и не получить накрутку и выдачу наград без голосов.
Содержание 18
- Коротко
- Как работает цепочка
- Шаг 1. Поставьте приёмник и слушатель
- Шаг 2. Выберите и откройте порт
- Шаг 3. Передайте ключ мониторингу
- Шаг 4. Настройте награду в слушателе
- Шаг 5. Проверьте тестовым голосом
- Прокси: BungeeCord и Velocity
- Как сделать в панели EGN
- Симптом → причина → решение
- Частые ошибки
- Итог
- Вопросы и ответы
- Какой плагин нужен для голосования за Minecraft-сервер?
- На какой порт отправляются голоса?
- Какой ключ вводить на мониторинге?
- Можно ли награждать предметами?
- Что делать, если голоса не приходят?
Мониторинги серверов Minecraft — это каталоги, где игрок ищет сервер по версии, режиму и онлайну. Голосование на них даёт регулярные заходы: игрок проголосовал, получил награду и вернулся посмотреть, что нового. Звучит просто, но владельцы часто ломают цепочку в одном из звеньев: ставят только приёмник и удивляются, почему нет награды, или вводят на мониторинге не тот ключ.
Разберём, как путь от клика до предмета устроен на самом деле, что для него нужно поставить на Paper, как открыть порт в панели EGN и как проверить цепочку.
Коротко
Голосование за Minecraft-сервер строится из двух плагинов. Приёмник NuVotifier принимает сигнал от мониторинга (по умолчанию на порту 8192, значение port в его конфиге). Награду выдаёт отдельный слушатель голосов, например SuperbVote или VotingPlugin: сам NuVotifier слушателей не содержит. Публичный ключ или токен берёте у NuVotifier и вводите на мониторинге, порт открываете в разделе «Сеть» и проверяете цепочку тестовым голосом.
Как работает цепочка
Игрок нажимает «Проголосовать» на странице мониторинга. Мониторинг записывает голос (ник и время) и подключается к вашему серверу по адресу и порту приёмника. NuVotifier проверяет подпись голоса и генерирует событие. Слушатель, подписанный на это событие, выполняет команды награды.
Звеньев четыре, и каждое может сломаться отдельно: мониторинг, порт, приёмник, слушатель. В официальном руководстве по неполадкам NuVotifier есть важная оговорка. Протокол Votifier v1 не умеет сообщать об ошибках, и многие мониторинги показывают «голос принят», даже если соединиться с сервером не удалось. Поэтому галочка на странице мониторинга ничего не доказывает: проверять нужно по консоли своего сервера.
Мониторинги бывают трёх типов по пользе. Общий каталог даёт поток новых игроков. Голосование с наградой даёт регулярные возвраты. Страница с онлайном даёт доверие: игрок видит, что цифры честные.
Шаг 1. Поставьте приёмник и слушатель
NuVotifier работает на Bukkit, Spigot, Paper (с 1.7.10), а также на BungeeCord и Velocity. В панели EGN его ставят так же, как любой плагин: раздел «Моды и плагины», поиск, установка и перезапуск. Если плагина нет в каталоге, скачайте jar с GitHub или SpigotMC проекта и загрузите в папку plugins/ через «Файлы».
Затем нужен слушатель. Вики NuVotifier называет известные варианты для Bukkit-серверов: SuperbVote, VotingPlugin, а также платные UltimateVotes и VoteParty. Без слушателя в консоли будет строка о полученном голосе, но ничего не произойдёт, и это самая частая причина жалоб «голос есть, награды нет».
Ставьте один приёмник. Два плагина, которые пытаются занять один порт, будут мешать друг другу.
Шаг 2. Выберите и откройте порт
NuVotifier создаёт config.yml в своей папке внутри plugins/ при первом запуске. Главные поля там такие:
# Фрагмент конфигурации NuVotifier для Bukkit/Paper
host: 0.0.0.0 # на каком адресе слушать
port: 8192 # порт для голосов (по умолчанию 8192)
disable-v1-protocol: false
tokens:
default: ВАШ_ТОКЕН # секретная строка для протокола v2Порт для голосов обязан отличаться от игрового порта сервера и не быть занятым другим сервисом. Это прямо сказано в руководстве проекта.
В новой панели EGN порт не нужно искать вручную. Раздел «Сеть» знает NuVotifier (порт 8192 в списке узнаваемых плагинов) и сам прописывает выданный серверу порт в его конфиг. Конфиг у такого плагина появляется после первого запуска, поэтому порядок такой: запустите сервер с плагином, откройте «Сеть», нажмите «Выдать порт», затем перезапустите сервер ещё раз. Панель дописывает порт в конфиг фоновой синхронизацией (раз в две минуты), так что после выдачи порта подождите и перезапустите. Узнать итоговый адрес можно в той же «Сети»: он выглядит как адрес узла и номер порта.
Число портов ограничено тарифом. Если лимит исчерпан, «Сеть» покажет сообщение и кнопку «Докупить порт» (она доступна владельцу), а другу, у которого есть доступ к серверу, подскажет попросить владельца.
Не открывайте лишнегоПриёмник принимает соединения из интернета. Открывайте только порт, нужный плагину, и ничего сверх этого.
Шаг 3. Передайте ключ мониторингу
Здесь направление обратное тому, как это часто пишут. Ключ выдаёт не мониторинг, а ваш приёмник, и вы вводите его на мониторинге.
В вики NuVotifier различаются два понятия:
- Ключ (key) — старые RSA-ключи Votifier. Они лежат в папке
rsa/плагина:public.keyиprivate.key. Публичный ключ можно показывать мониторингам, приватный нужно хранить в тайне, и разделять пару нельзя. - Токен (token) — короткая секретная строка протокола v2. Её отдают только тем мониторингам, которые поддерживают NuVotifier (уточняйте у самого мониторинга).
Большинство мониторингов до сих пор работают по протоколу v1 и просят адрес, порт и публичный ключ. Содержимое public.key целиком вставляется в форму сервера на мониторинге. Если ключ на мониторинге не совпадает с ключом на сервере, в консоли появится ошибка Could not decrypt data (is your key correct?).
Приватный ключ и токен не публикуйте в чатах, в Discord и на скриншотах.
Шаг 4. Настройте награду в слушателе
Награда выдаётся по событию голоса. Её нельзя привязывать к входу игрока или к команде, которую может вызвать любой.
Пример для SuperbVote. В его config.yml награды лежат в списке rewards, а в командах работает подстановка %player%:
rewards:
- commands:
- "give %player% diamond 1"
player-message: "&aСпасибо за голос! Вы получили алмаз."Команду и награду подставьте свои: если у вас есть экономика, заменяйте на её команду выдачи. Точный синтаксис условий и сообщений смотрите в вики SuperbVote для вашей версии.
Тестовые голоса могут выдавать наградыВ конфиге SuperbVote есть параметр
votes.process-fake-votes, и в стандартном конфиге он равенtrue. Это значит, что тестовый голос от мониторинга обрабатывается как настоящий. Для проверки это удобно, но не оставляйте такой режим навсегда: тестовые голоса не должны превращаться в награды для случайных ников.
Интервал между голосами с одного мониторинга в SuperbVote задаётся параметром votes.cooldown-per-service (по умолчанию 3600 секунд, то есть час). Это защита от повторов на стороне вашего сервера, и она работает независимо от правил мониторинга.
Шаг 5. Проверьте тестовым голосом
Многие мониторинги позволяют отправить тестовый голос со страницы управления сервером. Отправьте его и откройте «Консоль» панели: строка о полученном голосе должна появиться сразу. Если строки нет, смотрите порт, адрес и ключ. Если строка есть, а награды нет, проблема в слушателе.
Прокси: BungeeCord и Velocity
Если у вас сеть серверов с прокси, NuVotifier ставят и на прокси, и на каждый сервер, который обрабатывает голоса. Наружу смотрит NuVotifier на прокси, он получает голос от мониторинга и пересылает его дальше. В вики проекта для пересылки рекомендуется режим pluginMessaging (в конфиге forwarding.method), он проще и функциональнее режима proxy. Устройство сети разобрано в статье Velocity: сеть серверов.
Как сделать в панели EGN
Все действия делаются в панели, SSH не нужен.
- Откройте сервер, раздел «Моды и плагины», вкладка «Каталог» или загрузка jar через «Файлы».
- На вкладке «Установлено» видны плагины в папке
plugins/и пометки: доступные обновления и проблемы. Предупреждения о версии появляются до установки, а не после падения. - Перезапустите сервер кнопкой в шапке раздела.
- В «Сеть» выдайте порт плагину и проверьте статус кнопкой «Проверить».
- Отправьте тестовый голос и смотрите «Консоль».
При обновлении или удалении плагина старый файл не стирается: он уходит во вкладку «История и откат» (панель хранит двенадцать последних заданий), и его можно вернуть кнопкой. Это спасает, если новая версия слушателя сломала награды.
Если сервер перестал стартовать после установки плагина, откройте «Доктор сервера» на странице консоли. Он разбирает падения запуска: Java, зависимости модов, EULA. Доставку голосов он не проверяет, для неё остаются консоль и «Сеть».
Симптом → причина → решение
| Симптом | Причина | Решение |
|---|---|---|
| Голос на мониторинге принят, в консоли тишина | Порт закрыт, адрес или порт указаны неверно, приёмник не запустился | В «Сеть» нажмите «Проверить», сверьте порт с конфигом NuVotifier, посмотрите лог запуска |
| В консоли строка о голосе, награды нет | Нет слушателя или в команде ошибка | Установите SuperbVote или VotingPlugin и проверьте команду |
Could not decrypt data |
Публичный ключ на мониторинге не тот | Вставьте на мониторинге содержимое rsa/public.key с этого сервера |
| Порт не выдаётся | Лимит портов тарифа исчерпан | «Докупить порт» в «Сеть» или освободите ненужный порт |
Address already in use |
Порт занят другим плагином | Смените port в конфиге NuVotifier и выдайте этот порт в «Сеть» |
| Награда за тестовые голоса | В слушателе включена обработка тестовых голосов | Отключите её после проверки |
| Приёмник не включился после обновления Paper | Версия плагина не подходит | Обновите плагин или откатите из «Истории и отката» |
Частые ошибки
- Ставят только NuVotifier. Он голос принимает, но награду не выдаёт.
- Вводят ключ мониторинга в сервер. Направление обратное: публичный ключ сервера вводят на мониторинге.
- Верят галочке «голос принят». Для протокола v1 она ничего не гарантирует, смотрите консоль.
- Порт Votifier совпадает с игровым. Они должны различаться.
- Выдают награду за вход. Тогда голоса и награды не связаны.
- Накручивают голоса вручную. Правила мониторингов обычно запрещают накрутку, и за неё можно потерять место в каталоге. Читайте правила конкретного мониторинга: у каждого они свои.
Итог
Голосование за сервер работает, когда налажены все звенья: мониторинг, открытый порт, NuVotifier, слушатель и награда по событию. Проверяйте цепочку тестовым голосом и консолью, а не галочкой на сайте. Награды за голоса не должны продаваться за деньги отдельно, иначе вы попадаете в область правил монетизации: они разобраны в статье Донат и монетизация Minecraft-сервера. Для привлечения игроков в целом смотрите раскрутку сервера с нуля.
Вопросы и ответы
Какой плагин нужен для голосования за Minecraft-сервер?
Два: приёмник NuVotifier и слушатель голосов, например SuperbVote или VotingPlugin. Сам NuVotifier награды не выдаёт, это отмечено в его документации.
На какой порт отправляются голоса?
По умолчанию NuVotifier слушает порт 8192. Значение хранится в config.yml плагина в поле port и должно отличаться от игрового порта. В новой панели EGN порт выдаётся в разделе «Сеть».
Какой ключ вводить на мониторинге?
Содержимое файла rsa/public.key из папки NuVotifier или токен, если мониторинг поддерживает протокол v2. Приватный ключ никому не передают.
Можно ли награждать предметами?
Да. Награда за голос не является донатом, но если те же предметы одновременно продаются за деньги, действуют правила монетизации Mojang.
Что делать, если голоса не приходят?
Проверьте, что сервер запущен, порт выдан в «Сеть» и совпадает с конфигом и с настройками мониторинга, а ключ введён правильно. Затем отправьте тестовый голос и читайте консоль.
Сервер под Minecraft за пару минут — egnetwork.ru
Читать далее
Вся рубрика →Bedrock-сервер Minecraft: отличия от Java и настройка для телефонов и консолей
Чем Bedrock-сервер отличается от Java, какие порты он использует, как пустить Bedrock-игроков на Java-сервер через Geyser и Floodgate.
Чек-лист оптимизации Minecraft-сервера: 10 шагов от первого замера до стабильного MSPT
Пошаговый чек-лист для сервера Minecraft в панели EGN: замер MSPT, память, дальность, Chunky, расписание перезапуска, бэкапы и проверка после каждого изменения.
Почему лагает Minecraft-сервер при 10 игроках и что с этим делать
Типичные причины лагов на сервере на 10 игроков: процессор, память, диск, дальность и фермы. Как понять, что именно тормозит, и какие шаги в панели EGN помогают.