Admini — All-in-One Player Management & Moderation
Stop juggling five different moderation plugins. Admini puts every tool your staff team needs — bans, mutes, kicks, warns, player lookups, inventory inspection, staff vanish, player reports, and ban appeals — behind a single command, /admini, with a clean GUI and full chat-command support side by side.
What it does
One command, one menu
/admini opens a hub with everything: Ban List, Mute List, Ban/Mute/Kick/Warn a Player, Online Players, Player History, Player Lookup, Reports, and a one-click Vanish toggle. No sub-menus to memorize.
A real ban list — not just a flat text file
Every active ban shown as a player head with name, reason, and live time-remaining. Sort it instantly by:
- Time remaining (soonest first)
- Time remaining (longest first)
- Name (A–Z)
- Reason (A–Z)
Mute list works identically.
Guided punishment flow
Pick a player's head → pick a reason from a clean menu → pick a duration → confirm. Same flow for bans, mutes, kicks, and warnings. Every step has a back button — nothing happens until you hit confirm.
Or skip the GUI entirely
/ban Steve 7d Hacking
/mute Steve 1h Spamming
/kick Steve AFK
/warn Steve Toxicity
/unban Steve
/unmute Steve
Full tab-completion on player names and duration shorthand (10m, 2h, 7d, perm).
Per-player quick actions
Click any online player's head for instant Ban / Mute / Unmute / Kick / Warn / View History / Inspect / Lookup — one menu, no digging.
Player Lookup — join history, playtime, and alt detection
See first/last joined, total playtime, and known alt accounts for any player — online or offline (/lookup <player>). Alts are detected by matching a hashed fingerprint of their connecting IP, never the raw address itself — nothing in Admini ever stores or displays an actual IP, only whether two accounts share one.
Inspect Mode — see without teleporting
Pull up a read-only snapshot of any online player's inventory or ender chest straight from the quick-actions menu, or /inspect <player> [ec]. It's a snapshot with a manual refresh button rather than a live editable view — by design, so there's zero risk of accidentally duplicating or deleting someone's items while you're just looking.
Staff Vanish — disappear without disconnecting
/vanish makes you look exactly like you left the server to everyone without permission to see through it: removed from the player list, a normal "X left the game" message. Other staff get an honest "X has vanished" notice instead, so nobody on the team gets fooled, and staff can still see and coordinate with each other.
Player Reports — a real queue, not a shout into chat
Any player can flag another with /report <player> <reason> (rate-limited to stop spam). Staff get an instant alert plus a Reports queue in the GUI — left-click a report to jump straight into quick actions on that player, right-click to dismiss it.
Ban Appeals built in
Every ban gets a short reference code shown to the banned player (e.g. "Reference code: A1B2C3D4") — so even though they can't log in to look anything up themselves, they can still reference their specific ban when reaching out. Staff resolve any code instantly with /admini findcode <code>. Optional: point a Discord webhook URL in the config at your staff channel and get every ban posted there automatically, the moment it happens.
Ban Immunity — protect specific accounts, your way
A dedicated permission, admini.banimmune, that — unlike every other permission in Admini — does not default to op. It has to be explicitly granted, so you decide exactly which accounts can never be banned through this plugin, even by another staff member or a compromised account. Works with any permissions plugin for online targets, and additionally checks LuckPerms directly for offline targets, since LuckPerms persists permission data even when a player isn't connected.
Real-time staff alerts
Get notified the instant a banned player tries to rejoin, or a muted player tries to speak — so you know your punishments are actually holding.
Configure everything, code nothing
Reasons, duration presets, every player-facing message, report cooldowns, and the ban appeal webhook all live in config.yml. Add your own and they show up in the GUI immediately.
Why Admini
- One plugin instead of five or six. Less bloat, fewer permission nodes to manage, one config to learn.
- Built for real moderation teams, not just solo owners — every action is logged with who did it and why, queryable per-player at any time.
- Custom enforcement, not a vanilla ban-list wrapper — full temp-ban and temp-mute support with real countdowns and custom reasons, enforced on join and on chat.
- GUI for speed, commands for muscle memory — your whole team can use whichever they're faster with.
- Privacy-conscious by design — alt detection never stores or shows a raw IP address, only a one-way hash used purely for matching.
Commands & Permissions
| Command | Permission | Default | Description |
|---|---|---|---|
| /admini | admini.use | op | Opens the management GUI |
| /admini findcode <code> | admini.use | op | Looks up a punishment by appeal code |
| /ban <player> <duration> <reason> | admini.ban | op | Ban with duration + reason |
| /mute <player> <duration> <reason> | admini.mute | op | Mute with duration + reason |
| /kick <player> <reason> | admini.kick | op | Instant kick with reason |
| /warn <player> <reason> | admini.warn | op | Logged warning |
| /unban <player> | admini.unban | op | Revoke an active ban |
| /unmute <player> | admini.unmute | op | Revoke an active mute |
| /vanish | admini.vanish | op | Toggle staff vanish |
| /report <player> <reason> | admini.report | everyone | Report a player for staff review |
| /lookup <player> | admini.use | op | Open the lookup GUI for any known name |
| /inspect <player> [ec] | admini.inspect | op | Read-only inventory/ender chest snapshot |
| (target-side, not a command) | admini.banimmune | not granted by default | Exempts the holder from being banned |
admini.alerts (default op) separately controls whether someone receives staff alerts — it doesn't gate any action on its own.
Dependencies
- Required: Paper, or a Paper fork (Purpur, Pufferfish), 1.20.x or newer (tested working on 1.21.11). Plain Spigot/CraftBukkit is not supported — Admini uses several Paper-only APIs.
- Required: Java 17 or newer on the server.
- Optional (soft dependency): LuckPerms — fully optional. Admini works with any permissions plugin, or none at all, for everything except one specific case: checking admini.banimmune for a player who is currently offline. That specific check requires LuckPerms, since it's the only common permissions plugin that exposes permission data for offline players. Ban immunity for online players works regardless of which permissions plugin you use.
- No database, no other plugin dependencies. All data is stored locally in flat files and survives restarts.
Licensing & Activation (DRM)
This resource uses license key activation. License keys are issued and verified by Lukittu, a free, open-source Minecraft licensing service (not affiliated with BuiltByBit). You don't need to sign up for anything or take any manual action: your personal license key is generated and delivered automatically inside your download the moment you purchase, via BuiltByBit's own placeholder system. The plugin checks that key against Lukittu's servers once when it starts up.
Got a feature request or found a bug? Drop a review or message — this plugin is actively maintained.
