Présentation
- Plateformes
- Paper, Spigot, Folia
- Minecraft
- 1.21 ou plus récent
- Java
- 21
- Requis
- Aucun
- Facultatif
- Vault, PlaceholderAPI, HeadDB
ReferralTrack indique quelle liste de serveurs, vidéo, invitation Discord ou quel ami a amené chaque joueur sur votre serveur. Les joueurs indiquent au serveur d'où ils viennent avec /referral ou saisissent le code d'invitation permanent d'un ami, et peuvent gagner une récompense pour cela. Tout est stocké dans votre propre base de données (SQLite ou MySQL/MariaDB). Rien ne quitte le serveur, hormis le webhook Discord que vous configurez.
Prérequis #
- Minecraft 1.21 ou plus récent, Java 21.
- Paper, Spigot ou Folia.
- Vault et un plugin d'économie compatible Vault sont facultatifs et ne servent que pour les récompenses en argent.
- PlaceholderAPI est facultatif.
- HeadDB et Head Database sont facultatifs et ajoutent des têtes personnalisées aux menus. Sans eux, un matériau Bukkit normal est utilisé.
Les bibliothèques de base de données sont dans le jar ; le premier démarrage ne télécharge donc rien.
Installation #
- Placez
ReferralTrack.jardansplugins/et démarrez le serveur. - Modifiez
plugins/ReferralTrack/config.yml: vos sources, les récompenses et le webhook Discord. - Exécutez
/referraltrack validate, puis/referraltrack reload. - Exécutez
/referraltrack doctorpour vérifier la base de données, les récompenses et les intégrations.
Fonctionnalités #
- Codes de source. Les joueurs tapent
/referral youtube(ou tout code que vous définissez). Un code connu mal saisi, commeyotube, est associé au plus proche. - Codes personnels permanents. Chaque joueur reçoit un code d'invitation sans collision (par exemple
RT-AB12CD3) lié à son UUID, qui survit donc à un changement de pseudo. Les noms d'amis et les codes de source continuent de fonctionner. - Récompenses. De l'argent via Vault et/ou des commandes console, avec une limite par adresse IP, un contrôle de même IP sur les invitations d'amis, des plafonds de récompense et des paliers d'invitation.
- Parrainages vérifiés (facultatif). Les récompenses et le crédit du classement peuvent être retenus jusqu'à ce que le nouveau joueur atteigne un seuil de temps de jeu et de connexions. Désactivé par défaut.
- Revue anti-fraude (facultatif). Des signaux de risque explicables peuvent retenir un parrainage pour que le staff l'approuve ou le rejette.
- Campagnes (facultatif). Campagnes limitées dans le temps avec leurs propres dates, codes, multiplicateurs, récompenses et paliers.
- Hub du joueur.
/referralouvre un menu personnel avec le code du joueur, la source, l'état de validation et les récompenses. Sur les serveurs qui le permettent, le hub peut s'ouvrir sous forme de dialogue Java natif. - Outils du staff. Tableau de bord, analyses, classement de croissance, Reward Rescue, validation de la configuration et rapport de santé.
- Discord. Cartes instantanées, rapports quotidiens et hebdomadaires et message de statistiques en direct, chacun pouvant être orienté vers son propre canal.
- Préréglages et thèmes. Sept préréglages de départ et trois thèmes visuels, appliqués uniquement avec une confirmation et une sauvegarde.
- Langues. Anglais, turc, espagnol, allemand et portugais brésilien.
Réseaux #
Sur un réseau, mettez settings.join-tracking-enabled sur true sur un serveur d'entrée (par exemple le lobby) et sur false sur les autres, et faites pointer tous les serveurs vers la même base de données MySQL/MariaDB. Mettez settings.reward-delivery-enabled sur true uniquement sur le serveur où se trouve votre véritable économie. Les récompenses réclamées ailleurs sont stockées comme en attente et livrées à la prochaine connexion à cet endroit. Chaque ligne de récompense a un seul propriétaire de livraison actif sur l'ensemble des serveurs.
Derrière BungeeCord ou Velocity, activez le transfert d'IP sur le proxy. Sans cela, chaque joueur apparaît avec l'adresse du proxy et les contrôles par IP bloqueraient tout le monde. SQLite n'est pas un stockage partagé ; un réseau nécessite MySQL/MariaDB.
Mise à niveau #
ReferralTrack ne remplace jamais en silence un config.yml personnalisé. Lorsque la version de la configuration change, il conserve l'original sous le nom config.yml.bak-v<old>, écrit la nouvelle référence complète dans config.new-v<new>.yml, ne modifie que le marqueur de version de votre fichier et liste les chemins manquants au démarrage. Les valeurs par défaut incluses maintiennent les nouvelles options en état de marche jusqu'à ce que vous les recopiez. Les fichiers de langue que vous avez modifiés ne sont pas écrasés ; les clés manquantes se rabattent sur le texte anglais inclus.