Player Roles: Flexible Roles and Permissions for Fabric Servers

Player Roles mod for Minecraft Fabric: flexible roles, permissions, and chat styling via JSON. Set prefixes, mute, and inheritance without restarts.

Download player roles for Minecraft 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.19, 1.19.1, 1.19.3, 1.20, 1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.3, 1.21.5, 1.21.6, 1.21.8

Original name: player roles

Minecraft: 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.19, 1.19.1, 1.19.3, 1.20, 1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.3, 1.21.5, 1.21.6, 1.21.8

Loaders: Fabric

FileMCLoaderSize
player-roles-1.0.1.jar1.16.1Fabric41 КБDownload
fabric-roles-1.0.0.jar1.16.1Fabric40 КБDownload
player-roles-1.0.2.jar1.16.1Fabric41 КБDownload
player-roles-1.1.0.jar1.16.2Fabric43 КБDownload
player-roles-1.1.1.jar1.16.3Fabric48 КБDownload
player-roles-1.1.2.jar1.16.4Fabric49 КБDownload
player-roles-1.2.0.jar1.16.4Fabric56 КБDownload
player-roles-1.2.1.jar1.16.4Fabric56 КБDownload
player-roles-1.3.0.jar1.16.4Fabric79 КБDownload
player-roles-1.3.1.jar1.16.5Fabric110 КБDownload
player-roles-1.4.0.jar1.17Fabric121 КБDownload
player-roles-1.4.2.jar1.17Fabric122 КБDownload
player-roles-1.4.1.jar1.17Fabric121 КБDownload
player-roles-1.4.3.jar1.17.1Fabric122 КБDownload
player-roles-1.5.0.jar1.18Fabric129 КБDownload
player-roles-1.5.1.jar1.18.1Fabric133 КБDownload
player-roles-1.5.2.jar1.18.1Fabric133 КБDownload
player-roles-1.6.0.jar1.19Fabric135 КБDownload
player-roles-1.6.1.jar1.19.1Fabric134 КБDownload
player-roles-1.6.4.jar1.19.3Fabric137 КБDownload
player-roles-1.6.3.jar1.19.3Fabric137 КБDownload
player-roles-1.6.5.jar1.20Fabric138 КБDownload
player-roles-1.6.6.jar1.20.1Fabric232 КБDownload
player-roles-1.6.7.jar1.20.2Fabric272 КБDownload
player-roles-1.6.8.jar1.20.4Fabric272 КБDownload
player-roles-1.6.9.jar1.20.4Fabric272 КБDownload
player-roles-1.6.10.jar1.20.6Fabric141 КБDownload
player-roles-1.6.11.jar1.21Fabric139 КБDownload
player-roles-1.6.12.jar1.21.1Fabric139 КБDownload
player-roles-1.6.13.jar1.21.3Fabric138 КБDownload
player-roles-1.6.14.jar1.21.5Fabric139 КБDownload
player-roles-1.6.15.jar1.21.6Fabric139 КБDownload
player-roles-1.7.0.jar1.21.8Fabric137 КБDownload
player-roles-1.8.0.jar1.21.8Fabric136 КБDownload
player-roles-1.8.1.jar1.21.8Fabric136 КБDownload
player-roles-v1.9.0-pre.1.jar1.21.8Fabric135 КБDownload

Player Roles for Fabric: Flexible Server Role System

Running a multiplayer Minecraft world often turns into a juggling act of permissions, command restrictions, and chat formatting. Without a unified system, server admins end up stitching together multiple mods and datapacks, each with its own syntax and quirks. Player Roles for Fabric: Flexible Server Role System changes that by introducing a Discord-inspired role framework directly into the server core. Instead of scattered configuration files, you get a single JSON document that defines what every player can do, how their name appears, and even how their messages look in chat. The result is a cleaner, more maintainable server environment where rules are transparent and adjustments happen on the fly.

How the Role Hierarchy Works

At the heart of the mod lies a simple but powerful priority model. Every player automatically receives the everyone role—it cannot be removed and serves as the baseline. Additional roles stack on top, and when two roles conflict over a permission, the one with the higher level wins. This makes it easy to build a ladder from guest to moderator without worrying about contradictory overrides. For example, a player holding both spectator and admin roles will always follow the admin rules because of its superior priority. The hierarchy scales naturally, so you can add as many intermediate roles as your community needs.

Overrides: The Building Blocks of Control

Almost every feature in Player Roles for Fabric: Flexible Server Role System revolves around overrides. These are granular toggles that alter game behavior for a specific role. The supported override types include:

  • commands – allow, deny, or hide specific commands using regex patterns.
  • name_decoration – apply prefixes, suffixes, colors, and text styles to player names.
  • chat_type – assign a custom chat format from the Minecraft registry or a datapack.
  • mute – block a role from sending chat messages entirely.
  • command_feedback – control whether players see global command output.
  • permission_level – set the vanilla permission level for compatibility with other mods.
  • entity_selectors – grant access to entity selector arguments in commands.

Because overrides are defined per role, you can mix and match them to create precisely tailored experiences. A builder role might have full command access to worldedit functions but muted chat, while a VIP role gets a flashy name decoration and a custom chat type.

Command Filtering with Regular Expressions

One of the most practical aspects of the mod is its command management. Instead of blanket allow/deny lists, you write regex patterns that match specific commands or subcommands. Each pattern can be set to allow, deny, or hidden. The hidden strategy is particularly clever: it removes the command from tab completion and help menus, so players never even know it exists. This is perfect for survival servers where you want to offer teleportation commands but hide administrative ones. After a few examples, the regex syntax becomes second nature, and you gain far more precision than vanilla permission levels ever allowed.

Visual Roles: Name Decoration and Chat Styling

The name_decoration override transforms how a player's name appears in chat and the tab list. You can add a prefix like [Admin], a suffix, custom colors, bold, italic, underline, and even hex color codes. This is a boon for roleplay servers, PvP arenas, or any community that values visual identity. Keep in mind that scoreboard team colors can sometimes override these settings, so it's best to design your visual scheme holistically. For chat, the chat_type override lets you assign a specific message template from the minecraft:chat_type registry. If the built-in formats aren't enough, you can define your own in a datapack and reference it by namespace. Note that chat type registries load at server startup, so changes to those files require a restart—unlike the main roles.json, which reloads instantly.

Mute, Permission Level, and Entity Selectors

A role with mute: true completely silences a player's chat. This is an elegant way to enforce temporary restrictions without resorting to a full ban. The permission_level override sets the vanilla operator level, which many mods and command blocks rely on. By assigning it through a role, you avoid giving out full operator status. The entity_selectors override is a hidden gem for technical servers. Normally, entity selector arguments like @e[type=...] are restricted, but with this override you can grant them to event teams or command block chains, enabling complex automation without compromising security.

Role Inheritance and Management Commands

To keep configurations DRY, the mod supports role inheritance via the includes field. A senior moderator role can inherit all overrides from a base moderator role and then add only the extra permissions it needs. This eliminates copy-paste errors and makes the hierarchy easy to audit. All role assignments are handled through the /role command:

  • /role assign <player> <role> – grants a role.
  • /role remove <player> <role> – revokes a role.
  • /role list <player> – shows all roles a player currently has.
  • /role reload – reloads the roles.json configuration without restarting the server.

Roles can also be applied to command block and function executors through the configuration, which is invaluable for adventure maps and automated event scripts.

Installation and Compatibility

To download Player Roles for Fabric: Flexible Server Role System, you need a Fabric server running a modern Minecraft version—the mod is actively maintained for releases like 1.19, 1.20, and 1.21. Place the JAR file in your server's mods folder along with the required Fabric API. After the first launch, a roles.json file appears in the config directory. This is where you define all roles and overrides. The mod is designed to work alongside other server-side mods and datapacks, and because it uses vanilla-compatible permission levels, it rarely conflicts with existing setups. If you're wondering how to install it on a client, note that this is a server-only mod; players do not need to install anything on their end. Simply drop it into the server mods folder, restart, and start configuring.

Practical Scenarios for Your Server

Imagine a survival server with distinct player tiers. Newcomers get the everyone role with basic chat and a few essential commands. Regulars earn a member role that adds a colored name and access to home teleportation. Donors receive a vip role with a shiny prefix and a custom chat type. Moderators inherit from member but gain command feedback and the ability to mute others. Admins sit at the top with full command access and entity selectors. All of this lives in one JSON file, reloadable with a single command. For minigame hubs, you can create temporary roles that grant specific kit commands and then remove them when the game ends. The flexibility is immense, and because everything is text-based, you can version-control your configuration and share it across multiple servers.

Why This Approach Beats Traditional Permission Mods

Many permission mods rely on complex node trees or external databases. Player Roles for Fabric: Flexible Server Role System for Minecraft strips that down to a human-readable JSON structure that mirrors how communities actually think about roles. The override system is intuitive: you decide what a role can do, and the mod enforces it. There's no need to learn a new scripting language or manage a web panel. The built-in regex support for commands gives you surgical precision, while the visual customization keeps your server looking professional. Because the mod hooks into vanilla systems like chat types and permission levels, it feels like a natural extension of the game rather than a bolted-on afterthought.

Final Thoughts

If you're tired of permission chaos and want a server where every player knows exactly what they can and cannot do, this mod is a solid investment. Start with a simple two-role setup, test the overrides on a staging server, and gradually expand your hierarchy. The ability to reload configurations without downtime means you can iterate quickly and respond to community feedback. Whether you run a small private world or a large public network, Player Roles for Fabric: Flexible Server Role System gives you the tools to build a structured, predictable, and visually cohesive player experience. Give it a try, and you'll wonder how you ever managed without it.