Preskoči na sadržaj

Podešavanje NuVotifier-a na Paper-u, Velocity-ju i BungeeCord-u

NuVotifier je karika između liste servera i tvog plugina za nagrade: lista se povezuje na njega za svaki glas, a on predaje glas pluginu koji daje nagradu. Ovaj vodič ga podešava na jednom Paper serveru i na Velocity ili BungeeCord mreži, a zatim sve proverava test glasom.

Ažurirano:

Kako Votifier isporučuje glas

  1. Igrač glasa za tvoj server na listi.
  2. Lista otvara TCP vezu ka tvom serveru na Votifier portu i šalje ime igrača, svoj service name, adresu i vremensku oznaku.
  3. NuVotifier proverava poruku (RSA ključ za v1, token za v2) i okida vote event.
  4. Plugin za nagrade kao što je VotingPlugin osluškuje taj event i daje nagradu.

NuVotifier sam ne daje ništa. Dolazi bez ijednog listenera, pa ti za nagrade uvek treba drugi plugin.

Korak 1: Instaliraj NuVotifier na Paper ili Spigot

Stavi NuVotifier JAR u plugins folder i jednom pokreni server. On pravi svoju konfiguraciju, par RSA ključeva i token. Konzola ispiše token pri prvom pokretanju: 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 je adresa na kojoj NuVotifier sluša. Podrazumevano uzima IP za koji je tvoj server podešen, ili 0.0.0.0 za sve interfejse.
  • port je Votifier port, podrazumevano 8192. Ne sme da bude Minecraft port.
  • tokens.default se koristi za svaku listu, osim ako ne dodaš token pod service name-om neke liste.
  • Ključevi za v1 se prave u plugins/Votifier/rsa/ kao public.key i private.key.

Korak 2: Učini port dostupnim

Liste se povezuju sa interneta, pa Votifier port mora da bude otvoren za dolazne TCP veze. Ovde pada većina podešavanja.

  • Deljeni hosting: mnogi paneli otvaraju samo port igre. Dodaj dodatni port u panelu i upiši tačno taj broj u port. Neki hostinzi sami dodele broj.
  • Sopstveni VPS ili root server: dozvoli port u firewall-u, na primer ufw allow 8192/tcp.
  • Kod kuće: prosledi port u ruteru na računar na kom radi server.

Restartuj server posle izmene konfiguracije. NuVotifier ima i /nvreload, koji radi iz konzole.

Korak 3: Izaberi v1 (javni ključ) ili v2 (token)

Protokol v1Protokol v2
TajnaPar RSA ključevaZajednički token
Šta treba listiSadržaj rsa/public.keyToken iz tokens.default
PodrškaKlasični Votifier; većina lista ga podržavaNuVotifier i liste koje ga podržavaju

Nikad nikome ne daj private.key. Ako lista podržava v2, token je jednostavniji izbor: jedan red, bez fajla sa ključem. BestMCServerList podržava oba, pa izaberi šta ti odgovara na svojoj Votifier stranici.

Na jednom serveru ostavi disable-v1-protocol: false. Sam NuVotifier upozorava da mnoge liste podržavaju samo v1.

Korak 4: Velocity ili BungeeCord mreže

Na mreži se lista povezuje na proxy. NuVotifier radi na proxy-ju i prosleđuje glasove backend serverima na kojima je plugin za nagrade. NuVotifier wiki za većinu mreža preporučuje plugin messaging.

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"

Na BungeeCord-u isti ključevi stoje u plugins/NuVotifier/config.yml u YAML obliku. cache = "file" čuva glasove igrača koji su offline i isporučuje ih kasnije.

Svaki backend server (Paper)

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

port: -1 isključuje listener na backendu, pa glasove prima samo proxy. Pobrini se da su ti backendi dostupni samo preko proxy-ja, inače bi neko mogao da šalje lažne glasove.

Druga opcija, method = "proxy", šalje glasove sa proxy-ja na NuVotifier port na svakom backendu, a podešava se adresom, portom i tokenom po serveru pod [forwarding.proxy.<name>]. Nema keš za glasove, pa je plugin messaging obično bolji izbor.

Korak 5: Unesi podatke i pošalji test glas

  1. Prvo testiraj lokalno: /testvote Steve serviceName=BestMCServerList na Paper-u ili /ptestvote sa istim argumentima na proxy-ju. Ako tvoj plugin za nagrade reaguje, unutrašnji deo radi.
  2. Na BestMCServerList otvori svoj server na kontrolnoj tabli i idi na Votifier. Unesi javnu adresu servera ili proxy-ja, port i token (v2) ili javni ključ (v1), pa sačuvaj.
  3. Pritisni Pošalji test glas. Šaljemo glas za TestVote koji se ne računa u rang listu, a log isporuke za par sekundi pokazuje da li je stigao.

Glasovi sa BestMCServerList nose service name BestMCServerList. Bedrock igrači koji ulaze preko Geyser-a i Floodgate-a glasaju sa imenom sa prefiksom, na primer .Steve, i to ime stiže do NuVotifier-a bez izmena. Svako Minecraft ime može da glasa jednom po serveru po kalendarskom danu, računato po vremenu Europe/Berlin.

Još nisi na listi? Prvo dodaj svoj server, pa se vrati na ovaj korak.

Česte greške i rešenja

ProblemŠta da proveriš
Connection refusedNuVotifier ne radi ili sluša na drugom portu. Uporedi port u konfiguraciji sa onim koji si uneo.
Timed outFirewall ili hosting odbacuje saobraćaj. Otvori port za TCP ili traži od hostinga dodatni port.
Test stiže, igrači ništa ne dobijajuNema plugina za nagrade. Konzola upisuje A vote was received, but you don't have any listeners available to listen for it.
Glas odbijen sa v2Token se ne poklapa. Ponovo kopiraj tokens.default, bez razmaka i navodnika.
Radi na proxy-ju, ne na backenduBackend nije podešen na pluginMessaging ili se imena kanala razlikuju.
Unet pogrešan portUmesto NuVotifier-a odgovara Minecraft port. Koristi Votifier port.

Kad glasovi počnu da stižu, podesi nagrade: naš vodič za nagrade za glasanje sa VotingPlugin-om pokriva service name, VoteSites.yml i dnevna ograničenja. Za širu sliku pogledaj kako da dobiješ igrače za novi server.

Česta pitanja

Koji port koristi NuVotifier?

Podrazumevano port 8192. Možeš da ga promeniš u konfiguraciji, ali mora da bude odvojen od Minecraft porta i dostupan sa interneta preko TCP-a.

Gde da nađem NuVotifier token?

U plugins/Votifier/config.yml pod tokens → default. Konzola ga ispiše i pri prvom pokretanju.

Da li mi treba NuVotifier na svakom serveru u mreži?

Sa plugin messaging-om, da: na proxy-ju da prima glasove, i na svakom backendu sa forwarding.method: pluginMessaging i port: -1 da ih preda pluginu za nagrade.

Da li da koristim v1 ili v2?

Koristi v2 sa tokenom kad ga lista podržava. v1 sa RSA javnim ključem postoji za starija podešavanja. BestMCServerList podržava oba.

Da li NuVotifier sam daje nagrade?

Ne. On samo prima glasove. Plugin za nagrade kao što je VotingPlugin mora da ih osluškuje.

Izvori

Provereno u zvaničnoj dokumentaciji: