
56
1
Список изменений
Allium v0.1.6a
Wiki: https://github.com/castledking/Allium/wiki
Highlights
- Chat channels are now split between global and local -
/localand/ltoggle radius chat, while/globaland/greturn players to global chat. - Staff locator mode -
/locatorbarnow toggles a staff mode that can show every visible player on the party locator bar, regardless of party radius. - ModGuard - new configurable client-mod detection framework with brand, plugin-channel, Forge/FML handshake, evidence logs, alerts, kicks, bypasses, and optional translation probes.
- Animated gradient names -
%gradientdisplayname%can now be converted into MiniMessage gradient phase output for players withallium.gradientname. - Item Renamer - new single-use custom item that grants temporary
/renameaccess and is consumed after a successful rename. - Safer End Gateway teleports - gateway/ender-pearl teleports near the main End island now search for a safe same-level landing instead of relying on vanilla highest-block behavior.
- Release automation - new GitHub Actions and
.releasetooling for Discord, Modrinth, and Spigot release publishing.
Chat Channels
- Added the dedicated local chat channel config at
chat.channels.local-channel. - Local chat defaults to a 100 block radius.
- Local chat defaults to
&8[&eLocal&8] <prefix> &a%allium_nickname%&f: &f<message>. - Local chat is excluded from Discord relay by default.
- Global channel aliases are now only
gandglobal;localandlno longer point at global chat. /localand/ltoggle between local chat and the default/global write channel./globaland/galways switch the player back to the default/global write channel./channel join <channel> [read|write]still supports explicit read/write channel selection.- Channel state continues to save per player in
player-channels.yml.
DiscordSRV Integration
- Discord inbound messages are routed through Allium's channel system.
- Discord messages now use Allium channel formats only for explicitly configured Allium channel formats.
- Default or unmapped DiscordSRV channels fall back to DiscordSRV's native message format.
- Discord role alias, role color, username, effective name, channel, reply snippet, and message fields now pass through Discord emoji parsing.
- Discord inbound messages are mirrored to console because Allium cancels DiscordSRV's normal preprocess/postprocess event handling.
- Outbound chat loop detection now tracks local/staff/shortcut context so Allium avoids relaying duplicate chat events.
- Local chat is intentionally blocked from Discord relay when
exclude-from-discordis true.
Party And Locator Bar
- Added staff locator mode for players with
allium.party.staff. /locatorbarwith no arguments now toggles staff locator mode.- Added
/locatorbar help. - Added
/locatorbaraliases:/partybar,/lbar, and/pbar. - Added
allium.locatorbar.helpfor viewing locator help. - Staff locator mode lets staff see all non-vanished players on the locator bar, regardless of normal visibility distance.
- Locator bar show/hide/reset flows remain available for temporary manual visibility overrides.
- Party locator visibility updates keep the existing move throttling to reduce TAB packet pressure.
TAB And Far-Away Player Entries
- Improved TAB integration for players Allium hides in the world but keeps visible in tab.
- PacketEvents tab add paths now actively re-add missing entries instead of silently no-oping.
- TAB reflection is used where available so synthetic tab entries better match TAB-managed skins, ping, game mode, and format.
- PacketEvents fallback add packets are still available when TAB reflection cannot add an entry.
- TAB group formatting can be read from TAB's
config/groups.ymlwhen placeholders are unavailable. - Placeholder fallbacks now reject unresolved
%tab_...%strings instead of showing raw placeholder text in tab. - Far-away animated gradient targets are tracked and refreshed with
UPDATE_DISPLAY_NAME. - Animated far-away tab entries use the same animated name builder as the normal tab display name.
Animated Gradient Names
- Added
GradientNameManager. - Players with
allium.gradientnamecan have%gradientdisplayname%rewritten into MiniMessage<gradient:...:phase>output. - The manager extracts first and last colors from existing gradient display names.
- Supported color input includes legacy
&/section colors,&#RRGGBB, section hex,&x/section-x hex, and MiniMessage hex tags. - The middle named color is chosen from the nearest general color name for MiniMessage's gradient tag.
#phase-mm-g#and#-phase-mm-g#are updated every tick.- The player list name is refreshed every tick for animated gradient players.
- TAB prefix and suffix are preserved when Allium builds the animated tab display name.
- Prefix/name spacing is normalized so TAB prefixes do not collapse directly into the player name.
- Added PlaceholderAPI outputs:
%allium_gradientdisplayname%%allium_phase-mm-g%%allium_-phase-mm-g%%allium_phase_mm_g%%allium_negative_phase_mm_g%
- Added
chat.minimessage.gradient.animationfor animated gradient phase permission checks.
Nicknames
- Added
/editnickfor editing other players' nicknames through the nickname GUI. - Nicknames now persist more reliably when TAB is installed.
- Allium now clears plugin-set tab overrides when TAB owns tab formatting.
- Nicknames are blocked when they match an existing online or offline player name.
- Added
nickname.sync-to-essentials, enabled by default. - When EssentialsX is present, Allium syncs nickname set/reset/restore into Essentials so commands such as
/whoissee the same nickname. - Nickname placeholders can read stored offline nicknames by UUID.
ModGuard
- Added
plugins/Allium/modguard/config.ymlfrom bundledsrc/main/resources/modguard/config.yml. - Legacy
modguardsettings from the rootAllium/config.ymlare migrated intomodguard/config.yml. - Added blacklist/whitelist detection mode.
- Added configurable join-time checks with
check-on-joinandcheck-delay-ticks. - Added configurable punishment mode with
kick-on-detection. - Added
modguard.bypassto skip checks. - Added
modguard.notifyfor staff notifications. - Added
allium.alertssupport for staff alert delivery. - Added
/core alerts modguard [on|off|toggle]. - Added per-player ModGuard evidence logs at
plugins/Allium/modguard/logs/{uuid}.yml. - Evidence logs are only created once a player gets a hit, then later hits append to the same UUID file.
- Evidence entries include session, timestamp, method, check, raw value, confidence, action, and whether punishment happened.
- Brand checks listen for
minecraft:brand. - Channel checks inspect client plugin channel registrations.
- Forge/FML checks listen on
fml:handshake,fml:login,forge:handshake, andforge:login. - Matching supports case-sensitive and regex modes.
- Default banned mod patterns include Freecam, Inventory Profiles Next variants, Tweakeroo, Litematica, MiniHUD, Meteor, Wurst, Vape, LiquidBounce, Aristois, Baritone, and related client/mod ids.
- Default allowed mod examples for whitelist mode include OptiFabric, Sodium, Lithium, Phosphor, Iris, Fabric API, and Mod Menu.
Translation Probe Detection
- Added optional PacketEvents translation-key probing under
modguard/config.yml. - Translation probes are disabled by default.
- Probe checks can define translation keys, expected resolved text, action, timeout, fallback prefix, and whether kicks require corroboration.
- The default sample check targets
key.meteorclient.openguias an alert-only Meteor probe. - Probe hits feed into ModGuard alerts and evidence logs.
- Probe defaults are intentionally alert-based because resource packs can define translation keys and cause false positives.
Security Alerts
- Added ModGuard as an individual security alert feed.
/core alertsnow shows gamemode audit, chat filter, and ModGuard alert state./core alerts modguardtoggles whether a staff member sees ModGuard alerts.- Staff permission bundles now include
allium.alertsandmodguard.notify.
Custom Items
- Added the
item_renamercustom item. - Item Renamer uses a name tag item with Oraxen model
oraxen:item_renamer. - Holding an Item Renamer grants temporary ItemEdit rename permissions.
- Supported temporary permissions include MiniMessage, format, and color rename access.
- Players with direct ItemEdit rename permission are not managed by the Item Renamer system.
/rename <name>and/ie rename <name>are intercepted for item consumption.- The renamer cannot be used on air or to rename itself.
- One renamer is consumed shortly after a successful rename command.
World And Ore Generation
- Added the custom ore generation manager and listener for applying configured Oraxen ores to generated chunks.
- Added pre-generation plumbing in the ore manager for processing chunks around a configured center/radius.
- Ore generation remains configurable under
ore-generation. - Added safe End Gateway teleport handling near the main End island.
- End Gateway handling is configurable with
end-gateway.max-distance-from-centerandend-gateway.search-radius. - The gateway safety search prioritizes same-Y landing positions, then nearby Y levels, then an expanding perimeter search.
- Gateway handling rejects unsafe ground and blocked feet/head positions.
- A short cooldown prevents repeated gateway handling spam.
Inventory And Restore QoL
- Offline inventory handling was expanded for restore workflows.
- Restore GUI support now works against target UUIDs so staff can restore offline players more easily.
- Inventory snapshot/restore GUI code was expanded across inventory, ender chest, options, and formatting views.
Command Hiding And Alt Accounts
- Added an
althide group tohide.yml. - The
altgroup is blacklist mode by default. - The default blocked alt commands are
pay,jobs,quests,tasks,ah, andauctionhouse. - Tab completion hiding remains configured with
^.
Config And Permissions
- Added
allium.gradientname. - Added
allium.party.staff. - Added
allium.locatorbar.help. - Added
chat.minimessage.gradient.animation. - Added
modguard.bypass. - Added
modguard.notify. - Added
nickname.sync-to-essentials. - Added
end-gateway.max-distance-from-center. - Added
end-gateway.search-radius. - Plugin metadata now uses
${project.version}from Maven. - Maven project version is now
0.1.6a. - Plugin main class moved to
codes.castled.allium.PluginStart. - Plugin author metadata changed to
castledking.
Fixes
- Fixed
/localand/globalalias handling by using the executed command label instead of only the Bukkit command name. - Fixed local chat accidentally behaving like global chat through shared aliases.
- Fixed DiscordSRV inbound messages not appearing in console after Allium cancels DiscordSRV events.
- Fixed raw
%tab_tabprefix%,%tab_customtabname%, and%tab_tabsuffix%placeholders showing in tab when TAB/PAPI could not resolve them. - Fixed far-away animated names snapshotting once and appearing paused in synthetic tab entries.
- Fixed animated tab display names fighting TAB prefix/suffix formatting by preserving TAB formatting in the animated name builder.
- Fixed missing spacing between TAB prefix and animated name in common prefix formats.
- Fixed nickname persistence/restore behavior when TAB owns the tab list.
- Fixed same-name nicknames being accepted.
- Reduced max database pool connections to lower memory usage.
- Kept party movement/TAB visibility updates throttled to avoid excessive packet churn.
Internal And Release Engineering
- Java packages were renamed from
net.survivalfun.coretocodes.castled.allium. - Removed the old command bridge manager.
- Added GitHub Actions for continuous delivery and Spigot release publishing.
- Added
.releasescripts for release note conversion, Modrinth publishing, Spigot publishing, cookie handling, and Discord notifications. - Added a release Dockerfile and Discord webhook template.
Файлы
Allium-0.1.6a.jar(1.53 MiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
0.1.6a
Загрузчики
BukkitFoliaPaperPurpurSpigot
Версии игры
1.20–26.1.2
Загрузок
24
Дата публикации
17.05.2026
