Requisiti
- Server Paper 1.21 o superiore
- Java 21+
- Un database MySQL o MariaDB (le segnalazioni vengono salvate lì)
Installazione
- Copia
ReportSystem-1.1.0.jarnella cartellaplugins/del server. - Avvia il server una volta e poi fermalo: viene creato
plugins/ReportSystem/config.yml. - Apri
config.ymle inserisci la chiave di licenza e i dati del database. - Riavvia. In console deve comparire
Licenza verificata.
Licenza
Dopo l'acquisto trovi la chiave in Area clienti → Licenze su sononiko.it. Incollala qui:
license-key: "SN-XXXXX-XXXXX-XXXXX-XXXXX"
Senza una chiave valida il plugin si disattiva all'avvio. La licenza è legata al server: se cambi hosting usa "Cambia IP / server" nell'area clienti (fino a 3 volte).
Come funziona
- I giocatori aprono
/report(menu) oppure usano/report <giocatore> [motivo]. - Si possono segnalare solo giocatori online.
- Dal menu il giocatore vede le proprie segnalazioni con lo stato (aperto, preso in carico, chiuso), può annullarle o crearne di nuove.
- Ogni segnalazione viene inviata anche su Discord tramite webhook.
- Lo staff gestisce tutto dal pannello
/reportadmin, anche senza OP (via permessi).
Comandi
| Comando | Descrizione | Permesso |
|---|---|---|
/report |
Apre il menu per segnalare | reportsystem.report |
/report <giocatore> [motivo] |
Segnala direttamente | reportsystem.report |
/reportadmin |
Apre il pannello staff | reportsystem.admin |
/reportadmin view <id> |
Apre una segnalazione | reportsystem.admin |
/reportadmin reload |
Ricarica config e messaggi | reportsystem.reload |
/reports è un alias di /reportadmin.
Permessi
| Permesso | Cosa fa | Default |
|---|---|---|
reportsystem.report |
Usare /report |
tutti |
reportsystem.admin |
Aprire il pannello staff | op |
reportsystem.notify |
Ricevere le segnalazioni in chat | op |
reportsystem.admin.teleport |
Teletrasportarsi dal segnalato | op |
reportsystem.admin.delete |
Eliminare una segnalazione | op |
reportsystem.reload |
Ricaricare la configurazione | op |
reportsystem.bypass.cooldown |
Ignorare il cooldown | op |
reportsystem.exempt |
Non poter essere segnalato | nessuno |
Staff senza OP (LuckPerms)
/lp group staff permission set reportsystem.admin true
/lp group staff permission set reportsystem.notify true
/lp group staff permission set reportsystem.exempt true
/lp group admin permission set reportsystem.reload true
Configurazione
Voci principali in config.yml:
server-name: nome mostrato su Discord e nel pannello.database: host, porta, nome, utente e password del database.discord.webhook-url: URL del webhook Discord per le notifiche.settings.cooldown-seconds: attesa tra due segnalazioni.settings.max-open-reports: segnalazioni attive massime per giocatore (0= illimitate).settings.prevent-duplicate: vieta di segnalare due volte lo stesso giocatore.reasons: i motivi del menu, ognuno con testo, icona e descrizione (massimo 14).
I testi si cambiano in language.yml. Dopo una modifica: /reportadmin reload.
Note multi-server
Se più server usano lo stesso database, il pannello mostra le segnalazioni di tutti (il server d'origine è indicato nella segnalazione). Notifiche in chat e teletrasporto funzionano solo per i giocatori sul server corrente; Discord riceve tutto.
Risoluzione problemi
- "Licenza non valida" all'avvio → chiave errata o IP cambiato: verifica la chiave e usa "Cambia IP / server" nell'area clienti.
- Il plugin non parte / errori database → controlla host, porta e credenziali nella sezione
database. - Nessuna notifica su Discord →
discord.webhook-urlmancante o errato.