FioMenu icon

FioMenu -----

Makes menu alot more modern with fiomenu.




FioMenu Update - Changelog
(1.26)
  • Fixed Locked Inventory Behavior on type: "MERCHANT" Menus
    • Fixed an issue where menus using type: "MERCHANT" could leave players stuck in a locked or restricted inventory interaction state under certain trade menu flows.
  • Added Support for Modern Server Version Scheme 26.2
    • FioMenu now recognizes and supports the newer major-version server format such as 26.2, in addition to the older Minecraft-style version parsing used by previous builds.
  • Simplified FioMenu Version Format from Three Numeric Parts to Two
    • FioMenu now uses a cleaner two-part plugin version format such as 1.26 instead of the previous three-part development-style format like 1.26.<dev build>.
  • Added New other_menus Folder Support (Beta)
    • FioMenu now includes support for loading menus from the new other_menus folder as an early beta feature.
    • At the moment, this system only supports DeluxeMenus-style menu format, making it possible to begin experimenting with external menu compatibility inside FioMenu's loading pipeline.

FioMenu Update - Changelog
(1.25)
  • Stopped Automatic Default Menu Fallback Regeneration for Java and Bedrock Menu Folders
    • FioMenu no longer recreates bundled default menu files as a fallback every time the plugin loads when entries are missing from fio_menus or bedrock_fio_menus.
  • Added New type: "MERCHANT" Menu Support to FioMenu
    • FioMenu now supports a new menu.type value: "MERCHANT", allowing a menu to open the native Java villager trading interface instead of a chest-style inventory GUI.
    • When this type is used, FioMenu builds a merchant UI from configuration-driven trade entries under menu.trades, so server owner can define custom trading interfaces entirely from YAML.
  • Added New Per-Trade behavior Options for type: "VILLAGER"
    • Added support for behavior.max_traded on villager trades, allowing server owner to limit how many times a specific trade can be completed per player.
    • Added behavior.refresh.enable and behavior.refresh.time so trade usage limits can reset automatically after a configured interval such as "1d", "12h", or other supported duration combinations.
    • Added behavior.exp.enable, behavior.exp.min_exp, and behavior.exp.max_exp so players can receive configurable experience rewards after successfully completing a trade.
    • Added behavior.villager.enable, behavior.villager.experience, and behavior.villager.multi so each trade can contribute villager-style progression data and apply configurable merchant price multiplier behavior.
    • Added behavior.unlock.enable and behavior.unlock.level so specific trades can stay locked until the configured villager progression requirement has been reached.
    • Supported unlock levels include NOVICE, APPRENTICE, JOURNEYMAN, EXPERT, and MASTER.
    • Villager trade behavior state is now persisted per player through FioMenu data storage, allowing trade counts, refresh windows, and unlock progress to remain consistent across menu reopen, reload, and normal server runtime usage.
  • Added Vanilla Name Fallback When name: Is Not Defined on an Item
    • When name: is not defined in an item section, FioMenu now keeps the item's original vanilla display name instead of forcing a hidden custom name.
    • This means items such as EMERALD will now render with their normal vanilla naming like Emerald when no explicit custom name is configured.
    • If server owner still wants to hide the name completely, they can continue defining name: "" explicitly.
  • Added More InventoryType Example <ui>.yml Menus to FioMenu
    • Added a new showcase example configuration for more Bukkit InventoryType values so server owner can more easily build unique menu screens beyond the standard chest inventory format.
    • The new example set demonstrates how to use menu types such as ANVIL, BARREL, BEACON, BLAST_FURNACE, BREWING, CARTOGRAPHY, CRAFTER, CRAFTING, DISPENSER, DROPPER, ENCHANTING, FURNACE, GRINDSTONE, HOPPER, LOOM, MERCHANT, SMITHING, SMOKER, STONECUTTER, and WORKBENCH.
    • These examples are intended to help server owner understand how menu.type can map directly to Bukkit inventory enums while still using normal FioMenu item rendering and action configuration patterns.
    • The showcase also provides ready-to-copy command examples so each inventory type can be tested and adapted more quickly inside real server setups.
----------, Jun 14, 2026

FioMenu Update - Changelog
(1.24)
  • Added Dynamic material: %placeholder% Parsing to FioMenu
    • FioMenu now supports placeholder-based material resolution directly inside item definitions through material: "%placeholder%".
  • Introduced behavior.durability: <value> with Static and Placeholder Support
    • Added a new behavior.durability property that allows menu items to apply runtime durability visuals directly from configuration.
  • Added behavior.fallback.enabled for Dynamic Material Rendering Failures
    • Added a dedicated fallback behavior for placeholder-driven material rendering through behavior.fallback.enabled: true.
    • When a material: "%placeholder%" result resolves to invalid, null, empty, undefined, or a non-usable value such as no material available, FioMenu can now swap the item into a configured fallback state.
  • Added New [REPAIR_GUI] Action Support
    • Introduced a new repair action system through [REPAIR_GUI] and value-based variants such as [REPAIR_GUI+10].
    • This action repairs the item placed into the configured repair slot while preserving its existing item data, including meta, NBT-related data, components, and other item-specific information instead of converting it into a plain vanilla replacement.
  • Added New repair.yml Example Menu for Repairing Features
    • Added a new repair.yml example configuration that demonstrates how to build a repair interface entirely with FioMenu components.
----------, Jun 11, 2026

FioMenu Update - Changelog
(1.23)
  • Expanded Bedrock image Rule Resolution with images.<key>.rulesX
    • Added conditional image resolution support to Bedrock UI entries so server owner can now define rule-based image states directly inside image sections.
    • Bedrock buttons are now able to switch image output dynamically through structures such as image.rules0, including success and failed image branches.
    • This makes it possible to present different textures, icons, or visual states depending on whether a configured Bedrock rule passes or fails, without needing to duplicate the entire button definition.
  • Added Bedrock Support for actions.<key>.rulesX Conditional Branches
    • Extended Bedrock action handling so rule-based action branches can now be defined directly under scoped action keys such as actions.any.rules0.
  • Introduced FioMenu Menu Bundling for Java and Bedrock
    • Added a new menu bundling system that allows multiple virtual menus to be stored inside a single physical .yml file.
----------, Jun 8, 2026

FioMenu Update - Changelog
(1.22)
  • Improved Bedrock UI Rules Key Compatibility
    • Applied additional Bedrock-side fixes around the Rules key so Bedrock UI configurations are now parsed more consistently with Java-side menu logic.
  • Expanded actions.<key>.<rulesX> Click-Scope Support
    • Extended conditional action handling so rule blocks can now be defined directly under click-specific action keys such as actions.left.rules0, actions.right.rules0, and similar scoped branches.
    • Server owners are no longer limited to a single shared conditional block when defining rule-based click behavior inside actions:.
    • Improvised compact rule syntax such as rules0: "%vault_eco_balance% >= 75000" continues to work alongside structured syntax like:
      rules0:
      type: "money"
      value: ">= 75000"
  • Fixed ENUM_SOUND Category Parsing Bug
    • Resolved a sound parsing issue where FioMenu could incorrectly interpret category input and produce warnings such as invalid SoundCategory enum constants.
----------, Jun 8, 2026

FioMenu Update - Changelog
(1.21)
  • Improved Rule-Based Item Resolution & Priority Fallback
    • FioMenu no longer fully relies on a single explicitly matched item node to decide what should be shown in the menu.
    • Expanded structural item resolution so nested indexed items now continue checking the next available priority node when the previous one does not satisfy its configured rules0/rules1/... condition.
    • Reduces the need to over-define duplicate rule keys across every item variant just to keep fallback display behavior working correctly.
  • Expanded Click-Type Rule Handling & Action Branch Support
    • Extended click handling so action branches can now respond more flexibly to click context, including left, right, shift-left, shift-right, and drop-style interactions.
  • Fixed actions: String Parsing & Conditional Action Compatibility
    • Resolved an issue where FioMenu could fail to interpret string-based rule declarations correctly when used inside actions: sections.
    • Added support for improvised scalar rule syntax such as rules0: "%vault_eco_balance% >= 75000" in addition to section-based syntax.
    • Conditional action branch resolution is now more tolerant when only one of success or failed is defined, improving backward compatibility with older or experimental configs.
    • This allows action-driven rule logic to behave more predictably even when menu authors use simplified or partially defined YAML structures.
  • Added Dual Rule Syntax Support in #1.21.5
    • Introduced two supported rule declaration styles for FioMenu configuration.
    • Modern structured syntax remains available through:
      rules0:
      type: "money"
      value: ">= 75000"
    • Fallback improvised syntax is now also supported through:
      rules0: "%vault_eco_balance% >= 75000"
    • This improves authoring flexibility while keeping old and new configuration styles compatible in the same plugin version.
  • Improved Runtime Error Handling, Validation, and Reload Stability
    • FioMenu now handles configuration and runtime failures much more cleanly, replacing several hard exceptions with plugin-controlled warnings where possible.
    • Missing menu files, invalid animation references, unsupported menu types, invalid rule definitions, and similar config problems now produce clearer FioMenu warnings instead of unnecessary large crash traces.
    • Added safer handling for empty .yml menu files so 0 KB or whitespace-only menu files are skipped during load/reload instead of breaking /fiomenu admin reload.
    • Listener and command entrypoints are now more defensive, improving overall runtime stability and reducing disruptive event exception output.
  • Fixed Success Animation State Desync & Previous-Item Flashing
    • Resolved the success animation issue where players could briefly see the old rules0 / previous-priority item before the newly valid item state appeared.
    • Animation completion now refreshes the active menu state using current resolved rules instead of restoring stale pre-animation snapshots.
    • Added protection against mid-animation refresh interference so auto-refresh and other update paths do not reveal the next item state before the animation has finished playing.
    • Final animation frames now remain visible for their intended duration, producing smoother transitions and preventing split-second visual flicker after successful actions.
----------, Jun 4, 2026

FioMenu Update - Changelog
(1.20)
  • Added New Delayed Action Tag Syntax: [TAG=<DELAY VALUE>]
    • Introduced a new universal delayed action format so action tags can now be scheduled directly inline using [TAG=<ticks>].
    • Enables cleaner action configuration without requiring separate delay control lines for common delayed action flows.
    • Supports practical usage patterns like [CLOSE=5], [OPEN_MENU=10] menu_id, [SOUND=2] SOUND_NAME 100 1, and similar executor tags.
    • Kept backward compatibility with existing action syntax, so previous [TAG] configurations continue to work unchanged.
  • Fixed shadow.yml Forced Regeneration on Reload
    • Resolved an issue where bundled shadow.yml could reappear automatically after manual deletion and plugin reload.
    • Removed hard-forced bundled copy flow that previously recreated the file during menu reload lifecycle.
    • Reload behavior now respects administrator file management decisions, preventing unwanted default menu re-injection.
    • Default menu seeding behavior remains available for fresh setup scenarios without overriding existing manual cleanup intent.
  • Reconstructed /fiomenu admin list Output & Metadata Presentation
    • Refactored list display to a cleaner compact format: file1.yml, file2.yml, file3.yml, reducing noisy vertical output.
    • Added rich hover metadata for each listed menu entry, including file allocation path, enabled/disabled state, active viewer count, menu type, and platform scope.
    • Extended listing source coverage so Java and Bedrock menu resources are both represented in menu listing workflows.
    • Improved console-facing list readability to avoid clutter while keeping in-game detail accessibility through hover interactions.
----------, Jun 2, 2026

FioMenu Update - Changelog
(1.19)
  • Fixed $profile no longer caching after recent LIST_PLAYER listener changes
    • Resolved a regression where $profile data was being held by stale cache flow after the latest LIST_PLAYER listener update.
    • Adjusted profile/list synchronization so profile rendering now reflects fresh runtime state instead of outdated cached snapshots.
    • Improved cache invalidation timing in the list-to-profile transition path to prevent stale profile views.
  • Added New Example GUI: /trash
    • Added a new default example GUI entry for /trash.
    • Provides a ready-to-use reference for disposal/cleanup interaction patterns in FioMenu menu configuration.
    • Can be used as a base template for custom trash-like utility menus.
  • Expanded Example GUI Collection (30+ GUIs)
    • FioMenu now includes more than 30+ example GUI resources by default.
    • Improves onboarding by giving broader real-world menu patterns for interaction, placeholders, sorting, prompts, and utility flows.
    • Makes it easier to start quickly without building every menu from scratch.
  • Optimized Default Animation Configuration
    • Refined bundled animation defaults for better baseline performance and cleaner behavior in common menu transitions.
    • Improved default animation resource structure so customization is more maintainable and predictable.
    • Reduced unnecessary overhead in stock animation setup while keeping visual behavior intact.
  • Fixed Bundle Right-Click Desync/Disappear Issue in Menu
    • Fixed an issue where bundle items containing content could be right-clicked in menu context and appear to disappear.
    • Hardened bundle interaction handling to block extraction actions while FioMenu inventory is open.
    • Applied client refresh flow after blocked bundle actions so displayed bundle state stays consistent with server-side item data.
----------, May 30, 2026

FioMenu Update - Changelog
(1.18)
  • Added New list_players.yml and profile.yml
    • Introduced two new configuration resources to separate player-list presentation logic from individual profile presentation.
    • list_players.yml is intended for scalable player listing views (for example, paged player selectors, filtered lists, and sorted index menus).
    • profile.yml provides a dedicated profile-layer menu structure, making it easier to build per-player detail screens without overloading generic menu files.
  • Added behavior.ifnoPrevious
    • Added a dedicated behavior branch to explicitly handle flows where no previous menu/navigation state exists.
  • Added behavior.ifnoPrevious.show: true/false
    • Added a visibility toggle for ifnoPrevious behavior handling.
  • Added empty_behavior Inside ifnoPrevious
    • Added an explicit empty-state behavior node for cases where no prior navigation context exists and no fallback content should be rendered.
  • Added New <id_format>;<format_shown>;<placeholder> Pattern in sort.format
    • Expanded sort.format syntax to support richer sort display descriptors in a single structured token.
    • This improves consistency between backend sort logic and frontend menu text rendering, especially for multi-language or dynamic-stat sorting displays.
  • Added New <key>.type: "LIST_PLAYERS"
    • Introduced a dedicated typed node for player-list driven elements.
  • Added behavior.ifSearch: true/false
    • Added behavior branching based on active search state.
  • Added behavior.bedrock_head_compatible: true/false
    • Added a compatibility toggle for Bedrock-oriented head/visual handling.
  • Added behavior.bedrock_behavior.<key>
    • Added extensible Bedrock-specific behavior mapping using keyed entries.
  • Added sign_prompt.title_change: true/false in [SIGN_PROMPT]
    • Added a toggle to control whether the sign prompt title should be dynamically replaced.
  • Added sign_prompt.title: <value> in [SIGN_PROMPT]
    • Added direct custom title assignment for sign prompt interfaces.
    • Useful for branding, context-specific instructions, and localized interaction cues.
----------, May 25, 2026

FioMenu Update - Changelog
(1.17)

  • Stopped Automatic Generation of Default Menu Config
    • FioMenu no longer generates the default menu configuration file automatically on first startup.
  • Added Database Support for FioMenu
    • Added database backend support for centralized FioMenu data persistence.
  • Data Storage Refactor: Moved language_state, player_state, and custom_slot_data to databases
    • Removed legacy storage locations for language_state, player_state, and custom_slot_data.
    • These components are now consolidated into the databases layer for consistent read/write behavior.
  • Added New algorithm Feature in FioMenu
    • Introduced a new algorithm feature to support more flexible logic behavior inside FioMenu.
    • The feature is designed to expand internal processing capabilities and enable more advanced behavior patterns.
  • Added New timezone Option in config.yml
    • Added a new timezone option in config.yml.
  • Added New Text Effect Tag: <shadow:#RRGGBB:opacity>Text</shadow>
    • Added support for a new text shadow tag:
      • <shadow:#RRGGBB:opacity>Text</shadow>.
  • Fixed Animation Flicker in %fiomenu_at:<name>%
    • Fixed a bug in %fiomenu_at:<name>% animation usage where some text could be skipped during rendering.
----------, May 25, 2026

FioMenu Update - Changelog
(1.16)

  • Added SellGUI / Vaults-Oriented Selling Flow (Configurable Integration Path)
    • Introduced a new SellGUI-oriented workflow so FioMenu menus can act as controlled sell containers, with economy payout routed through supported providers.
    • Expanded compatibility handling for vault-based economy deposit flow and plugin-driven pricing pipelines, allowing SellGUI use-cases to be managed from FioMenu menu logic.
    • Improved transaction safety behavior around unsold-item handling and refund scenarios so inventory reconciliation is more predictable during close/sell cycles.
    • Result: server owners can now build practical SellGUI/Vault-style menu experiences directly from FioMenu configuration with cleaner integration behavior.
  • Added New Menu Action: [SELL_GUI]
    • Added a new executable action token:
      • [SELL_GUI]
    • This action enables a dedicated sell execution path from menu actions, so sell behavior can be triggered explicitly in GUI action chains without relying on ad-hoc command wiring.
    • Integrated the action into existing action execution flow so it works alongside current click/action orchestration patterns (e.g., state clicks, message/sound feedback, conditional branches).
    • Result: menu authors get a first-class sell trigger for cleaner, more readable SellGUI configs.
  • Modernized config.yml Structure (Simpler + More Maintainable)
    • Refined config.yml organization to be more modern and easier to navigate for server owners.
    • Reduced ambiguity in integration-related sections and improved readability of key settings so setup and long-term maintenance are simpler.
    • Prepared configuration structure for forward compatibility, while preserving practical migration behavior for existing setups.
    • Result: cleaner config UX, lower setup friction, and easier future expansion of settings.
  • Added Permission-Gated Tab Completion
    • Implemented permission-aware filtering in command suggestions so players only see subcommands/routes they are allowed to use.
    • Updated command tab-completion behavior to respect access control at suggestion time, reducing command discovery noise for unauthorized users.
    • Improved dynamic command suggestion handling by aligning completion visibility with runtime permission expectations.
    • Result: safer UX, clearer command suggestions, and better parity between visible completions and executable actions.
----------, May 24, 2026

FioMenu Update - Changelog
(1.15)

  • BannedChars Configuration Bug Fix + Config Path Unification
    • Fixed a configuration resolution issue where blocked-word settings could be interpreted from multiple legacy paths, causing confusion and inconsistent behavior between generated/default config values.
    • Standardized blocked-word documentation and runtime usage toward the new primary config key:
      • settings.bannedChars
    • Added compatibility fallback handling in code so older configurations using legacy paths can still be read safely during migration (to avoid sudden breakage on existing servers).
    • Removed outdated wording in docs that implied blacklisted_words was still the main path for the new setup.
    • Result: server owners now have a clearer single source of truth for banned-word lists, while older configs still remain operational during transition.
  • Added 1 New Bedrock MODAL Example Menu (+ Runtime Support Fixes)
    • Added a new Bedrock MODAL example config:
      • src/main/resources/bedrock_fio_menus/modal_confirm_example.yml
    • Implemented MODAL routing support in Bedrock form pipeline so menu.form: "MODAL" is now processed by FioMenu runtime (previously only SIMPLE/CUSTOM were handled).
    • Added modal button label configuration support:
      • modal.button1
      • modal.button2
    • Added modal branch action execution support:
      • actions.accept.any
      • actions.deny.any
    • Fixed a bug where MODAL accept/deny actions were not executed due to incorrect action-scope resolution; parser now resolves actions from top-level config correctly (with fallback handling).
    • Compile/build verification passed after patch to ensure the new MODAL path is stable.
----------, May 22, 2026

FioMenu Update - Changelog
(1.14)
  • Geyser Bedrock UI Core Integration
    • Implemented full Bedrock UI integration path for FioMenu via Geyser/Floodgate runtime flow, including automatic Bedrock form rendering for supported menu types.
    • Added dedicated bedrock_fio_menus folder for Bedrock-exclusive UI definitions so Bedrock data structure is fully separated from Java GUI structures.
    • Added menu-link support via menu.bedrock: "<id>", allowing Java menu definitions to point directly to Bedrock form files.
    • Improved Bedrock runtime resolution so Bedrock players open Bedrock UI flows while Java players continue using Java inventory GUI flows.
  • Bedrock Form Type Expansion
    • Added support for Bedrock SIMPLE, CUSTOM, and MODAL form routing under the Bedrock menu pipeline.
    • Expanded form compatibility logic for content/title rendering and action execution across all supported Bedrock form types.
  • Button and Image Options for Bedrock UI
    • Added button.line1 and button.line2 support for Bedrock button text composition.
    • Added image.type and image.url support for Bedrock button image sources.
    • Added image.type variants: NONE, CUSTOM, and PATH.
    • Improved button text behavior so line separation is preserved and does not get compacted into a single unreadable line.
  • Text Rendering and Bedrock Alignment
    • Added Bedrock content alignment tags: <align:center>, <align:left>, and <align:right>.
    • Improved Bedrock align parsing compatibility to process both </align> and directional closers like </center>, </left>, </right>.
    • Refined Bedrock align spacing/width handling so centered and right-aligned content appears visually closer to expected positions in Bedrock custom form content areas.
    • Added MiniMessage-to-Bedrock color rendering compatibility improvements so styled text is translated more consistently for Bedrock clients.
  • Input/Label UI Behavior Additions
    • Added behavior.mustInput: true/false for Bedrock custom form input fields.
    • Added behavior.respectBannedChars: true/false for Bedrock custom form input validation.
    • Added configurable reopen behavior flow when blocked text is detected, so menu can reopen the same target form after validation fail logic.
    • Added/updated blocked words configuration path in config.yml using:
      • bannedChars.blacklisted_words
  • Dropdown UI Behavior and Remember System
    • Added behavior.mustRememberValue: true/false for Bedrock dropdown forms.
    • Added behavior.placeholdertoRemember: <value> for placeholder-based default resolution in dropdown forms.
    • Added behavior.dropdown.toRemember: <value> mapping support to bind placeholder values to visible option labels.
    • Added placeholder.header support for dropdown field title customization.
    • Added options support for dropdown visible entries.
    • FioMenu now remembers the chosen dropdown option per player and can restore the selected state when reopening the same Bedrock menu.
  • Checkmark UI Behavior and State Control
    • Added behavior.checkmark.behavior.placeholder_true: <value> support for true-state placeholder matching.
    • Added behavior.checkmark.behavior.placeholder_false: <value> support for false-state placeholder matching.
    • Added actions.placeholder_true and actions.placeholder_false branches for state-based checkmark action execution.
    • Implemented per-player/per-menu/per-field checkmark remember logic to prevent full-form action spam when only specific toggles are changed.
    • Improved checkmark execution flow so actions run only for options whose state actually changed, keeping toggle behavior cleaner and more deterministic.
    • Improved compatibility for placeholder-driven toggles (including Essentials-style placeholder state checks) to keep UI state synchronized even when command toggles are also used outside the form.
  • Slider UI Enhancements
    • Added behavior.value.min and behavior.value.max for numeric slider boundaries.
    • Added behavior.slider.per_slide for numeric step size control.
    • Added behavior.slider.default for default slider value/index.
    • Added behavior.type: "value" | "text" for explicit slider mode selection.
    • Separated runtime token behavior so numeric mode and text mode are no longer mixed:
      • %bedrockSliderValue% dedicated for numeric slider mode.
      • %bedrockSliderText% dedicated for text slider mode.
    • Added compatibility fallback for Bedrock slider method signatures across Cumulus/Floodgate variants to reduce runtime reflection failures.
    • Added step-slider compatible path for text-mode slider so option-based text selection can render as text-oriented selection flow instead of raw numeric-only behavior when API support exists.
  • Action/Command Routing Improvements
    • Standardized open action usage toward [OPEN_MENU] for both Java and Bedrock menu transitions.
    • Added/expanded command and alias routing support on Bedrock form definitions via:
      • menu.command
      • menu.aliases
    • Improved handling for Bedrock menu command aliases so alias triggers can resolve to the same Bedrock target menu consistently.
  • Configuration and Structure Cleanup
    • Removed legacy/unused example Bedrock form file variants as requested to avoid redundant structures.
    • Updated Bedrock example structures to keep Java and Bedrock menu responsibilities clearly separated:
      • Java: fio_menus/<menu>.yml
      • Bedrock: bedrock_fio_menus/<menu>.yml
    • Refined multiple sample Bedrock menu configs (example, settings, warps, ranksshop, label, dropdown, checkmark, slider) to follow the newly expanded structure and action system.
----------, May 22, 2026

FioMenu Update - Changelog
(1.13)
  • Bedrock Tooltip Compatibility
    • Improved Bedrock compatibility for Java item flags by translating hide-related flags (including HIDE_ENCHANTS) into Bedrock-friendly tooltip hiding behavior.
    • This helps reduce cases where Java-side hidden lines still appear on Bedrock clients due to differing tooltip systems.
  • Translation and Language System
    • Added a new Translate system powered by translation.yml, with per-language text mapping support using EN/ID/JP/CN (and extensible custom language trees).
    • Added language switch action [SET_LANG] <lang> to change player language state directly from menu actions.
    • Added new language placeholders:
      • %fiomenu_lang_id% -> returns configured language id (example: id_id)
      • %fiomenu_lang_formatted% -> returns formatted alias (example: Indonesia (ID))
      • %fiomenu_lang_id_actuall% -> returns actual language key (example: ID)
    • Language state is persisted per player so selected language remains stable across menu reopen/reload flows.
  • Item Behavior Additions
    • Added behavior.armor_trim support for armor trim application in GUI item rendering.
    • Added behavior.bundle_container support so bundle items can be pre-filled with configured contents (example: MATERIAL;AMOUNT).
    • Added behavior.tropical_pattern support for tropical fish bucket variant configuration:
      • Supported format: <PATTERN>;<BODY_COLOR> or <PATTERN>;<BODY_COLOR>;<PATTERN_COLOR>
      • Allows explicit variant targeting such as BETTY;CYAN or CLAYFISH;WHITE;ORANGE
  • Takeable Item System
    • Added behavior.take_able: true/false to control whether a GUI item can be taken by player interaction.
    • Updated takeable behavior so item pickup can follow cursor-based/manual inventory interaction flow (instead of forced hard-insert only), improving vanilla-feel UX.
    • Added behavior.clean controls for taken items:
      • clean.name: true/false -> optionally remove custom display name when taken
      • clean.lore: true/false -> optionally remove lore when taken
      • clean.nbt: true/false -> optionally clean plugin-side custom data while preserving intended runtime behavior rules
  • Cooldown Controls for Takeable/Interactive Items
    • Added behavior.cooldown.value: <seconds> to define item cooldown duration.
    • Added behavior.cooldown.wait_till_cooldown: true/false to control visibility gating while cooldown is active.
    • When enabled, item can be hidden/suppressed from GUI rendering until cooldown completes, depending on configured rule path.
  • Rule Animation Reopen Flow
    • Added wait_untill_reopen: true support for rule-driven animation branches.
    • Improved close-then-reopen scenarios so when action lines include [CLOSE], animation can be deferred and played after player reopens the exact target menu again.
    • Helps avoid animation loss in chained action workflows (example: fail/success rule actions that close menu before visual sequence starts).
----------, May 21, 2026

FioMenu Update - Changelog
(1.12)
  • Sort System Improvements
    • Added numeric sort value compatibility for behavior.ifSort using 0-1 and 1-0 patterns.
    • Added support for single-token matching in ifSort (such as '0' and '1') so value-based sorting can be mapped per item more flexibly.
    • Improved sort logic so value-priority ordering is now applied for both local-page and cross-page/inherited menu chains:
      • 0-1 prioritizes 0 above 1 (Lowest to Highest)
      • 1-0 prioritizes 1 above 0 (Highest to Lowest)
    • Expanded sort behavior so FioMenu can evaluate either alphabetical states (e.g. a-z/z-a) or numeric value states (e.g. 0-1/1-0) from the same sort framework.
  • Item Stack / Amount Enhancements
    • Added new item option amount: <value> for GUI item count configuration.
    • Extended visible item amount handling so GUI items can render above vanilla 64 stacks where supported by current server API/runtime behavior.
    • Added support target for higher stack display values (e.g. 65-99) to allow custom showcase amounts such as 67 or 69.
  • Animation System Additions
    • Added new animation mode type: "single" for one-shot style visual sequences.
    • Added clear_after_finished: true support to clear animation artifacts after sequence completion.
    • Added repeat_for: <value> support to repeat single-type animations a configurable number of cycles.
  • Command and Alias Compatibility
    • Hardened command: and aliases: parsing/normalization to improve compatibility across multilingual and non-standard keyboard input layouts.
    • Improved label normalization flow so command tokens are handled more safely for diverse character sets without breaking core command registration behavior.
  • Custom Slot and Shortcut System
    • Added new menu.custom_slot configuration block for player-configurable shortcut slots on main menus.
    • Added dual root item compatibility so menu definitions can use items and shortcut chooser definitions can use shortcuts.
    • Added chooser flow support for assigning selectable shortcut_id entries into specific custom slots.
    • Added slot persistence behavior so selected shortcuts are retained per player and per slot mapping.
    • Added shortcut render-state behavior (before/after style lore workflows) so assigned shortcuts can present selection-state UI vs. execution-state UI cleanly.
----------, May 20, 2026

FioMenu Update - Changelog
(1.11)
  • Analytics (bStats)
    • Added bStats integration so server owners can view anonymous usage statistics for FioMenu deployments.
    • Added plugin metrics bootstrap during startup and bundled shading support to avoid dependency conflicts with other plugins.
    • Included an initial custom chart registration to improve baseline metric visibility.
  • Update Checker
    • Added startup update-check support using the official Spigot resource id.
    • Added console notification when a newer FioMenu version is available.
    • Added in-game join notification for players with the update-notify permission node.
  • Rules and Actions
    • Added rule-scoped action branches so rules can execute dedicated outcomes directly.
    • Added rulesX.actions.failed.any for explicit failure handling per rule.
    • Added rulesX.actions.success.any for explicit success handling per rule.
    • Extended click-aware branches so rule actions can map to click channels consistently.
  • Sort System
    • Added new menu-level sort configuration block with:
      • settings.default_state
      • settings.formats.selected
      • settings.formats.unselected
      • format list entries (e.g. none, a-z, z-a, custom categories)
    • Added sort placeholder rendering support for %sortFormat%.
    • Added item behavior filter support through behavior.ifSort.
  • Sort Actions
    • Added [SCROLL_UP_SORT] action to cycle to the next sort format.
    • Added [SCROLL_DOWN_SORT] action to cycle to the previous sort format.
    • Added runtime state updates + menu refresh flow so format changes apply immediately in open GUI sessions.
----------, May 19, 2026

Resource Information
Author:
----------
Total Downloads: 61
First Release: May 17, 2026
Last Update: Yesterday at 10:12 AM
Category: ---------------
All-Time Rating:
5 ratings
Find more info at itzfabb.gitbook.io...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings