Skip to content

ToolkitMC/PermCore

Repository files navigation

PermCore

Advanced permission and action management for Fabric servers.

License: MIT Minecraft Fabric

Features

  • Group-based Permission System — Default groups: owner, admin, moderator, default
  • Command Denylist — Block dangerous commands server-wide with configurable defaults
  • Action System — Create reusable actions (teleport, message, sound, effect, give, etc.) and execute them via command or auto-trigger
  • Chest GUI/permcore menu opens an interactive inventory-based control panel
  • ModMenu Integration — Toggle settings directly from the in-game mod list
  • Strict Mode — Requires explicit permcore.command.<name> permission for every command
  • Wildcard Permissionspermcore.admin.*, permcore.command.*, etc.
  • Mixin-powered — Hooks into the command dispatcher and player join events
  • Zero network requests — All data stays local; sandbox-safe
  • Configurable messages — Customize every chat message in config/permcore.json

Commands

Command Description
/permcore menu Open the Chest GUI
/permcore help Show help overview
/permcore reload Reload all data from disk
/permcore group list List all groups
/permcore group create <name> <priority> Create a new group
/permcore group delete <name> Delete a group
/permcore group addperm <group> <permission> Add permission to group
/permcore group removeperm <group> <permission> Remove permission from group
/permcore group prefix <group> <prefix> Set group prefix
/permcore group suffix <group> <suffix> Set group suffix
/permcore player addgroup <player> <group> Add player to group
/permcore player removegroup <player> <group> Remove player from group
/permcore player info <player> Show player info
/permcore player permission set <player> <perm> Set player permission
/permcore player permission remove <player> <perm> Remove player permission
/permcore player permission check <player> <perm> Check player permission
/permcore action list List all actions
/permcore action execute <id> Execute an action
/permcore action executeall Execute all auto-actions
/permcore action add <id> <type> <value> Add a new action
/permcore action delete <id> Delete an action
/permcore denylist list List denied commands
/permcore denylist add <command> Add command to denylist
/permcore denylist remove <command> Remove command from denylist
/permcore denylist reset Reset denylist to defaults

Action Types

Type Value Example Description
teleport 0 100 0 Teleport player to coordinates
message Hello world! Send a chat message
command give @s diamond 64 Execute a command
sound entity.player.levelup Play a sound
particle heart Spawn particles
title Welcome! Send a title
actionbar Status update Send actionbar message
gamemode creative Change gamemode
effect speed 30 2 Apply status effect
give diamond 64 Give items
clear diamond Clear items from inventory
kill true Kill the player
heal 5 Heal the player
feed 5 Feed the player
xp 500 Add XP
fly true Toggle flight

Default Denylist

stop, restart, ban, ban-ip, pardon, pardon-ip, op, deop, whitelist, save-all, save-off, save-on, debug, reload, data, datapack, defaultgamemode, difficulty, gamerule, perf

Overridable via /permcore denylist add/remove/reset.

Default Groups

Group Priority Permissions
default 0 permcore.use.*
moderator 1 permcore.mod.*, permcore.use.*
admin 2 permcore.manage.*, permcore.mod.*, permcore.use.*
owner 3 *

Permission Nodes

permcore.use.*              → basic commands (menu, help)
permcore.mod.*              → kick, mute, moderate actions
permcore.manage.*           → group management, player management
permcore.admin.*            → full access (bypasses OP level checks)
permcore.command.<cmd>      → per-command permission (strict mode)
permcore.action.execute.*   → execute any action
permcore.action.execute.<id>→ execute a specific action
permcore.admin.bypass.denylist → bypass command denylist

Configuration

Edit config/permcore.json to customize:

  • enabled — enable/disable the entire mod
  • strictMode — require explicit permcore.command.* for every command
  • logAllCommands — log every command to console
  • logDeniedCommands — log denied commands
  • defaultPermissionLevel — fallback permission level for players not in any group
  • maxActionsPerTick — cap auto-actions per tick
  • messages — customize all chat messages
  • defaultDenyList — default command denylist
  • showBossBar — toggle boss bar feedback
  • enableGroupPrefix / enableGroupSuffix — toggle group prefixes in chat

Permissions

Operator bypass

Server operators (level 4) always bypass all PermCore checks. To use PermCore as the sole permission system, set operator level to 0 for all players and grant permcore.admin.* instead.

Strict Mode

When enabled, every command requires an explicit permcore.command.<name> permission. Without it, the command is denied even if not on the denylist.

Technical

  • Minecraft: 1.21.4+
  • Fabric API: 0.104.0+
  • Mod Menu: 11.0.3+
  • Java: 21+
  • Data storage: JSON files under permcore/ in the game directory
  • No network requests — sandbox-safe, works offline

Development

./gradlew build

Output: build/libs/PermCore-1.0.0.jar

License

MIT — see LICENSE


Made by ToolkitMC · github.com/ToolkitMC/PermCore

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages