Core Settings
Storage
The current config.yml exposes:
yamlsqlitemysql
but the source comments clearly state that this build currently persists runtime and player state into plugins/FioMenu/data.yml, and sqlite or mysql fall back to YAML with a warning.
That means the storage section is already forward-looking, but YAML is the real active storage path in this build.
Daily algorithm timezone
settings.algorithm.timezone controls the timezone used for daily algorithm calculations such as %perdayClick%.
Source example:
settings:
algorithm:
timezone: "Asia/Bangkok"
Banned chat fragments for Bedrock custom input
settings.bannedChars is used by Bedrock custom label or input forms when the form respects banned characters.
This is not a global chat moderation engine. It is a Bedrock form input guard for form flows that opt into that behavior.
GUI stack limit
settings.item_stack.limit sets the global GUI container stack display limit.
Source example:
settings:
item_stack:
limit: 99
Join and world-change events
The source provides event hooks for automatic menu or dialogue opening:
first-joinjoindeathchangeWorld
Each field expects an id or an empty string. That lets you trigger a menu or dialogue without writing command logic elsewhere.
Debug switches
Current debug toggles:
allbundleplaceholderinteraction
Use them when you need to inspect placeholder parsing, bundle behavior, or interaction flow while testing a menu.
Integration toggles
The current config.yml includes integration flags for:
- PlaceholderAPI
- ProtocolLib
- EssentialsX
- ShopGUIPlus
- CMI
- CMILib
- EconomyShopGUI
- LuckPerms
- DynamicShop
- VotingPlugin
- NuVotifier
- VotifierPlus
- JobsReborn
- PlayerPoints
- ExcellentEconomy
- PlayerShop
- QuickShop
- ChestShop
- zessentials
- Sunlight
- PlayerMarket
These are feature toggles, not proof that every menu requires those plugins. Enable the ones that match the placeholders, economy logic, or permission flows your menus actually depend on.
MiniMessage color aliases
The plugin exposes a small color alias block:
primarysecondaryamethystdcpink
These are meant to be reused inside menu text so your YAML stays visually consistent without repeating raw hex codes everywhere.
Bedrock detection
The Bedrock section controls how FioMenu decides whether a player should open a Java menu or a Bedrock form.
Fields:
settings.geyser.enabledsettings.geyser.prefix
If prefix mode is enabled and the prefix is ., then a player such as .Steve is treated as Bedrock by this logic.
If your server already has a different Bedrock naming convention, make sure settings.geyser.prefix matches your actual environment before relying on Bedrock menu routing.