Tags
Creators
Details
0.3.0
Compatibility
Changes
โก PRAXIC 0.3.0 โ Integrations & API
Server-side AntiCheat for Fabric 1.21.1 โ No client installation required. This update adds server integrations, a public API for other mods, and a new stats command for server administrators.
๐ Update Checker
Automatically checks Modrinth for new versions on every server start.
Notifies all online OP2+ players on join if a newer version is available.
The check is fully asynchronous โ zero impact on server startup time.
Can be disabled in config/praxic.json.
| Config key | Default |
|---|---|
enableUpdateChecker |
true |
๐ก Discord Webhook
Sends a rich embed alert to a Discord channel on every violation flag.
Each embed includes: player name, check name, violation count, details and action taken.
Color-coded by severity: ๐ flagged, ๐ด kicked, ๐ด banned.
Disabled by default โ enable it in config/praxic.json:
set enableDiscordWebhook to true and paste your webhook URL into discordWebhookUrl.
| Config key | Default |
|---|---|
enableDiscordWebhook |
false |
discordWebhookUrl |
YOUR_WEBHOOK_URL_HERE |
How to get a webhook URL: Discord โ Channel Settings โ Integrations โ Webhooks โ Create Webhook โ Copy URL
๐ง OnViolation API
A Fabric event that fires on every PRAXIC violation flag.
Other mods can listen to PraxicViolationEvent.EVENT to react to violations.
Each event exposes:
playerโ the flagged ServerPlayercheckNameโ name of the triggered check (e.g."FlyCheck")violationsโ current violation count for this checkdetailsโ human-readable details of the violationactionโ action taken:flag,warn,kick, orban
Use cases: custom punishments, economy penalties, external logging, custom alerts.
๐ Stats Command
New /praxic stats command available to all OP2+ operators.
Displays a live summary of the current server session:
- Total flags โ how many times any check has fired
- Top checks โ top 3 most triggered checks with flag counts
- Top players โ top 3 most flagged players with total violation counts
Stats are tracked in-memory and reset on server restart.
โ๏ธ Technical Changes
PraxicViolationEventregistered as a standard Fabric array-backed event.PraxicStatsuses thread-safeAtomicIntegercounters.DiscordWebhookandUpdateCheckeruse Java 21HttpClientโ fully async.ViolationManagerrefactored:resolvedActioncomputed once and shared across logging, Discord, API event and punishment logic.- Internal version bump to 0.3.0.
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:CNFXCX5H:pziClrQV"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:CNFXCX5H:pziClrQV"
}

