Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
โก PulseMsg
Timed broadcast & advertisement plugin โ clickable links, hex colors, priority overrides, and a smart flood guard.
๐ What is PulseMsg?
PulseMsg is a lightweight but powerful broadcast plugin that lets server owners schedule timed advertisement messages with full color control, clickable links, hover tooltips, and a smart flood guard so players never get spammed.
Each message runs on its own independent timer โ no more messages colliding or overflowing chat at the same time.
โจ Features
| Feature | Description |
|---|---|
| โฑ Per-message timers | Each message has its own interval-seconds โ completely independent |
| ๐ Clickable links | Open URLs, suggest commands, run commands, or copy text to clipboard |
| ๐จ Full color support | Legacy &x codes and hex &#RRGGBB both supported on every line |
| ๐จ Priority messages | Mark a message as priority: true to always fire, even alongside others |
| ๐ก Flood guard | At most one non-priority message per scheduler tick โ no chat spam |
| ๐ Permission gating | Send specific messages only to players with a given permission node |
| ๐ Random or sequential | Send messages in order or shuffle them with random-order: true |
| ๐ฅ Minimum players | Skip broadcasts when fewer than N players are online |
| โป Hot reload | /pm reload applies all config changes with zero server restart |
๐ Commands
All commands require the pulsemsg.admin permission (default: OP).
Aliases: /pulsemsg, /pm, /pulse
| Command | Description |
|---|---|
/pm reload |
Reload config and restart the scheduler |
/pm list |
List all messages with enabled/disabled status |
/pm send <id> |
Manually fire a message immediately |
/pm info <id> |
Show details and next-fire countdown for a message |
/pm toggle |
Pause or resume all broadcasts |
/pm help |
Show the help menu |
๐ Permissions
| Node | Default | Description |
|---|---|---|
pulsemsg.admin |
OP | Full access to all PulseMsg commands |
pulsemsg.bypass |
false | Player will never receive any broadcasts |
โ Configuration
PulseMsg generates a fully documented config.yml on first run. Here's a taste:
global-interval-seconds: 60
global-prefix: 'ᛩf2&l[PulseMsg]&r '
random-order: false
minimum-players: 0
messages:
discord-ad:
enabled: true
title: 'ᱹda&lโก Join Our Discord โก'
body:
- '&7Stay connected with the community!'
- '&7Get support, updates, and giveaways.'
- ' '
- 'ᱹda&l&nJoin Now&r &7โ discord.gg/example'
interval-seconds: 300
priority: true # always fires even alongside other messages
prefix: 'ᱹda[Discord]&r ' # overrides the global prefix
click:
action: OPEN_URL
value: 'https://discord.gg/example'
hover: '&9Click to join our Discord!'
store-ad:
enabled: true
title: '&#f1c40f&lโ
Support The Server โ
'
body:
- '&7Ranks, cosmetics and more at our store!'
interval-seconds: 1200
priority: false
click:
action: OPEN_URL
value: 'https://store.example.com'
hover: '&eClick to open the store!'
Click actions
| Action | Effect |
|---|---|
OPEN_URL |
Opens a URL in the player's browser |
SUGGEST_CMD |
Puts text into the player's chat box |
RUN_CMD |
Runs a command as the player |
COPY_TEXT |
Copies text to the player's clipboard |
How scheduling works
PulseMsg ticks every global-interval-seconds. Each tick it counts down every message's own timer independently. When a message is due:
- Priority messages always fire โ even if another message is also due that tick.
- Non-priority messages are flood-guarded โ only one fires per tick. If multiple are due simultaneously, the others simply wait for their next natural interval.
๐ฅ Requirements
- Minecraft: 1.20+
- Server: Spigot or Paper
- Java: 17 or newer
Made with care by rradajbi โ open an issue on GitHub for bugs or feature requests.


