ModerationX
Advanced moderation plugin with GUI for Minecraft servers
📖About ModerationX
ModerationX - Advanced Minecraft Moderation Plugin
Overview
ModerationX is a comprehensive moderation solution for Minecraft servers featuring an intuitive GUI dashboard, powerful command system, and extensive customization options.
Perfect for server administrators who need robust player management tools.
GUI DASHBOARD (/mx gui)
Main Dashboard
Statistics Overview: Real-time ban counts (total, active, today, weekly)
Recent Activities: Last 5 moderation actions with color-coded status
Quick Navigation: One-click access to all features
⚙️ Management Sections
Ban Management - View and manage all player bans
History Viewer - Complete moderation history with player heads
Settings Panel ⚙️ - Extensive configuration options
COMMANDS & PERMISSIONS
Main Commands
/mx gui - Open moderation dashboard (moderationx.gui)
/mx reload - Reload configuration (moderationx.reload)
/mx help - Show help menu (none)
Ban Commands
/ban [reason] - Permanent ban (moderationx.ban)
/tempban
/banip <player/IP> [reason] - IP ban player or IP (moderationx.banip)
/tempbanip <player/IP>
/unban - Remove player ban (moderationx.unban)
/unbanip - Remove IP ban (moderationx.unbanip)
Mute Commands
/mute [reason] - Permanent mute (moderationx.mute)
/tempmute
/unmute - Remove mute (moderationx.unmute)
Other Commands
/kick [reason] - Kick player (moderationx.kick)
/warn - Warn player (moderationx.warn)
/history [type] - View player history (moderationx.history)
/dupeip - Find players with same IP (moderationx.dupeip)
Custom Commands
/mx predict Command
Description:
The predict command performs advanced anti-cheat analysis on a target player, detecting various forms of cheating including X-Ray mining patterns, Nuker (mass block destruction), and other suspicious behaviors. It uses machine learning-like metrics to analyze mining patterns and provides detailed statistics about the player's activity.
Usage:
/mx predict
Features:
X-Ray Detection: Analyzes ore ratio, mining straightness, direction changes, and Y-level focus to detect tunnel vision mining
Nuker Detection: Monitors blocks per second and material diversity to catch mass destruction hacks
Real-time Metrics: Shows current mining speed, ore ratios, pattern analysis, and suspicious activity scores
Configurable Thresholds: Uses values from config.yml for sensitivity tuning
Permission Check: Requires staff permissions to execute
Example Output:
=== Predict Analysis for [Player] ===
X-Ray Metrics:
Ore Per Hour: 45.2
Ore Ratio: 0.12
Straightness: 0.85
Direction Changes: 2
Nuker Metrics:
Blocks Per Second: 8.5
Unique Materials: 12
Analysis: Possible X-Ray - High ore ratio with focused mining
/mx ghostwatch Command
Description:
The ghostwatch command enables automatic monitoring mode for staff members. When active, the system continuously scans all online players for suspicious activities and automatically teleports staff to investigate potential cheaters. It includes multiple detection modules for different types of hacks.
Usage:
/mx ghostwatch
Features:
Automatic Monitoring: Scans all players every second for suspicious behavior
Multi-Hack Detection: Detects flight hacks, X-Ray mining, Nuker, KillAura, FastPlace, Jesus walking, and tool speed abuse
Smart Teleportation: Instantly teleports staff near suspicious players with detailed notifications
Player Freezing: Automatically freezes suspicious players to prevent escape during investigation
Cooldown System: Prevents spam notifications for the same player within configurable timeframes
Configurable Filters: Can be disabled for Creative/Adventure modes and respects player exemptions
Detected Activities:
Breaking blocks above configured blocks/minute threshold
Flying without permission (basic + advanced movement-based detection)
Walking on water (Jesus hack)
Excessive attack speed (KillAura)
Rapid block placement (FastPlace)
Rapid tool switching/breaking (FastBreak)
X-Ray mining patterns
Mass block destruction (Nuker)
Example Notification
[SPECTATOR TRIGGER] PlayerX detected for: Flying without operator privileges
/mx ghostwatch dismiss Command
Description:
The dismiss subcommand allows staff to manually end a ghostwatch investigation for a specific player. This unfreezes the player, allowing them to move freely again, and removes them from active monitoring.
Usage:
/mx ghostwatch dismiss
Features:
Targeted Dismissal: Removes a specific player from ghostwatch investigation
Player Unfreezing: Removes movement restrictions (slowness + jump boost effects)
Notification System: Informs both staff and the dismissed player
Bulk Dismissal: Using dismiss without a player name dismisses ALL frozen players
Safety Checks: Only works on players currently under ghostwatch investigation
Example Usage:
/mx ghostwatch dismiss BadPlayer123
Response:
Player BadPlayer123 has been dismissed from GhostWatch mode and can move freely again.
Configuration Integration
All commands integrate with config.yml settings:
Thresholds for detection sensitivity
Game mode restrictions
Bypass permissions
Cooldown timings
Enabled/disabled features
Permission Requirements
Commands require appropriate staff permissions
Players with moderationx.exempt are immune to detection
Specific bypass permissions available for trusted players
These commands work together to provide comprehensive anti-cheat monitoring with both automatic detection and manual analysis capabilities.
/mx toggle chatfilter:
Toggles on/off a chatfilter to prevent bad words,blasphemies, and numerical ip from being written in the chat.
There are already default words in the config, but you can add them as shown in the config, you can also disable /msg bypass for chatfilter.
/mx chunklock:
-lock [x,z] [world] [duration]: Locks chunks to prevent building
-Defaults to a 3x3 area around your location if no coordinates are provided
-Duration is in seconds (default: 300s / 5 minutes)
-Example: /mx chunklock lock 100,200 world 600 (locks for 10 minutes)
-unlock [x,z] [world]: Removes chunk protection
-Use all instead of coordinates to unlock all chunks (requires permission)
-list [page]: Shows a list of currently locked chunks
-wand: Gives you a selection wand for area locking
-Left-click to set first corner
-Right-click to set second corner
Use /mx chunklock lock to confirm the selection
Permissions:
moderationx.chunklock - Basic chunk lock access
moderationx.chunklock.bypass - Bypass chunk protection
-----
### PLACEHOLDERS & VARIABLES
Message Placeholders
Ban/Kick/Mute Messages:
- {player} - Target player name
- {reason} - Punishment reason
- {duration} - Punishment duration
- {expires} - Expiration date/time
- {staff} - Staff member name
- {ip} - IP address (IP bans only)
Warning Messages:
- {warning_count} - Current warning number
- {max_warnings} - Maximum warnings before action
Broadcast Placeholders
- {player} - Target player name
- {staff} - Staff member name
- {reason} - Punishment reason
- {duration} - Duration (temporary actions)
- {ip} - IP address (IP bans)
---
## ⚙️ CONFIGURATION FEATURES
️ Customization Options
- Custom Messages: Fully customizable ban/kick/mute messages
- Color Formats: Support for Minecraft color codes (&a, &c, etc.)
- Time Formats: Flexible duration parsing (1h, 2d, 1w, 30m)
- Broadcast Settings: Toggle broadcasts for each action type
️ Database Support
- SQLite (Default) - No setup required
- MySQL - For larger servers
- Data Retention - Configurable history cleanup
---
PERMISSION NODES
Wildcard Permissions
moderationx.admin:
description: Administrative access
children:
moderationx.ban: true
moderationx.unban: true
moderationx.gui: true
moderationx.reload: true
moderationx.ban:
description: Permission to ban players
default: op
moderationx.tempban:
description: Permission to temporarily ban players
default: op
moderationx.warnip:
description: Permission to warn players by IP
default: op
moderationx.banip:
default: op
description: Allows permanent IP banning.
moderationx.tempbanip:
default: op
description: Allows temporary IP banning.
moderationx.unbanip:
default: op
description: Allows unbanning of IP addresses.
moderationx.kickip:
default: op
description: Allows kicking of players by IP address.
moderationx.unban:
description: Permission to unban players
default: op
moderationx.kick:
description: Permission to kick players
default: op
moderationx.mute:
description: Permission to mute players
default: op
moderationx.tempmute:
description: Permission to temporarily mute players
default: op
moderationx.unmute:
description: Permission to unmute players
default: op
moderationx.warn:
description: Permission to warn players
default: op
moderationx.history:
description: Permission to view moderation history
default: op
moderationx.dupeip:
description: Permission to check duplicate IPs
default: op
moderationx.gui:
description: Permission to use the GUI
default: op
moderationx.reload:
description: Permission to reload configuration
default: op
moderationx.exempt:
description: Immunity from moderation
default: op
moderationx.predict:
description: Permission to use the risk prediction system
default: op
moderationx.flight.bypass:
description: Bypass flight detection
default: op
moderationx.chatfilter:
description: Permission to toggle chat filter
default: op
moderationx.chatfilter.bypass:
description: Bypass chat filter
default: op
---
KEY FEATURES
✅ Core Functionality
- Interactive GUI - Visual moderation dashboard
- Real-time Updates - Live statistics and activity feeds
- Player Heads - Visual identification in management GUIs
- Centered Layouts - Professional GUI design
✅ Advanced Features
- IP Banning - Ban entire IP addresses
- Temporary Punishments - Time-based bans/mutes
- Statistics - Comprehensive moderation analytics
- Broadcast System - Announce moderation actions
- History Tracking - Complete audit trail
✅ Automation
- Auto-Expiration - Automatic removal of expired punishments
- Warning System - Escalating actions for repeat offenses
- Data Cleanup - Automatic history pruning
---
QUICK START
1. Install - Place JAR in plugins folder
2. Configure - Edit config.yml for your server
3. Access - Use /mx gui for dashboard
4. Moderate - Use commands or GUI for actions
---
PRO TIPS
- Use color codes in messages for better visual appeal
- Set up warning limits for automatic moderation
- Enable broadcasts to deter rule-breaking
- Use IP bans for alt account prevention
- Regular history reviews for staff accountability
ModerationX - Your all-in-one solution for professional Minecraft server moderation! ️
--------
## EXTENSION SUPPORT
# 🚀 Dynamic Command Registration
Extensions are here! and can now register unlimited custom commands without modifying the main plugin source code:
Full Command Support: Permissions, aliases, and tab completion
Runtime Registration: Commands load instantly with /mx reload
Isolated Configuration: Each extension gets its own config folder
Complete API Access: Extensions can use all ModerationX managers and events
# 🔧 Enhanced Extension API
ExtensionCommand Interface: Simple command registration with
registerCommand()
Manager Integration: Direct access to BanManager, MuteManager, database, etc.
Event System: Listen to moderation events for custom automation
Independent Development: Extensions built as separate Maven projects
For example-extention, [here](https://drive.google.com/uc?export=download&id=1LgPuEKLWE0V94MdsGYJPgjQiDgPmJ_t3)
--------
# Command Blacklisting:
-Block commands globally or per-world with wildcard support
-Customize denial messages with placeholders
-Grant bypass permissions to trusted users
-Debug mode identifies plugin command sources
# GhostWatch:
-Silent monitoring when staff are offline
-Real-time alerts via extension API
-Shift-click GUI actions for efficiency
-Localization support for all messages
-Detailed detection logging
-Integration with predictive scoring
-Customizable investigation workflows
For more information, check [documentation/wiki](https://drive.google.com/uc?export=download&id=1Ce0Tz2GiPmhbY7ci7d149ZzUDxlPYTL0) page.