Hogyan lesz egy szavazatból jutalom
Három rész dolgozik együtt. Egy játékos szavaz egy szerverlistán. A lista szavazatüzenetet küld a szervereden futó Votifiernek, a játékos nevével és egy szolgáltatásnévvel együtt, ami azonosítja a listát. A VotingPlugin figyeli ezeket az üzeneteket, megkeresi azt a szavazóoldalt, amelynek a ServiceSite értéke egyezik a szolgáltatásnévvel, és lefuttatja annak az oldalnak a jutalmait.
A VotingPlugin tehát magától nem fogad szavazatokat. Előbb egy működő Votifier kell, általában NuVotifier. Ha még nem állítottad be, kövesd a NuVotifier beállítási útmutatót, és gyere vissza.
- A Votifier fogadja a szavazatot, és ellenőrzi (v2-nél tokennel, v1-nél RSA-kulccsal).
- A VotingPlugin megkeresi a szolgáltatásnevet, és kiadja a jutalmakat.
- A BestMCServerList a
BestMCServerListszolgáltatásnevet küldi.
1. lépés: Telepítsd a VotingPlugint
- Győződj meg róla, hogy a NuVotifier fut és elérhető. Egy teszt szavazatnak a Votifier oldaladról meg kell jelennie a konzolban.
- Tedd a VotingPlugin JAR-t a Spigot vagy Paper szervered
pluginsmappájába, és indítsd újra egyszer. - A VotingPlugin létrehozza a fájljait, köztük a
plugins/VotingPlugin/VoteSites.ymlfájlt a szavazóoldalakhoz és aConfig.ymlfájlt az általános beállításokhoz.
Proxy networkön a szavazatok általában a proxyra érkeznek, a jutalmak pedig a backend szervereken futnak. A VoteSites.yml legyen minden backenden ugyanaz.
2. lépés: Add hozzá a BestMCServerListet a VoteSites.yml-hez
Minden lista, amelyen fent vagy, saját bejegyzést kap a VoteSites alatt. A kulcs egy belső név: legyen rövid, szóköz és pont nélkül. A fontos sor a ServiceSite.
VoteSites:
BestMCServerList:
Enabled: true
Name: 'BestMCServerList'
Priority: 5
ServiceSite: 'BestMCServerList'
VoteURL: 'https://bestmcserverlist.net/server/your-server/vote'
VoteDelay: 24h
WaitUntilVoteDelay: false
VoteDelayDaily: true
ForceOffline: false
DisplayItem:
Material: 'DIAMOND'
Amount: 1
Rewards:
Commands:
- 'eco give %player% 250'
- 'give %player% diamond 2'
Messages:
Player: '&aThanks for voting on BestMCServerList!'- Az
Enabled: truekötelező, az alapértelmezés false. - A
ServiceSiteértékének egyeznie kell a lista által küldött szolgáltatásnévvel. A VotingPlugin kis- és nagybetűtől függetlenül hasonlít, de egyébként a szövegnek azonosnak kell lennie. Nálunk ezBestMCServerList. - A
VoteURLaz a link, amit a játékosok a/voteparanccsal kapnak. Másold ki a szavazólinkedet a szerveroldaladról; ayour-servera saját slugodat jelöli. - A
DisplayItemminden oldalhoz kötelező, mert a VotingPlugin menüiben jelenik meg. - A parancsok a konzolból futnak, a
%player%helyére a szavazó neve kerül. Azeco giveparancshoz gazdaság-plugin kell; azokat a parancsokat használd, amelyek a szervereden vannak.
Mentsd a fájlt, és futtasd az /av reload parancsot.
3. lépés: Szavazási késleltetés és a napi nullázás
A BestMCServerListen minden Minecraft-név szerverenként és naptári naponként egyszer szavazhat, a nap pedig az Europe/Berlin időzónát követi. Új szavazat rögtön berlini éjfél után lehetséges, nem 24 órával az utolsó után.
- A
VoteDelay: 24ha/vote nextparancshoz kell, ez a visszaszámláló, amit a játékosok látnak. Nem blokkolja a szavazatokat. - A
VoteDelayDaily: truehelyette naponta egyszer nullázza a késleltetést, ez illik a napi nullázású listákhoz, mint a miénk. AVoteDelayDailyHouraz órát állítja be szeridő szerint (1–24). Ha a szervered órája nem berlini idő szerint jár, beállításkor vedd figyelembe a különbséget. - A
WaitUntilVoteDelay: trueelutasítaná azokat a szavazatokat, amelyek a késleltetés lejárta előtt érkeznek. Hagydfalseértéken: mi már kikényszerítjük a napi egy szavazatot névenként, egy rossz késleltetési beállítás pedig jutalmakba kerülne a játékosoknak.
4. lépés: Teszteld a jutalmakat
- Futtasd:
/av vote <player> BestMCServerList. Ez lefuttatja az adott oldal jutalmait egy játékosnak, és megmutatja, hogy a jutalomconfigod működik. A Votifiert nem teszteli. - Nyisd meg a Votifier oldaladat a BestMCServerListen, és nyomd meg a Teszt szavazat küldése gombot. Egy szavazatot küldünk a
TestVotenévre, ami nem számít bele a rangsorba. A kézbesítési napló megmutatja, hogy a szervered elfogadta-e. - Keress a konzolban egy ilyen sort:
[VotingPlugin] Received a vote from service site 'BestMCServerList' by player 'TestVote'!. - Futtasd az
/av servicesitesparancsot, hogy kilistázd a VotingPlugin által eddig fogadott szolgáltatásneveket.
Ha a teszt szavazat megérkezik, de a VotingPlugin ismeretlen service site-ot jelez, a ServiceSite sor a hiba. Ha a Config.yml-ben AutoCreateVoteSites: true van (ez az alapértelmezés), a VotingPlugin magától is létrehozhat egy új bejegyzést; ehhez is kell Enabled: true és a jutalmaid.
Bedrock-játékosok és offline szavazatok
A Geyseren és Floodgate-en keresztül csatlakozó Bedrock-játékosoknak névelőtagjuk van, alapból egy pont: .Steve. Ezzel a teljes névvel szavaznak, mi pedig változatlanul továbbítjuk a Votifiernek. A VotingPluginban állítsd be ugyanezt az előtagot a Config.yml-ben. Networkön ugyanazt az értéket használd a proxyn és minden backenden:
BedrockPlayerPrefix: '.'A .Steve és a Steve két különböző játékos. Soha ne vedd le az előtagot, hogy egy név passzoljon.
A játékosoknak nem kell online lenniük, amikor szavaznak. A jutalmaknak van RewardType értéke: ONLINE, OFFLINE vagy BOTH (az alapértelmezés). Az offline szavazatokat is teszteld, mert az online játékost igénylő parancsok másként viselkednek.
Vote partyk, mérföldkövek és sorozatok
Ha az alapjutalmak működnek, a SpecialRewards.yml olyan célokat ad hozzá, amelyek szavazásra ösztönzik a játékosokat: egy VoteParty, ami akkor indul, amikor az egész szerver elér egy szavazatszámot, VoteMilestones a személyes összesítésekhez és VoteStreaks a több egymást követő napos szavazáshoz. Legyenek a jutalmak hasznosak, de igazságosak; a gazdaságot felborító jutalmak kötelezővé teszik a szavazás érzését.
Rangjelvényt szeretnél a top szavazóknak? A LuckPerms prefix útmutató megmutatja, hogyan adj egy paranccsal képes prefixet a játékosoknak, és ezt jutalomként is lefuttathatod.
Gyakori hibák
| Probléma | Javítás |
|---|---|
| A teszt szavazat megérkezik, de senki nem kap semmit | A szavazóoldal nincs engedélyezve, vagy a ServiceSite nem BestMCServerList. Nézd meg: /av servicesites. |
| Egyáltalán semmi a konzolban | A Votifier nem kapja meg a szavazatot. Ellenőrizd a portot, a tokent és a tűzfalat a Votifier oldalad kézbesítési naplójával. |
| A NuVotifier azt naplózza, hogy nincs elérhető listener | A VotingPlugin nincs telepítve, vagy nem töltődött be. Nézd meg az indítási naplót. |
Az /av vote működik, a valódi szavazatok nem | Az admin parancs kihagyja a Votifiert. Tesztelj inkább a Teszt szavazat küldése gombbal. |
| A Bedrock-játékosok nem kapnak semmit | A BedrockPlayerPrefix nem egyezik a Floodgate előtagoddal. |