There is a function to call costum events: Code: getServer().getPluginManager().callEvent(new PlayerJoinEvent(new myPlayer, "Someone joined.")); But using it that way, won't actualy make bukkit behave as if a player joined. I would guess that bukkit does not listen plugins for those events. So my question would be, how do I call those bukkit event correctly, so that bukkit react upon them? If that's not possible, how would I modify the online list (you see on TAB)? The join/leave messages may be done with proper broadcast, broadcastMessage or sendMessage, so that's not the problem.