Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

Plugin:Réputation

Plugin qui attribue à chaque joueur une réputation persistante de −1000 à +1000, découpée en neuf paliers synchronisés sur des groupes LuckPerms
Version datée du 29 août 2026 à 06:39 par Hiob (discussion | contributions)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)


Réputation
Type
Roleplay
Développeur
Nefald
Statut
Ressources
Code source
Compatibilité
Dépendance(s)
Plugin:NefaldCore (obligatoire), Plugin:LuckPerms (softdep), Plugin:Vault (softdep), Plugin:Lands (softdep), Plugin:BetonQuest (softdep), Plugin:PlaceholderAPI (softdep)


Réputation attribue à chaque joueur un score persistant de −1000 à +1000 qui traduit la façon dont le monde perçoit ses actes. Il se lit en neuf paliers, répartis en trois catégories, et se gagne, se perd, s'affiche en jeu, et s'efface quand on cesse de jouer.

L'échelle

Catégorie Paliers
Malfaisant Anathème · Proscrit · Brigand
Neutre Mal Famé · Sans Renom · Bien Famé
Bienfaisant Loyal · Bienfaiteur · Parangon

Bornes, noms, couleurs et groupes de permissions sont définis en configuration — redécouper l'échelle ne demande aucune recompilation.

Le principe : publier un état, pas appliquer d'effets

Réputation publie un état, il n'applique pas d'effets. Il produit le retour immédiat au joueur (toast d'avancement, son, titre, ligne de hotbar) et synchronise un groupe de permissions par palier. Les conséquences mécaniques sont écrites ailleurs : loot tables RoseLoot, quêtes BetonQuest, ou tout plugin réagissant au groupe.

Ce qui fait bouger le score

  • PvP : tuer un joueur coûte une pénalité ; tuer un joueur très Malfaisant rapporte une prime ; anti-farm par cooldown.
  • Effraction de territoire Lands : pénalité après plusieurs refus rapprochés (un accident isolé ne compte pas).
  • Rachat économique via Vault : /reputation racheter,  52   par point, uniquement sur score négatif, plafonné à zéro, plafond quotidien (20 points/jour).
  • Quêtes BetonQuest et autres plugins : variable.
  • Inactivité : le score revient vers zéro, la bonne réputation s'efface deux fois plus vite que la mauvaise.

Commandes joueurs

Alias : /rep, /reput.

Commande Effet Permission
/reputation Score, palier, progression reputation.use défaut : tous
/reputation <joueur> Vue publique d'un autre joueur reputation.lookup
/reputation hud Bascule l'affichage hotbar reputation.hud
/reputation racheter <montant> Rachat économique reputation.redeem
/reputation top Classement public reputation.top

Commandes d'administration

Toutes acceptent des joueurs hors ligne ; toute action est journalisée avec son auteur. /repadmin seul (ou help) ouvre un menu d'aide visuel (thème SCUMM).

Commande Effet Permission
set <joueur> <valeur> [confirm] [raison…] Fixe le score reputation.admin.set
add <joueur> <delta> [raison…] Ajoute un delta reputation.admin.modify
remove <joueur> <delta> [raison…] Retire un delta reputation.admin.modify
reset <joueur> [confirm] [raison…] Remet à zéro reputation.admin.set
lookup <joueur> Fiche complète (score, palier, gel, HUD) reputation.admin.lookup
history <joueur> [page] Journal d'audit paginé reputation.admin.history
freeze <joueur> [on/off] Gèle le score reputation.admin.freeze
decay run <joueur> Force la dégradation due reputation.admin.decay
decay status État du batch quotidien reputation.admin.decay
sync <joueur> Resynchronise LuckPerms et l'avancement reputation.admin.sync
refund <joueur> Retente un remboursement en attente reputation.admin.refund
reload Recharge paliers et messages reputation.admin.reload

set/reset exigent le jeton confirm au-delà d'un delta configurable. Le groupe reputation.admin.* couvre l'ensemble.

LuckPerms — un groupe par palier

À chaque franchissement de palier, Réputation synchronise un groupe LuckPerms correspondant au palier courant. C'est ce qui rend tout le serveur réactif à la réputation sans que le plugin n'applique lui-même aucun effet.

Le groupe est ajouté en héritage, il ne remplace pas le groupe courant. Réputation utilise l'API InheritanceNode (ajout/suppression), jamais setPrimaryGroup :

  • Le groupe de palier s'ajoute par-dessus les groupes existants — le groupe par défaut, les rangs staff, les grades de don sont tous conservés.
  • Seuls les autres groupes de la liste des paliers (rep_*) sont retirés au passage, pour éviter d'empiler deux paliers à la fois. Un seul groupe de réputation à un instant donné.
  • La synchronisation est rejouée à la connexion pour rattraper une désynchronisation survenue hors ligne (dégradation par batch, action staff sur un joueur absent).
  • /repadmin sync <joueur> force une resynchronisation manuelle.

Règles d'exploitation :

  • Réputation ne crée jamais un groupe absent : un avertissement est journalisé une seule fois, en nommant le groupe. Écrire dans la hiérarchie de permissions en production est trop intrusif pour être implicite.
  • Aucun groupe hors de la liste des paliers n'est touché — grades, rangs et permissions staff ne sont jamais affectés.
  • Désactivable en bloc via luckperms.sync-groups: false dans config.yml.

Prérequis : les neuf groupes suivants doivent être créés une fois par le staff avant activation (noms par défaut, configurables par palier) :

Catégorie Groupes LuckPerms
Malfaisant rep_anatheme · rep_proscrit · rep_brigand
Neutre rep_mal_fame · rep_sans_renom · rep_bien_fame
Bienfaisant rep_loyal · rep_bienfaiteur · rep_parangon

Placeholders

Placeholder Valeur
%reputation_score% Score courant
%reputation_tier% Nom du palier
%reputation_tier_id% Identifiant du palier
%reputation_category% Catégorie (MALFAISANT / NEUTRE / BIENFAISANT)
%reputation_color% Couleur du palier
%reputation_colored_tier% Nom du palier coloré
%reputation_next_tier% Palier suivant
%reputation_to_next% Points restants avant le palier suivant
%reputation_progress% Progression (%) dans le palier
%reputation_bar% Barre de progression

Voir aussi

Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.