Advanced report system with Discord integration
Advanced report system for Minecraft servers with Discord integration and admin moderation tools
Download the latest release from Releases
Install the plugin:
cp ReportSystem-1.0.0.jar /path/to/server/plugins/
Start your server to generate configuration files
Configure Discord Bot:
MESSAGE CONTENTGUILD MESSAGESGUILD VOICE STATESEdit plugins/ReportSystem/config.yml:
language: "en-EN" # or "ru-RU"
discord:
use-bot: true
bot-token: "YOUR_BOT_TOKEN_HERE"
channel-id: "YOUR_CHANNEL_ID_HERE"
reports:
max-active-reports: 5
form-timeout: 300
history-limit: 18
Restart the server
| Command | Aliases | Description | Permission |
|---|---|---|---|
/report |
/rep |
Create a new report | reportsystem.report |
/reports |
- | View your reports | reportsystem.reports |
/report help |
- | Show help | reportsystem.report |
| Command | Description | Permission |
|---|---|---|
/report reload |
Reload configuration | reportsystem.admin.reload |
/unfreeze <player> |
Unfreeze a player | reportsystem.admin |
# Full access
reportsystem.*
# Player permissions
reportsystem.report # Create reports
reportsystem.reports # View own reports
# Admin permissions
reportsystem.admin # Access to all admin commands
reportsystem.admin.reload # Reload configuration
reportsystem.admin.stats # View statistics
/report in chat[YES] buttonApprove buttonban, mute, kick, or warn30m, 7d, 1y, or permanentCheck button/unfreeze <player> to unfreezeen-EN)ru-RU)locales/en-EN.yml to locales/your-lang.ymllanguage: "your-lang" in config.ymlThe plugin uses beautiful spring-themed gradients:
# Cherry Blossom → Peach
prefix: "<gradient:#FFB7C5:#FFDAB9>[Report]</gradient>"
# Mint → Fresh Green
report-success: "<gradient:#98FB98:#7FFF00>Report submitted!</gradient>"
<repository>
<id>jitpack</id>
<url>https://jitpack.io</url>
</repository>
<dependency>
<groupId>com.github.yourusername</groupId>
<artifactId>ReportSystem</artifactId>
<version>1.0.0</version>
</dependency>
// Get the plugin instance
ReportSystem plugin = ReportSystem.getInstance();
// Create a report programmatically
Report report = new Report(
"REP-" + System.currentTimeMillis(),
player.getUniqueId(),
player.getName(),
"Griefer123",
UUID.fromString("..."),
"Griefing",
"Destroyed spawn area"
);
// Save the report
plugin.getDataManager().saveReport(report);
// Send to Discord
plugin.getDiscordBot().sendReport(report);
View server-wide report statistics:
=== Report Statistics ===
Total reports: 156
Approved: 89
Rejected: 45
Pending: 22
language: "en-EN"
discord:
use-bot: true
bot-token: "YOUR_TOKEN"
channel-id: "YOUR_CHANNEL_ID"
reports:
max-active-reports: 5 # Maximum pending reports per player
form-timeout: 300 # Form timeout in seconds (0 = no timeout)
history-limit: 18 # Reports per page in GUI
locales/en-EN.yml - English translationslocales/ru-RU.yml - Russian translationsThe plugin features a beautiful spring-themed color scheme:
config.ymlreportsystem.reportGUILD_VOICE_STATES intent is enabledContributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project is licensed under the MIT License - see the LICENSE file for details.
Give a ⭐️ if this project helped you!
Made with 💚 for the Minecraft community