Tags
Creators
Details
Licensed ARR
Published 2 years ago
Updated last month
All versions
1.1.0
Release
1.1.0last month 28
Compatibility
Minecraft: Java Edition
26.2
Platforms
Paper
Purpur
Changes
What's new for server owners
- Paper 26.2 / Java 25 — built against the current Paper API. Spigot is no longer supported; use Paper or a Paper fork (Purpur etc.).
- First-join messages — a new
player-first-join-messageslist is used the very first time a player joins, so newcomers don't get a "Welcome back!". Leave the list empty to reuse the normal join messages. - PlaceholderAPI support — any PAPI placeholder (
%player_displayname%,%vault_prefix%, …) works in messages when PlaceholderAPI is installed.%player%still works without it. - Hex colors —
&#rrggbbworks alongside the usual&acodes. - Silent join/leave permission — players with
joinleavenotifier.silentjoin and leave without a broadcast. Handy for staff and alts without needing a vanish plugin. - Vanish support actually works now — v1.0.2 advertised SuperVanish support, but the check was never wired to the join/leave events, so vanished players were still announced. Fixed. Also covers PremiumVanish, EssentialsX and any plugin that sets the standard
vanishedmetadata. - Toggle each side —
join-enabled: false/leave-enabled: falsesilence join or leave messages entirely. - Config upgrades itself — new keys are added to your existing
config.ymlwith their defaults; nothing you've customised is touched. - bStats — anonymous usage metrics, opt out globally in
plugins/bStats/config.yml.
Changes (technical)
- Migrated from
spigot-api 1.21.1topaper-api 26.2.build.123-stable;api-versionis now26.2; Java 21 → 25 - Join/leave messages are now set via Paper's Adventure
PlayerJoinEvent#joinMessage(Component)/PlayerQuitEvent#quitMessage(Component)instead of the deprecatedStringsetters - Removed the
MCDevTools,LombokandSuperVanishdependencies — replaced by Adventure'sLegacyComponentSerializer(withhexColors()), a plainregisterEventscall, and the metadata check respectively - Collapsed
ConfigLoader/ConfigProviderintoJoinLeaveNotifier#loadConfig(), which uses Bukkit'scopyDefaults(true)to backfill missing keys from the jar'sconfig.yml;MessageProcessorreads config live so/jln reloadis justreloadConfig() - Merged
PlayerJoinListenerandPlayerQuitListenerintoJoinLeaveListener - Added
bstats-bukkit 1.8(shaded and relocated) — plugin id is0(metrics disabled) until one is registered - Added
placeholderapi 2.12.3as aprovideddependency andsoftdepend - Added a JUnit test for the no-repeat random message picker
maven-shade-pluginbumped to 3.6.2 (3.6.0 cannot read Java 25 class files)- Release workflow rewritten: manual
workflow_dispatch(snapshot/release), release notes pulled from this file, publishes to GitHub Releases and Modrinth - Bumped config version to
2
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:s47ATOIz:q8lSgaf5"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:s47ATOIz:q8lSgaf5"
}

