Cum configurezi recompensele de vot (Votifier, VotingPlugin și altele)

Instalați plugin-ul însoțitor, configurați Votifier pentru livrare instantanee, sau conectați VotingPlugin, SuperVotes ori SuperbVote la acest site - cu exact valorile pe care acest site chiar le așteaptă.

Orice plugin de recompense are nevoie de două lucruri de la dumneavoastră: o modalitate de a afla că s-a votat și ceva de rulat atunci când se întâmplă acest lucru. Acest articol trece prin ambele - plugin-ul însoțitor publicat de acest site, Votifier pentru livrare instantanee, și ce este de făcut dacă folosiți deja VotingPlugin, SuperVotes sau alt plugin de recompense.

Opțiunea A: plugin-ul VoxelRank (recomandat)

Plugin-ul însoțitor comunică direct cu API-ul acestui site. Votifier nu este necesar - funcționează interogând periodic voturile neridicate, deci funcționează și în spatele unui NAT și recuperează tot ce a fost ratat cât timp serverul a fost oprit. Votifier este de asemenea disponibil, ca supliment opțional pentru livrare instantanee (vezi Opțiunea B).

  1. Descărcați fișierul jar din Tabloul de bord (cardul serverului dumneavoastră are un buton de descărcare de îndată ce există un build), sau direct de la /download/plugin.
  2. Puneți-l în plugins/ și porniți serverul o singură dată. Astfel se generează plugins/VotingSite/config.yml.
  3. Deschideți pagina Editează a serverului dumneavoastră → fila Recompense și vot și copiați cheia API afișată acolo.
  4. Lipiți-o la site.api-key în config.yml (verificați și că site.url indică spre acest site), apoi rulați /votingsite reload.
  5. Decideți cum trebuie să ajungă voturile la dumneavoastră, setând mode în config.yml:
    • poll (implicit) - plugin-ul preia singur voturile neridicate. Nu mai este nevoie să instalați altceva.
    • votifier - site-ul trimite fiecare vot în momentul în care este emis. Necesită NuVotifier sau alt listener Votifier (Opțiunea B mai jos).
    • both - trimitere Votifier cu interogarea ca plasă de siguranță, fără duplicate datorită id-ului votului.
  6. Completați rewards.commands (și, dacă doriți, milestones și vote-party) cu comenzile de consolă care trebuie să ruleze la un vot.
  7. Testați: /votingsite testvote <player> simulează un vot fără a aștepta unul real. /votingsite status arată modul, dacă cheia API este acceptată și câte voturi au fost livrate până acum.

Jucătorii primesc linkul de vot și numărul lor de voturi cu /voxelrank vote - nu cu /vote, pe care acest plugin nu îl revendică niciodată în mod deliberat (două plugin-uri care se luptă pentru aceeași comandă sunt exact modul în care o recompensă încetează să funcționeze pe neobservate - vedeți nota dedicată din config.yml).

Opțiunea B: livrare instantanee cu NuVotifier

Săriți peste această secțiune dacă modul poll funcționează deja suficient de bine pentru dumneavoastră - nu este obligatoriu. Adăugați-l atunci când contează cele câteva minute de întârziere ale interogării, sau când preferați să rulați un plugin de recompense dedicat în locul celui al acestui site.

NuVotifier este fork-ul întreținut activ al Votifier-ului original - proiectul original este practic neîntreținut astăzi, așa că „instalarea Votifier" înseamnă în practică instalarea NuVotifier (sau a unui fork compatibil precum VotifierPlus).

  1. Puneți fișierul jar al NuVotifier în plugins/ și reporniți serverul. Pe un server Bukkit/Spigot/Paper păstrează numele clasic de folder plugins/Votifier/ din motive de compatibilitate retroactivă - este propriul folder al NuVotifier, nu o rămășiță a plugin-ului vechi - și generează în interior, la prima pornire, un config.yml plus o pereche de chei în rsa/.
  2. Obțineți datele de acces din plugins/Votifier/config.yml: token-ul v2 (recomandat) este generat automat sub cheia default din secțiunea tokens: - copiați-l exact așa cum este. Dacă preferați metoda mai veche, cheia publică v1 se află în plugins/Votifier/rsa/public.key; păstrați private.key corespunzătoare în același folder pe server și nu o distribuiți niciodată.
  3. Verificați port-ul pe care ascultă NuVotifier (implicit 8192) și asigurați-vă că este deschis în firewall-ul sau panoul de găzduire - este un port separat de portul obișnuit Minecraft, iar majoritatea găzduirilor nu îl deschid automat.
  4. Pe pagina Editează a serverului dumneavoastră → fila Recompense și vot, completați host-ul Votifier (adresa serverului dumneavoastră) și acel port, apoi lipiți token-ul v2 sau cheia v1 de la pasul 2. Dacă sunt completate ambele, se folosește doar unul - v2 are prioritate.
  5. Apăsați Trimite votul de testare chiar acolo, în filă. Aceasta trimite un pachet Votifier real către host/port/cheie/token aflate în acel moment în formular - nu trebuie salvat nimic în prealabil - și raportează imediat dacă NuVotifier l-a acceptat. Dacă eșuează, propriul jurnal de consolă al NuVotifier (debug: true implicit) arată dacă măcar conexiunea a ajuns la plugin, ceea ce separă rapid „cheie greșită" de „port blocat".
  6. Salvați, apoi emiteți un vot real și confirmați că recompensa ajunge imediat, nu la următoarea interogare.

Sub capotă, acest site trimite un handshake standard VOTIFIER 2 cu un payload JSON semnat HMAC atunci când este setat un token v2, și revine altfel la un bloc v1 clasic criptat RSA - același protocol pe care îl vorbește deja orice listener compatibil Votifier, nimic specific acestui site.

Folosiți deja VotingPlugin?

Dacă pe serverul dumneavoastră rulează deja VotingPlugin, nu trebuie să îl instalați pe al nostru - și nici nu trebuie să adăugați manual acest site în el, pentru că VotingPlugin are un preset întreținut pentru el.

Rulați asta în joc ca operator (sau cu permisiunea VotingPlugin.Commands.AdminVote.VotePresets):

/av VotePresets

VotingPlugin descarcă lista curentă de preset-uri din propriul repository VotingPlugin-Presets, vă lasă să alegeți unul - VoxelRank este inclus - apoi cere valorile de care are nevoie acel preset: numele afișat, URL-ul de vot al anunțului dumneavoastră, întârzierea între voturi și altele asemenea. Sau săriți direct la treabă cu propriul link de vot:

/av VotePresets https://voxelrank.com/server/your-slug/vote

Includeți https://; VotingPlugin potrivește automat numele de host cu preset-ul corect, în loc să vă pună să îl căutați într-o listă.

Oricum ar fi, scrie sau actualizează intrarea corespunzătoare sub VoteSites: în VoteSites.yml - ServiceSite, VoteURL, întârzieri implicite rezonabile, și un obiect de afișare provizoriu sau un mesaj de mulțumire dacă site-ul nu are deja unul - apoi reîncarcă site-urile de vot pentru dumneavoastră. Orice altceva aflat deja în fișier rămâne neatins. Faceți o copie de rezervă a VoteSites.yml mai întâi dacă modificați o configurație deja stabilită, nu adăugați una nouă, și verificați ce s-a scris - recompensele în special, întrucât un preset este un punct de plecare, nu o configurație finită - înainte de a-l face cunoscut jucătorilor.

VotingPlugin are în continuare nevoie de propria conexiune Votifier pentru a primi efectiv voturi - îndreptați-l spre aceeași configurație NuVotifier de la Opțiunea B de mai sus. De asemenea, are nevoie ca serverul să poată accesa GitHub (raw.githubusercontent.com) pentru a prelua preset-uri; dacă /av VotePresets raportează că nu sunt preset-uri disponibile, este o problemă de rețea sau de firewall pe server, nu un preset lipsă. /av gui, sau editarea directă a VoteSites.yml, funcționează în continuare ca variantă de rezervă - ServiceSite trebuie să fie exact VoxelRank.com, lucru pe care îl puteți confirma cu /av servicesites după un vot real sau un vot de testare administrativ.

Alte plugin-uri de recompense

Folosiți ceva mai simplu decât VotingPlugin? SuperVotes și SuperbVote sunt ambele listener-e Votifier ușoare, cu propriile sisteme de vote-party și comenzi de recompensă. Niciunul dintre ele nu urmărește preset-uri pe site așa cum face VotingPlugin - îndreptați oricare dintre ele spre același host, port și token v2 (sau cheie v1) Votifier de pe fila Recompense și vot de mai sus și configurați-i recompensele la fel cum ați face pentru orice vot.

Depanare

  • Nu se întâmplă nimic la /votingsite testvote. Verificați mai întâi /votingsite status - dacă cheia API nu este acceptată, voturile (reale sau de test) nu au unde să ajungă. Recopiați-o de pe pagina Editează și asigurați-vă că nu există spații libere la final.
  • Trimiterea Votifier nu ajunge niciodată, dar interogarea funcționează. De obicei portul Votifier este cel blocat, nu API-ul - majoritatea găzduirilor deschid implicit traficul HTTP de ieșire, dar nu un port arbitrar de intrare în plus. mode: both (sau rularea listener-ului unui alt plugin de recompense separat) este o alternativă permanentă rezonabilă în loc să vă luptați cu firewall-ul.
  • Recompensa se declanșează, dar nu apare nimic în joc. Comenzile de recompensă rulează din consolă, deci o comandă care funcționează doar dacă este tastată de un jucător (fără permisiune, fără op) va eșua silențios. Testați mai întâi comanda exactă din consolă.
  • VotingPlugin înregistrează "invalid service site" sau nu potrivește niciodată votul. Valoarea ServiceSite trebuie să corespundă caracter cu caracter, cu excepția literelor mari/mici. Verificați-o cu /av servicesites în loc să o ghiciți după numele de domeniu al acestui site.
  • /av VotePresets spune că nu sunt preset-uri disponibile, sau un URL nu se potrivește cu nimic. Descarcă lista de preset-uri de pe GitHub la momentul rulării, deci aproape întotdeauna e vorba de rețeaua proprie a serverului - firewall, proxy, DNS sau o pană GitHub - care blochează raw.githubusercontent.com, nu un semn că VoxelRank a fost scos din listă. O potrivire după URL are nevoie și de adresa completă, inclusiv https://; numele de host simple nu sunt recunoscute.
  • Setările din fila Recompense și vot par să nu se salveze. Se aplică doar unui anunț revendicat - vedeți filtrul Revendicat din lista de servere. O intrare importată, nerevendicată, nu are încă un proprietar căruia să îi configurați recompense; revendicați-o mai întâi.

Răspunsuri rapide

Am nevoie de Votifier măcar?

Nu. Modul poll (implicit pentru plugin-ul VoxelRank) funcționează fără a instala altceva - Votifier doar scurtează întârzierea dintre vot și recompensă și este singura cale de acces dacă preferați să rulați în schimb VotingPlugin, SuperVotes sau SuperbVote.

Pot folosi plugin-ul nostru și VotingPlugin în același timp?

Nu pentru aceeași recompensă - alegeți unul singur care să ruleze efectiv comenzile de recompensă, altfel un vot ar putea fi plătit de două ori. Votifier însuși poate notifica mai mult de un listener, deci aceasta este o regulă de tipul „nu configurați aceeași recompensă de două ori", nu o limitare tehnică.

Găzduirea mea nu îmi permite să deschid porturi suplimentare pentru Votifier.

Folosiți modul poll cu plugin-ul VoxelRank. Acesta face doar cereri de ieșire, deci nu este nimic de deschis. VotingPlugin și plugin-urile de recompense similare nu au un echivalent al modului de interogare - au nevoie de un port Votifier de intrare.

Aveți nevoie de ajutor?

Ați rămas blocat la un pas de mai sus, sau ceva nu se potrivește cu ceea ce trimite efectiv serverul dumneavoastră? Contactați-ne - cele mai rapide căi pentru o întrebare despre voturi/recompense sunt listate chiar acolo.