Com entrega Votifier un vot
- Un jugador vota pel teu servidor en una llista.
- La llista obre una connexió TCP amb el teu servidor al port de Votifier i envia el nom del jugador, el seu propi nom de servei, una adreça i una marca de temps.
- NuVotifier comprova el missatge (clau RSA a v1, token a v2) i llança un esdeveniment de vot.
- Un plugin de recompenses com VotingPlugin escolta aquest esdeveniment i dona la recompensa.
NuVotifier tot sol no dona res. Ve sense cap listener, així que sempre necessites un segon plugin per a les recompenses.
Pas 1: instal·lar NuVotifier a Paper o Spigot
Posa el JAR de NuVotifier a la carpeta plugins i arrenca el servidor una vegada. Crea la seva configuració, un parell de claus RSA i un token. La consola mostra el token en la primera arrencada: Your default NuVotifier token is ….
host: 0.0.0.0
port: 8192
disable-v1-protocol: false
tokens:
default: <generated token>
forwarding:
method: none
pluginMessaging:
channel: nuvotifier:voteshostés l’adreça on escolta NuVotifier. Per defecte agafa la IP configurada al teu servidor, o0.0.0.0per a totes les interfícies.portés el port de Votifier,8192per defecte. No pot ser el port de Minecraft.tokens.defaultes fa servir per a totes les llistes, tret que afegeixis un token sota el nom de servei d’una llista.- Les claus per a v1 es creen a
plugins/Votifier/rsa/com apublic.keyiprivate.key.
Pas 2: fer accessible el port de Votifier
Les llistes es connecten des d’internet, així que el port de Votifier ha d’estar obert a connexions TCP entrants. Aquí és on fallen la majoria de configuracions.
- Hosting compartit: molts panells només obren el port del joc. Afegeix un port extra al panell i posa exactament aquest número a
port. Alguns hostings t’assignen el número. - VPS o servidor dedicat propi: permet el port al tallafoc, per exemple
ufw allow 8192/tcp. - A casa: redirigeix el port al teu router cap a l’ordinador on funciona el servidor.
Reinicia el servidor després de canviar la configuració. NuVotifier també té /nvreload, que s’executa des de la consola.
Pas 3: triar v1 (clau pública) o v2 (token)
| Protocol v1 | Protocol v2 | |
|---|---|---|
| Secret | Parell de claus RSA | Token compartit |
| Què necessita la llista | Contingut de rsa/public.key | El token de tokens.default |
| Compatibilitat | Votifier clàssic; la majoria de llistes el fan servir | NuVotifier i les llistes que l’admeten |
No donis mai a ningú private.key. Si una llista admet v2, el token és l’opció més senzilla: una línia, sense fitxer de clau. BestMCServerList admet totes dues, així que tria la que prefereixis a la teva pàgina de Votifier.
Deixa disable-v1-protocol: false en un servidor únic. El mateix NuVotifier avisa que moltes llistes només parlen v1.
Pas 4: Votifier amb Velocity o BungeeCord
En una xarxa, la llista es connecta al proxy. NuVotifier funciona al proxy i reenvia els vots als servidors backend, on és el plugin de recompenses. La wiki de NuVotifier recomana plugin messaging per a la majoria de xarxes.
Proxy (Velocity)
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"A BungeeCord les mateixes claus són a plugins/NuVotifier/config.yml, en format YAML. cache = "file" desa els vots dels jugadors desconnectats i els entrega més tard.
Cada servidor backend (Paper)
port: -1
forwarding:
method: pluginMessaging
pluginMessaging:
channel: nuvotifier:votesport: -1 desactiva el listener al backend, així que només el proxy rep vots. Assegura’t que els teus backends només siguin accessibles a través del proxy, o algú podria enviar vots falsos.
L’altra opció, method = "proxy", envia els vots des del proxy a un port de NuVotifier a cada backend, configurat amb adreça, port i token per servidor sota [forwarding.proxy.<name>]. No té memòria cau de vots, així que plugin messaging sol encaixar millor.
Pas 5: introduir les dades i enviar un vot de prova
- Prova primer en local:
/testvote Steve serviceName=BestMCServerLista Paper, o/ptestvoteamb els mateixos arguments al proxy. Si el teu plugin de recompenses reacciona, la part interna funciona. - A BestMCServerList, obre el teu servidor al tauler i ves a Votifier. Escriu l’adreça pública del servidor o del proxy, el port i el token (v2) o la clau pública (v1), i desa.
- Prem Envia un vot de prova. Enviem un vot per a
TestVoteque no compta per al rànquing, i el registre d’entregues mostra en segons si ha arribat.
Els vots de BestMCServerList porten el nom de servei BestMCServerList. Els jugadors de Bedrock que entren amb Geyser i Floodgate voten amb el seu nom amb prefix, per exemple .Steve, i el nom arriba a NuVotifier sense canvis. Cada nom de Minecraft pot votar una vegada per servidor i dia natural, comptat en horari d’Europe/Berlin.
Encara no ets a la llista? Primer afegeix el teu servidor i després torna a aquest pas.
Errors freqüents i solucions
| Problema | Què cal revisar |
|---|---|
| Connexió rebutjada | NuVotifier no funciona o escolta en un altre port. Compara el port de la configuració amb el que has introduït. |
| Temps d’espera esgotat | Un tallafoc o el hosting bloqueja el trànsit. Obre el port per a TCP o demana un port extra al teu hosting. |
| La prova arriba, els jugadors no reben res | No hi ha plugin de recompenses. La consola registra A vote was received, but you don't have any listeners available to listen for it. |
| Vot rebutjat amb v2 | El token no coincideix. Torna a copiar tokens.default, sense espais ni cometes. |
| Funciona al proxy, no al backend | El backend no està a pluginMessaging, o els noms de canal no coincideixen. |
| Port equivocat | Respon el port de Minecraft en lloc de NuVotifier. Fes servir el port de Votifier. |
Quan arribin els vots, configura les recompenses: la nostra guia de recompenses per votar amb VotingPlugin explica el nom de servei, VoteSites.yml i els límits diaris. Per veure el panorama complet, llegeix com aconseguir jugadors per a un servidor nou.