Slash Report

Slash Report

SlashReport is a lightweight but feature-complete Minecraft plugin for Paper 26.2 that streamlines player reporting on multiplayer servers.

1 downloads

Slash Report — Network Reporting Suite

Platform Version Author

A complete, production-ready player report and moderation suite for Minecraft server networks. Slash Report bridges Paper sub-servers, BungeeCord / Velocity proxies, and Discord into a unified, real-time report pipeline with in-game chest GUIs, interactive Discord embeds, and network-wide staff notifications.


Architecture Overview

Slash Report consists of two complementary components that work together across your network:

                          ┌───────────────────────────┐
                          │   Discord Staff Channel   │
                          │(JDA Bot / Claim & Resolve)│
                          └─────────────▲─────────────┘
                                        │
                                        │ (Central JDA Bot)
                                        │
┌─────────────────────────┐      Plugin Messaging    ┌──────────────────────────┐
│  Paper Sub-Server #1    │    ───────────────────►  │   BungeeCord / Velocity  │
│ (Chest GUIs / /report)  │    ◄───────────────────  │       Proxy Plugin       │
└─────────────────────────┘   Network Notifications  │  (Central Hub / Alerts)  │
                                                     └─────────────┬────────────┘
┌─────────────────────────┐                                        │
│  Paper Sub-Server #2    │ ───────────────────────────────────────┘
│ (Chest GUIs / /report)  │
└─────────────────────────┘
  1. Paper Edition (Report Paper): Installed on your backend Minecraft sub-servers (Survival, Skyblock, Minigames). Handles player-facing chest GUIs (ReasonSelectGui), staff chest GUIs (ReportListGui, ReportDetailGui), and local Brigadier commands.
  2. Proxy Edition (Report BungeeCord): Installed on your proxy (BungeeCord / Waterfall / Velocity). Serves as the central network hub, hosts the single Discord JDA bot, aggregates reports, stores them in MySQL, and broadcasts real-time alerts to staff connected to any server.

Compatibility

Platform / Layer Supported Notes
Paper (1.20.x – 1.21.x) Backend sub-servers (Purpur / Pufferfish compatible)
BungeeCord Proxy network loader
Waterfall Proxy network loader
Velocity Supported via bungeecord-plugin-compat = true
Minecraft Clients ✅ 1.8 – 1.21+ Supported for players via ViaVersion / ViaBackwards
Spigot / CraftBukkit Missing Paper Brigadier & Lifecycle APIs

Features

Player-facing

  • In-Game Reason Picker GUI: /report <player> opens an interactive 3-row chest GUI to select a report reason.
  • Direct Command Filing: /report <player> <reason> [details...] with full tab-completion.
  • Short Alias: /rep for fast access.
  • Anti-Spam Cooldown: Configurable per-player cooldown (default: 60 s).
  • Smart Duplicate Collapsing: Filing the same report twice updates the existing report instead of creating noise.

Staff-facing (In-Game)

  • Paper Staff Chest GUIs:
    • /reports gui [open|claimed|closed] — 6-row paginated staff chest GUI with player-head icons and status filters.
    • 3-row report detail GUI with direct Claim and Close buttons inside the chest container.
  • Network-Wide Chat Alerts: Immediate notification broadcast across all connected sub-servers when a report is filed.
  • Origin Server Tracking: Displays [origin_server] labels (e.g. [survival-1]) in chat alerts, commands, and Discord embeds.
  • Staff Commands: /reports list, /reports view, /reports claim, and /reports close.

Discord Integration

  • Single Central Bot: Runs on the proxy (only 1 bot needed for your entire network).
  • Rich Embeds: Live JDA 6.5.0 bot posts detailed embeds with target player-head thumbnails and server origin labels.
  • Interactive Buttons: Staff-role-gated Claim and Resolve buttons on Discord embeds.
  • In-Place Updates: Embeds update status in-place when claimed or resolved — no channel clutter.
  • Graceful Degradation: In-game reports continue working uninterrupted even if Discord goes offline.

Data & Network Sync

  • MySQL Support: Shared database synchronization across proxy nodes and backend Paper sub-servers.
  • SQLite Support: Zero-config option for single-node setups.
  • Plugin Messaging Pipeline: Utilizes BungeeCord subchannels (reportplugin:report & reportplugin:notify) for sub-millisecond packet forwarding.

Deployment & Setup Guide

1. Proxy Setup (Report BungeeCord)

  1. Place ReportPlugin-BungeeCord-1.2.0+bungee.jar into your proxy's plugins/ directory.
  2. Start the proxy to generate plugins/ReportPlugin/config.yml.
  3. Configure your MySQL credentials under storage: and enter your Discord bot token under discord:.
  4. If using Velocity, ensure bungeecord-plugin-compat = true is set in velocity.toml.

2. Backend Sub-Server Setup (Report Paper)

  1. Place ReportPlugin-1.1.0+paper26.2.jar into each backend Paper server's plugins/ directory.
  2. Set network.cross-server-enabled: true and assign a unique network.server-name (e.g. survival-1) in plugins/ReportPlugin/config.yml.
  3. Point storage: to the same MySQL database used by the proxy.

Commands & Permissions

Commands

Command Platform Description
/report <player> Paper Open reason-select chest GUI
/report <player> <reason> [details] Both File a report directly
/reports list [status] [page] Both List reports (filterable)
/reports view <id> Both View report details
/reports claim <id> Both Claim a report
/reports close <id> [note] Both Close/resolve a report
/reports gui [status] Paper Open staff report-list chest GUI

Permissions

Permission Default Description
report.report true File reports
report.staff op View/manage reports + receive alerts
report.immune false Cannot be reported
report.admin op Full admin access

No gallery available for this project.