PermissionCore | 1.10-1.21 icon

PermissionCore | 1.10-1.21 -----

A lightweight permission plugin.



PermissionCore

What makes PermissionCore different
Lightning Performance - Zero-lag caching system built for speed
Universal Compatibility - Support for MC 1.10-1.21
Effortless Setup - YAML storage with instant hot-reload
Multi-Language Ready - Full customisation (EN/ES lang. included)
Wildcard Support - Use * for comprehensive access
Permission Negation - Explicitly deny with -permission
Time-Based Access - Grant temporary permissions (1h, 7d, etc.)
Multi-Parent Inheritance - Complex hierarchy support
Advanced group system
Smart player management with
Commands
Chat integration

Ready-to-Go Setup

  • Drop in plugins/ → Restart → Enjoy!
  • Pre-configured ranks included:
  • default → member → vip → moderator → admin → owner
# PermissionCore Language File - English (US)
#
# Color codes are supported using & symbol
# Placeholders are defined with {placeholder}

# General Messages
general:
prefix: "&6[PermissionCore] &r"
no-permission: "&cYou don't have permission to perform this action!"
player-not-found: "&cPlayer &e{player} &cnot found!"
player-never-joined: "&cPlayer &e{player} &chas never joined this server!"
invalid-number: "&cInvalid number: &e{number}"
invalid-duration: "&cInvalid duration format! Use: 1s, 5m, 2h, 7d, 1w"
console-only: "&cThis command can only be run from console!"
player-only: "&cThis command can only be run by a player!"

# Reload Messages
reload:
success: "&aPermissionCore has been reloaded successfully!"
starting: "&eReloading PermissionCore..."
error: "&cAn error occurred while reloading: &e{error}"

# Group Messages
group:
not-found: "&cGroup &e{group} &cdoes not exist!"
already-exists: "&cGroup &e{group} &calready exists!"
created: "&aSuccessfully created group &e{group}"
deleted: "&aSuccessfully deleted group &e{group}"
cannot-delete-default: "&cCannot delete the default group!"
set-default: "&aSet &e{group} &aas the default group"
info-header: "&6===== Group Info: {group} ====="
list-header: "&6===== Groups (sorted by priority) ====="
list-entry: "&7- &f{name} &7(Priority: {priority}){default}"
list-default-tag: " &a[DEFAULT]"

# Group Property Messages
prefix-set: "&aSet prefix for group &e{group} &ato: &r{prefix}"
suffix-set: "&aSet suffix for group &e{group} &ato: &r{suffix}"
priority-set: "&aSet priority for group &e{group} &ato &e{priority}"
display-name-set: "&aSet display name for group &e{group} &ato: &r{displayname}"

# Group Permission Messages
permission-added: "&aAdded permission &e{permission} &ato group &e{group}"
permission-removed: "&aRemoved permission &e{permission} &afrom group &e{group}"
permission-already-exists: "&cGroup &e{group} &calready has permission &e{permission}"
permission-not-found: "&cGroup &e{group} &cdoesn't have permission &e{permission}"

# Group Inheritance Messages
inherit-added: "&aGroup &e{group} &anow inherits from &e{parent}"
inherit-removed: "&aGroup &e{group} &ano longer inherits from &e{parent}"
inherit-already-exists: "&cGroup &e{group} &calready inherits from &e{parent}"
inherit-not-found: "&cGroup &e{group} &cdoesn't inherit from &e{parent}"
inherit-self: "&cA group cannot inherit from itself!"
inherit-circular: "&cCircular inheritance detected! Cannot add &e{parent} &cas parent"

# User/Player Messages
user:
data-created: "&aCreated player data for &e{player}"
data-not-found: "&cCould not find player data for &e{player}"
info-header: "&6===== Player Info: {player} ====="

# Group Management
group-set: "&aSet &e{player}'s &aprimary group to &e{group}"
group-added: "&aAdded &e{player} &ato group &e{group}"
group-removed: "&aRemoved &e{player} &afrom group &e{group}"
group-already-has: "&e{player} &cis already in group &e{group}"
group-doesnt-have: "&e{player} &cisn't in group &e{group}"

# Permission Management
permission-added: "&aAdded permission &e{permission} &ato &e{player}"
permission-removed: "&aRemoved permission &e{permission} &afrom &e{player}"
permission-already-has: "&e{player} &calready has permission &e{permission}"
permission-doesnt-have: "&e{player} &cdoesn't have permission &e{permission}"

# Temporary Permission Messages
temp-permission-added: "&aAdded temporary permission &e{permission} &ato &e{player} &afor &e{duration}"
temp-permission-removed: "&aRemoved temporary permission &e{permission} &afrom &e{player}"
temp-permission-expired: "&eTemporary permission &6{permission} &ehas expired"
temp-permission-expiring: "&eTemporary permission &6{permission} &ewill expire in &6{time}"

# Permission Check Messages
check:
header: "&6===== Permission Check ====="
player: "&7Player: &f{player}"
permission: "&7Permission: &f{permission}"
result-yes: "&7Result: &aYES"
result-no: "&7Result: &cNO"
source: "&7Source: &f{source}"

# Info Command Messages
info:
uuid: "&7UUID: &f{uuid}"
primary-group: "&7Primary Group: &f{group}"
additional-groups: "&7Additional Groups: &f{groups}"
personal-permissions: "&7Personal Permissions:"
temporary-permissions: "&7Temporary Permissions:"
permission-entry: "&7 - &f{permission}"
temp-permission-entry: "&7 - &f{permission} &7({time} left)"
no-additional-groups: "&7No additional groups"
no-permissions: "&7No personal permissions"
no-temp-permissions: "&7No temporary permissions"
last-seen: "&7Last Seen: &f{time}"

# Group Info Fields
display-name: "&7Display Name: &r{displayname}"
priority: "&7Priority: &f{priority}"
default: "&7Default: &f{value}"
prefix: "&7Prefix: &r{prefix}"
suffix: "&7Suffix: &r{suffix}"
inherits-from: "&7Inherits from: &f{groups}"
permissions: "&7Permissions:"
members: "&7Members: &f{count}"

# Command Help Messages
help:
header: "&6===== PermissionCore Help ====="
reload: "&e/perm reload &7- Reload the plugin"
info: "&e/perm info [player] &7- Show player info"
check: "&e/perm check <player> <permission> &7- Check if player has permission"
user: "&e/perm user <player> <action> &7- Manage user permissions"
group: "&e/perm group <group> <action> &7- Manage groups"
help: "&e/perm help &7- Show this help"

# User subcommands
user-header: "&6===== User Commands ====="
user-info: "&e/perm user <player> info &7- View player information"
user-setgroup: "&e/perm user <player> setgroup <group> &7- Set primary group"
user-addgroup: "&e/perm user <player> addgroup <group> &7- Add to group"
user-removegroup: "&e/perm user <player> removegroup <group> &7- Remove from group"
user-addperm: "&e/perm user <player> addperm <permission> &7- Grant permission"
user-removeperm: "&e/perm user <player> removeperm <permission> &7- Revoke permission"
user-addtemp: "&e/perm user <player> addtemp <permission> <duration> &7- Grant temporary permission"

# Group subcommands
group-header: "&6===== Group Commands ====="
group-list: "&e/perm group list &7- List all groups"
group-info: "&e/perm group <group> info &7- View group information"
group-create: "&e/perm group <group> create &7- Create new group"
group-delete: "&e/perm group <group> delete &7- Delete group"
group-addperm: "&e/perm group <group> addperm <permission> &7- Add permission"
group-removeperm: "&e/perm group <group> removeperm <permission> &7- Remove permission"
group-setprefix: "&e/perm group <group> setprefix <prefix> &7- Set prefix"
group-setsuffix: "&e/perm group <group> setsuffix <suffix> &7- Set suffix"
group-setpriority: "&e/perm group <group> setpriority <priority> &7- Set priority"
group-addinherit: "&e/perm group <group> addinherit <parent> &7- Add inheritance"
group-removeinherit: "&e/perm group <group> removeinherit <parent> &7- Remove inheritance"
group-setdefault: "&e/perm group <group> setdefault &7- Set as default group"

# Usage Messages
usage:
unknown-command: "&cUnknown command. Use &e/perm help &cfor help."
unknown-action: "&cUnknown action: &e{action}"
specify-action: "&cPlease specify an action!"
invalid-usage: "&cInvalid usage! Correct usage: &e{usage}"
duration-format: "&7Duration format: 1s, 5m, 2h, 7d, 1w"

# Time Formatting
time:
now: "now"
expired: "expired"
days: "{days}d {hours}h"
hours: "{hours}h {minutes}m"
minutes: "{minutes}m {seconds}s"
seconds: "{seconds}s"

# Relative times
ago: "{time} ago"
in: "in {time}"

# Date format
date-format: "MM/dd/yyyy HH:mm:ss"

# Chat Format Messages
chat:
format-changed: "&aChat format has been updated!"
format-disabled: "&cChat formatting is disabled!"
format-enabled: "&aChat formatting is enabled!"

# Debug Messages (only shown when debug is enabled)
debug:
permission-check: "&7[DEBUG] Checking permission &e{permission} &7for &e{player}"
permission-granted: "&7[DEBUG] Permission &e{permission} &agranted &7to &e{player}"
permission-denied: "&7[DEBUG] Permission &e{permission} &cdenied &7to &e{player}"
group-loaded: "&7[DEBUG] Loaded group &e{group} &7with &e{count} &7permissions"
player-loaded: "&7[DEBUG] Loaded player data for &e{player}"
config-saved: "&7[DEBUG] Configuration saved: &e{file}"
inheritance-check: "&7[DEBUG] Checking inheritance: &e{child} &7-> &e{parent}"

# Error Messages
error:
save-failed: "&cFailed to save {file}: {error}"
load-failed: "&cFailed to load {file}: {error}"
permission-attach-failed: "&cFailed to attach permissions to {player}"
invalid-config: "&cInvalid configuration in {file}"
file-not-found: "&cFile not found: {file}"
create-file-failed: "&cFailed to create file: {file}"

# Confirmation Messages
confirm:
pending: "&eType &a/perm confirm &eto confirm or &c/perm cancel &eto cancel"
action-confirmed: "&aAction confirmed!"
action-cancelled: "&cAction cancelled!"
nothing-to-confirm: "&cNothing to confirm!"
timeout: "&cConfirmation timed out!"

# Notification Messages
notification:
update-available: "&aA new version of PermissionCore is available: &e{version}"
join-message: "&7Welcome &e{player}&7! Your rank: {group}"
permission-expired: "&eYour temporary permission &6{permission} &ehas expired!"
group-changed: "&aYour group has been changed to &e{group}"
permission-granted: "&aYou have been granted permission: &e{permission}"
permission-revoked: "&cPermission revoked: &e{permission}"
# PermissionCore Settings Configuration
#
# Main configuration file for PermissionCore plugin

# Chat formatting settings
chat-formatting:
# Enable/disable chat formatting with group prefixes and suffixes
enabled: true

# Chat format template
# Available placeholders:
# {prefix} - Group prefix
# {suffix} - Group suffix
# {name} - Player name
# {displayname} - Player display name
# {message} - Chat message
# {group} - Group display name
format: '{prefix}{name}{suffix}: {message}'

# Default permissions given to all players
# These permissions are applied server-wide regardless of group
default-permissions:
- minecraft.command.help
- minecraft.command.list
- minecraft.command.rules
- minecraft.command.spawn

# Permission check settings
permission-check:
# Enable verbose permission checking (for debugging)
verbose: false

# Cache permission checks for better performance
cache-enabled: true

# Cache duration in seconds
cache-duration: 60

# Temporary permission settings
temporary-permissions:
# Check for expired permissions interval (in minutes)
cleanup-interval: 5

# Maximum duration for temporary permissions (in days)
max-duration: 30

# Group settings
groups:
# Case-sensitive group names
case-sensitive: false

# Allow empty groups (groups with no permissions)
allow-empty: true

# Player settings
players:
# Auto-save player data interval (in minutes)
auto-save-interval: 10

# Remove player data after X days of inactivity (0 to disable)
cleanup-after-days: 0

# Database settings (for future implementation)
database:
# Storage type: 'yaml' or 'mysql' (currently only yaml is supported)
type: 'yaml'

# MySQL settings (for future use)
mysql:
host: 'localhost'
port: 3306
database: 'permissioncore'
username: 'root'
password: ''

# Plugin settings
plugin:
# Enable debug messages
debug: false

# Check for updates
check-updates: true

# Metrics (bStats)
metrics: true

# Language/locale
language: 'en_US'

# Command settings
commands:
# Enable tab completion
tab-complete: true

# Aliases enabled
aliases-enabled: true

# Command cooldown in seconds (0 to disable)
cooldown: 0

# Integration settings
integrations:
# Vault support (if Vault is installed)
vault: true

# PlaceholderAPI support
placeholderapi: true

# LuckPerms migration support
luckperms-migration: false

# Performance settings
performance:
# Async permission loading
async-loading: true

# Maximum threads for async operations
max-threads: 2

# Lazy loading (load data only when needed)
lazy-loading: false

# Logging settings
logging:
# Log permission changes
log-changes: true

# Log file location
log-file: 'logs/permissions.log'

# Maximum log file size in MB
max-size: 10

# Keep X old log files
keep-files: 5

# Messages
messages:
# Prefix for all plugin messages
prefix: '&6[PermissionCore] &r'

# No permission message
no-permission: '&cYou do not have permission to perform this action!'

# Reload message
reload-success: '&aPlugin has been reloaded successfully!'

# Group not found
group-not-found: '&cGroup {group} does not exist!'

# Player not found
player-not-found: '&cPlayer {player} not found!'

# Permission added
permission-added: '&aPermission {permission} has been added!'

# Permission removed
permission-removed: '&aPermission {permission} has been removed!'
# PermissionCore Groups Configuration
#
# Group structure:
# - name: Unique identifier for the group
# - display-name: Formatted name shown in chat (supports color codes)
# - prefix: Text shown before player name (supports color codes)
# - suffix: Text shown after player name (supports color codes)
# - priority: Higher numbers = higher priority (used for prefix/suffix selection)
# - permissions: List of permission nodes
# - inheritance: List of groups this group inherits from
# - default: Whether this is the default group for new players

groups:
owner:
display-name: '&4Owner'
prefix: '&4[Owner] '
suffix: ''
priority: 1000
permissions:
- '*'
inheritance: []
default: false
default:
display-name: '&fDefault'
prefix: ''
suffix: ''
priority: 0
permissions:
- permissioncore.default
- minecraft.command.help
- minecraft.command.list
- minecraft.command.me
- minecraft.command.tell
inheritance: []
default: true
helper:
display-name: '&9Helper'
prefix: '&9[Helper] '
suffix: ''
priority: 30
permissions:
- permissioncore.helper
- minecraft.command.mute
- minecraft.command.unmute
- minecraft.command.warn
- minecraft.command.invsee
inheritance:
- vip
default: false
moderator:
display-name: '&6Moderator'
prefix: '&6[Mod] '
suffix: ''
priority: 50
permissions:
- permissioncore.moderate
- minecraft.command.kick
- minecraft.command.ban
- minecraft.command.unban
- minecraft.command.tempban
- minecraft.command.banip
- minecraft.command.unbanip
- minecraft.command.tp
- minecraft.command.tphere
- minecraft.command.vanish
inheritance:
- helper
default: false
member:
display-name: '&7Member'
prefix: '&7[Member] '
suffix: ''
priority: 10
permissions:
- permissioncore.basic
- minecraft.command.spawn
- minecraft.command.tpa
- minecraft.command.tpaccept
- minecraft.command.tpdeny
- minecraft.command.home
- minecraft.command.sethome
inheritance:
- default
default: false
admin:
display-name: '&cAdmin'
prefix: '&c[Admin] '
suffix: ''
priority: 100
permissions:
- permissioncore.admin
- minecraft.command.gamemode
- minecraft.command.give
- minecraft.command.clear
- minecraft.command.weather
- minecraft.command.time
- minecraft.command.stop
- minecraft.command.reload
inheritance:
- moderator
default: false
vip:
display-name: '&aVIP'
prefix: '&a[VIP] '
suffix: ' &a★'
priority: 20
permissions:
- permissioncore.vip
- minecraft.command.fly
- minecraft.command.nick
- minecraft.command.workbench
- minecraft.command.enderchest
inheritance:
- member
default: false

Why choose PermissionCore?
0% Performance Impact - Designed for pure efficiency
Active Development - Regular updates & improvements
Developer-Friendly API - Clean integration for plugins

Perfect for every server type
Survival • PvP/Factions • Creative • Minigames • Networks • Communities

Minecraft 1.10 - 1.21 | Java 8+ | Tested 1.21.8

❤️ Support ❤️
If you enjoy this plugin, please consider leaving a ⭐ Rating and Review on Spigot!

For bug reports or feature requests, please use the Discussion Thread.

Discord: warrior0190



[​IMG][​IMG]
Resource Information
Author:
----------
Total Downloads: 12
First Release: Sep 1, 2025
Last Update: Sep 1, 2025
Category: ---------------
All-Time Rating:
3 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings