JoinAndQuitMessages-Bukkit-1.6.0.jar

Details

  • Filename
    JoinAndQuitMessages-Bukkit-1.6.0.jar
  • Uploaded by
  • Uploaded
    Aug 19, 2026
  • Size
    173.26 KB
  • Downloads
    5
  • MD5
    915dcd9ab06682803e59b789b66bacd2

Supported Bukkit Versions

  • 26.2
  • 26.1
  • 26.1.1
  • 26.1.2
  • 1.21.11
  • 1.21.10
  • 1.21.9
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.1
  • 1.21.2
  • 1.21.3
  • 1.21.4
  • 1.21
  • 1.20.6
  • 1.20.5
  • 1.20.4
  • 1.20.3
  • 1.20.2
  • 1.20.1
  • 1.20

Changelog

JoinAndQuitMessages 1.6.0

The biggest release yet: clickable messages, first-join and per-world messages, in-game commands to manage them โ€” and a fix for hex colours, which had silently stopped working on modern Spigot.

Heads up: this release now requires Java 17 or newer. See Upgrading.


๐Ÿšจ Hex colours work again on Spigot 26.x

If you use <#RRGGBB> colours, they had stopped rendering entirely on recent Spigot builds โ€” every hex tag showed as plain text.

The version check read the minor version number, so 1.21.8 gave 21 and passed, but 26.2 gave 2 and failed the "is this 1.16+?" test. Hex support is now detected by asking the server what it can actually do, so it cannot break again when the version scheme changes.


โœจ Clickable and hover messages

Messages can now run a command, open a link, copy text, or show a tooltip.

joinmessage: "&7[&2+&7]&a%player% <click:suggest_command:/msg %player% ><hover:show_text:&7Send a message>&8[msg]</hover></click>"
Tag What it does
<click:run_command:/spawn>text</click> Runs the command as the player who clicks
<click:suggest_command:/msg Steve >text</click> Puts the command in their chat box
<click:open_url:https://example.com&gt;text&lt;/click&gt; Opens a link
<click:copy_to_clipboard:hello>text</click> Copies text to their clipboard
<hover:show_text:&7Tooltip>text</hover> Shows a tooltip on hover
  • Click and hover combine and nest
  • Colours carry across a tag โ€” <#FF0000>a <click:...>b</click> c stays red throughout
  • Placeholders work inside a tag's value: <click:suggest_command:/msg %player% >
  • /jqm test <message> renders the result clickable and tells you about typos, instead of leaving you with a tag that quietly does nothing

Only messages in your config.yml can create clickable text. Tags are read before placeholders are filled in, so another plugin supplying a custom nickname can never inject a clickable run_command into your join messages.

๐ŸŽ‰ First join messages

Give brand new players their own welcome.

first_join:
  enabled: true
  message: "&7[&2+&7] &6Welcome &e%player% &6to the server! &7(&a#%playercount_online%&7)"

๐Ÿคซ Silent join and quit

Anyone with joinandquitmessages.silent is not announced at all โ€” ideal for staff and alongside vanish plugins. Suppressed messages still reach the console by default.

๐ŸŒ Per-world messages, managed in-game

Different messages depending on which world the player is in โ€” no YAML editing required. Changes save and apply straight away, and work from the console too.

/jqm world list
/jqm world add <world> <join|leave> <message>
/jqm world remove <world> [join|leave]
  • The message is everything after the type, so it needs no quoting
  • World names and join/leave are tab-completable
  • Adding a message while the feature is off switches it on for you
  • Worlds that are not loaded yet can still be configured

Per-world messages use the world the player is in at the moment they join or quit โ€” they are not triggered by walking through a portal.

๐Ÿ“‹ A documented config.yml

The plugin used to build its config in code, leaving you with an uncommented file and the wiki for company. It now ships a fully commented config.yml explaining every option, every placeholder, and which message wins when several could apply.


Other improvements

  • Rank messages now have a real priority. Previously a player holding several configured permissions got an unpredictable message that could change between restarts. Add a permission_messages.priority list to decide the order.
  • /jqm test matches reality. The test command and the real join message used different placeholder names, so a preview could render differently than the real thing.
  • & is no longer replaced blindly. "Tom & Jerry joined" rendered as "Tom ยง Jerry joined". Only & followed by a real colour code is translated now, and translation happens after placeholders, so codes coming out of PlaceholderAPI are coloured too.
  • /jqm quittest โ€” quit messages were previously impossible to preview.
  • Smarter random messages โ€” the same line is never picked twice in a row.
  • An empty random message list no longer errors; it falls back to your default message.
  • New built-in placeholders โ€” %displayname%, plus %online% / %max% as aliases.

Commands

Command Description Permission
/jqm test [message] Preview a join message joinandquitmessages.test
/jqm quittest [message] Preview a quit message joinandquitmessages.test
/jqm world list List worlds with a configured message joinandquitmessages.world
/jqm world add <world> <join\|leave> <message> Set a per-world message joinandquitmessages.world
/jqm world remove <world> [join\|leave] Remove a per-world message joinandquitmessages.world
/jqm reload Reload the configuration joinandquitmessages.reload

Permissions

Permission Description Default
joinandquitmessages.use Use the main command true
joinandquitmessages.test Preview messages true
joinandquitmessages.reload Reload the configuration op
joinandquitmessages.world Manage per-world messages op
joinandquitmessages.silent Join and quit unannounced false
joinandquitmessages.checkupdate Be told about updates op

Upgrading

From any earlier version โ€” please read:

  1. Java 17 or newer is now required. Any server running a Minecraft version this plugin targets already meets that, but double-check if you are on an old JVM.
  2. Your existing config keeps working and picks up the new options automatically on first start. Nothing to migrate by hand.
  3. Small behaviour change: a stray & in a message now shows as a literal & instead of turning into a colour character. If you relied on that, replace it with a real code.
  4. Recommended: delete config.yml and restart to get the fully commented version.
  5. Recommended: if you use rank messages, add a permission_messages.priority list so the order is yours rather than arbitrary.

Metrics

bStats now records which features are actually in use, so development can follow what servers really configure. Only feature on/off flags and counts are sent โ€” never message content, player data, or world names. It can still be disabled in plugins/bStats/config.yml.


Requires: Spigot/Paper 1.16+ ยท Java 17+ Optional: PlaceholderAPI

Full technical changelog, including internal changes: CHANGELOG.md

Found a problem? Open an issue.