Skip to content

Overview

Communication Paper 1.21.x v1.0.0

CobaltiaAnnonces broadcasts announcements to your players’ chat. Everything is described in a single file, annonces.json: the announcement text (MiniMessage), its decorative frame, automatic rotations, zones, and welcome messages triggered when a player enters a zone. An in-game menu then lets you send, preview and control rotations without editing the file.

The plugin was built for the Cobaltia server and uses its visual identity (frames and glyphs from the resource pack), but it also works with plain, unframed text announcements.

JSON announcements

Each announcement has an id, a display name, one or more MiniMessage lines (colors, gradients, click, hover) and an optional sound.

Centered frames

Wrap an announcement in a decorative top and bottom: the title and every line are centered to the pixel within the frame width.

Automatic rotations

Send a list of announcements at a fixed interval, in order or at random (never the same one twice in a row), to the whole server, one or more worlds, or a zone.

Zone entry announcements

Show an announcement to a player entering a WorldGuard region or a coordinate cube, with a per-player anti-repeat delay.

In-game menu

/annonces opens a menu: preview, targeted sending in two clicks, toggling or firing rotations, reloading the file.

Safe reload

The whole file is validated on reload. On any error, the previous configuration stays active and each error is reported with its exact location.

A framed announcement is made of, from top to bottom, the frame top, the centered title, the centered lines and the frame bottom:

╭──────────────────────────────╮
✦ ANNONCE ✦
Vote pour le serveur avec /vote !
╰──────────────────────────────╯

Without a frame, lines are sent as-is, one below the other.

Item Status Purpose
Paper 1.21.x Required Target server software.
Java 21 Required Runtime required by Paper 1.21.
WorldGuard Optional Needed for zones defined by a WorldGuard region. Cube zones work without it.
PlaceholderAPI Optional Replaces placeholders (%player_name%…) in lines, for each recipient.
Nexo Optional Provides the <glyph:…> glyphs used by frames and the default title.