Sari la conținut

Configurarea NuVotifier pe Paper, Velocity și BungeeCord

NuVotifier e piesa dintre o listă de servere și pluginul tău de recompense: lista se conectează la el pentru fiecare vot, iar el predă votul pluginului care dă recompensa. Ghidul ăsta îl configurează pe un singur server Paper și pe un network Velocity sau BungeeCord, apoi verifică totul cu un vot de test.

Actualizat:

Cum livrează Votifier un vot

  1. Un jucător îți votează serverul pe o listă.
  2. Lista deschide o conexiune TCP spre serverul tău pe portul Votifier și trimite numele jucătorului, propriul nume de serviciu, o adresă și un timestamp.
  3. NuVotifier verifică mesajul (cheie RSA pentru v1, token pentru v2) și declanșează un eveniment de vot.
  4. Un plugin de recompense, de exemplu VotingPlugin, ascultă acest eveniment și dă recompensa.

NuVotifier singur nu dă nimic. Vine fără niciun listener, așa că ai mereu nevoie de un al doilea plugin pentru recompense.

Pasul 1: Instalează NuVotifier pe Paper sau Spigot

Pune JAR-ul NuVotifier în folderul plugins și pornește serverul o dată. Își creează configul, o pereche de chei RSA și un token. Consola afișează tokenul la prima pornire: 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 e adresa pe care ascultă NuVotifier. Implicit ia IP-ul pentru care e configurat serverul tău sau 0.0.0.0 pentru toate interfețele.
  • port e portul Votifier, implicit 8192. Nu are voie să fie portul de Minecraft.
  • tokens.default e folosit pentru fiecare listă, dacă nu adaugi un token sub numele de serviciu al unei liste.
  • Cheile pentru v1 sunt create în plugins/Votifier/rsa/ ca public.key și private.key.

Pasul 2: Fă portul accesibil

Listele se conectează de pe internet, așa că portul Votifier trebuie să fie deschis pentru conexiuni TCP de intrare. Aici cad cele mai multe configurări.

  • Hosting partajat: multe panouri deschid doar portul jocului. Adaugă un port suplimentar în panou și pune exact acel număr în port. Unele hostinguri îți alocă ele numărul.
  • VPS sau server dedicat propriu: permite portul în firewall, de exemplu ufw allow 8192/tcp.
  • Acasă: fă port forwarding în router spre mașina care rulează serverul.

Repornește serverul după ce schimbi configul. NuVotifier are și /nvreload, care rulează din consolă.

Pasul 3: Alege v1 (cheie publică) sau v2 (token)

Protocolul v1Protocolul v2
SecretPereche de chei RSAToken comun
De ce are nevoie listaConținutul fișierului rsa/public.keyTokenul din tokens.default
SuportVotifier clasic; majoritatea listelor îl vorbescNuVotifier și listele care îl suportă

Nu da nimănui niciodată private.key. Dacă o listă suportă v2, tokenul e alegerea mai simplă: un rând, fără fișier de cheie. BestMCServerList le suportă pe amândouă, așa că alege ce preferi pe pagina ta Votifier.

Ține disable-v1-protocol: false pe un singur server. NuVotifier însuși avertizează că multe liste vorbesc doar v1.

Pasul 4: Networkuri Velocity sau BungeeCord

Într-un network, lista se conectează la proxy. NuVotifier rulează pe proxy și trimite voturile mai departe la serverele backend, unde stă pluginul de recompense. Wiki-ul NuVotifier recomandă plugin messaging pentru majoritatea networkurilor.

Proxy (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"

Pe BungeeCord aceleași chei stau în plugins/NuVotifier/config.yml, în format YAML. cache = "file" păstrează voturile pentru jucătorii offline și le livrează mai târziu.

Fiecare server backend (Paper)

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

port: -1 oprește listenerul pe backend, așa că doar proxyul primește voturi. Asigură-te că backendurile sunt accesibile doar prin proxy, altfel cineva ar putea trimite voturi false.

Cealaltă opțiune, method = "proxy", trimite voturile de la proxy către un port NuVotifier de pe fiecare backend, configurat cu adresă, port și token pentru fiecare server la [forwarding.proxy.<name>]. Nu are cache pentru voturi, așa că plugin messaging se potrivește de obicei mai bine.

Pasul 5: Introdu datele și trimite un vot de test

  1. Testează mai întâi local: /testvote Steve serviceName=BestMCServerList pe Paper sau /ptestvote cu aceleași argumente pe proxy. Dacă pluginul de recompense reacționează, partea din interior funcționează.
  2. Pe BestMCServerList, deschide serverul în panou și mergi la Votifier. Introdu adresa publică a serverului sau a proxyului, portul și tokenul (v2) sau cheia publică (v1), apoi salvează.
  3. Apasă Trimite un vot de test. Trimitem un vot pentru TestVote care nu contează în clasament, iar logul de livrare arată în câteva secunde dacă a ajuns.

Voturile de la BestMCServerList au numele de serviciu BestMCServerList. Jucătorii Bedrock care intră prin Geyser și Floodgate votează cu numele cu prefix, de exemplu .Steve, iar numele ajunge la NuVotifier neschimbat. Fiecare nume de Minecraft poate vota o dată pe server și pe zi calendaristică, după ora Europe/Berlin.

Nu ești încă listat? Adaugă-ți serverul mai întâi, apoi revino la pasul ăsta.

Erori frecvente și soluții

ProblemăCe verifici
Connection refusedNuVotifier nu rulează sau ascultă pe alt port. Compară portul din config cu ce ai introdus.
Timed outUn firewall sau hostingul blochează traficul. Deschide portul pentru TCP sau cere hostingului un port suplimentar.
Testul ajunge, jucătorii nu primesc nimicLipsește pluginul de recompense. Consola scrie A vote was received, but you don't have any listeners available to listen for it.
Vot respins cu v2Tokenul nu se potrivește. Copiază din nou tokens.default, fără spații sau ghilimele.
Merge pe proxy, nu și pe backendBackendul nu e setat pe pluginMessaging sau numele canalelor diferă.
Port greșit introdusRăspunde portul de Minecraft în loc de NuVotifier. Folosește portul Votifier.

După ce voturile ajung, configurează recompensele: ghidul nostru despre recompense de vot cu VotingPlugin acoperă numele de serviciu, VoteSites.yml și limitele zilnice. Pentru imaginea de ansamblu, vezi cum aduci jucători pe un server nou.

Întrebări frecvente

Ce port folosește NuVotifier?

Implicit portul 8192. Îl poți schimba în config, dar trebuie să fie un port separat de cel de Minecraft și accesibil de pe internet prin TCP.

Unde găsesc tokenul NuVotifier?

În plugins/Votifier/config.yml, la tokens → default. Consola îl afișează și la prima pornire.

Am nevoie de NuVotifier pe fiecare server din network?

Cu plugin messaging, da: pe proxy ca să primească voturile și pe fiecare backend cu forwarding.method: pluginMessaging și port: -1, ca să le predea pluginului de recompense.

Folosesc v1 sau v2?

Folosește v2 cu token când lista îl suportă. v1 cu cheia publică RSA există pentru configurările mai vechi. BestMCServerList le suportă pe amândouă.

Dă NuVotifier recompense singur?

Nu. Doar primește voturile. Un plugin de recompense, de exemplu VotingPlugin, trebuie să le asculte.

Surse

Verificat după documentația oficială: