▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Allium

Allium

A modern, secure Essentials solution

Оцените первым
135
1
Все версииAllium v0.2.2a

Allium v0.2.2a

Release21.06.2026

Список изменений

Wiki: https://github.com/castledking/Allium/wiki

Highlights

  • Glow command — New /glow command for per-player colored glow outlines using PacketEvents virtual team packets. Supports all 16 vanilla colors, ✨ cycling, and per-color permissions. No scoreboard pollution — teams are sent directly to viewers and never registered on any Bukkit scoreboard.
  • Join/Quit message permissions — Permission-based join/quit message formats via allium.join_message.<id> and allium.quit_message.<id>. Set custom formats with LuckPerms metadata.
  • Chat system rewriteChatMessageManager, FormatChatListener, and PacketChatTrackerImpl significantly reworked for better PacketEvents integration and staff moderation features.
  • Flight restoration refactorFlightRestoration rewritten for improved Folia compatibility and reliability.
  • Command managementCommandManager now caches the server's known commands map with a 2-second TTL, eliminating repeated reflection calls. Help command caches available commands per-player with a 3-second TTL.
  • TP companion teleportation — Pet/entity teleport-on-TP moved from TP listener to dedicated TeleportBackListener for cleaner separation.
  • Inventory snapshot optimizationInventoryManager.saveSnapshot() simplified to run directly on the calling thread instead of through SchedulerAdapter.run().

New Commands

CommandDescriptionPermission
/glow <color> [player]Set glow color (e.g. /glow red, /glow dark_aqua)allium.glow + allium.glow.<color>
/glow ✨ [player]Enable ✨ cycling glowallium.glow.✨
/glow off [player]Remove glow effectallium.glow / allium.glow.others

New Permissions

PermissionDescriptionDefault
allium.glowBase glow permission (grants all 16 color sub-permissions)op
allium.glow.<color>Per-color (e.g. allium.glow.red, allium.glow.blue)via parent
allium.glow.✨✨ glow modeop
allium.glow.othersTarget other playersop
allium.join_message.<id>Custom join message format (value from LP metadata)
allium.quit_message.<id>Custom quit message format (value from LP metadata)
allium.join_message.*Wildcard — grants all join message formatsstaff
allium.quit_message.*Wildcard — grants all quit message formatsstaff

New Config

join-and-quit-messages:
  join:
    enabled: true
    format: "&e%name% &7has joined the server"
  quit:
    enabled: true
    format: "&e%name% &7has left the server"
  broadcast-scope: server  # server, world, or global

Setting Custom Join/Quit Messages with LuckPerms

Set a permission with a metadata value on a player:

/lp user <player> meta set allium.join_message.vip.a "rift in the universe has spawned %player%"
/lp user <player> meta set allium.quit_message.vip.a "%player% has left through a rift"

Supported placeholders: %name% (display name, respects /nick), %player% (real name), %prefix% (Vault prefix), %suffix% (Vault suffix).

The first matching permission (alphabetical by suffix) is used. If no permission metadata is found, the default config format is used.

Technical Details

Glow

  • Uses PacketEvents WrapperPlayServerTeams with TeamMode.CREATE (includes both team info and player entries in one packet)
  • TeamMode.UPDATE for ✨ color changes, TeamMode.REMOVE for cleanup
  • Packets sent to all online players including the target (the client needs to receive the team packet to render the colored outline)
  • No Bukkit.getScoreboardManager() usage — completely virtual
  • Folia-safe: no region-scheduled tasks needed

Join/Quit Messages

  • Handled via standard PlayerJoinEvent / PlayerQuitEvent (main thread on both Bukkit and Folia)
  • Permission metadata read through Vault Chat's getPlayerInfoString()
  • Falls back to default config format if no permission match found
  • Vanish check: vanished players don't show join/quit messages

Chat System

  • ChatMessageManager rewritten with improved message storage and retrieval
  • PacketChatTrackerImpl updated for better PacketEvents 2.11.1 compatibility
  • FormatChatListener significantly expanded with new formatting options

SchedulerAdapter

  • All scheduled tasks route through SchedulerAdapter which auto-detects Folia
  • Folia path: uses EntityScheduler for entity-specific tasks, GlobalRegionScheduler for global tasks
  • Bukkit path: uses standard BukkitScheduler
  • No raw Bukkit.getScheduler() calls in new code

Files Changed (22)

FileChange
PluginStart.javaGlow command + listener registration, glow field
Glow.javaNew — /glow command with PacketEvents team packets
GlowListener.javaNew — cleanup on player quit
JoinQuitMessages.javaNew — permission-based join/quit messages
ChatMessageManager.javaRewritten — message storage, tracking, moderation
FormatChatListener.javaMajor rewrite — chat formatting, hover, click events
PacketChatTrackerImpl.javaMajor rewrite — PacketEvents 2.11.1 integration
FlightRestoration.javaMajor rewrite — Folia-safe flight state management
CommandManager.javaKnown commands caching, getCachedKnownCommands() API
Help.javaAvailable commands caching, uses CommandManager cache
`TeleportBackListener.java**Extracted from TP — pet/entity companion teleport
TP.javaRemoved inline teleport listener, now delegates
InventoryManager.javaSimplified snapshot saving, removed SchedulerAdapter wrapper
AlliumPlaceholder.javaImport cleanup
GeneralPlaceholder.javaImport cleanup
TFlyManager.javaImport cleanup, formatting
SpawnerChangerManager.javaMinor cleanup
config.ymlNew join-and-quit-messages section
lang.ymlNew glow.* message keys
plugin.ymlNew glow command, permission definitions
pom.xmlPaper version 1.21.8

Support and Feedback

Issues: https://github.com/castledking/Allium/issues Wiki: https://github.com/castledking/Allium/wiki Discord: https://discord.com/invite/pCKdCX6nYr Website: https://castled.codes/

Файлы

Allium.jar(1.55 MiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

0.2.2a

Загрузчики

Bukkit
Folia
Paper
Purpur
Spigot

Версии игры

1.20–26.1.2

Загрузок

2

Дата публикации

21.06.2026

Загрузил

ID версии

Главная