qSecuritySystem
A universal plugin that provides a complete set of server management tools, including moderation, a report system, player monitoring, anti-cheat checks, and much more.
qSecuritySystem
qSecuritySystem
Powerful all-in-one moderation plugin for Spigot/Paper 1.16.5 – 1.21.4.
`qSecuritySystem` provides a complete moderation workflow for real servers: punishments, player checks, reports GUI, audit logging, and optional Telegram alerts.
---
Why qSecuritySystem?
- Full moderation toolkit in one plugin - Punishment history with filters and pagination - Reports workflow with GUI actions (open / approve / reject) - Persistent audit trail (`audit-log.jsonl`) - Optional Telegram notifications for punishments, checks, and reports - No required external plugins
---
Core Features
| Feature | Command | Permission | |---|---|---| | Ban player | `/ban <player> [duration] [reason] [-s]` | `qsecurity.ban` | | Mute player | `/mute <player> [duration] [reason] [-s]` | `qsecurity.mute` | | Kick player | `/kick <player> [reason] [-s]` | `qsecurity.kick` | | Unban player | `/unban <player> [reason]` | `qsecurity.unban` | | Unmute player | `/unmute <player> [reason]` | `qsecurity.unmute` | | IP ban | `/ipban <ip|player> [reason]` | `qsecurity.ipban` | | Unban IP | `/unipban <ip>` | `qsecurity.unipban` | | Punishment history | `/hist <player> [BAN|MUTE|KICK|ALL] [page]` | `qsecurity.history` | | Check ban info | `/checkban <player>` | `qsecurity.checkban` | | Check mute info | `/checkmute <player>` | `qsecurity.checkmute` | | AnyDesk check | `/check <player>` | `qsecurity.check` | | Confession flow | `/check confession` | `qsecurity.check` | | Spectate player | `/spec <player>` | `qsecurity.spec` | | Toggle vanish | `/v` | `qsecurity.vanish` | | Staff list | `/stafflist` | `qsecurity.stafflist` | | Reports GUI | `/reports [open|closed]` | `qsecurity.reports` | | Report player | `/report <player> <reason>` | `qsecurity.report` | | Help menu | `/qhelp` | — | | Reload config | `/qsecurity reload` | `qsecurity.reload` |
---
Duration Format
`/ban` and `/mute` support:
- `s` = seconds - `m` = minutes - `h` = hours - `d` = days - no suffix = days
Examples:
```bash /ban Steve 30m Spam /ban Steve 7d Cheats -s /mute Alex 1h Flooding /ban notch ```
---
AnyDesk Check System
The `/check` command starts a player verification flow. The checked player is restricted and receives instructions in chat.
Outcomes:
- `/check confession` → confession punishment - disconnect during check → disconnect punishment - timeout → check ends cleanly
---
Audit Log
All moderation actions are written to:
`plugins/qSecuritySystem/audit-log.jsonl`
---
Telegram Notifications (Optional)
Telegram integration is configured in:
`plugins/qSecuritySystem/telegram.yml`
Default template config:
```yaml telegram: enabled: false bot-token: "" chat-id: "" send-check-events: true parse-mode: "MarkdownV2" # MarkdownV2 | Markdown | HTML | none messages: audit: "🛡 *<action>*n*Mod:* <moderator>n*Target:* <target>n<details_lines>" check: "🕵 *<action>*n*Mod:* <moderator>n*Player:* <target>n<note_line>" report: "📨 *<action>*n*Mod:* <moderator>n*Reporter:* <reporter>n*Player:* <reported>n*Reason:* <reason>n<note_line>" ```
---
Database
Supports both:
- MySQL (default) - MySQL
```yaml database: type: "sqlite" # sqlite | mysql ```
---
