Перейти к содержимому
Mineforgian

FlectonePulse

Every Message Under Your Control!

Загрузки
29K
Подписчики
156
Обновлён
24 августа 2026 г.
Лицензия
GPL-3.0-only

Опубликован 31 декабря 2024 г.

EN | RU

🎥 FlectonePulse Video Review

FlectonePulse

bukkit spigot paper purpur folia fabric hytale bungeecord velocity

FlectonePulse – Every Message Under Your Control!

boosty modrinth documentation discord

What Is FlectonePulse? Ask DeepWiki

FlectonePulse is a plugin and mod for Minecraft (and Hytale) servers that takes full control over chat, messages, and notifications. You decide what players see, when they see it, and how it looks. Clean defaults for beginners, deep configuration for everyone else

FlectonePulse was the subject of a university thesis and received top marks for its architecture, technical depth, and practical value. The full thesis, presentation, and plagiarism report are publicly available

Why FlectonePulse instead of other message plugins?

Feature FlectonePulse Typical message plugin
Fully async – no main thread impact
Supports 1.8.8 up to the latest Minecraft version ⚠️ (often limited)
Works on Bukkit, Spigot, Paper, Purpur, Folia, and Fabric ❌ (usually one platform)
Built‑in proxy support (BungeeCord, Velocity) ❌ (requires separate plugin)
Cross‑server message synchronization (via proxy or Redis)
Hytale support
Per‑player Minecraft client language detection
Textures in chat without resource pack (<texture:name>)
In‑line player heads and built‑in sprites (<player_head>, <sprite:name>)
Modular design – enable/disable any feature ⚠️ (rarely)
40+ built‑in commands (chat, moderation, fun, polls, etc.)
Cross‑platform chat (Discord, Telegram, Twitch)
Legacy color codes + MiniMessage support in one system ⚠️ (usually one or the other)
Google Guice dependency injection for clean architecture
Open source & completely free ⚠️ (often freemium)

Requirement

Java 17 or higher is REQUIRED. Older Minecraft versions, such as 1.8.8, can also run on Java 17 (check PandaSpigot)

Platform Supported Versions
Bukkit / Spigot / Paper / Purpur / Folia 1.8.8 – Latest
Fabric Latest Minecraft version
BungeeCord / Waterfall Latest
Velocity Latest
Hytale Latest Hytale version
NeoForge Planned

Configuration Files

File Purpose
config.yml Database, language, proxy mode, cache
command.yml Enable/disable and configure commands
message.yml All message modules, conditions and behavior
integration.yml Third-party plugins and external platforms
permission.yml Permissions for every feature
localizations/*.yml Per-language message text

🎨 Color Formatting

FlectonePulse understands every color system and converts them all to MiniMessage internally. Mix legacy codes and modern tags in the same line, it works

Input Result
&0-&9, &a-&f <black>, <dark_blue>, ..., <white>
&l / &m / &n / &o / &k / &r <b> / <st> / <u> / <i> / <obf> / <reset>
&#rrggbb, #rrggbb <#rrggbb>
MiniMessage <gradient>, <hover:...>, <click:...>, etc.
join:
  format: "<gradient:#FF0000:#00FF00>&lПривет</gradient> <rainbow><player></rainbow>!"

color

🧱 Textures in Chat – No Resource Pack Needed

Embed custom images directly into chat messages and the server MOTD with <texture:name>

texture motd texture chat

Player skin avatars with <player_head>, Minecraft built-in sprites with <sprite:name>

objects in chat

🌍 Per-Player Language Detection

Enable by_player: true and every message is delivered in the player's own client language. If a translation is missing, the server default is used as fallback

locale

💬 Multi-Channel Chat System

Multiple named chat channels with independent settings. Each channel has its own range, destination, cooldown, sound, trigger

chat

Send any formatted message to any destination with admin command /emit. You can use destination CHAT ACTION_BAR BOSS_BAR TITLE SUBTITLE TOAST TAB_HEADER TAB_FOOTER BRAND

commandemit

🌈 Per-Player Customization

Players open a full in-game menu /chatsetting to toggle messages, change colors, and disable whatever they don't want

chatsetting

✨ Everything is a Message and is Configurable

FlectonePulse takes control of virtually every event that produces text

Module Description
MOTD Animated, multi-line server list status with custom textures
Join Quit Fully formatted with placeholders, sounds, and conditions
AFK Auto-mark and notify when players go idle
Bubbles Show messages visually above players' heads
Belowname Controlled text below player names
TAB Header, footer, player name format with ping, rank, world
Sidebar Animated scoreboard sidebar with custom content
Bossbar Vanilla bar formatting
Anvil Custom formatted text (book, sign, anvil)
Auto Scheduled, repeating announcements
Server links Custom clickable links in the server menu
Brand Display custom text in the F3 debug screen
Death Advancement Replace default Minecraft messages your way (death messages, advancement, etc.)

Full list in documentation 🔗

🎮 40+ Built-In Commands

Module Description
ball /ball – magic 8-ball with customizable answers
tictactoe /tictactoe – play tic-tac-toe in chat
stream /stream – announce you're going live
try /try – random luck roll from 0% to 100%
sprite /sprite – browse and preview all Minecraft built-in sprites
poll /poll – create in-chat polls with voting
ban /ban – ban a player with a reason and optional duration
whitelist /whitelist – manage server whitelist with reason and optional duration (add, remove, list, on, off)

Already exist: /afk /anon /ban /banlist /broadcast /chatcolor /chatsetting /clearchat /clearmail /coin /deletemessage /dice /do /emit /geolocate /helper /ignore /ignorelist /kick /mail /maintenance /me /mute /mutelist /nickname /online /ping /reply /spy /tell /toponline /translateto /unban /unmute /unwarn /warn /warnlist /whitelist

Full list in documentation 🔗

🤝 Integration with Platforms

Platform What it adds
discord Discord – bidirectional chat sync. Custom bot commands, channel info ticker, webhook support with embeds and avatar display
telegram Telegram – bidirectional chat sync. Custom bot commands and channel info ticker
twitch Twitch – bidirectional chat sync. Custom bot commands and live stream notifications

🤝 Integration with Plugins

Plugin What it adds
🛡️ LuckPerms Prefix, suffix, group display, TAB sorting by rank
🧩 PlaceholderAPI / MiniPlaceholders Any %placeholder% from other plugins
🎙️ PlasmoVoice / SimpleVoice Mute and ignore sync with voice chat
🖼️ SkinsRestorer Real player skins in chat and TAB
👻 SuperVanish Vanished players hidden automatically (even via proxy)
💬 InteractiveChat Enhanced interactive chat elements
🔨 AdvancedBan / LibertyBans / LiteBans Delegate ban commands to your existing system
🌐 Vault Permission compatibility
🗣️ Floodgate / Geyser Bedrock player support
📦 ItemsAdder Custom textures and items in messages

Full list in documentation 🔗

🙏 Acknowledgments

FlectonePulse is built on these projects:

And thanks to the community! Every star on GitHub and review on platforms shows that FlectonePulse is genuinely useful ⭐

📊 Project Statistics

Ченджлог

1.13.0Релиз26.2 · 24 августа 2026 г.

⚠️ Warning

Migrations from versions 1.4.3 to 1.11.0 are removed, as promised in 1.12.2. If you are updating from one of them, install 1.12.2 first, let it start once, and only then install 1.13.0

✨ Features

  • Added NeoForge platform support
  • The core is split into the api and common modules, so addons now depend on api alone
  • Added the fading module for fading a message with distance and the <fading> tag
  • Added a cache for the punishments the integrations with other punishment plugins report, so every punishment is no longer asked about on every lookup
  • Added database export and import to the /flectonepulse command, along with file suggestions for import and database_import
  • Added H2 database migration from legacy store formats
  • Added database connection pool settings
  • Added notification and content protection options to the Telegram integration
  • Added an allowed mentions option to the Discord integration
  • Added a name pattern regex to the mention module
  • Added a maintenance placeholder to PlaceholderAPI and MiniPlaceholders
  • Added multiline support to motd
  • Added stall detection and recovery for the task queue
  • Added async task awaiting with a timeout
  • Added caching and lazy loading for tag resolvers
  • Improved error handling and type conversion when reading yml

🔧 Refactors

  • Name constants are now worked out on the player's own server and kept in the database, so they also work in the player list across a proxy. How often to work them out again is set by the new ticker in the names module settings
  • Player settings storage is unified, and getSetting, isSetting and saveSetting now also take the key a setting is stored under
  • ExternalMuteService renamed to ExternalModerationService
  • Caches moved from Guava to Caffeine
  • PacketEvents replaced with packeteventsmodern
  • Every platform is now built with Jar in Jar
  • The fastutil library is dropped in favour of the standard collections
  • Logging moved to platform adapters
  • The Vault integration is disabled by default
  • A mention is now always formatted, but the sound only reaches those who are not vanished
  • r and reply are added to spy by default
  • The reload events are merged into a single ReloadEvent with a type
  • Adjusted the default cache sizes
  • Simplified the CMI integration logic
  • Added timeouts for https requests
  • The database backup is now taken with DatabaseExporter

🐞 Bug Fixes

  • The vanish state of SuperVanish is now handled, so it changes along with the plugin
  • Added timeouts for Discord, Telegram and Twitch, so a stuck integration no longer holds up the startup
  • A failed H2 database migration no longer breaks the startup
  • The Bukkit scheduler now validates an entity before processing it
  • Bubbles are no longer rendered for dead players and are cleaned up on teleport
  • The player's world is only updated on a real teleport
  • Fixed duplicate objectives being created for the scoreboard
  • The plugin no longer forwards its own messages to clients on Velocity and proxies
  • Fixed command suggestions and parsers
  • tictactoe now handles empty input and validates move coordinates
  • A rock paper scissors game is cleaned up when a player disconnects
  • swear now handles an empty trigger and no longer allows apostrophe injection
  • The sidebar drops the leftover line when the new content is shorter

📦 Dependencies

  • Hytale Server updated to 0.5.8
  • Fabric Loom updated to v1.17.19
  • TelegramBots updated to v10.2.0
  • DeepL updated to v1.17.0
  • Jackson updated to v3.2.2
  • Log4j API updated to v2.26.1
  • Netty updated to v4.2.17
  • MariaDB driver updated to v3.5.10
  • Commons IO updated to v2.22.0
  • JSpecify updated to v1.0.1
  • CodeMirror updated to v5.65.21
  • Gradle updated to v9.7.0

Documentation Full Changelog

1.13.0Релиз26.2 · 24 августа 2026 г.

⚠️ Warning

Migrations from versions 1.4.3 to 1.11.0 are removed, as promised in 1.12.2. If you are updating from one of them, install 1.12.2 first, let it start once, and only then install 1.13.0

✨ Features

  • Added NeoForge platform support
  • The core is split into the api and common modules, so addons now depend on api alone
  • Added the fading module for fading a message with distance and the <fading> tag
  • Added a cache for the punishments the integrations with other punishment plugins report, so every punishment is no longer asked about on every lookup
  • Added database export and import to the /flectonepulse command, along with file suggestions for import and database_import
  • Added H2 database migration from legacy store formats
  • Added database connection pool settings
  • Added notification and content protection options to the Telegram integration
  • Added an allowed mentions option to the Discord integration
  • Added a name pattern regex to the mention module
  • Added a maintenance placeholder to PlaceholderAPI and MiniPlaceholders
  • Added multiline support to motd
  • Added stall detection and recovery for the task queue
  • Added async task awaiting with a timeout
  • Added caching and lazy loading for tag resolvers
  • Improved error handling and type conversion when reading yml

🔧 Refactors

  • Name constants are now worked out on the player's own server and kept in the database, so they also work in the player list across a proxy. How often to work them out again is set by the new ticker in the names module settings
  • Player settings storage is unified, and getSetting, isSetting and saveSetting now also take the key a setting is stored under
  • ExternalMuteService renamed to ExternalModerationService
  • Caches moved from Guava to Caffeine
  • PacketEvents replaced with packeteventsmodern
  • Every platform is now built with Jar in Jar
  • The fastutil library is dropped in favour of the standard collections
  • Logging moved to platform adapters
  • The Vault integration is disabled by default
  • A mention is now always formatted, but the sound only reaches those who are not vanished
  • r and reply are added to spy by default
  • The reload events are merged into a single ReloadEvent with a type
  • Adjusted the default cache sizes
  • Simplified the CMI integration logic
  • Added timeouts for https requests
  • The database backup is now taken with DatabaseExporter

🐞 Bug Fixes

  • The vanish state of SuperVanish is now handled, so it changes along with the plugin
  • Added timeouts for Discord, Telegram and Twitch, so a stuck integration no longer holds up the startup
  • A failed H2 database migration no longer breaks the startup
  • The Bukkit scheduler now validates an entity before processing it
  • Bubbles are no longer rendered for dead players and are cleaned up on teleport
  • The player's world is only updated on a real teleport
  • Fixed duplicate objectives being created for the scoreboard
  • The plugin no longer forwards its own messages to clients on Velocity and proxies
  • Fixed command suggestions and parsers
  • tictactoe now handles empty input and validates move coordinates
  • A rock paper scissors game is cleaned up when a player disconnects
  • swear now handles an empty trigger and no longer allows apostrophe injection
  • The sidebar drops the leftover line when the new content is shorter

📦 Dependencies

  • Hytale Server updated to 0.5.8
  • Fabric Loom updated to v1.17.19
  • TelegramBots updated to v10.2.0
  • DeepL updated to v1.17.0
  • Jackson updated to v3.2.2
  • Log4j API updated to v2.26.1
  • Netty updated to v4.2.17
  • MariaDB driver updated to v3.5.10
  • Commons IO updated to v2.22.0
  • JSpecify updated to v1.0.1
  • CodeMirror updated to v5.65.21
  • Gradle updated to v9.7.0

Documentation Full Changelog

1.13.0Релиз26.1.1, 26.1.2, 26.2 · 24 августа 2026 г.

⚠️ Warning

Migrations from versions 1.4.3 to 1.11.0 are removed, as promised in 1.12.2. If you are updating from one of them, install 1.12.2 first, let it start once, and only then install 1.13.0

✨ Features

  • Added NeoForge platform support
  • The core is split into the api and common modules, so addons now depend on api alone
  • Added the fading module for fading a message with distance and the <fading> tag
  • Added a cache for the punishments the integrations with other punishment plugins report, so every punishment is no longer asked about on every lookup
  • Added database export and import to the /flectonepulse command, along with file suggestions for import and database_import
  • Added H2 database migration from legacy store formats
  • Added database connection pool settings
  • Added notification and content protection options to the Telegram integration
  • Added an allowed mentions option to the Discord integration
  • Added a name pattern regex to the mention module
  • Added a maintenance placeholder to PlaceholderAPI and MiniPlaceholders
  • Added multiline support to motd
  • Added stall detection and recovery for the task queue
  • Added async task awaiting with a timeout
  • Added caching and lazy loading for tag resolvers
  • Improved error handling and type conversion when reading yml

🔧 Refactors

  • Name constants are now worked out on the player's own server and kept in the database, so they also work in the player list across a proxy. How often to work them out again is set by the new ticker in the names module settings
  • Player settings storage is unified, and getSetting, isSetting and saveSetting now also take the key a setting is stored under
  • ExternalMuteService renamed to ExternalModerationService
  • Caches moved from Guava to Caffeine
  • PacketEvents replaced with packeteventsmodern
  • Every platform is now built with Jar in Jar
  • The fastutil library is dropped in favour of the standard collections
  • Logging moved to platform adapters
  • The Vault integration is disabled by default
  • A mention is now always formatted, but the sound only reaches those who are not vanished
  • r and reply are added to spy by default
  • The reload events are merged into a single ReloadEvent with a type
  • Adjusted the default cache sizes
  • Simplified the CMI integration logic
  • Added timeouts for https requests
  • The database backup is now taken with DatabaseExporter

🐞 Bug Fixes

  • The vanish state of SuperVanish is now handled, so it changes along with the plugin
  • Added timeouts for Discord, Telegram and Twitch, so a stuck integration no longer holds up the startup
  • A failed H2 database migration no longer breaks the startup
  • The Bukkit scheduler now validates an entity before processing it
  • Bubbles are no longer rendered for dead players and are cleaned up on teleport
  • The player's world is only updated on a real teleport
  • Fixed duplicate objectives being created for the scoreboard
  • The plugin no longer forwards its own messages to clients on Velocity and proxies
  • Fixed command suggestions and parsers
  • tictactoe now handles empty input and validates move coordinates
  • A rock paper scissors game is cleaned up when a player disconnects
  • swear now handles an empty trigger and no longer allows apostrophe injection
  • The sidebar drops the leftover line when the new content is shorter

📦 Dependencies

  • Hytale Server updated to 0.5.8
  • Fabric Loom updated to v1.17.19
  • TelegramBots updated to v10.2.0
  • DeepL updated to v1.17.0
  • Jackson updated to v3.2.2
  • Log4j API updated to v2.26.1
  • Netty updated to v4.2.17
  • MariaDB driver updated to v3.5.10
  • Commons IO updated to v2.22.0
  • JSpecify updated to v1.0.1
  • CodeMirror updated to v5.65.21
  • Gradle updated to v9.7.0

Documentation Full Changelog

1.12.2Релиз26.2 · 30 июля 2026 г.

⚠️ Warning

This is the last version that supports migration from versions 1.4.3 to 1.11.0. In future updates, migrations from old versions will be removed

🐞 Bug Fixes

  • Reverted message placeholders in integrations

Documentation Full Changelog

1.12.2Релиз26.1.1, 26.1.2, 26.2 · 30 июля 2026 г.

⚠️ Warning

This is the last version that supports migration from versions 1.4.3 to 1.11.0. In future updates, migrations from old versions will be removed

🐞 Bug Fixes

  • Reverted message placeholders in integrations

Documentation Full Changelog

1.12.1Релиз26.2 · 30 июля 2026 г.

⚠️ Warning

This is the last version that supports migration from versions 1.4.3 to 1.11.0. In future updates, migrations from old versions will be removed

✨ Features

  • Classes that inherited from EventMetadata have been removed and replaced with MessageContext composition. This allows creating cache keys that depend on context, fixing message duplication caused by formatting cache

🔧 Refactors

  • Localization modules no longer contain generics
  • Added duplicate game check in minesweeper
  • VanishMetadata replaced with VanishMessageContext
  • IntegrationMetadata replaced with IntegrationMessageFormat
  • Some dependencies changed from compileOnly to compileOnlyApi for proper FlectonePulse API functionality
  • Whois command is now disabled by default in Hytale

🐞 Bug Fixes

  • Unknown UUID no longer breaks login state tracking on proxy
  • Minesweeper game is now properly removed after win or loss
  • Handled vanish status initialization for players
  • Player synchronization between cache and database fixed
  • Prevented world update for unknown players
  • Overhead messages no longer render during plugin shutdown
  • Unknown players are now properly handled in proxy messages
  • Nickname is now sent via proxy
  • /chatcolor is now sent locally if proxy is not enabled
  • Added user message indicator in overhead messages to distinguish cache (fix for duplicates)
  • Legacy color conversion in /stream replaced with new tag resolver approach

📦 Dependencies

  • Updated TelegramBots to v10.1.1

Documentation Full Changelog

1.12.1Релиз26.1.1, 26.1.2, 26.2 · 30 июля 2026 г.

⚠️ Warning

This is the last version that supports migration from versions 1.4.3 to 1.11.0. In future updates, migrations from old versions will be removed

✨ Features

  • Classes that inherited from EventMetadata have been removed and replaced with MessageContext composition. This allows creating cache keys that depend on context, fixing message duplication caused by formatting cache

🔧 Refactors

  • Localization modules no longer contain generics
  • Added duplicate game check in minesweeper
  • VanishMetadata replaced with VanishMessageContext
  • IntegrationMetadata replaced with IntegrationMessageFormat
  • Some dependencies changed from compileOnly to compileOnlyApi for proper FlectonePulse API functionality
  • Whois command is now disabled by default in Hytale

🐞 Bug Fixes

  • Unknown UUID no longer breaks login state tracking on proxy
  • Minesweeper game is now properly removed after win or loss
  • Handled vanish status initialization for players
  • Player synchronization between cache and database fixed
  • Prevented world update for unknown players
  • Overhead messages no longer render during plugin shutdown
  • Unknown players are now properly handled in proxy messages
  • Nickname is now sent via proxy
  • /chatcolor is now sent locally if proxy is not enabled
  • Added user message indicator in overhead messages to distinguish cache (fix for duplicates)
  • Legacy color conversion in /stream replaced with new tag resolver approach

📦 Dependencies

  • Updated TelegramBots to v10.1.1

Documentation Full Changelog

1.12.0Релиз26.2 · 24 июля 2026 г.

✨ Features

  • Added whois module for searching players by IP
  • Added Minesweeper game with flag mode
  • Added padding module for centering and aligning text with characters
  • Added message context cache with expireAfterWrite option
  • Added duplicate check setting for bans and mutes
  • Added offline event handling in Twitch integration
  • Added timeout setting for main executor threads

🔧 Refactors

  • Player inventory on Hytale now uses hotbar component
  • Task queue changed from SYNCHRONOUS to LINKED_BLOCKING executor
  • Player head placeholder replaced with optional format
  • Simplified translation argument handling in ComponentDecorator
  • Added flag to control message caching

🐞 Bug Fixes

  • Fixed UUID and nickname mismatch on login in whitelist module
  • Added disconnect check in proxy mode in quit module
  • Disabled legacy color conversion and removed query parameters from URLs in stream module
  • Fixed message sending in Twitch (replaced telegram with twitch sender)
  • Player tag no longer auto-resolves in usage messages
  • Fixed hints in mutelist and dice
  • Online status now correctly updates in cache without race conditions in proxy mode
  • Unknown server on proxy is now handled
  • getPacketVersion replaced with getClientVersion for version checks
  • Added old client version check in object
  • Added NPE handling in PlaceholderAPI placeholders
  • Backslashes are now escaped in moderation reasons
  • Exception when getting ping in player adapters is now handled

📦 Dependencies

  • Updated Hytale Server to 0.5.7, HyUI to 0.9.8
  • Updated SkinsRestorer API to v15.12.5
  • Updated Cloud libraries to v2.0.0-beta.17
  • Updated Fabric Loom to v1.17.16
  • Updated Vanish to v1.6.15
  • Updated LibertyBans to v1.1.4
  • Updated Velocity API to v4
  • Updated PlaceholderAPI to v2.12.3
  • Updated Jackson to v3.2.1
  • Updated Log4j to v2.26.1
  • Updated PostgreSQL to v42.7.13
  • Updated Netty to v4.2.16
  • Updated JDBI to v3.54.0
  • Updated Triton API to v4.1.0
  • Updated SQLite to v3.53.2.1
  • Updated TelegramBots to v10.1.0
  • Updated fastutil to v8.5.19
  • Updated Gradle to v9.6.1, Shadow plugin to v9.6.1

New Contributors

Documentation Full Changelog

Комментарии

Загружаем…