Скокни до содржината

Поставување NuVotifier на Paper, Velocity и BungeeCord

NuVotifier е делот помеѓу листата на сервери и твојот плагин за награди: листата се поврзува со него за секој глас, а тој го предава гласот на плагинот што ја дава наградата. Овој водич го поставува на еден Paper сервер и на Velocity или BungeeCord мрежа, а потоа сѐ проверува со тест-глас.

Ажурирано:

Како Votifier доставува глас

  1. Играч гласа за твојот сервер на некоја листа.
  2. Листата отвора TCP врска до твојот сервер на Votifier портата и го испраќа името на играчот, своето име на сервис, адреса и временска ознака.
  3. NuVotifier ја проверува пораката (RSA клуч за v1, токен за v2) и активира настан за глас.
  4. Плагин за награди како VotingPlugin го слуша тој настан и ја дава наградата.

Самиот NuVotifier не дава ништо. Доаѓа без никаков listener, па секогаш ти треба втор плагин за наградите.

Чекор 1: Инсталирај NuVotifier на Paper или Spigot

Стави го NuVotifier JAR-от во папката plugins и стартувај го серверот еднаш. Тој создава своја конфигурација, пар RSA клучеви и токен. Конзолата го печати токенот при првото стартување: Your default NuVotifier token is ….

plugins/Votifier/config.yml
host: 0.0.0.0
port: 8192
disable-v1-protocol: false
tokens:
  default: <generated token>
forwarding:
  method: none
  pluginMessaging:
    channel: nuvotifier:votes
  • host е адресата на која слуша NuVotifier. Стандардно ја зема IP-адресата за која е конфигуриран твојот сервер или 0.0.0.0 за сите интерфејси.
  • port е Votifier портата, стандардно 8192. Не смее да биде Minecraft портата.
  • tokens.default се користи за секоја листа, освен ако не додадеш токен под името на сервисот на некоја листа.
  • Клучевите за v1 се создаваат во plugins/Votifier/rsa/ како public.key и private.key.

Чекор 2: Направи ја портата достапна

Листите се поврзуваат од интернет, па Votifier портата мора да биде отворена за дојдовни TCP врски. Тука паѓаат повеќето поставувања.

  • Заеднички хостинг: многу панели ја отвораат само портата на играта. Додај дополнителна порта во панелот и стави го точно тој број во port. Некои хостинзи сами го доделуваат бројот.
  • Сопствен VPS или root сервер: дозволи ја портата во firewall-от, на пример ufw allow 8192/tcp.
  • Дома: препрати ја портата во рутерот кон машината на која работи серверот.

Рестартирај го серверот откако ќе ја смениш конфигурацијата. NuVotifier има и /nvreload, кој работи од конзолата.

Чекор 3: Избери v1 (јавен клуч) или v2 (токен)

Протокол v1Протокол v2
ТајнаПар RSA клучевиЗаеднички токен
Што ѝ треба на листатаСодржината на rsa/public.keyТокенот од tokens.default
ПоддршкаКласичен Votifier; повеќето листи го зборуваатNuVotifier и листите што го поддржуваат

Никогаш никому не му го давај private.key. Ако листата поддржува v2, токенот е поедноставниот избор: еден ред, без датотека со клуч. BestMCServerList ги поддржува двата, па избери што сакаш на твојата Votifier страница.

Задржи disable-v1-protocol: false на еден сервер. И самиот NuVotifier предупредува дека многу листи зборуваат само v1.

Чекор 4: Velocity или BungeeCord мрежи

На мрежа, листата се поврзува на проксито. NuVotifier работи на проксито и ги препраќа гласовите до бекенд серверите каде што е плагинот за награди. NuVotifier wiki препорачува plugin messaging за повеќето мрежи.

Прокси (Velocity)

plugins/nuvotifier/config.toml
host = "0.0.0.0"
port = 8192
disable-v1-protocol = false

[tokens]
default = "<generated token>"

[forwarding]
method = "pluginMessaging"

[forwarding.pluginMessaging]
channel = "nuvotifier:votes"
cache = "file"

На BungeeCord истите клучеви се во plugins/NuVotifier/config.yml во YAML форма. cache = "file" ги чува гласовите за играчите што се офлајн и ги доставува подоцна.

Секој бекенд сервер (Paper)

plugins/Votifier/config.yml
port: -1
forwarding:
  method: pluginMessaging
  pluginMessaging:
    channel: nuvotifier:votes

port: -1 го исклучува listener-от на бекендот, па само проксито прима гласови. Погрижи се бекендите да се достапни само преку проксито, инаку некој би можел да испраќа лажни гласови.

Другата опција, method = "proxy", ги испраќа гласовите од проксито до NuVotifier порта на секој бекенд, конфигурирана со адреса, порта и токен за секој сервер под [forwarding.proxy.<name>]. Нема кеш за гласови, па plugin messaging обично е подобар избор.

Чекор 5: Внеси ги податоците и испрати тест-глас

  1. Прво тестирај локално: /testvote Steve serviceName=BestMCServerList на Paper или /ptestvote со истите аргументи на проксито. Ако твојот плагин за награди реагира, внатрешниот дел работи.
  2. На BestMCServerList отвори го твојот сервер во контролната табла и оди на Votifier. Внеси ја јавната адреса на серверот или проксито, портата и токенот (v2) или јавниот клуч (v1), па зачувај.
  3. Притисни Испрати тест-глас. Испраќаме глас за TestVote што не се брои за рангирањето, а дневникот на испораки за неколку секунди покажува дали стигнал.

Гласовите од BestMCServerList го носат името на сервисот BestMCServerList. Bedrock играчите што влегуваат преку Geyser и Floodgate гласаат со своето име со префикс, на пример .Steve, и името стигнува до NuVotifier непроменето. Секое Minecraft име може да гласа еднаш по сервер во календарски ден, сметано по времето во Europe/Berlin.

Сѐ уште не си на листата? Прво додај го твојот сервер, па врати се на овој чекор.

Чести грешки и решенија

ПроблемШто да провериш
Connection refusedNuVotifier не работи или слуша на друга порта. Спореди ја портата во конфигурацијата со онаа што си ја внел.
Timed outFirewall или хостингот го фрла сообраќајот. Отвори ја портата за TCP или побарај дополнителна порта од хостингот.
Тестот стигнува, играчите не добиваат ништоНема плагин за награди. Конзолата пишува A vote was received, but you don't have any listeners available to listen for it.
Гласот е одбиен со v2Токенот не се совпаѓа. Копирај го tokens.default повторно, без празни места или наводници.
Работи на проксито, не на бекендотБекендот не е поставен на pluginMessaging или имињата на каналите се разликуваат.
Внесена е погрешна портаНаместо NuVotifier одговара Minecraft портата. Користи ја Votifier портата.

Штом гласовите стигнуваат, постави ги наградите: нашиот водич за награди за гласање со VotingPlugin ги покрива името на сервисот, VoteSites.yml и дневните ограничувања. За поширока слика, види како да добиеш играчи за нов сервер.

Често поставувани прашања

Која порта ја користи NuVotifier?

Стандардно портата 8192. Можеш да ја смениш во конфигурацијата, но мора да биде посебна порта од Minecraft портата и достапна од интернет преку TCP.

Каде да го најдам NuVotifier токенот?

Во plugins/Votifier/config.yml под tokens → default. Конзолата го печати и при првото стартување.

Дали ми треба NuVotifier на секој сервер од мојата мрежа?

Со plugin messaging, да: на проксито за да прима гласови и на секој бекенд со forwarding.method: pluginMessaging и port: -1 за да ги предава на плагинот за награди.

Дали да користам v1 или v2?

Користи v2 со токен кога листата го поддржува. v1 со RSA јавниот клуч постои за постари поставувања. BestMCServerList ги поддржува двата.

Дали NuVotifier сам дава награди?

Не. Тој само прима гласови. Плагин за награди како VotingPlugin мора да ги слуша.

Извори

Проверено според официјалната документација: