Sueta

Auto Broadcaster

1.4.0

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.

·Plugin
  1. 1.4.0latestAuto Broadcaster 1.4.03 weeks ago

    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.
    311 downloads
  2. 1.3.0Auto Broadcaster 1.3.0Jun 26, 2026
    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)
    686 downloads
  3. 1.1.0Auto Broadcaster 1.1.0Jun 15, 2026
    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/comm…
    64 downloads
  4. 1.0-SNAPSHOTAuto Broadcaster 1.0Jun 8, 2026

    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.
    # 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/.
    54 downloads

Similar projects

Plugin →