Skip to content

Permission System

MCHockey uses a comprehensive permission system to control player access to features and commands. This guide helps you configure permissions correctly for different user roles on your server.

🎯 Permission Levels Overview

MCHockey permissions are organized into three main levels:

🟢 User Level

Who gets this: All players who should be able to play MCHockey
Purpose: Basic gameplay functionality

🟡 Admin/User Level

Who gets this: Trusted players or staff members
Purpose: Enhanced features that could be abused if given to everyone
Caution: Review carefully before granting to regular players

🔴 Admin Level

Who gets this: Server administrators and staff only
Purpose: Arena management and server administration


For most servers, these permissions provide the best balance of functionality and security:

Essential Player Permissions

# Basic MCHockey access (required for all players)
- mchockey.command
- mchockey.join.*

# Display permissions (recommended for all players)  
- mchockey.shyscoreboard.scoreboard.*
- mchockey.shybossbar.bossbar.*
- mchockey.shyparticles.effect.visible.*

Admin Permissions

# Arena management (staff only)
- mchockey.edit
- mchockey.referee.join

# System administration (staff only)
- mchockey.shyscoreboard.command
- mchockey.shyscoreboard.reload
- mchockey.shybossbar.command  
- mchockey.shybossbar.reload
- mchockey.shycommandsigns.command
- mchockey.shycommandsigns.add
- mchockey.shycommandsigns.reload
- mchockey.shyparticles.command
- mchockey.shyparticles.reload
- mchockey.shyparticles.list
- mchockey.shyparticles.play
- mchockey.shyparticles.stop
- mchockey.shyparticles.follow
- mchockey.shyparticles.followother
- mchockey.shyparticles.stopfollow
- mchockey.shyparticles.stopfollowother

📋 Complete Permission Reference

Core Gameplay Permissions

Permission Level Description
mchockey.command User Access to /mchockey command base
mchockey.join.* User Join any arena (requires mchockey.command)
mchockey.join.[arena_name] User Join specific arena only

Example Arena-Specific Permissions:

# Allow joining only "stadium1" arena
- mchockey.join.stadium1

# Allow joining multiple specific arenas  
- mchockey.join.stadium1
- mchockey.join.arena2
- mchockey.join.tournament

Administrative Permissions

Permission Level Description
mchockey.edit Admin Create, modify, and delete arenas
mchockey.referee.join Admin Access referee mode and commands

Enhanced Player Permissions

Permission Level Description
mchockey.command.staff Admin/User Execute commands while in-game
mchockey.game.inventory Admin/User Open/use inventories during games

Legacy Permissions

mchockey.command.staff and mchockey.game.inventory are legacy permissions that will be replaced in future versions. Use with caution.


🎨 Scoreboard Permissions

MCHockey includes an integrated scoreboard system with granular permissions:

Player Scoreboard Access

Permission Level Description
mchockey.shyscoreboard.scoreboard.* User See all scoreboards
mchockey.shyscoreboard.scoreboard.[name] User See specific scoreboard only

Scoreboard Administration

Permission Level Description
mchockey.shyscoreboard.command Admin Access /mchockeyscoreboard command
mchockey.shyscoreboard.reload Admin Reload scoreboard configurations
mchockey.shyscoreboard.add Admin Add scoreboards to players
mchockey.shyscoreboard.set Admin Set player scoreboards
mchockey.shyscoreboard.remove Admin Remove scoreboards from players
mchockey.shyscoreboard.update Admin Refresh scoreboards manually

Usage Examples:

# Show specific scoreboard to player
/mchockeyscoreboard add Steve game_stats

# Remove all scoreboards from player
/mchockeyscoreboard remove Alex

# Refresh all scoreboards
/mchockeyscoreboard update


🎯 Boss Bar Permissions

Control access to MCHockey's boss bar displays:

Player Boss Bar Access

Permission Level Description
mchockey.shybossbar.bossbar.* User See all boss bars
mchockey.shybossbar.bossbar.[name] User See specific boss bar only

Boss Bar Administration

Permission Level Description
mchockey.shybossbar.command Admin Access /mchockeybossbar command
mchockey.shybossbar.reload Admin Reload boss bar configurations
mchockey.shybossbar.add Admin Add boss bars to players
mchockey.shybossbar.set Admin Set player boss bars
mchockey.shybossbar.remove Admin Remove boss bars from players
mchockey.shybossbar.update Admin Refresh boss bars manually

🏷️ Sign System Permissions

Manage interactive MCHockey signs:

Permission Level Description
mchockey.shycommandsigns.command Admin Access /mchockeysign command
mchockey.shycommandsigns.add Admin Create join/leave signs
mchockey.shycommandsigns.reload Admin Reload sign configurations
mchockey.shycommandsigns.server Admin Server teleport commands
mchockey.shycommandsigns.manipulateother Admin Modify other players via signs

Sign Creation Example:

# Create join sign for stadium1
/mchockeysign add mchockey_join_sign arena stadium1

# Create team-specific join signs
/mchockeysign add mchockey_join_red_sign arena stadium1
/mchockeysign add mchockey_join_blue_sign arena stadium1


✨ Particle System Permissions

Control access to MCHockey's particle effects:

Player Particle Access

Permission Level Description
mchockey.shyparticles.effect.visible.* User See all particle effects
mchockey.shyparticles.effect.visible.[name] User See specific particle effect only

Particle Administration

Permission Level Description
mchockey.shyparticles.command Admin Access /mchockeyparticle command
mchockey.shyparticles.reload Admin Reload particle configurations
mchockey.shyparticles.list Admin List available particle effects
mchockey.shyparticles.play Admin Play particle effects
mchockey.shyparticles.stop Admin Stop particle effects
mchockey.shyparticles.follow Admin Make particles follow yourself
mchockey.shyparticles.followother Admin Make particles follow other players
mchockey.shyparticles.stopfollow Admin Stop particles following yourself
mchockey.shyparticles.stopfollowother Admin Stop particles following other players
mchockey.shyparticles.effect.start.[name] Admin Start specific particle effect by name

🎮 Game-Specific Permission Scenarios

Scenario 1: Public Server with Multiple Arenas

# All players can join any arena
default_group:
  - mchockey.command
  - mchockey.join.*
  - mchockey.shyscoreboard.scoreboard.*
  - mchockey.shyparticles.effect.visible.*

Scenario 2: Tournament Server with Restricted Access

# Players can only join assigned tournament arenas
tournament_red:
  - mchockey.command
  - mchockey.join.tournament_red_arena
  - mchockey.shyscoreboard.scoreboard.*
  - mchockey.shybossbar.bossbar.*
  - mchockey.shyparticles.effect.visible.*

tournament_blue:
  - mchockey.command  
  - mchockey.join.tournament_blue_arena
  - mchockey.shyscoreboard.scoreboard.*
  - mchockey.shybossbar.bossbar.*
  - mchockey.shyparticles.effect.visible.*

# Referees get full control
referees:
  - mchockey.command
  - mchockey.referee.join

Scenario 3: Training Server for New Players

# Beginners get limited access
beginners:
  - mchockey.command
  - mchockey.join.training_arena

# Advanced players get more arenas
advanced:
  - mchockey.command
  - mchockey.join.training_arena
  - mchockey.join.competitive_arena

🔍 Permission Troubleshooting

Common Issues

Problem Likely Cause Solution
"No permission" error Missing mchockey.command Add base command permission
Can't join arenas Missing join permissions Add mchockey.join.* or specific arena
Scoreboards not showing Missing display permissions Add scoreboard permissions
Admin commands not working Missing admin permissions Add mchockey.edit or specific admin perms

💡 Best Practices

Security Guidelines

Admin Permission Security

  • Never give mchockey.edit to regular players
  • Be cautious with mchockey.command.staff and mchockey.game.inventory
  • Review permissions regularly as your server grows

Performance Optimization

Efficient Permission Structure

  • Use wildcard permissions (mchockey.join.*) for simplicity
  • Create permission groups rather than individual assignments
  • Test permission changes on a development server first

User Experience

Player-Friendly Setup

  • Grant scoreboard and boss bar permissions to all players
  • Use descriptive group names that make sense to your staff
  • Document your permission structure for other administrators

This permission system gives you complete control over who can access MCHockey features while maintaining security and performance on your server!