Auto BroadcasterСкачатьСкачатьСкачатьСкачать
ВЕРСИИ (4)
release
Auto Broadcaster 1.4.0
1.4.05 окт. 2026 г.424Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3folia, paper, purpur
Что нового
## What's Changed since v1.3.0
### New Features
- **Per-world broadcast targeting** — Use `target_worlds` config option to broadcast messages only to players in specific worlds (works for both interval and scheduled messages)
- **Per-permission broadcast targeting** — Use `required_permission` config option to restrict message visibility to players with specific permissions
- **Interval validation** — Minimum 10-second interval enforced automatically to prevent performance issues
- **Improved message format detection** — Regex-based MiniMessage tag detection instead of fragile heuristic
- **Better tab completion** — Suggests indices for `remove interval` and time keys for `remove time`
### Performance Optimizations
- **Pre-computed messages** — Prefix + content components are built once at config load, not on every broadcast tick
- **Zero-allocation world filtering** — Replaced stream-based filtering with simple for-loop
- **Cached time parsing** — Scheduled message times parsed once and cached
### Bug Fixes
- **Scheduled message duplicates** — Added per-day "already fired" tracking to prevent duplicate broadcasts after reload
- **Scheduled message misses** — Uses a 2-minute window instead of exact time matching to handle server lag gracefully
### Configuration Changes
New config options in `config.yml`:
- `interval_messages.target_worlds` — List of worlds (empty = all worlds)
- `interval_messages.required_permission` — Permission node (empty = everyone)
- `scheduled_messages.target_worlds` — Per-time world targeting
- `scheduled_messages.required_permissions` — Per-time permission targeting
### Download
The `paper-auto-broadcaster-1.4.0-all.jar` is the plugin JAR to use on your server.
release
Auto Broadcaster 1.3.0
1.3.026 июн. 2026 г.688Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3folia, paper, purpur
Что нового
### New Features
- Replaced custom analytics with [bStats](https://bstats.org) (service ID: 32227) — standard opt-out via `plugins/bStats/config.yml` (#5)
### Improvements
- Improved error handling: prevent silent failures and task death (#3)
- Security hardening: configurable analytics, input validation, immutable collections (#2)
- Refactored shared utilities to eliminate code duplication (#1)
### Testing
- Added comprehensive unit test suite (60 tests) covering all modules (#4)
release
Auto Broadcaster 1.1.0
1.1.015 июн. 2026 г.68Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Integrated `plugin-analytics-api` for anonymous usage tracking.
- Added Gradle Shadow plugin to shade the analytics API into the jar.
### Changed
- Updated version to `1.1.0`.
**Full Changelog**: https://github.com/eyeskiller/paper-auto-broadcaster/commits/v1.1.0
release
Auto Broadcaster 1.0
1.0-SNAPSHOT8 июн. 2026 г.56Minecraft: 26.1, 26.1.1, 26.1.2folia, paper, purpur
Что нового
# AutoBroadcaster
AutoBroadcaster is a lightweight and feature-rich PaperMC plugin that automates server announcements. It allows you to schedule broadcasts at specific intervals or at exact server times.
## Features
- **Interval Messages**: Broadcast messages sequentially or randomly at a set interval (e.g., every 5 minutes).
- **Scheduled Messages**: Broadcast specific messages at an exact server time (e.g., daily at 14:00 or 20:30).
- **In-Game Management**: Add, remove, list, and reload messages and configurations directly from the game without needing to edit files manually.
- **Modern Formatting**: Fully supports Paper's [MiniMessage](https://docs.advntr.dev/minimessage/format.html) formatting out of the box (e.g., `<red>Hello</red>`), while seamlessly falling back to legacy color codes (e.g., `&cHello`) if preferred.
## Commands & Usage
The main command is `/autobroadcaster` (aliases: `/abroadcaster`, `/ab`).
*All commands require the `autobroadcaster.admin` permission.*
| Command | Description | Example |
|---|---|---|
| `/ab reload` | Reloads the configuration from disk and restarts the timers. | `/ab reload` |
| `/ab list` | Displays all currently active interval and scheduled messages along with their IDs/Indices. | `/ab list` |
| `/ab add interval <message>` | Adds a new interval message to the rotation. | `/ab add interval <green>Join our Discord!</green>` |
| `/ab add <HH:mm> <message>` | Adds a new scheduled message at the specified time. | `/ab add 14:30 <gold>Daily event starting!</gold>` |
| `/ab remove interval <index>` | Removes an interval message by its index (use `/ab list` to find the index). | `/ab remove interval 1` |
| `/ab remove time <HH:mm>` | Removes a scheduled message for that specific time. | `/ab remove time 14:30` |
## Permissions
- `autobroadcaster.admin` - Grants full access to all plugin commands. Defaults to server Operators (`op`).
## Configuration (`config.yml`)
You can configure the plugin directly via the `config.yml` file located in `plugins/AutoBroadcaster/config.yml`.
```yaml
# AutoBroadcaster Configuration
# The prefix for all plugin messages
prefix: "<gray>[<gradient:#ff0000:#ff7f00>AutoBroadcaster</gradient>] <reset>"
# Messages that are broadcasted at a specific interval.
# interval_seconds: How often in seconds the messages should be broadcasted.
# random_order: If true, picks a random message. If false, goes in order.
interval_messages:
enabled: true
interval_seconds: 300
random_order: false
messages:
- "<green>Welcome to our server!</green> Remember to read the rules."
- "Join our discord at <aqua><click:open_url:'https://discord.gg/example'>discord.gg/example</click></aqua>"
# Messages that are broadcasted at specific server times (HH:MM).
# Make sure the time matches the server's time zone.
scheduled_messages:
enabled: true
messages:
"12:00": "<gold>It is noon! Don't forget to grab your daily rewards!</gold>"
"20:00": "<light_purple>Evening event is starting now!</light_purple>"
```
## Compilation / Building
This plugin targets PaperMC `26.1.2.build.69-stable` and **requires Java 25** to compile and run.
To build it yourself:
1. Clone the repository.
2. Ensure you have a Java 25 JDK installed.
3. Run `./gradlew build`.
4. The `.jar` will be generated in `build/libs/`.