FioChat Update - Changelog
(2.1.31)
- Fixed the
ANTI_CAPSmodule so uppercase-heavy chat is now normalized more reliably.- Optimized AntiSwear default behavior to reduce false positives for normal words such as
massive(for example, words containingassas part of a larger valid word are no longer incorrectly blocked).- Added direct admin clear-chat command alias
/fc admin clearchat.
FioChat Update - Changelog
(2.1.30)
- Fixed a bug where players who hit the warning-points punishment threshold could end up with an unresponsive chat state.
- Fixed a bug where a player who was previously OP, then de-opped, could get stuck with chat becoming unresponsive.
- Fixed a mute-related state bug that could cause the muted player's chat session to become unresponsive.
- Fixed
settings.cooldownchat enforcement so players can no longer bypass anti-spam cooldown using small text variations such asText,Text 1, orText 2.- Optimized chat caching to improve consistency and reduce unnecessary cache churn.
- Fixed an Anti-Bot state issue where losing the Anti-Bot bypass permission could leave player status in an inconsistent ("vague") state.
- Added a safety fallback so when a player no longer has wildcard permissions, FioChat modules do not break and continue to degrade gracefully.
- Fixed ChatManagement
regexhandling so FioChat now parses and applies regex rules correctly.
FioChat Update - Changelog
(2.1.29)
- Fixed
%fiochat_coderedeem_<key>%parsing in redeem-code messages and broadcasts. PlaceholderAPI is now resolved on those lines, so dynamic values render properly instead of showing raw tokens.- Fixed
/fc admin code <key>state handling (true/false/clear). Usingclearnow also removes the player's related redeem IP lock entry for that code (when the player/IP can be resolved).
FioChat Update - Changelog
(2.1.28)
- Fixed
%fiochat_coderedeem_<key>%Placeholder Parsing for PlaceholderAPI
Improved placeholder parsing compatibility so redeem-code placeholders now resolve correctly when processed via PlaceholderAPI, including dynamic key patterns used in:
%fiochat_coderedeem_<code_id>_time_left%,
%fiochat_coderedeem_<code_id>_max_use%,
%fiochat_coderedeem_<code_id>_left_to_claim%,
%fiochat_coderedeem_<code_id>_perms_req%,
%fiochat_coderedeem_<player>_<code_id>_status%, and
%fiochat_coderedeem_<player>_<code_id>_timestamp%.
This includes safer split handling for code IDs/player tokens containing underscores.- Updated PlaceholderAPI Integration for
/papi parse me
FioChat placeholder resolution was updated to support PlaceholderAPI parse flows more reliably, especially for self-context parsing.
Legacy token aliases and player-token normalization were improved so both direct and compatibility forms resolve consistently during/papi parse mechecks.- Added New Language Keys for Redeem-Code Module
Redeem-code message keys are now language-driven and moved into language files through module overrides.
Added new keys for blocked world/gamemode and explicit redeem failure reasons, including:
blocked-world,blocked-world-code,blocked-gamemode,invalid,expired,not-started,permission,platform,global-limit,player-limit,ip-duplication,playtime-required,reward-failed,cooldown, anddisabled.
Language entries were prepared for EN/ID/JP/CH localization.- Updated ItemTag Sprite Handling for
overrideSettings
Adjusted ItemTag sprite rendering flow to better respect configured override behavior and keep sprite/object output stable across different runtime paths.- ItemTag Sub-Module Updated for 1.21.9 Atlas Compatibility
Improved ItemTag sprite/object compatibility with 1.21.9 object-component rendering defaults, including atlas usage alignment with:
minecraft:blocks
for safer cross-client rendering behavior where required by runtime/object support constraints.- Fixed ItemTag Collapse-Merge Bug
Resolved merge/collapse issues that could cause incorrect virtual amount behavior during Item entity merge operations.- Fixed ItemTag
stack-limitBehavior
Fixed stack-limit handling so over-limit drops are correctly split into multiple dropped entities instead of being incorrectly reduced or returned.
FioChat Update - Changelog
(2.1.27)
- Added
broadcastOutput Support to Redeem-Code Module
Redeem-code now supports platform-based broadcast lines through:
codes.<id>.platform.<java|bedrock>.actions.broadcast
Broadcast entries are now parsed and sent to the server when a redeem is successful, alongside existing player message actions.- Fully Remodeled Redeem-Code Configuration Structure
The redeem-code module configuration has been migrated into the new advanced structure under:
settings.code.*
including nested groups for code length/charset/input handling, world and gamemode restrictions, cooldown controls, and protection options.- Added New Redeem-Code Placeholders
Added dynamic placeholders for code state, usage limits, and claim tracking:
%fiochat_coderedeem_<code_id>_time_left%
%fiochat_coderedeem_<code_id>_max_use%
%fiochat_coderedeem_<code_id>_left_to_claim%
%fiochat_coderedeem_<code_id>_perms_req%
%fiochat_coderedeem_<player>_<code_id>_status%
%fiochat_coderedeem_<player>_<code_id>_timestamp%
These placeholders now expose formatted expiry/limit/permission and per-player claim status/timestamp information.- Added IP Duplication Protection for Redeem-Code
New protection option:
settings.code.protection.ip_duplication
When enabled, FioChat blocks duplicate claims from the same grouped network identity.
IP matching now uses a 3-segment IPv4 prefix key (example:1.182.2.*) to prevent repeat abuse from similar addresses.- Added Playtime Protection for Redeem-Code
Added minimum-playtime protection via:
settings.code.protection.player_must_play
and per-code overrides via:
settings.code.playtime.listwith format<duration>;<CODE_ID>.
If a code-specific playtime rule exists, it overrides default protection playtime. Supported duration tokens include:
s, m, h, d, w, mo, y.
FioChat Update - Changelog
(2.1.26)
- Added New ItemTag Toggle Command
Added a new command format for itemtag controls:
/toggle itemtag <particle|stack|text>
This provides direct per-mode toggling without relying on the old single-toggle behavior.- Fixed
/toggle itemtag stackState Handling Bug
Resolved a bug that could occur when using/toggle itemtag stack, where stack visualization and amount handling could become inconsistent in certain toggle/pickup flows.
FioChat Update - Changelog
(2.1.25)
- Added New Sub-Module:
itemtag
Introduced a dedicateditemtagmodule for dropped-item visual enhancement using modernTEXT_DISPLAYentities (not Armor Stands).
This module adds configurable item text rendering, stack-aware amount display, sprite token support, auto-stack behavior, and per-player feature toggles for text/particle/stack effects.- Removed Unused FioChat Placeholders
Cleaned up legacy/unused placeholders to reduce config noise and avoid confusion in template usage.
Removed placeholders:
%fiochat_stat_jump%,%fiochat_stat_sneak%, and%fiochat_stat_mine_break%.- Added
/toggle itemtag
Implemented player-level itemtag visibility toggle via/toggle itemtag, allowing users to enable/disable itemtag display in real time without reloading configuration.
This integrates with the itemtag state system and persists per-player preference behavior consistently with other FioChat toggles.
FioChat Update - Changelog
(2.1.24)
- Gamertag BELOW_NAME Objective Fully Disabled
Refactored the gamertag below-name pipeline so FioChat no longer relies on aDisplaySlot.BELOW_NAMEscoreboard objective for nametag-related rendering.- Multiverse-Core Async Teleport Stability Fix (Passenger/Display Interference)
Fixed a cross-module compatibility issue where Multiverse async teleports could fail beforePlayerTeleportEventwhen gamertag display entities were mounted/following a player. FioChat now temporarily suspends gamertag display entities before/mvtpteleport windows and restores them automatically after teleport success/failure. This removes the async teleport dead-path that previously reproduced more often while not vanished.- Vanish Environmental Damage Protection Expansion
Added vanish-state combat/environment safety handling so vanished players no longer take damage from:
DROWNING,FIRE,FIRE_TICK(including fire/campfire style ticking),VOID,FREEZE,HOT_FLOOR(magma), andCONTACT(sweet berry bush/contact-thorn style damage).
This ensures stealth sessions are not broken by environmental hazards while vanish is active.
