Přeskočit na obsah

Odměny za hlasování v Minecraftu s VotingPluginem

Seznamy serverů pošlou tvému serveru za každý hlas zprávu, ale nic se nestane, dokud na ni nezareaguje plugin na odměny. VotingPlugin je oblíbená volba: dává předměty, peníze nebo příkazy pro každý hlasovací web, ukazuje odkazy na hlasování přes /vote a přidává extra věci jako vote party a série. Tento návod ho krok za krokem propojí s BestMCServerList.

Aktualizováno:

Jak se z hlasu stane odměna

Spolupracují tři části. Hráč hlasuje na seznamu serverů. Seznam pošle zprávu o hlasu do Votifieru na tvém serveru, spolu se jménem hráče a názvem služby, který identifikuje seznam. VotingPlugin na tyto zprávy čeká, najde hlasovací web, jehož ServiceSite odpovídá názvu služby, a spustí odměny tohoto webu.

VotingPlugin tedy sám hlasy nepřijímá. Nejdřív potřebuješ fungující Votifier, obvykle NuVotifier. Pokud ho ještě nemáš nastavený, projdi návod na nastavení NuVotifieru a vrať se.

  • Votifier hlas přijme a ověří (token u v2, RSA klíč u v1).
  • VotingPlugin porovná název služby a rozdá odměny.
  • BestMCServerList posílá název služby BestMCServerList.

Krok 1: Nainstaluj VotingPlugin

  1. Ujisti se, že NuVotifier běží a je dostupný. Testovací hlas z tvé stránky Votifieru by se měl objevit v konzoli.
  2. Dej JAR VotingPluginu do složky plugins svého Spigot nebo Paper serveru a jednou restartuj.
  3. VotingPlugin si vytvoří soubory, mimo jiné plugins/VotingPlugin/VoteSites.yml pro hlasovací weby a Config.yml pro obecná nastavení.

Na síti s proxy hlasy obvykle dorazí na proxy a odměny se spouštějí na backend serverech. VoteSites.yml drž na všech backendech stejný.

Krok 2: Přidej BestMCServerList do VoteSites.yml

Každý seznam, na kterém jsi, dostane vlastní položku pod VoteSites. Klíč je interní název: krátký, bez mezer a bez teček. Důležitý je řádek ServiceSite.

plugins/VotingPlugin/VoteSites.yml
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: '&aDíky za hlas na BestMCServerList!'
  • Enabled: true je nutné, výchozí hodnota je false.
  • ServiceSite musí odpovídat názvu služby, který seznam posílá. VotingPlugin nerozlišuje velikost písmen, jinak ale text musí být stejný. U nás je to BestMCServerList.
  • VoteURL je odkaz, který hráči dostanou přes /vote. Zkopíruj odkaz na hlasování ze stránky svého serveru; your-server zastupuje tvůj vlastní slug.
  • DisplayItem je povinný pro každý web, protože se zobrazuje v menu VotingPluginu.
  • Příkazy se spouštějí z konzole a %player% se změní na jméno hlasujícího. eco give potřebuje plugin na ekonomiku; použij příkazy, které tvůj server má.

Ulož soubor a spusť /av reload.

Krok 3: Prodleva mezi hlasy a denní reset

Na BestMCServerList může každé Minecraft jméno hlasovat jednou za kalendářní den pro každý server a den se řídí časovým pásmem Europe/Berlin. Nový hlas je možný hned po půlnoci berlínského času, ne 24 hodin po posledním.

  • VoteDelay: 24h se používá pro /vote next, tedy odpočet, který hráči vidí. Hlasy neblokuje.
  • VoteDelayDaily: true místo toho resetuje prodlevu jednou denně, což sedí na seznamy s denním resetem jako ten náš. VoteDelayDailyHour nastavuje hodinu v čase serveru (1–24). Pokud hodiny tvého serveru neběží v berlínském čase, mysli na rozdíl.
  • WaitUntilVoteDelay: true by odmítal hlasy, které dorazí před koncem prodlevy. Nech ho na false: jeden hlas na jméno a den už hlídáme my a špatně nastavená prodleva by hráče připravila o odměny.

Krok 4: Otestuj odměny

  1. Spusť /av vote <player> BestMCServerList. Tím spustíš odměny daného webu pro hráče a ověříš, že config odměn funguje. Votifier to netestuje.
  2. Otevři svou stránku Votifieru na BestMCServerList a stiskni Poslat testovací hlas. Pošleme hlas pro jméno TestVote, který se do žebříčku nepočítá. Protokol doručení ukáže, jestli ho tvůj server přijal.
  3. Hledej v konzoli řádek jako [VotingPlugin] Received a vote from service site 'BestMCServerList' by player 'TestVote'!.
  4. Spusť /av servicesites, který vypíše názvy služeb, které VotingPlugin zatím dostal.

Pokud testovací hlas dorazí, ale VotingPlugin hlásí neznámý service site, problém je v řádku ServiceSite. S AutoCreateVoteSites: true v Config.yml (výchozí stav) může VotingPlugin vytvořit novou položku i sám; ta ale pořád potřebuje Enabled: true a tvoje odměny.

Bedrock hráči a hlasy offline

Bedrock hráči, kteří se připojují přes Geyser a Floodgate, mají před jménem prefix, ve výchozím stavu tečku: .Steve. Hlasují pod tímto celým jménem a my ho Votifieru předáme beze změny. Ve VotingPluginu nastav stejný prefix v Config.yml. Na síti použij stejnou hodnotu na proxy i na každém backendu:

plugins/VotingPlugin/Config.yml
BedrockPlayerPrefix: '.'

.Steve a Steve jsou různí hráči. Nikdy prefix neodstraňuj, aby jméno sedělo.

Hráči nemusí být při hlasování online. Odměny mají RewardType ONLINE, OFFLINE nebo BOTH (výchozí). Otestuj i hlasy offline, protože příkazy, které potřebují hráče online, se chovají jinak.

Vote party, milníky a série

Jakmile základní odměny fungují, SpecialRewards.yml přidá cíle, které hráče udrží u hlasování: VoteParty, která se spustí, když celý server dosáhne určitého počtu hlasů, VoteMilestones pro osobní součty a VoteStreaks za hlasování několik dní po sobě. Drž odměny užitečné, ale férové; odměny, které rozbijí ekonomiku, dělají z hlasování povinnost.

Chceš odznak ranku pro nejaktivnější hlasující? Návod na prefixy v LuckPerms ukazuje, jak dát hráčům obrázkový prefix příkazem, který můžeš spustit jako odměnu.

Časté chyby

ProblémŘešení
Testovací hlas dorazí, nikdo nic nedostaneHlasovací web není zapnutý, nebo ServiceSite není BestMCServerList. Zkontroluj /av servicesites.
V konzoli vůbec nicVotifier hlas nepřijímá. Zkontroluj port, token a firewall pomocí protokolu doručení na své stránce Votifieru.
NuVotifier hlásí, že nejsou dostupné žádné listeneryVotingPlugin není nainstalovaný nebo se nenačetl. Zkontroluj log při startu.
/av vote funguje, skutečné hlasy nePříkaz pro adminy Votifier přeskakuje. Testuj místo toho přes Poslat testovací hlas.
Bedrock hráči nic nedostávajíBedrockPlayerPrefix neodpovídá tvému prefixu ve Floodgate.

Časté otázky

Jaký je název služby BestMCServerList pro VotingPlugin?

Je to BestMCServerList. Dej přesně tohle do řádku ServiceSite hlasovacího webu ve VoteSites.yml.

Potřebuju pro VotingPlugin NuVotifier?

Ano. VotingPlugin dává odměny, ale hlasy se na tvůj server dostanou přes Votifier. NuVotifier je udržovaná verze a podporuje protokol v1 i v2.

Kdy můžou hráči na BestMCServerList hlasovat znovu?

Jednou za Minecraft jméno, server a kalendářní den. Den se mění o půlnoci v časovém pásmu Europe/Berlin.

Dostávají Bedrock hráči odměny za hlasování?

Ano, pokud hlasují pod svým celým Floodgate jménem jako .Steve a BedrockPlayerPrefix ve VotingPluginu odpovídá tvému prefixu ve Floodgate.

Zdroje

Ověřeno podle oficiální dokumentace: