Aller au contenu

Reports et tickets

Le module reports permet aux joueurs de signaler un joueur ou un problème, et au staff de traiter ces signalements depuis des menus. Il gère aussi les tickets, des demandes d’aide adressées au staff. Options : config/reports.yml.

/reportplayer <joueur> [raison] signaler un joueur (alias /signaler)
/report [raison] signaler un problème (alias /signalement)
/ticket <message> demander de l’aide (alias /aidestaff)
/mesreports suivre ses signalements (alias /myreports)

Le joueur est prévenu des changements de statut de ses reports (pris en charge, résolu, rejeté) et, à la connexion, reçoit un rappel de ses reports actifs et des changements qu’il a manqués.

Option Défaut Effet
require-reason true Raison obligatoire quand aucune raison prédéfinie n’existe (demandée au chat sinon)
reason-max-length 120 Longueur maximale de la raison
max-open-per-player 3 Reports actifs maximum par joueur (0 = illimité)
deny-duplicates true Refuse un 2e report actif du même joueur sur la même cible
tickets.max-open-per-player 2 Tickets ouverts maximum par joueur

Un délai entre deux reports se donne par permission : cobaltstaff.report.cooldown.<durée> (par exemple cobaltstaff.report.cooldown.30s), et cobaltstaff.ticket.cooldown.<durée> pour les tickets. Un joueur ayant cobaltstaff.reports.bypass ne peut pas être signalé (vérifié hors ligne via LuckPerms).

Quatre configurations sont possibles :

Raison libre, tapée dans la commande ou demandée au chat.

Types fournis : Triche (combat, fly/speed, X-ray, macro, autre), Comportement / chat (insultes, spam, publicité, menaces, autre), Grief / vol, Arnaque et Bug (duplication, faille exploitée, problème de jeu).

types:
triche:
name: "<gradient:#FF5A5A:#C81E1E><b>ᴛʀɪᴄʜᴇ</b></gradient>"
description:
- "<gray>Cheat, client modifié, X-ray,"
- "<gray>macro ou autoclick."
item: iron_sword
culprit: true # seulement pour un report sur un joueur
reasons:
xray: {name: "<white>X-ray", description: ["<gray>Trouve les minerais trop facilement."], item: diamond_ore}
autre: {name: "<white>Autre triche", item: paper, custom: true} # demande un texte au joueur
  • culprit: true : uniquement pour un report sur joueur ; false : uniquement sans joueur ; absent : les deux.
  • custom: true : la raison demande un texte libre au joueur.
  • item : un matériau Minecraft ou un identifiant d’item Nexo.
  • Messages de chat : les derniers messages du joueur signalé (10 par défaut, de moins de 15 minutes) sont joints au report.
  • Position : la position du joueur signalé est enregistrée s’il est en ligne, en plus de celle du reporter.
  1. OPEN — Le report est créé. Le staff ayant cobaltstaff.reports.manage.view est notifié, avec des boutons cliquables (voir, prendre, se téléporter).

  2. IN_PROGRESS — Un staff le prend en charge (reports.manage.accept). Avec claim-requires-staff-mode: true, il faut être en mode staff. Il peut aussi s’en retirer.

  3. RESOLVED ou REJECTED — Le staff assigné le résout (reports.manage.resolve) ou le rejette (reports.manage.reject), avec une raison de clôture si closing-reason-enabled est actif.

  4. OPEN à nouveau — Un report peut être rouvert, ou retiré à son staff assigné (reports.manage.reopen-other).

  5. DELETED — Suppression (reports.manage.delete) : le report est caché partout mais gardé dans l’historique, ou effacé de la base avec purge-deleted: true.

Chaque étape est enregistrée dans l’historique du report. Le staff ne peut pas traiter un report qui le concerne.

/reports gerer [id] | accept <id> hub de gestion
/reports chercher id= reporter= assignee= status= culprit= type= kind=
/reports <joueur> [clear] reports d’un joueur (lister ou vider)
/reports tp <id> [player] au lieu du report, ou au joueur signalé

Le hub donne accès aux reports en attente, en cours, fermés, à vos reports, à la recherche et aux tickets. Les listes se filtrent par statut et par type et se trient par date ou par nombre de reports.

La fiche d’un report affiche reporter, cible (en ligne ou non, gelée ou non), raison, preuves, historique, et des boutons vers les autres modules : spectate, examine, freeze, casier, notes, enquête et sanction. Ces boutons lancent des commandes configurables (actions) et sont masqués si la commande n’existe pas.

Option Effet
staff-notifications.permission Permission pour recevoir les nouveaux reports
staff-notifications.update-permission Permission pour les changements de statut
staff-notifications.sound Son de notification
staff-notifications.on-join Rappel à la connexion s’il reste des reports en attente
staff-notifications.action-bar Rappel périodique en barre d’action pour le staff en mode staff

/ticket <message> crée une demande d’aide (200 caractères maximum par défaut). Les tickets apparaissent dans le hub, dans une section séparée, et se traitent avec cobaltstaff.tickets.manage.

Chaque report peut avoir un canal de discussion entre le reporter et le staff (désactivé par défaut : channels.enabled).

/rc <id> <message> parler dans le canal
/canal rejoindre <id> rejoindre le canal (staff)
/canal quitter <id> quitter le canal
/canal fermer <id> fermer le canal (staff)

Le canal s’ouvre automatiquement aux statuts listés dans open-on (par défaut IN_PROGRESS) et se ferme à ceux de close-on (RESOLVED, REJECTED, DELETED).

Des commandes peuvent être lancées à chaque étape : create-commands, accept-commands, reopen-commands, resolve-commands, reject-commands, delete-commands. Variables disponibles : %id%, %type%, %reason%, %reporter%, %culprit%, %assigned%, %issuer%, %status%, %kind%, %hasculprit%. Format : voir Hooks.