🗣️ Report
📝 Introduction
La commande /report permet aux joueurs de signaler des problèmes sur le serveur, qu'il s'agisse de problèmes liés à un joueur spécifique ou de problèmes généraux. Les administrateurs peuvent ensuite consulter, prendre en charge et gérer ces rapports via une interface graphique intuitive.
🔑 Permissions
Pour les joueurs
- Aucune permission requise - Tous les joueurs peuvent créer des rapports
Pour les administrateurs
horizons.report.see- Permet de voir le GUI des rapports et de consulter tous les rapportshorizons.report.delete- Permet de supprimer des rapports
📋 Syntaxe
Pour les joueurs
Signaler un joueur
Syntaxe: /report <joueur> <raison>
Description: Signale un joueur spécifique pour un problème
Paramètres:
joueur- Nom du joueur à signaler (doit être en ligne)raison- Raison du signalement (peut contenir plusieurs mots)
Exemple:
/report Steve Il triche avec des modsSignaler un problème global
Syntaxe: /report <raison>
Description: Signale un problème général qui n'est pas lié à un joueur spécifique
Paramètres:
raison- Description du problème (peut contenir plusieurs mots)
Exemple:
/report Le serveur lag beaucoupPour les administrateurs
Ouvrir le GUI des rapports
Syntaxe: /report ou /report list
Description: Ouvre l'interface graphique pour consulter et gérer tous les rapports
Permission requise: horizons.report.see
Exemple:
/report
/report list🎮 Interface Graphique (GUI)
Vue principale
Le GUI des rapports affiche tous les rapports actifs avec les informations suivantes :
- Tête du joueur (pour les rapports de joueurs) ou Enclume (pour les rapports globaux)
- ID du rapport - Identifiant unique du rapport
- Joueur signalé - Nom du joueur signalé (si applicable)
- Type - Indique si c'est un rapport de joueur ou un problème global
- Raison - Raison du signalement
- Statut - Indique si le rapport est traité ou non
- Traité par - Nom de l'administrateur qui a pris en charge le rapport (si applicable)
- Date - Date et heure de création du rapport
Interactions dans le GUI
Clic gauche sur un rapport
- Si le rapport n'est pas encore traité, le prend en charge
- Change le statut du rapport à "traité"
- Enregistre votre nom comme celui qui a traité le rapport
- Envoie une notification à tous les autres administrateurs en ligne
- Envoie un webhook Discord (si configuré)
Clic droit sur un rapport
- Permission requise:
horizons.report.delete - Ouvre un GUI de confirmation pour supprimer le rapport
- Le GUI de confirmation affiche :
- Bouton Confirmer (vert) - Supprime définitivement le rapport
- Bouton Annuler (rouge) - Annule la suppression et retourne au GUI principal
Pagination
Le GUI affiche jusqu'à 27 rapports par page. Les rapports sont triés par ID décroissant (les plus récents en premier).
🔔 Notifications
Création de rapport
Lorsqu'un joueur crée un rapport, tous les administrateurs en ligne avec la permission horizons.report.see reçoivent une notification dans le chat :
- Pour un rapport de joueur:
[REPORT] Joueur a signalé AutreJoueur pour: raison (ID: #123) - Pour un rapport global:
[REPORT GLOBAL] Joueur a signalé un problème: raison (ID: #123)
Prise en charge d'un rapport
Lorsqu'un administrateur prend en charge un rapport, tous les autres administrateurs en ligne sont notifiés :
[REPORTS] Le report #123 a été pris en charge par Administrateur
🔗 Webhooks Discord
Le système de rapports peut envoyer des webhooks Discord pour notifier les administrateurs même lorsqu'ils ne sont pas en jeu.
Configuration
Dans le fichier config.yml :
reports:
webhook:
enabled: true # Activer ou désactiver les webhooks
url: "https://discord.com/api/webhooks/..." # URL du webhook DiscordTypes de webhooks
Création de rapport (joueur)
- Couleur: Rouge (#FF0000)
- Titre: "Nouveau report de joueur"
- Contenu:
- Joueur reporté
- Par (auteur du rapport)
- Raison
- ID du rapport
Création de rapport (global)
- Couleur: Rouge (#FF0000)
- Titre: "Nouveau report global"
- Contenu:
- Type: Problème global
- Par (auteur du rapport)
- Raison
- ID du rapport
Prise en charge de rapport
- Couleur: Vert (#00FF00)
- Titre: "Report pris en charge"
- Contenu:
- Informations du rapport (joueur ou type global)
- Par (auteur du rapport)
- Raison
- Traité par (administrateur)
- ID du rapport
📜 Journalisation
Tous les rapports sont automatiquement enregistrés dans des fichiers de logs séparés :
- Emplacement:
plugins/Horizons/logs/reports/ - Format: Un fichier par action (création, prise en charge, suppression)
- Contenu: Horodatage, ID du rapport, type, joueur signalé (si applicable), auteur, raison, statut, traité par (si applicable)
Les fichiers de logs incluent :
- Création de rapports
- Prise en charge de rapports
- Suppression de rapports
⚙️ Configuration
La commande peut être activée ou désactivée dans le fichier config.yml :
commands:
report:
enabled: true # Passer à false pour désactiver la commande reportConfiguration des webhooks
reports:
webhook:
enabled: false # Activer ou désactiver les webhooks Discord
url: "" # URL du webhook Discord (laisser vide pour désactiver)⚠️ Restrictions et Notes
Pour les joueurs
- ❌ Impossible de se signaler soi-même
- ❌ Le joueur signalé doit être en ligne (pour les rapports de joueurs)
- ✅ La raison est obligatoire
🔄 Alias
/reports- Alias pour/report
💡 Astuces
Utilisation du GUI
Utilisez /report sans arguments pour ouvrir rapidement le GUI des rapports (en tant qu'admin)
Prise en charge rapide
Cliquez gauche sur un rapport non traité pour le prendre en charge instantanément
Suppression sécurisée
La suppression nécessite une confirmation pour éviter les erreurs
Webhooks Discord
Configurez les webhooks pour être notifié même hors jeu
Logs
Consultez les logs dans plugins/Horizons/logs/reports/ pour un historique complet
🐛 Dépannage
Le GUI ne s'ouvre pas
- Vérifiez que vous avez la permission
horizons.report.see - Vérifiez que la commande est activée dans
config.yml
Les webhooks ne fonctionnent pas
- Vérifiez que
reports.webhook.enabledest àtrue - Vérifiez que l'URL du webhook est correcte
- Vérifiez les logs du serveur pour les erreurs potentielles
Impossible de supprimer un rapport
- Vérifiez que vous avez la permission
horizons.report.delete - Utilisez le clic droit sur le rapport dans le GUI