Tags
Creators
Details
Licensed MIT
Published 4 months ago
All versions
1.2.1
Release
BetterPunish 1.2.1last week 4
Compatibility
Minecraft: Java Edition
1.21.11
Platforms
Paper
Purpur
Changes
☠️ BetterPunish v1.2.1 - New Additions
This release introduces major moderation power-ups, full cheat detection integration, player reports, and evidence management.
🚀 New Features
1. Alt-Account Detection
- IP Tracking Database: Automatically logs player IP addresses (
player_ipstable in Supabase or localplayer_ips.yml). - Join Alerts: When a player joins, the plugin scans for other accounts sharing that IP. If an alt-account is banned, staff members receive an in-game alert showing the banned account's name, Ban ID, and ban reason.
- Discord Logs: Sends real-time warning alerts to the Discord Webhook.
2. Mute Bypass Blocker
- Communication Blocked: Muted players can no longer bypass punishments via non-chat elements:
- Signs: Blocked from editing signs (sends warning).
- Books: Blocked from editing or signing books (sends warning).
- Anvils: Blocked from renaming items (sends warning).
- PM Commands: Blocked from using messaging commands (
/msg,/tell,/w,/r).
- Shadowmute Interception: Shadowmuted players receive fake success feedback so they believe their message went through:
- Fake Sign Edits: The server sends client-side packets (
sendSignChange) so the player sees their text on the sign, but other players see a blank sign. - Fake PMs: Displays a fake
[me -> Target] messagefeedback to the sender. - Staff Alerts: Staff and console receive hidden notifications (
[Shadow Sign],[Shadow Book],[Shadow Rename],[Shadow PM]) to monitor their activity.
- Fake Sign Edits: The server sends client-side packets (
3. In-Game Report System
- Command: Players can report rule-breakers via
/report <player> <reason>. - Staff Reports GUI (
/reports): Interactive menu displaying heads of reported players.- Left-Click: Teleport directly to the reported player.
- Right-Click: Claim the report (status changes to
CLAIMED, marking it for your investigation). - Shift + Right-Click: Mark the report as
RESOLVED. - Middle-Click: Open the punishment dashboard (
/punishgui) for that player.
4. Vulcan AntiCheat Integration (Sus Menu)
- Suspicion Scoring: Connects with Vulcan Anticheat. Tracks player kick histories and individual check flags to calculate a live suspicion score.
- Suspects Dashboard (
/susor/suspects): Shows heads of suspicious players sorted by score.- Hover Details: Shows suspicion score, total kicks, and a list of all check flags with individual counts.
- Left-Click: Teleport to the suspect.
- Right-Click: Reset the player's suspicion score.
- Middle-Click: Open the punishment dashboard (
/punishgui).
- Automated Alerts: Alerts staff members and Discord if a player's score crosses the configurable threshold (default: 50).
5. Multiple Proofs Evidence Management
- Command:
/proof <add|remove|list> <id> [url]allows staff to manage proof links for any ban or mute ID. - Cloud Syncing: Automatically joins proofs using
|and patches the database columnproofson Supabase.
⚙️ Command & Sync Improvements
- Command Autocomplete: Added tab-completion support for
/unbanand/unmutecommands. - Database Pull Command: Added
/punishpullto pull all active and historical punishments from Supabase back into your local storage file (punishments.yml).
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:61dNEC9e:bTzX5QwK"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:61dNEC9e:bTzX5QwK"
}

