Hopp til innholdet

Sette opp NuVotifier på Paper, Velocity og BungeeCord

NuVotifier er leddet mellom en serverliste og belønningspluginet ditt: listen kobler seg til det for hver stemme, og det sender stemmen videre til pluginet som deler ut belønningen. Denne guiden setter det opp på en enkelt Paper-server og på et Velocity- eller BungeeCord-nettverk, og sjekker deretter alt med en teststemme.

Oppdatert:

Slik leverer Votifier en stemme

  1. En spiller stemmer på serveren din på en liste.
  2. Listen åpner en TCP-tilkobling til serveren din på Votifier-porten og sender spillernavnet, sitt eget tjenestenavn, en adresse og et tidsstempel.
  3. NuVotifier sjekker meldingen (RSA-nøkkel for v1, token for v2) og utløser et vote event.
  4. Et belønningsplugin som VotingPlugin lytter etter det eventet og deler ut belønningen.

NuVotifier gir ikke noe selv. Det kommer uten noen listener, så du trenger alltid et plugin til for belønningene.

Steg 1: Installer NuVotifier på Paper eller Spigot

Legg NuVotifier-JAR-en i mappen plugins og start serveren én gang. Det oppretter configen sin, et RSA-nøkkelpar og et token. Konsollen skriver ut tokenet ved første oppstart: 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 er adressen NuVotifier lytter på. Som standard tar det IP-en serveren din er satt opp med, eller 0.0.0.0 for alle grensesnitt.
  • port er Votifier-porten, 8192 som standard. Den kan ikke være Minecraft-porten.
  • tokens.default brukes for alle lister, med mindre du legger til et token under tjenestenavnet til en liste.
  • Nøklene for v1 opprettes i plugins/Votifier/rsa/ som public.key og private.key.

Steg 2: Gjør porten tilgjengelig

Lister kobler til fra internett, så Votifier-porten må være åpen for innkommende TCP-tilkoblinger. Det er her de fleste oppsett feiler.

  • Delt hosting: mange paneler åpner bare spillporten. Legg til en ekstra port i panelet og skriv nøyaktig det nummeret i port. Noen hoster tildeler nummeret for deg.
  • Egen VPS eller rotserver: tillat porten i brannmuren, for eksempel ufw allow 8192/tcp.
  • Hjemme: videresend porten i ruteren til maskinen som kjører serveren.

Start serveren på nytt etter at du har endret configen. NuVotifier har også /nvreload, som kan kjøres fra konsollen.

Steg 3: Velg v1 (offentlig nøkkel) eller v2 (token)

Protokoll v1Protokoll v2
HemmelighetRSA-nøkkelparDelt token
Det listen trengerInnholdet i rsa/public.keyTokenet fra tokens.default
StøtteKlassisk Votifier; de fleste lister snakker detNuVotifier og lister som støtter det

Gi aldri private.key til noen. Støtter en liste v2, er tokenet det enkleste valget: én linje, ingen nøkkelfil. BestMCServerList støtter begge, så velg det du foretrekker på Votifier-siden din.

Behold disable-v1-protocol: false på en enkelt server. NuVotifier advarer selv om at mange lister bare snakker v1.

Steg 4: Velocity- eller BungeeCord-nettverk

I et nettverk kobler listen seg til proxyen. NuVotifier kjører på proxyen og sender stemmene videre til backend-serverne der belønningspluginet ligger. NuVotifier-wikien anbefaler plugin messaging for de fleste nettverk.

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"

På BungeeCord ligger de samme nøklene i plugins/NuVotifier/config.yml i YAML-form. cache = "file" tar vare på stemmer for spillere som er offline, og leverer dem senere.

Hver backend-server (Paper)

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

port: -1 slår av listeneren på backenden, så bare proxyen tar imot stemmer. Sørg for at backendene dine bare kan nås gjennom proxyen, ellers kan noen sende falske stemmer.

Det andre alternativet, method = "proxy", sender stemmer fra proxyen til en NuVotifier-port på hver backend, satt opp med adresse, port og token per server under [forwarding.proxy.<name>]. Det har ingen stemmecache, så plugin messaging passer som regel bedre.

Steg 5: Skriv inn detaljene og send en teststemme

  1. Test lokalt først: /testvote Steve serviceName=BestMCServerList på Paper, eller /ptestvote med de samme argumentene på proxyen. Reagerer belønningspluginet ditt, fungerer den interne delen.
  2. På BestMCServerList åpner du serveren din i dashbordet og går til Votifier. Skriv inn den offentlige adressen til serveren eller proxyen, porten og tokenet (v2) eller den offentlige nøkkelen (v1), og lagre.
  3. Trykk på Send teststemme. Vi sender en stemme for TestVote som ikke teller på rangeringen, og leveringsloggen viser i løpet av sekunder om den kom fram.

Stemmer fra BestMCServerList har tjenestenavnet BestMCServerList. Bedrock-spillere som kobler til via Geyser og Floodgate, stemmer med navnet sitt med prefiks, for eksempel .Steve, og navnet når NuVotifier uendret. Hvert Minecraft-navn kan stemme én gang per server per kalenderdag, regnet i Europe/Berlin-tid.

Står du ikke på listen ennå? Legg til serveren din først, og kom så tilbake til dette steget.

Vanlige feil og løsninger

ProblemDette bør du sjekke
Connection refusedNuVotifier kjører ikke eller lytter på en annen port. Sammenlign porten i configen med den du skrev inn.
Timed outEn brannmur eller hosten forkaster trafikken. Åpne porten for TCP eller be hosten om en ekstra port.
Testen kommer fram, men spillerne får ingentingIngen belønningsplugin. Konsollen logger A vote was received, but you don't have any listeners available to listen for it.
Stemmen avvises med v2Tokenet stemmer ikke. Kopier tokens.default på nytt, uten mellomrom eller anførselstegn.
Fungerer på proxyen, ikke på backendenBackenden er ikke satt til pluginMessaging, eller kanalnavnene er forskjellige.
Feil port skrevet innMinecraft-porten svarer i stedet for NuVotifier. Bruk Votifier-porten.

Når stemmene kommer fram, setter du opp belønningene: guiden vår til stemmebelønninger med VotingPlugin dekker tjenestenavnet, VoteSites.yml og daglige grenser. For det store bildet kan du se hvordan du får spillere til en ny server.

Ofte stilte spørsmål

Hvilken port bruker NuVotifier?

Port 8192 som standard. Du kan endre den i configen, men den må være en annen port enn Minecraft-porten og kunne nås fra internett over TCP.

Hvor finner jeg NuVotifier-tokenet?

I plugins/Votifier/config.yml under tokens → default. Konsollen skriver det også ut ved første oppstart.

Trenger jeg NuVotifier på alle serverne i nettverket mitt?

Med plugin messaging, ja: på proxyen for å ta imot stemmer, og på hver backend med forwarding.method: pluginMessaging og port: -1 for å sende dem videre til belønningspluginet.

Bør jeg bruke v1 eller v2?

Bruk v2 med token når listen støtter det. v1 med den offentlige RSA-nøkkelen finnes for eldre oppsett. BestMCServerList støtter begge.

Gir NuVotifier belønninger selv?

Nei. Det tar bare imot stemmer. Et belønningsplugin som VotingPlugin må lytte etter dem.

Kilder

Kontrollert mot den offisielle dokumentasjonen: