Tags
Creators
Details
1.3
Compatibility
Required content
Changes
🚀 Update Release - v1.3
Welcome to the major v1.3 update for mzFriends! This release brings a feature-complete upgrade, making the plugin much more robust, interactive, and user-friendly for both players and server admins.
✨ What's New in v1.3:
- Interactive Inventory GUI: Access your friends list through a clean, dynamically paginated chest menu (
/friend guior/friend menu) supporting up to 54 slots (6 rows) with custom player heads (PLAYER_HEAD). - Join & Leave Notifications: Stay connected! Get instant chat alerts (
[+] Your friend Steve joined the game!) when friends join or disconnect, fully togglable via/friend toggle. - Per-Player Language Support: Personalized experience for everyone! Players can now set their own preferred language using
/friend lang <lang_code>(e.g.,/friend lang plor/friend lang en). - PlaceholderAPI Support: Integrated soft-dependency with a built-in
FriendsExpansionclass registering%mzfriends_count%and%mzfriends_online%placeholders. - Anti-Spam Cooldown System: Protect your server from request flooding with a configurable cooldown timer (30 seconds by default in
config.ymlundersettings.requests.cooldown). - New Informational Commands: Easily manage and view your list using
/friend online,/friend count, and/friend info <nick>to check detailed player stats and database-stored "Last Seen" timestamps.
💾 Database Changes:
- Automatic Migrations: Updated the database schema (
DatabaseManager.java) with two new columns in theplayerstable:notifications_enabled (BOOLEAN)andlang (VARCHAR). Existingfriends.dbfiles migrate automatically without any data loss.
🛠️ What's Next?
- Compile the plugin and drop it onto a server running PlaceholderAPI to test all the new interactive features in action!
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:fTwxV7YW:S0JWorRS"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:fTwxV7YW:S0JWorRS"
}

