
FortressCore
FortressCore is a comprehensive Minecraft server security plugin featuring AI-powered threat analysis,login/registration,anti-impersonation,IP scanning,automated chat moderation,watchlist monitoring,and advanced tools including bans,appeals,and audit log.
1.0.3
Compatibility
Changes
๐งฉ FortressCore v1.0.3 โโ Auto-updater
This release focuses on codebase health, compilation optimizations, and completing the integration of the automatic update and configuration migration systems.
๐ Features & Integration
โข Auto-Updater Integration: Configured ConfigMigrator to run automatically inside UpdateManager on plugin startup ( onEnable ). This ensures that your config.yml automatically gets updated with any new default keys, while legacy or removed keys are safely archived to config- legacy.yml .
๐ง Bug Fixes & Code Health
-
Resolved Compilation Errors: Fixed a missing Iterator import inside ConfigMigrator.java that was causing compilation failures in builds.
-
Codebase Warnings Sweep: Resolved all compiler warnings across the codebase.
-
Unused Code & Import Cleanup:
-
Removed unused imports from core files, manager classes, and AI modules.
-
Cleaned up redundant fields and local variables, such as the unused uniqueIps field in SecurityReportAI. java (now uses seenIps.size() for accuracy).
-
Suppressed warnings on intentionally defined fields reserved for upcoming features (such as maintenanceMode in ConfigManager ).
๐ฆ Technical & Compatibility
-
Verified Paper & Folia Support: Fully compiled and packaged with Paper/Folia API 1.21.1-R0.1-SNAPSHOT .
-
Clean Shading: Shaded dependency handling with jbcrypt and gson verified successfully.
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:j1c6esmR:nm1nAVNJ"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:j1c6esmR:nm1nAVNJ"
}
