diff --git a/Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java index 923ab8dab1a..9d25f77978f 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java +++ b/Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java @@ -450,7 +450,10 @@ private void joinFlow(final User user, final long currentTime, final String mess effectiveMessage = message; } - joinMessageConsumer.accept(effectiveMessage); + // Only change the vanilla join message if it's different to avoid nuking client translation + if (effectiveMessage != null && !effectiveMessage.equals(message) || message != null && effectiveMessage == null) { + joinMessageConsumer.accept(effectiveMessage); + } ess.runTaskAsynchronously(() -> ess.getServer().getPluginManager().callEvent(new AsyncUserDataLoadEvent(user, effectiveMessage)));