- subscription-tiers-final.md: Complete tier structure (-99) with Fire/Frost paths - discord-structure-complete.md: Full channel/role architecture (approved by Meg) - path-philosophy.md: Fire vs Frost marketing content for Ghost CMS - luckperms-structure.md: Permission hierarchy for 13+ server network - awakened-gateway.md: Handshake security protocol documentation Establishes foundation for competitive Fire (Gingerfury) vs Frost (Frostystyle) community model.
705 lines
17 KiB
Markdown
705 lines
17 KiB
Markdown
# Firefrost Gaming: LuckPerms Structure
|
|
|
|
**Version:** 1.0
|
|
**Created:** February 8, 2026
|
|
**Purpose:** Permission group hierarchy for multi-server Minecraft network
|
|
**Scope:** 13+ servers (NC1 Charlotte, TX1 Dallas)
|
|
**Implementation Status:** Planning phase
|
|
|
|
---
|
|
|
|
## Overview
|
|
|
|
LuckPerms manages all permission-based perks across the Firefrost Gaming network. This document defines the group hierarchy, inheritance structure, and specific permissions for each subscription tier.
|
|
|
|
---
|
|
|
|
## Group Hierarchy
|
|
|
|
### **Inheritance Tree:**
|
|
```
|
|
default (no subscription)
|
|
└── awakened (Tier 1: $1 one-time)
|
|
├── fire_elemental (Tier 2 Fire: $5/mo)
|
|
│ └── fire_knight (Tier 3 Fire: $10/mo)
|
|
│ └── fire_master (Tier 4 Fire: $15/mo)
|
|
│ └── fire_legend (Tier 5 Fire: $20/mo)
|
|
│ └── founder (Tier 6: $499 lifetime)
|
|
└── frost_elemental (Tier 2 Frost: $5/mo)
|
|
└── frost_knight (Tier 3 Frost: $10/mo)
|
|
└── frost_master (Tier 4 Frost: $15/mo)
|
|
└── frost_legend (Tier 5 Frost: $20/mo)
|
|
└── founder (Tier 6: $499 lifetime)
|
|
```
|
|
|
|
**Note:** Founder group inherits from BOTH `fire_legend` AND `frost_legend`, gaining all perks from both paths.
|
|
|
|
---
|
|
|
|
## Permission Breakdown by Tier
|
|
|
|
### **Tier 0: Default (No Subscription)**
|
|
|
|
**Group Name:** `default`
|
|
**Subscription:** None
|
|
**Server Access:** NONE (not whitelisted)
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
- essentials.list # Can see who's online
|
|
- essentials.motd # Can see server MOTD
|
|
```
|
|
|
|
**Purpose:** Placeholder group for unsubscribed users. No actual server access.
|
|
|
|
---
|
|
|
|
### **Tier 1: The Awakened ($1 One-Time)**
|
|
|
|
**Group Name:** `awakened`
|
|
**Subscription:** $1.00 one-time payment
|
|
**Server Access:** All 13+ servers (whitelisted)
|
|
**Inherits From:** `default`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.1 # 1 home maximum
|
|
- ftbessentials.sethome # Can set home
|
|
- ftbessentials.home # Can teleport home
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.0 # 0 claimed chunks
|
|
- ftbchunks.max_force_loaded.0 # 0 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
# NO /rtp access at this tier
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.awakened
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[The Awakened] "
|
|
color: "#FFFFFF" # White
|
|
```
|
|
|
|
**Purpose:** Basic server access with minimal perks. Users explore and decide if they want to commit to a Path.
|
|
|
|
---
|
|
|
|
### **Tier 2: Elemental ($5/month) - FIRE PATH**
|
|
|
|
**Group Name:** `fire_elemental`
|
|
**Subscription:** $5.00/month (Fire Path)
|
|
**Server Access:** All 13+ servers
|
|
**Inherits From:** `awakened`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.5 # 5 homes (overrides awakened limit)
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.25 # 25 claimed chunks
|
|
- ftbchunks.max_force_loaded.0 # 0 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp # /rtp access
|
|
- ftbessentials.rtp.cooldown.3600 # 60 minute cooldown (3600 seconds)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.fire_elemental
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[🔥 Fire Elemental] "
|
|
color: "#FF3D00" # Deep Orange/Red (Fire Primary)
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 2: Elemental ($5/month) - FROST PATH**
|
|
|
|
**Group Name:** `frost_elemental`
|
|
**Subscription:** $5.00/month (Frost Path)
|
|
**Server Access:** All 13+ servers
|
|
**Inherits From:** `awakened`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.5 # 5 homes (overrides awakened limit)
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.25 # 25 claimed chunks
|
|
- ftbchunks.max_force_loaded.0 # 0 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp # /rtp access
|
|
- ftbessentials.rtp.cooldown.3600 # 60 minute cooldown (3600 seconds)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.frost_elemental
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[❄️ Frost Elemental] "
|
|
color: "#00E5FF" # Electric Cyan (Frost Primary)
|
|
```
|
|
|
|
**Note:** Fire and Frost Elemental have IDENTICAL mechanical permissions. Only prefix/color differ.
|
|
|
|
---
|
|
|
|
### **Tier 3: Knight ($10/month) - FIRE PATH**
|
|
|
|
**Group Name:** `fire_knight`
|
|
**Subscription:** $10.00/month (Fire Path)
|
|
**Inherits From:** `fire_elemental`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.10 # 10 homes (overrides elemental limit)
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.49 # 49 claimed chunks
|
|
- ftbchunks.max_force_loaded.4 # 4 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.1800 # 30 minute cooldown (1800 seconds)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.fire_knight
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[🔥 Fire Knight] "
|
|
color: "#FF3D00"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 3: Knight ($10/month) - FROST PATH**
|
|
|
|
**Group Name:** `frost_knight`
|
|
**Subscription:** $10.00/month (Frost Path)
|
|
**Inherits From:** `frost_elemental`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.10 # 10 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.49 # 49 claimed chunks
|
|
- ftbchunks.max_force_loaded.4 # 4 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.1800 # 30 minute cooldown
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.frost_knight
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[❄️ Frost Knight] "
|
|
color: "#00E5FF"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 4: Master ($15/month) - FIRE PATH**
|
|
|
|
**Group Name:** `fire_master`
|
|
**Subscription:** $15.00/month (Fire Path)
|
|
**Inherits From:** `fire_knight`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.20 # 20 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.100 # 100 claimed chunks
|
|
- ftbchunks.max_force_loaded.9 # 9 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.900 # 15 minute cooldown (900 seconds)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.fire_master
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[🔥 Fire Master] "
|
|
color: "#FF3D00"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 4: Master ($15/month) - FROST PATH**
|
|
|
|
**Group Name:** `frost_master`
|
|
**Subscription:** $15.00/month (Frost Path)
|
|
**Inherits From:** `frost_knight`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.20 # 20 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.100 # 100 claimed chunks
|
|
- ftbchunks.max_force_loaded.9 # 9 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.900 # 15 minute cooldown
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.frost_master
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[❄️ Frost Master] "
|
|
color: "#00E5FF"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 5: Legend ($20/month) - FIRE PATH**
|
|
|
|
**Group Name:** `fire_legend`
|
|
**Subscription:** $20.00/month (Fire Path)
|
|
**Inherits From:** `fire_master`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.35 # 35 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.121 # 121 claimed chunks
|
|
- ftbchunks.max_force_loaded.16 # 16 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.600 # 10 minute cooldown (600 seconds)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.fire_legend
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[🔥 Fire Legend] "
|
|
color: "#FF3D00"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 5: Legend ($20/month) - FROST PATH**
|
|
|
|
**Group Name:** `frost_legend`
|
|
**Subscription:** $20.00/month (Frost Path)
|
|
**Inherits From:** `frost_master`
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.35 # 35 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.121 # 121 claimed chunks
|
|
- ftbchunks.max_force_loaded.16 # 16 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp.cooldown.600 # 10 minute cooldown
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.frost_legend
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[❄️ Frost Legend] "
|
|
color: "#00E5FF"
|
|
```
|
|
|
|
---
|
|
|
|
### **Tier 6: Sovereign (Founder's) ($499 Lifetime)**
|
|
|
|
**Group Name:** `founder`
|
|
**Subscription:** $499.00 lifetime
|
|
**Inherits From:** `fire_legend` AND `frost_legend` (both simultaneously)
|
|
|
|
**Permissions:**
|
|
```yaml
|
|
permissions:
|
|
# Home Management
|
|
- ftbessentials.home.limit.50 # 50 homes
|
|
|
|
# Chunk Claims
|
|
- ftbchunks.max_claimed.225 # 225 claimed chunks
|
|
- ftbchunks.max_force_loaded.81 # 81 force-loaded chunks
|
|
|
|
# Random Teleport
|
|
- ftbessentials.rtp # /rtp access
|
|
- ftbessentials.rtp.bypass # NO COOLDOWN (bypass cooldown check)
|
|
|
|
# Chat Formatting
|
|
- luckperms.prefix.founder
|
|
```
|
|
|
|
**Chat Prefix:**
|
|
```yaml
|
|
prefix: "[⚡ Founder] "
|
|
color: "#FFD600" # Amber Gold
|
|
```
|
|
|
|
**Special Note:** Founder group inherits ALL permissions from BOTH `fire_legend` AND `frost_legend`, gaining complete access to both paths.
|
|
|
|
---
|
|
|
|
## Discord Role → LuckPerms Sync
|
|
|
|
### **Mapping Table:**
|
|
|
|
| Discord Role | LuckPerms Group | Auto-Assign |
|
|
|--------------|-----------------|-------------|
|
|
| 🌅 The Awakened | `awakened` | ✅ |
|
|
| 🔥 Fire Elemental | `fire_elemental` | ✅ |
|
|
| 🔥 Fire Knight | `fire_knight` | ✅ |
|
|
| 🔥 Fire Master | `fire_master` | ✅ |
|
|
| 🔥 Fire Legend | `fire_legend` | ✅ |
|
|
| ❄️ Frost Elemental | `frost_elemental` | ✅ |
|
|
| ❄️ Frost Knight | `frost_knight` | ✅ |
|
|
| ❄️ Frost Master | `frost_master` | ✅ |
|
|
| ❄️ Frost Legend | `frost_legend` | ✅ |
|
|
| ⚡ Founder | `founder` | ✅ |
|
|
|
|
**Implementation Method:** DiscordSRV or custom Discord bot with LuckPerms API integration
|
|
|
|
**Flow:**
|
|
1. User subscribes via Paymenter/Ghost CMS
|
|
2. Stripe webhook triggers Discord role assignment
|
|
3. Discord bot detects role change
|
|
4. Bot calls LuckPerms API to assign corresponding group
|
|
5. User logs into any server → permissions instantly active
|
|
|
|
---
|
|
|
|
## Multi-Server Implementation Strategy
|
|
|
|
### **Challenge:**
|
|
13+ Minecraft servers need identical permission configurations
|
|
|
|
### **Recommended Solution: LuckPerms MySQL Backend**
|
|
|
|
**Architecture:**
|
|
```
|
|
[MySQL Database] (Single source of truth)
|
|
↓
|
|
┌───┴───┬───────┬───────┐
|
|
↓ ↓ ↓ ↓
|
|
[Server1][Server2][Server3]...[Server13+]
|
|
```
|
|
|
|
**Benefits:**
|
|
- ✅ Single database for all servers
|
|
- ✅ Update once, applies everywhere instantly
|
|
- ✅ No config file syncing required
|
|
- ✅ Centralized management
|
|
- ✅ Real-time permission changes across network
|
|
|
|
**Setup:**
|
|
1. Install MySQL on Command Center (or dedicated database server)
|
|
2. Create `firefrost_perms` database
|
|
3. Configure each server's LuckPerms to use MySQL storage
|
|
4. All servers read/write from same database
|
|
5. Manage permissions from any server (or web interface)
|
|
|
|
### **Alternative: Config File Distribution (Not Recommended)**
|
|
|
|
**If MySQL not viable:**
|
|
- Use Ansible/scripting to push LuckPerms configs via SSH
|
|
- Manual updates required
|
|
- Risk of desync between servers
|
|
- More maintenance overhead
|
|
|
|
**Recommendation:** Use MySQL backend for production. It's the industry standard for multi-server networks.
|
|
|
|
---
|
|
|
|
## FTB Chunks Configuration
|
|
|
|
### **Per-Server Config File:** `config/ftbchunks/config.snbt`
|
|
|
|
**Key Settings:**
|
|
```snbt
|
|
{
|
|
max_claimed_chunks: {
|
|
default: 0,
|
|
awakened: 0,
|
|
fire_elemental: 25,
|
|
frost_elemental: 25,
|
|
fire_knight: 49,
|
|
frost_knight: 49,
|
|
fire_master: 100,
|
|
frost_master: 100,
|
|
fire_legend: 121,
|
|
frost_legend: 121,
|
|
founder: 225
|
|
},
|
|
|
|
max_force_loaded_chunks: {
|
|
default: 0,
|
|
awakened: 0,
|
|
fire_elemental: 0,
|
|
frost_elemental: 0,
|
|
fire_knight: 4,
|
|
frost_knight: 4,
|
|
fire_master: 9,
|
|
frost_master: 9,
|
|
fire_legend: 16,
|
|
frost_legend: 16,
|
|
founder: 81
|
|
}
|
|
}
|
|
```
|
|
|
|
**Note:** FTB Chunks reads LuckPerms groups directly. No separate permission nodes needed.
|
|
|
|
---
|
|
|
|
## FTB Essentials Configuration
|
|
|
|
### **Per-Server Config File:** `config/ftbessentials.snbt`
|
|
|
|
**Key Settings:**
|
|
```snbt
|
|
{
|
|
homes: {
|
|
max_homes: {
|
|
default: 0,
|
|
awakened: 1,
|
|
fire_elemental: 5,
|
|
frost_elemental: 5,
|
|
fire_knight: 10,
|
|
frost_knight: 10,
|
|
fire_master: 20,
|
|
frost_master: 20,
|
|
fire_legend: 35,
|
|
frost_legend: 35,
|
|
founder: 50
|
|
}
|
|
},
|
|
|
|
rtp: {
|
|
enabled: true,
|
|
cooldown: {
|
|
awakened: -1, # Disabled (no /rtp access)
|
|
fire_elemental: 3600, # 60 minutes
|
|
frost_elemental: 3600, # 60 minutes
|
|
fire_knight: 1800, # 30 minutes
|
|
frost_knight: 1800, # 30 minutes
|
|
fire_master: 900, # 15 minutes
|
|
frost_master: 900, # 15 minutes
|
|
fire_legend: 600, # 10 minutes
|
|
frost_legend: 600, # 10 minutes
|
|
founder: 0 # No cooldown
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## Chat Formatting (LuckPerms Prefixes)
|
|
|
|
### **Per-Group Prefix Configuration:**
|
|
```yaml
|
|
# awakened
|
|
meta:
|
|
prefix: "&f[The Awakened] " # White color
|
|
|
|
# fire_elemental
|
|
meta:
|
|
prefix: "&#FF3D00[🔥 Fire Elemental] " # Deep Orange/Red
|
|
|
|
# frost_elemental
|
|
meta:
|
|
prefix: "�E5FF[❄️ Frost Elemental] " # Electric Cyan
|
|
|
|
# fire_knight
|
|
meta:
|
|
prefix: "&#FF3D00[🔥 Fire Knight] "
|
|
|
|
# frost_knight
|
|
meta:
|
|
prefix: "�E5FF[❄️ Frost Knight] "
|
|
|
|
# fire_master
|
|
meta:
|
|
prefix: "&#FF3D00[🔥 Fire Master] "
|
|
|
|
# frost_master
|
|
meta:
|
|
prefix: "�E5FF[❄️ Frost Master] "
|
|
|
|
# fire_legend
|
|
meta:
|
|
prefix: "&#FF3D00[🔥 Fire Legend] "
|
|
|
|
# frost_legend
|
|
meta:
|
|
prefix: "�E5FF[❄️ Frost Legend] "
|
|
|
|
# founder
|
|
meta:
|
|
prefix: "&#FFD600[⚡ Founder] " # Amber Gold
|
|
```
|
|
|
|
**Note:** Hex color codes use `&#RRGGBB` format in LuckPerms.
|
|
|
|
---
|
|
|
|
## Implementation Checklist
|
|
|
|
### **Phase 1: Database Setup**
|
|
- [ ] Install MySQL on Command Center (or dedicated server)
|
|
- [ ] Create `firefrost_perms` database
|
|
- [ ] Create LuckPerms database user with appropriate permissions
|
|
- [ ] Document database credentials (store securely, not in Git)
|
|
|
|
### **Phase 2: LuckPerms Configuration**
|
|
- [ ] Install LuckPerms on all 13+ servers
|
|
- [ ] Configure each server to use MySQL storage
|
|
- [ ] Verify all servers connect to same database
|
|
- [ ] Create all permission groups (awakened → founder)
|
|
- [ ] Set up group inheritance hierarchy
|
|
- [ ] Configure chat prefixes and colors
|
|
|
|
### **Phase 3: FTB Integration**
|
|
- [ ] Configure FTB Chunks per-server (chunk limits)
|
|
- [ ] Configure FTB Essentials per-server (homes, /rtp)
|
|
- [ ] Test chunk claiming at each tier
|
|
- [ ] Test home limits at each tier
|
|
- [ ] Test /rtp cooldowns at each tier
|
|
|
|
### **Phase 4: Discord Integration**
|
|
- [ ] Set up Discord bot with LuckPerms API access
|
|
- [ ] Configure Discord role → LuckPerms group mapping
|
|
- [ ] Test automatic group assignment on subscription
|
|
- [ ] Test group changes on tier upgrades
|
|
- [ ] Test Founder dual-inheritance (Fire + Frost)
|
|
|
|
### **Phase 5: Testing & Validation**
|
|
- [ ] Create test accounts at each tier
|
|
- [ ] Verify permissions work correctly per tier
|
|
- [ ] Test across multiple servers (verify MySQL sync)
|
|
- [ ] Test tier upgrades (Elemental → Knight → Master)
|
|
- [ ] Test path switching (if implemented)
|
|
- [ ] Verify Founder gets all Fire + Frost perks
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
### **Common Issues:**
|
|
|
|
**Problem:** Permissions not syncing across servers
|
|
**Solution:** Verify all servers connect to same MySQL database. Check `config/luckperms/config.yml` storage settings.
|
|
|
|
**Problem:** User has wrong permissions after subscription
|
|
**Solution:** Check Discord role assignment. Verify LuckPerms group matches Discord role. Use `/lp user <name> info` to debug.
|
|
|
|
**Problem:** /rtp cooldown not working correctly
|
|
**Solution:** FTB Essentials reads cooldown from config file, not LuckPerms permissions. Update `ftbessentials.snbt` directly.
|
|
|
|
**Problem:** Chunk claim limits not enforcing
|
|
**Solution:** FTB Chunks reads group names from LuckPerms. Verify group names match exactly (case-sensitive).
|
|
|
|
**Problem:** Chat prefixes not displaying colors
|
|
**Solution:** Verify hex color format (`&#RRGGBB`). Ensure chat plugin supports hex colors (MC 1.16+).
|
|
|
|
---
|
|
|
|
## Security Considerations
|
|
|
|
### **MySQL Database:**
|
|
- Use strong password for `firefrost_perms` user
|
|
- Restrict database access to Firefrost server IPs only
|
|
- Regular backups (daily recommended)
|
|
- Store credentials in `.env` file, NOT in Git
|
|
|
|
### **LuckPerms Web Editor:**
|
|
- Enable only if needed
|
|
- Use strong authentication
|
|
- Restrict IP access if possible
|
|
- Disable after bulk edits complete
|
|
|
|
---
|
|
|
|
## Maintenance
|
|
|
|
### **Regular Tasks:**
|
|
|
|
**Weekly:**
|
|
- Review active groups and user counts
|
|
- Check for permission conflicts or issues
|
|
|
|
**Monthly:**
|
|
- Database backup verification
|
|
- Review group hierarchy for optimization
|
|
- Update documentation if structure changes
|
|
|
|
**Per-Update:**
|
|
- Test new Minecraft/mod versions for compatibility
|
|
- Verify FTB Chunks/Essentials still read LuckPerms correctly
|
|
- Update permission nodes if mods change
|
|
|
|
---
|
|
|
|
## Future Enhancements
|
|
|
|
### **Potential Additions:**
|
|
|
|
- **Cosmetic perks** - Particle effects, custom skins (when implemented)
|
|
- **Quality-of-life commands** - `/workbench`, `/hat`, etc. (when approved)
|
|
- **WorldEdit permissions** - For creative/technical builds (tier-specific limits)
|
|
- **Flight permissions** - Creative flight in claimed chunks (higher tiers)
|
|
- **Additional modpack-specific perks** - Per-server customization
|
|
|
|
**Note:** Only add perks that are actually implementable and tested. Don't promise features that don't exist yet.
|
|
|
|
---
|
|
|
|
## Revision History
|
|
|
|
| Version | Date | Author | Changes |
|
|
|---------|------|--------|---------|
|
|
| **1.0** | 2026-02-08 | Michael | Initial LuckPerms structure documented. MySQL backend recommended. Complete group hierarchy defined. |
|
|
|
|
---
|
|
|
|
**END OF DOCUMENT**
|