FOLIUM CLIENT · TECHNICAL DOCUMENTATION
Folium Client reference
Find the exact module and setting identifiers accepted by Folium server controls, alongside the client version matrix and message formats.
Supported client versions
| Minecraft | Module coverage | Server control channel |
|---|---|---|
| 1.21.11 | Module catalog below, including Performance | folium:control |
| 26.2 | Same catalog except Performance | folium:control |
Module catalog and protocol IDs
The protocol identifies a module by the ID in this table. A module’s enabled state uses that same ID; for example, disable|minimap. Module names shown in the client may be translated, but IDs remain stable.
| Module | Protocol ID | Purpose |
|---|---|---|
| FPS | fps | Frame-rate display |
| CPS | cps | Mouse click-rate display |
| Coordinates | coords | Position and biome display |
| Team tracker | teamtracker | Teammate indicators |
| Ping | ping | Network latency display |
| Direction | direction | Heading compass |
| Armor status | armour | Armor and held-item status |
| Potion effects | effects | Active effect display |
| Keystrokes | keystrokes | Movement keys and click display |
| Minimap | minimap | Local map and entity markers |
| Scoreboard | scoreboard | Scoreboard presentation |
| Tab list | tablist | Player list presentation |
| Chat | chat | Chat formatting, filtering and macros |
| Time and weather | time | Local time and weather display |
| FOV changer | fov | Field-of-view controls |
| Crosshair | crosshair | Crosshair appearance |
| Nametags | nametags | Player nametag visibility |
| Hit color | hitcolour | Hit feedback color |
| Shulker preview | shulkertooltip | Container preview tooltip |
| Titles | titles | Title and subtitle presentation |
| Hitboxes | hitboxes | Entity hitbox visualization |
| Block overlay | blockoverlay | Target block outline and fill |
| Playback | playback | Replay capture controls |
| Boss bar | bossbar | Boss bar visibility and name |
| Combo counter | combo | Consecutive-hit count |
| Reach display | reach | Interaction distance readout |
| Streamer mode | identity | Hide identifying account details |
| Item Models | itemmodel | Held and dropped item transforms |
| Debug overlay | debugoverlay | Configurable debug information |
| Item physics | itemphysics | Dropped-item rendering |
| 3D skins | skinlayers | Additional player skin geometry |
| Particles | particles | Particle rules and multiplier |
| Sounds | sounds | Sound volume and pitch rules |
| Object info | blockinfo | Target block or entity details |
| Screenshots | screenshots | Capture and quick-action options |
| WorldEdit CUI | worldeditcui | WorldEdit selection display |
| TNT timer | tnt | Primed TNT countdown |
| Motion blur | motionblur | Motion blur strength |
| Light fullbright | fullbright | Brightness, dynamic light and spawn markers |
| Color saturation | colorsaturation | Color saturation and contrast |
| Shaders | shaders | Built-in shader selection and configuration |
| Saturation | saturation | Food and exhaustion HUD |
| Speed | speed | Movement speed readout |
| Waypoints | waypoints | Saved location markers |
| Zoom | zoom | Zoom and camera options |
| Free look | freelook | Independent camera look |
| Snap look | snaplook | Temporary perspective change |
| Camera | hurtcam | Damage camera effects |
| Movement | movement | Sprint, sneak and movement HUD |
| Horse stats | horsestats | Horse jump, speed and health |
| Mini Me | minime | Player model display |
| Auto GG | autogg | Configured post-game message |
| Shiny potions | shinypotions | Glint for potion items |
| Enchant glint | itemglint | Enchantment glint color |
| Occlusion culling | occlusion | Skip hidden geometry work |
| Performance | performance | Rendering, distance and frame-limit options (1.21.11) |
| Inventories | inventories | Inventory HUD and appearance |
| Clock | clock | Clock display format |
| Animations | animations | Player, item and world animations |
| Tooltips | tooltips | Tooltip contents and formatting |
| Memory usage | memory | Memory-use display |
| Server address | server_address | Server icon and address display |
| Pack display | resourcepacks | Active resource-pack display |
| Item counter | itemcounter | Selected item counts |
| Stopwatch | stopwatch | Elapsed-time counter |
| TPS | tps | Server tick-rate display |
| Music player | music | Local music controls |
| Bug patches | bugpatches | Client compatibility fixes |
| Voice chat | voice | Proximity voice controls |
Settings and setting IDs
Settings are addressed as module-id.option-id. The left column gives the label shown by the client; the right column is the protocol ID. IDs below apply to the listed client versions. Every module also has an enabled state addressed by its module ID.
| Module | Setting shown in client | Setting ID |
|---|---|---|
Chat (chat) | Stack repeated messages | merge |
| Chat | Timestamps | time |
| Chat | Time format | timeFormat |
| Chat | Hide received messages | quiet |
| Chat | Hide messages containing | hide |
| Chat | Highlight words | highlight |
| Chat | Chat macros | macrosOn |
Minimap (minimap) | Map size | size |
| Minimap | Zoom | zoom |
| Minimap | Mode | shape |
| Minimap | Rotate with player | rotate |
| Minimap | Entity markers | entities |
| Minimap | Show coordinates | coords |
Coordinates (coords) | Mode | mode |
| Coordinates | Show Y | y |
| Coordinates | Show biome | biome |
Keystrokes (keystrokes) | Mouse buttons | mouse |
| Keystrokes | Show space bar | space |
| Keystrokes | Show LMB CPS | lmbCps |
| Keystrokes | Show RMB CPS | rmbCps |
Performance (performance) | Entity culling | occlusionEntities |
| Performance | Block entity culling | occlusionBlockEntities |
| Performance | Particle limit | particleLimit |
| Performance | Tabbed out FPS limit | unfocused |
| Performance | Idle FPS limit | idleFrameLimit |
| Performance | Menu FPS limit | menuFrameLimit |
Voice (voice) | Enable microphone | microphone |
| Voice | Talk mode | talkMode |
| Voice | Push-to-talk key | pushToTalk |
| Voice | Proximity range | range |
Waypoints (waypoints) | Show distance | distance |
| Waypoints | Draw distance | range |
| Waypoints | Show on minimap | onMinimap |
| Waypoints | Show on direction | onCompass |
| Common HUD settings | Text color | textColour |
| Common HUD settings | Text opacity | opacity |
| Common HUD settings | Text shadow | shadow |
| Common HUD settings | Background opacity | bgOpacity |
| Common HUD settings | Outline color | outlineColour |
| Common HUD settings | Outline thickness | outlineWidth |
| Common HUD settings | Scale | scale |
This table documents the settings most commonly used with protocol controls. Other modules expose module-specific options in their settings screen; the protocol syntax is the same. A setting lock prevents editing and does not change the stored setting value.
Server control protocol
Modern clients receive controls on the custom payload channel folium:control. Send UTF-8 text, with one command per line and fields separated by |. Do not prefix the payload with Java writeUTF framing.
| Message | Effect |
|---|---|
disable|<module-id> | Turns the module off and locks it for the connection. |
enable|<module-id> | Requires the module to remain on. The client ignores enable|voice. |
disable|<module-id>.<setting-id> | Locks that setting in the UI; its value is unchanged. |
allow|<module-id>.<setting-id> | Removes the setting lock. |
allow|<module-id> | Removes module and setting locks and restores the player's saved module state. |
reset | Clears controls, event subscriptions and voice policy; keeps the team roster. |
listen|<event-id> | Subscribes to a supported client event. |
ignore|<event-id> | Removes the event subscription. |
trigger|autogg | Requests the Auto GG action; reply is an acknowledgement. |
Team and position messages
| Message | Effect |
|---|---|
team|<uuid>|<player-name>|<team-id> | Adds or updates a player's team assignment. |
team|<uuid> | Removes the assignment and retains the player's position. |
team | Clears the team roster. |
pos|<uuid>|<x>|<y>|<z>|<health>|<dimension> | Updates block coordinates; health and dimension are optional. |
pos|<uuid> | Forgets the player position. |
Limits per payload: 32 KiB, 256 lines, 8 KiB per field and 512 rules. IDs are case-sensitive. Unknown commands are ignored. Disconnect clears server controls, subscriptions, voice state and team data. These controls are cooperative client behavior, not server-side enforcement.
For packet details and compatibility notes, see the server protocol reference.
Voice chat
Voice has its own permission controls. The client ignores a server request to enable the voice module. The player must enable the module and microphone locally. On dedicated servers, the server sends a short-lived voice ticket and endpoint through the control protocol; production voice requires a configured TURN/TURNS relay. Hosted worlds use their embedded voice transport.
| Message | Effect |
|---|---|
voice|configure|<single-line-json> | Supplies endpoint, ticket, permissions and ICE server configuration. |
voice|permissions|<listen>|<speak> | Sets recipient listen and speak permissions; does not enable the mic. |
voice|off | Clears the current voice configuration. |
Voice audio is not sent through the Minecraft control channel. See the linked protocol document for the signaling contract, relay requirements and hosted-world transport details.