All versions
2.2
Release
ResourceLoader 2.2last year 895
Compatibility
Minecraft: Java Edition
1.21–1.21.10
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
1.14.x
1.13.x
Platforms
Bukkit
Paper
Purpur
Spigot
Changes
Resource Pack Validation System
- Added
/checkpack <packname>command for comprehensive pack validation - Validates pack structure, JSON files, and texture references
- Checks pack.mcmeta format and compatibility with server version
- Provides detailed error reports and warnings
- Supports both local and URL-based pack validation
Performance Optimizations
- Implemented SHA1 hash caching system to prevent redundant downloads
- Added automatic cache cleanup with configurable retention periods
- Optimized pack serving with reduced memory footprint
- Enhanced file system event batching to reduce server load
Improved Pack Merging
- Enhanced JSON merging with intelligent handling of model files and blockstates
- Automatic pack format detection and compatibility adjustment
- Better conflict resolution for duplicate textures and assets
- Improved metadata preservation during merge operations
File System Operations
- Resolved recursive renaming loops and duplicate notifications
- Fixed file watcher to properly batch events and prevent spam
- Added processing locks and delays to handle rapid file system changes
- Improved file operation error handling and recovery
Monitoring and Statistics
- Added pack usage tracking and performance metrics
- Implemented player preference history with configurable limits
- Enhanced cache statistics and monitoring capabilities
- Improved validation result reporting with formatted output
Security and Stability
- Added input sanitization for pack names and file paths
- Enhanced permission validation throughout command execution
- Implemented safer file operations with atomic writes where possible
- Improved configuration protection against corruption
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:8yUJvGSE:l7KU3USi"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:8yUJvGSE:l7KU3USi"
}

