Bukkit#broadcastMessage does not reach all players
Expected behavior
All online players should receive messages
Observed/Actual behavior
Some of player didnt receive broadcast message
Steps/models to reproduce
Bukkit.broadcastMessage("test1 ");
or
Bukkit.broadcast(Component.text("test2 "));
Plugin and Datapack List
a broadcast test plugin
Folia version
1.21.7 latest version
Other
No response
Same happen on 1.21.8
What tick is this being run on? A region tick or the global tick? And if it's the region tick, are you(the player) in a different region or the same region?
What tick is this being run on? A region tick or the global tick? And if it's the region tick, are you(the player) in a different region or the same region?
public boolean onCommand(@NotNull CommandSender sender,
@NotNull Command cmd,
@NotNull String label,
String @NotNull [] args) {
Bukkit.broadcastMessage("test 1");
Bukkit.getServer().getGlobalRegionScheduler().run(plugin, _ -> {
Bukkit.broadcastMessage("test 2");
});
Bukkit.getServer().getAsyncScheduler().runNow(plugin, _ -> {
Bukkit.broadcastMessage("test 3");
});
Are you sure the player has https://jd.papermc.io/paper/1.21.8/org/bukkit/Server.html#BROADCAST_CHANNEL_USERS bukkit.broadcast.user permission, as referenced in broadcast's javadocs?
Are you sure the player has https://jd.papermc.io/paper/1.21.8/org/bukkit/Server.html#BROADCAST_CHANNEL_USERS
bukkit.broadcast.userpermission, as referenced in broadcast's javadocs?
for (Player player : Bukkit.getOnlinePlayers()) {
Bukkit.broadcastMessage(player.getName() + " " + player.hasPermission(BROADCAST_CHANNEL_USERS));
}
But player does receive broadcast message after make him operator With the same plugin on paper or purpur , anyone can receive it.
Can you try Bukkit.getServer().sendMessage() if it would fit you as a temporary replacement until this will be fixed?
Bukkit.getServer().sendMessage() it work!