Permission System
MCTennis 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
MCTennis permissions are organized into three main levels:
🟢 User Level
Who gets this: All players who should be able to play MCTennis
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
🚀 Quick Setup (Recommended Permissions)
For most servers, these permissions provide the best balance of functionality and security:
Essential Player Permissions
# Basic MCTennis access (required for all players)
- mctennis.command
- mctennis.join.*
# Display permissions (recommended for all players)
- mctennis.shyscoreboard.scoreboard.*
- mctennis.shybossbar.bossbar.*
- mctennis.shyparticles.effect.visible.*
Admin Permissions
# Arena management (staff only)
- mctennis.edit
- mctennis.referee.join
# System administration (staff only)
- mctennis.shyscoreboard.command
- mctennis.shyscoreboard.reload
- mctennis.shybossbar.command
- mctennis.shybossbar.reload
- mctennis.shycommandsigns.command
- mctennis.shycommandsigns.add
- mctennis.shycommandsigns.reload
- mctennis.shyparticles.command
- mctennis.shyparticles.reload
- mctennis.shyparticles.list
- mctennis.shyparticles.play
- mctennis.shyparticles.stop
- mctennis.shyparticles.follow
- mctennis.shyparticles.followother
- mctennis.shyparticles.stopfollow
- mctennis.shyparticles.stopfollowother
📋 Complete Permission Reference
Core Gameplay Permissions
| Permission | Level | Description |
|---|---|---|
mctennis.command |
User | Access to /mctennis command base |
mctennis.join.* |
User | Join any arena (requires mctennis.command) |
mctennis.join.[arena_name] |
User | Join specific arena only |
Example Arena-Specific Permissions:
# Allow joining only "stadium1" arena
- mctennis.join.stadium1
# Allow joining multiple specific arenas
- mctennis.join.stadium1
- mctennis.join.arena2
- mctennis.join.tournament
Administrative Permissions
| Permission | Level | Description |
|---|---|---|
mctennis.edit |
Admin | Create, modify, and delete arenas |
mctennis.referee.join |
Admin | Access referee mode and commands |
Enhanced Player Permissions
| Permission | Level | Description |
|---|---|---|
mctennis.command.staff |
Admin/User | Execute commands while in-game |
mctennis.game.inventory |
Admin/User | Open/use inventories during games |
Legacy Permissions
mctennis.command.staff and mctennis.game.inventory are legacy permissions that will be replaced in future versions. Use with caution.
🎨 Scoreboard Permissions
MCTennis includes an integrated scoreboard system with granular permissions:
Player Scoreboard Access
| Permission | Level | Description |
|---|---|---|
mctennis.shyscoreboard.scoreboard.* |
User | See all scoreboards |
mctennis.shyscoreboard.scoreboard.[name] |
User | See specific scoreboard only |
Scoreboard Administration
| Permission | Level | Description |
|---|---|---|
mctennis.shyscoreboard.command |
Admin | Access /mctennisscoreboard command |
mctennis.shyscoreboard.reload |
Admin | Reload scoreboard configurations |
mctennis.shyscoreboard.add |
Admin | Add scoreboards to players |
mctennis.shyscoreboard.set |
Admin | Set player scoreboards |
mctennis.shyscoreboard.remove |
Admin | Remove scoreboards from players |
mctennis.shyscoreboard.update |
Admin | Refresh scoreboards manually |
Usage Examples:
# Show specific scoreboard to player
/mctennisscoreboard add Steve game_stats
# Remove all scoreboards from player
/mctennisscoreboard remove Alex
# Refresh all scoreboards
/mctennisscoreboard update
🎯 Boss Bar Permissions
Control access to MCTennis's boss bar displays:
Player Boss Bar Access
| Permission | Level | Description |
|---|---|---|
mctennis.shybossbar.bossbar.* |
User | See all boss bars |
mctennis.shybossbar.bossbar.[name] |
User | See specific boss bar only |
Boss Bar Administration
| Permission | Level | Description |
|---|---|---|
mctennis.shybossbar.command |
Admin | Access /mctennisbossbar command |
mctennis.shybossbar.reload |
Admin | Reload boss bar configurations |
mctennis.shybossbar.add |
Admin | Add boss bars to players |
mctennis.shybossbar.set |
Admin | Set player boss bars |
mctennis.shybossbar.remove |
Admin | Remove boss bars from players |
mctennis.shybossbar.update |
Admin | Refresh boss bars manually |
🏷️ Sign System Permissions
Manage interactive MCTennis signs:
| Permission | Level | Description |
|---|---|---|
mctennis.shycommandsigns.command |
Admin | Access /mctennissign command |
mctennis.shycommandsigns.add |
Admin | Create join/leave signs |
mctennis.shycommandsigns.reload |
Admin | Reload sign configurations |
mctennis.shycommandsigns.server |
Admin | Server teleport commands |
mctennis.shycommandsigns.manipulateother |
Admin | Modify other players via signs |
Sign Creation Example:
# Create join sign for stadium1
/mctennissign add mctennis_join_sign arena stadium1
# Create team-specific join signs
/mctennissign add mctennis_join_red_sign arena stadium1
/mctennissign add mctennis_join_blue_sign arena stadium1
✨ Particle System Permissions
Control access to MCTennis's particle effects:
Player Particle Access
| Permission | Level | Description |
|---|---|---|
mctennis.shyparticles.effect.visible.* |
User | See all particle effects |
mctennis.shyparticles.effect.visible.[name] |
User | See specific particle effect only |
Particle Administration
| Permission | Level | Description |
|---|---|---|
mctennis.shyparticles.command |
Admin | Access /mctennisparticle command |
mctennis.shyparticles.reload |
Admin | Reload particle configurations |
mctennis.shyparticles.list |
Admin | List available particle effects |
mctennis.shyparticles.play |
Admin | Play particle effects |
mctennis.shyparticles.stop |
Admin | Stop particle effects |
mctennis.shyparticles.follow |
Admin | Make particles follow yourself |
mctennis.shyparticles.followother |
Admin | Make particles follow other players |
mctennis.shyparticles.stopfollow |
Admin | Stop particles following yourself |
mctennis.shyparticles.stopfollowother |
Admin | Stop particles following other players |
mctennis.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:
- mctennis.command
- mctennis.join.*
- mctennis.shyscoreboard.scoreboard.*
- mctennis.shyparticles.effect.visible.*
Scenario 2: Tournament Server with Restricted Access
# Players can only join assigned tournament arenas
tournament_red:
- mctennis.command
- mctennis.join.tournament_red_arena
- mctennis.shyscoreboard.scoreboard.*
- mctennis.shybossbar.bossbar.*
- mctennis.shyparticles.effect.visible.*
tournament_blue:
- mctennis.command
- mctennis.join.tournament_blue_arena
- mctennis.shyscoreboard.scoreboard.*
- mctennis.shybossbar.bossbar.*
- mctennis.shyparticles.effect.visible.*
# Referees get full control
referees:
- mctennis.command
- mctennis.referee.join
Scenario 3: Training Server for New Players
# Beginners get limited access
beginners:
- mctennis.command
- mctennis.join.training_arena
# Advanced players get more arenas
advanced:
- mctennis.command
- mctennis.join.training_arena
- mctennis.join.competitive_arena
🔍 Permission Troubleshooting
Common Issues
| Problem | Likely Cause | Solution |
|---|---|---|
| "No permission" error | Missing mctennis.command |
Add base command permission |
| Can't join arenas | Missing join permissions | Add mctennis.join.* or specific arena |
| Scoreboards not showing | Missing display permissions | Add scoreboard permissions |
| Admin commands not working | Missing admin permissions | Add mctennis.edit or specific admin perms |
💡 Best Practices
Security Guidelines
Admin Permission Security
- Never give
mctennis.editto regular players - Be cautious with
mctennis.command.staffandmctennis.game.inventory - Review permissions regularly as your server grows
Performance Optimization
Efficient Permission Structure
- Use wildcard permissions (
mctennis.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 MCTennis features while maintaining security and performance on your server!