Comment un vote devient une récompense
Trois éléments travaillent ensemble. Un joueur vote sur une liste de serveurs. La liste envoie un message de vote à Votifier sur ton serveur, avec le pseudo du joueur et un nom de service qui identifie la liste. VotingPlugin écoute ces messages, cherche le site de vote dont le ServiceSite correspond au nom de service et exécute les récompenses de ce site.
VotingPlugin ne reçoit donc pas les votes tout seul. Il te faut d’abord un Votifier qui marche, en général NuVotifier. Si tu ne l’as pas encore configuré, suis le guide d’installation de NuVotifier et reviens ensuite.
- Votifier reçoit le vote et le vérifie (token pour la v2, clé RSA pour la v1).
- VotingPlugin fait correspondre le nom de service et donne les récompenses.
- BestMCServerList envoie le nom de service
BestMCServerList.
Étape 1 : installer VotingPlugin
- Vérifie que NuVotifier tourne et qu’il est joignable. Un vote de test depuis ta page Votifier doit apparaître dans la console.
- Mets le JAR de VotingPlugin dans le dossier
pluginsde ton serveur Spigot ou Paper et redémarre une fois. - VotingPlugin crée ses fichiers, dont
plugins/VotingPlugin/VoteSites.ymlpour les sites de vote etConfig.ymlpour les réglages généraux.
Sur un réseau avec proxy, les votes arrivent en général sur le proxy et les récompenses s’exécutent sur les serveurs backend. Garde le même VoteSites.yml sur chaque backend.
Étape 2 : ajouter BestMCServerList dans VoteSites.yml
Chaque liste sur laquelle tu es inscrit a sa propre entrée sous VoteSites. La clé est un nom interne : garde-le court, sans espaces et sans points. La ligne importante, c’est 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!'Enabled: trueest obligatoire, la valeur par défaut est false.ServiceSitedoit correspondre au nom de service envoyé par la liste. VotingPlugin ne tient pas compte des majuscules, mais sinon le texte doit être identique. Chez nous, c’estBestMCServerList.VoteURLest le lien que les joueurs reçoivent avec/vote. Copie ton lien de vote depuis la page de ton serveur ;your-servercorrespond à ton propre slug.DisplayItemest obligatoire pour chaque site, car il s’affiche dans les menus de VotingPlugin.- Les commandes s’exécutent depuis la console, et
%player%devient le pseudo du votant.eco givenécessite un plugin d’économie ; utilise les commandes que ton serveur possède.
Enregistre le fichier et lance /av reload.
Étape 3 : délai de vote et remise à zéro quotidienne
Sur BestMCServerList, chaque pseudo Minecraft peut voter une fois par serveur et par jour calendaire, et le jour suit le fuseau horaire Europe/Berlin. Un nouveau vote est possible juste après minuit heure de Berlin, pas 24 heures après le dernier.
VoteDelay: 24hsert pour/vote next, le compte à rebours que voient les joueurs. Il ne bloque pas les votes.VoteDelayDaily: trueremet plutôt le délai à zéro une fois par jour, ce qui colle aux listes avec une remise à zéro quotidienne comme la nôtre.VoteDelayDailyHourdéfinit l’heure en heure du serveur (1–24). Si l’horloge de ton serveur n’est pas à l’heure de Berlin, tiens compte du décalage en la réglant.WaitUntilVoteDelay: truerefuserait les votes arrivés avant la fin du délai. Laisse-le surfalse: nous imposons déjà un vote par pseudo et par jour, et un mauvais réglage du délai priverait les joueurs de leurs récompenses.
Étape 4 : tester les récompenses
- Lance
/av vote <player> BestMCServerList. Ça exécute les récompenses de ce site pour un joueur et montre que ta config de récompenses fonctionne. Ça ne teste pas Votifier. - Ouvre ta page Votifier sur BestMCServerList et clique sur Envoyer un vote de test. Nous envoyons un vote pour le pseudo
TestVote, qui ne compte pas pour le classement. Le journal de livraison montre si ton serveur l’a accepté. - Cherche dans la console une ligne comme
[VotingPlugin] Received a vote from service site 'BestMCServerList' by player 'TestVote'!. - Lance
/av servicesitespour lister les noms de service que VotingPlugin a reçus jusqu’ici.
Si le vote de test arrive mais que VotingPlugin signale un service site inconnu, c’est la ligne ServiceSite qui pose problème. Avec AutoCreateVoteSites: true dans Config.yml (par défaut), VotingPlugin peut aussi créer une nouvelle entrée tout seul ; elle aura quand même besoin de Enabled: true et de tes récompenses.
Joueurs Bedrock et votes hors ligne
Les joueurs Bedrock qui rejoignent via Geyser et Floodgate ont un préfixe devant leur pseudo, par défaut un point : .Steve. Ils votent avec ce pseudo complet, et nous le transmettons tel quel à Votifier. Dans VotingPlugin, mets le même préfixe dans Config.yml. Sur un réseau, utilise la même valeur sur le proxy et sur chaque backend :
BedrockPlayerPrefix: '.'.Steve et Steve sont deux joueurs différents. Ne retire jamais le préfixe pour faire correspondre un pseudo.
Les joueurs n’ont pas besoin d’être en ligne quand ils votent. Les récompenses ont un RewardType qui vaut ONLINE, OFFLINE ou BOTH (par défaut). Teste aussi les votes hors ligne, car les commandes qui ont besoin d’un joueur en ligne se comportent autrement.
Vote parties, paliers et séries
Une fois les récompenses de base en place, SpecialRewards.yml ajoute des objectifs qui motivent à continuer de voter : une VoteParty qui se déclenche quand tout le serveur atteint un certain nombre de votes, des VoteMilestones pour les totaux personnels et des VoteStreaks pour les votes plusieurs jours d’affilée. Garde des récompenses utiles mais équilibrées ; des récompenses qui cassent ton économie rendent le vote obligatoire.
Tu veux un badge de grade pour les meilleurs votants ? Le guide des préfixes LuckPerms montre comment donner un préfixe en image avec une commande, que tu peux exécuter comme récompense.
Erreurs fréquentes
| Problème | Solution |
|---|---|
| Le vote de test arrive, personne ne reçoit rien | Le site de vote n’est pas activé, ou ServiceSite n’est pas BestMCServerList. Vérifie /av servicesites. |
| Rien du tout dans la console | Votifier ne reçoit pas le vote. Vérifie le port, le token et le pare-feu avec le journal de livraison de ta page Votifier. |
| NuVotifier indique qu’aucun listener n’est disponible | VotingPlugin n’est pas installé ou ne s’est pas chargé. Regarde les logs de démarrage. |
/av vote marche, les vrais votes non | La commande admin contourne Votifier. Teste plutôt avec Envoyer un vote de test. |
| Les joueurs Bedrock ne reçoivent rien | BedrockPlayerPrefix ne correspond pas à ton préfixe Floodgate. |