# Firefrost Gaming - Server-Side Mod Deployment Guide **Version:** 1.0 **Date:** March 23, 2026 **Author:** Chronicler #40 **Audience:** Holly (Lead Builder) - Step-by-step implementation guide **Purpose:** Deploy all required server-side mods across 13+ Minecraft servers --- ## 📋 TABLE OF CONTENTS 1. [Overview](#overview) 2. [Before You Start - Michael's Setup Tasks](#before-you-start) 3. [Required Mods List](#required-mods-list) 4. [Installation Process](#installation-process) 5. [Per-Mod Configuration](#per-mod-configuration) 6. [Testing & Verification](#testing-verification) 7. [Troubleshooting](#troubleshooting) 8. [Reference](#reference) --- ## 🎯 OVERVIEW ### What This Guide Does This guide walks you through installing and configuring server-side mods on all Firefrost Gaming Minecraft servers. These mods handle: - Permissions and ranks (LuckPerms) - Chunk claiming (FTB Chunks) - Homes and teleports (FTB Essentials) - Building tools (WorldEdit) - Discord integration - And more ### Servers You'll Configure **Total: 13 servers** across two dedicated machines: **TX1 Dallas (38.68.14.26):** - 6-7 modpack servers **NC1 Charlotte (216.239.104.130):** - 6-7 modpack servers ### Time Estimate - **Per server:** 30-45 minutes - **All 13 servers:** 6-8 hours (spread across multiple days is fine) ### What You Need - SSH access to TX1 and NC1 - Pterodactyl Panel access (panel.firefrostgaming.com) - This guide - Michael's help for MySQL setup (see next section) --- ## 🔧 BEFORE YOU START - MICHAEL'S SETUP TASKS **STOP: Michael needs to complete this section BEFORE you start installing mods.** ### Task 1: MySQL Database Setup on Command Center Michael will set up a MySQL database that all 13 servers will connect to for LuckPerms. **Michael's Steps:** ```bash # SSH to Command Center ssh root@63.143.34.217 # Access MySQL mysql -u root -p # Create database CREATE DATABASE luckperms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # Create user (change password!) CREATE USER 'luckperms'@'%' IDENTIFIED BY 'CHANGE_THIS_PASSWORD'; # Grant permissions GRANT ALL PRIVILEGES ON luckperms.* TO 'luckperms'@'%'; FLUSH PRIVILEGES; # Verify SHOW DATABASES; SELECT User, Host FROM mysql.user WHERE User='luckperms'; # Exit exit ``` **What Michael gives you:** - Database host: `63.143.34.217` - Database name: `luckperms` - Database user: `luckperms` - Database password: `[password Michael sets]` - Database port: `3306` (default MySQL) **Save these credentials securely - you'll need them for EVERY server.** ### Task 2: Store Credentials in Vaultwarden Michael will store the MySQL credentials in Vaultwarden so you can access them securely. **Location:** Vaultwarden → Firefrost Gaming → "LuckPerms MySQL Credentials" --- ## 📦 REQUIRED MODS LIST ### Core Mods (Required on ALL servers) #### 1. **LuckPerms** **What it does:** Permission management system. Controls who can do what (ranks, permissions, subscriber tiers). **Why we need it:** This is how subscriber tiers work. Awakened subscribers get 1 home, Elemental gets 5 homes, etc. LuckPerms manages all of that. **Dependencies:** None **Versions needed:** - 1.16.5: LuckPerms Forge v5.4.x - 1.20.x: LuckPerms Forge/NeoForge v5.4.x - 1.21.x: LuckPerms NeoForge v5.4.x **Download:** https://luckperms.net/download --- #### 2. **FTB Chunks (Forge/NeoForge)** **What it does:** Chunk claiming and protection. Players claim chunks to protect their builds. **Why we need it:** Subscriber tiers give different chunk limits. Awakened = 0 chunks, Elemental = 25 chunks, Knight = 49 chunks, etc. **Dependencies:** FTB Library, FTB Teams, Architectury API (install these first!) **Versions needed:** - 1.16.5: FTB Chunks Forge - 1.20.x: FTB Chunks Forge/NeoForge - 1.21.x: FTB Chunks NeoForge **Download:** https://www.curseforge.com/minecraft/mc-mods/ftb-chunks-forge --- #### 3. **FTB Essentials** **What it does:** Essential commands like /home, /sethome, /rtp (random teleport), /spawn, /back. **Why we need it:** Subscriber tiers have different home limits and /rtp cooldowns. This mod enforces those limits. **Dependencies:** FTB Library, Architectury API (install these first!) **Versions needed:** - 1.16.5: FTB Essentials Forge - 1.20.x: FTB Essentials Forge/NeoForge - 1.21.x: FTB Essentials NeoForge **Download:** https://www.curseforge.com/minecraft/mc-mods/ftb-essentials-forge --- #### 4. **FTB Library** (Dependency) **What it does:** Required library for FTB Chunks, FTB Essentials, and FTB Teams to work. **Why we need it:** FTB mods won't run without this. **Dependencies:** Architectury API (install this first!) **Dependency for:** FTB Chunks, FTB Essentials, FTB Teams **Download:** https://www.curseforge.com/minecraft/mc-mods/ftb-library-forge --- #### 5. **Architectury API** (Dependency) **What it does:** Required library for many cross-platform mods (works with both Forge and Fabric). **Why we need it:** Required by FTB Library and some other mods. **Dependencies:** None **Dependency for:** FTB Library (and transitively, all FTB mods), Elite Holograms **Download:** https://www.curseforge.com/minecraft/mc-mods/architectury-api --- #### 6. **FTB Teams** **What it does:** Team system that integrates with FTB Chunks. Players can form teams and share chunk claims. **Why we need it:** Better than solo chunk claiming - teams can build together. **Dependencies:** FTB Library, Architectury API (install these first!) **Dependency for:** FTB Chunks (required) **Download:** https://www.curseforge.com/minecraft/mc-mods/ftb-teams-forge --- #### 7. **WorldEdit** **What it does:** Powerful building and editing tool. Copy/paste structures, fill areas, replace blocks, etc. **Why we need it:** Essential for builders (like you!). Staff rank gets full WorldEdit access. **Dependencies:** None **Versions needed:** - 1.16.5: WorldEdit Forge - 1.20.x: WorldEdit Forge/NeoForge - 1.21.x: WorldEdit NeoForge **Download:** https://enginehub.org/worldedit --- #### 8. **YAWP (Yet Another World Protector)** **What it does:** Advanced world protection and region management. Protect spawn areas, create safe zones, etc. **Why we need it:** Protects important areas like spawn, prevents griefing in public spaces. **Dependencies:** Check mod page - varies by version (may require additional libraries) **Note:** May require additional dependencies depending on version - check mod page. **Download:** https://www.curseforge.com/minecraft/mc-mods/yawp (check version availability) --- ### Performance & Optimization Mods (Highly Recommended) #### 9. **ServerCore** **What it does:** Server-side performance optimizations. Reduces lag, improves TPS (ticks per second). **Why we need it:** Running 13 servers requires good performance. This helps. **Dependencies:** None **Download:** https://www.curseforge.com/minecraft/mc-mods/servercore --- #### 10. **FerriteCore** **What it does:** Reduces memory usage significantly (up to 30-40% in some cases). **Why we need it:** Less RAM per server = more stable operation across all 13 servers. **Dependencies:** None **Download:** https://www.curseforge.com/minecraft/mc-mods/ferritecore --- #### 11. **Spark** **What it does:** Performance profiling and monitoring. Helps diagnose lag. **Why we need it:** When a server lags, Spark tells us why (which mod, which chunk, etc.). **Dependencies:** None **Download:** https://spark.lucko.me/download --- ### Protection & Rollback Mods #### 12. **Prism** (if available for your version) **What it does:** Block logging and rollback protection. Records who placed/broke what blocks. **Why we need it:** If someone griefs a subscriber's build, we can roll it back and prove who did it. **Dependencies:** Check mod page - varies by version (Forge/NeoForge ports may have different requirements) **Status:** Check if Prism exists for Forge/NeoForge on your version. If not available, rely on backups. **Download:** Search CurseForge for "Prism Forge" + your version --- ### Quality of Life Mods (Optional but Recommended) #### 13. **Elite Holograms** **What it does:** Creates floating holographic text and images in-game. Can display server info, rules, welcome messages, leaderboards, etc. **Why we need it:** Creates professional-looking information displays at spawn, server rules, tier benefits explanations, welcome messages for new players. **Dependencies:** - Architectury API (required) - Fabric API / Forge API (depending on mod loader - usually auto-included) **Use cases:** - Spawn area: Display server rules, tier comparison chart - Welcome area: Greet new Awakened tier subscribers - Shop/Hub areas: Show available perks per tier - Event areas: Announce competitions or Fire vs Frost standings **Download:** https://www.curseforge.com/minecraft/mc-mods/elite-holograms **Note:** Check if your modpack already includes a hologram mod before adding this. --- ### Discord Integration (Version-Dependent) #### 14. **Discord Integration Mod** **What it does:** Connects Minecraft server to Discord. Shows in-game chat in Discord channel, and vice versa. **Dependencies:** Varies by mod - check mod page for each version **Recommended mods by version:** **For 1.16.5:** - **DiscordSRV (Forge fork)** or **Discord Integration by Cadiboo** - Download: Search "DiscordSRV Forge 1.16.5" or "Discord Integration Forge" **For 1.20.x (NeoForge):** - **dcintegration** - Download: https://www.curseforge.com/minecraft/mc-mods/dcintegration **For 1.21.x (NeoForge):** - **dcintegration** (if updated) or check modpack for built-in integration - Download: https://www.curseforge.com/minecraft/mc-mods/dcintegration --- ### Monitoring & Analytics #### 15. **Plan** (Optional) **What it does:** Player analytics dashboard. Track playtime, most active players, server performance over time. **Why we might use it:** Helps Michael/Meg understand player engagement and server health. **Dependencies:** None (standalone mod) **Status:** Optional - adds overhead, use if analytics are important **Download:** https://www.playeranalytics.net/ --- ### Voice Chat (Optional, if modpack includes it) #### 16. **Simple Voice Chat** **What it does:** Proximity voice chat in-game. Talk to players near you. **Dependencies:** None **Status:** Only configure if the modpack already has it installed. Don't add it separately. **If present:** Configure permissions via LuckPerms (which tiers can use voice). **Download:** https://www.curseforge.com/minecraft/mc-mods/simple-voice-chat --- #### 13. **Corpse** or **You're In Grave Danger** **What it does:** When you die, your items are stored in a grave/corpse instead of scattering. **Why we might use it:** Much better death experience for subscribers. Items protected, easy to retrieve. **Download:** Search CurseForge for your version --- ## 📋 DEPENDENCY SUMMARY **Before installing mods, understand the dependency chain:** ### Critical Dependencies (Install These First) 1. **Architectury API** → Required by FTB Library 2. **FTB Library** → Required by FTB Chunks, FTB Essentials, FTB Teams 3. **FTB Teams** → Required by FTB Chunks ### Installation Order (Required Mods) **Step 1: Install Dependencies** 1. Architectury API 2. FTB Library 3. FTB Teams **Step 2: Install Core Functionality Mods** 4. LuckPerms (no dependencies) 5. FTB Chunks (requires: FTB Library, FTB Teams, Architectury API) 6. FTB Essentials (requires: FTB Library, Architectury API) 7. WorldEdit (no dependencies) 8. YAWP (check mod page for dependencies - varies by version) **Step 3: Install Performance Mods** 9. ServerCore (no dependencies) 10. FerriteCore (no dependencies) 11. Spark (no dependencies) **Step 4: Install Optional Mods (if desired)** 12. Prism (if available - check dependencies on mod page) 13. Elite Holograms (requires: Architectury API) 14. Discord integration mod (varies by version) 15. Plan (if using analytics) 16. Simple Voice Chat (if modpack includes it) ### Quick Dependency Reference | Mod | Requires | Required By | |-----|----------|-------------| | Architectury API | None | FTB Library, Elite Holograms | | FTB Library | Architectury API | FTB Chunks, FTB Essentials, FTB Teams | | FTB Teams | FTB Library, Architectury API | FTB Chunks | | FTB Chunks | FTB Library, FTB Teams, Architectury API | None | | FTB Essentials | FTB Library, Architectury API | None | | LuckPerms | None | None | | WorldEdit | None | None | | Elite Holograms | Architectury API | None | **If a mod won't load:** Check server console for "missing dependency" errors and install the required mod(s). --- ## 🚀 INSTALLATION PROCESS ### Step 1: Access the Server You'll be working through **Pterodactyl Panel** (easier) or **SSH** (advanced). #### Option A: Via Pterodactyl Panel (Recommended) 1. Go to https://panel.firefrostgaming.com 2. Log in 3. Click on the server you want to configure 4. Go to **Files** tab 5. Navigate to `/mods/` directory #### Option B: Via SSH (Advanced) ```bash # SSH to TX1 ssh root@38.68.14.26 # Or SSH to NC1 ssh root@216.239.104.130 # Find your server directory cd /var/lib/pterodactyl/volumes/[server-uuid]/mods/ ``` --- ### Step 2: Download Mods **For each mod:** 1. Go to the mod's download page (links above) 2. Select your Minecraft version 3. Select Forge or NeoForge (match what the modpack uses) 4. Download the `.jar` file **Example: Downloading LuckPerms for 1.20.1 NeoForge** 1. Go to https://luckperms.net/download 2. Click "Forge/NeoForge" 3. Find version compatible with 1.20.1 4. Download `LuckPerms-Forge-5.4.xxx.jar` --- ### Step 3: Upload Mods to Server #### Via Pterodactyl Panel: 1. In the **Files** tab, navigate to `/mods/` 2. Click **Upload** button (top right) 3. Drag and drop the `.jar` file 4. Wait for upload to complete #### Via SSH (if you prefer): ```bash # Upload from your local machine using SCP scp LuckPerms-Forge-5.4.xxx.jar root@38.68.14.26:/var/lib/pterodactyl/volumes/[server-uuid]/mods/ ``` --- ### Step 4: Verify Mod Installation **After uploading all mods:** 1. In Pterodactyl Panel, go to **Console** tab 2. Click **Start** to start the server 3. Watch the console for mod loading messages 4. Look for lines like: ``` [Server thread/INFO] [LuckPerms]: Loading LuckPerms v5.4.xxx [Server thread/INFO] [FTB Chunks]: Loading FTB Chunks ``` **If you see errors:** - Check that you downloaded the correct version (Forge vs NeoForge) - Check that you downloaded for the correct Minecraft version - Check server logs for "dependency missing" errors --- ### Step 5: Stop Server for Configuration **Before configuring mods, stop the server:** 1. In Pterodactyl Console, click **Stop** 2. Wait for server to fully shut down 3. Now you can edit configuration files --- ## ⚙️ PER-MOD CONFIGURATION ### LuckPerms Configuration **Location:** `/config/luckperms/luckperms.conf` #### Step 1: Switch to MySQL Storage **Find this section:** ```conf storage-method = h2 ``` **Change to:** ```conf storage-method = mysql ``` #### Step 2: Configure MySQL Connection **Find the `data` section and configure:** ```conf data { # MySQL connection details address = "63.143.34.217:3306" database = "luckperms" username = "luckperms" password = "PASSWORD_FROM_MICHAEL" # Connection pool settings (leave these default) pool-settings { maximum-pool-size = 10 minimum-idle = 10 maximum-lifetime = 1800000 connection-timeout = 5000 } } ``` **Replace:** - `PASSWORD_FROM_MICHAEL` with the actual password Michael gave you #### Step 3: Configure Sync Settings **Find the `messaging-service` section:** ```conf messaging-service = none ``` **Change to:** ```conf messaging-service = sql ``` **This enables cross-server permission sync via MySQL.** #### Step 4: Save and Close **Via Pterodactyl Panel:** 1. Click **Save Content** button 2. Close the editor --- ### FTB Chunks Configuration **Location:** `/config/ftbchunks/common-config.snbt` **This file configures chunk claiming limits and force-loading.** #### Default Configuration The default config works, but you'll set limits via LuckPerms permissions instead. Leave this file as-is for now. **Key settings to note:** - `max_claimed_chunks: 100` (default max, overridden by permissions) - `max_force_loaded_chunks: 25` (default max, overridden by permissions) **We'll set per-tier limits in the Subscription Automation Guide.** --- ### FTB Essentials Configuration **Location:** `/config/ftbessentials.snbt` **This file configures homes and teleports.** #### Key Settings to Configure **Find and modify:** ```snbt { # Home settings max_homes: 1 # Default (will be overridden by LuckPerms) # RTP settings rtp_cooldown: 600 # 10 minutes default (will be overridden by LuckPerms) rtp_min_distance: 500 rtp_max_distance: 10000 # Spawn settings spawn_dimension: "minecraft:overworld" } ``` **Leave defaults for now - we'll set per-tier values via LuckPerms permissions.** --- ### WorldEdit Configuration **Location:** `/config/worldedit/worldedit.properties` **Default settings are fine for most servers.** #### CRITICAL: WorldEdit Permissions via LuckPerms **WorldEdit is a POWERFUL tool that can destroy or duplicate items/blocks. Only staff should have access.** **After creating LuckPerms groups (Part 3), configure WorldEdit permissions:** **💡 RECOMMENDED: Use LuckPerms Web Editor** The easiest way to configure WorldEdit permissions is via the LuckPerms web editor: 1. Join server in-game 2. Run `/lp editor` 3. Click the link to open web interface 4. Create Builder and Owner groups (see Subscription Automation Guide Part 3) 5. Add WorldEdit permissions to Builder group 6. Explicitly deny `worldedit.*` to all subscriber groups 7. Save and apply **See `docs/guides/subscription-automation-guide.md` Part 3 for complete web editor instructions.** --- **ALTERNATIVE: Console Commands (if you prefer terminal)** **On ONE server console (syncs to all via MySQL):** ``` # Deny WorldEdit to ALL subscriber groups /lp group wanderer permission set worldedit.* false /lp group awakened permission set worldedit.* false /lp group fire_elemental permission set worldedit.* false /lp group frost_elemental permission set worldedit.* false /lp group fire_knight permission set worldedit.* false /lp group frost_knight permission set worldedit.* false /lp group fire_master permission set worldedit.* false /lp group frost_master permission set worldedit.* false /lp group fire_legend permission set worldedit.* false /lp group frost_legend permission set worldedit.* false /lp group sovereign permission set worldedit.* false # Create Builder staff group (for Holly) /lp creategroup builder /lp group builder parent add default /lp group builder setweight 1000 /lp group builder meta setprefix "&6[🔨 Builder] " /lp group builder permission set worldedit.* true /lp group builder permission set worldedit.navigation.* true /lp group builder permission set worldedit.selection.* true /lp group builder permission set worldedit.region.* true /lp group builder permission set worldedit.analysis.* true /lp group builder permission set worldedit.butcher true /lp group builder permission set worldedit.clipboard.* true /lp group builder permission set worldedit.generation.* true /lp group builder permission set worldedit.history.* true /lp group builder permission set worldedit.schematic.* true /lp group builder permission set worldedit.scripting.* true /lp group builder permission set worldedit.snapshots.* true /lp group builder permission set worldedit.superpickaxe.* true /lp group builder permission set worldedit.tool.* true /lp group builder permission set worldedit.brush.* true /lp group builder permission set minecraft.command.gamemode true /lp group builder permission set ftbchunks.* true /lp group builder meta setmeta max-homes 100 # Create Owner group (for Michael/Frostystyle) /lp creategroup owner /lp group owner parent add builder /lp group owner setweight 10000 /lp group owner meta setprefix "&c[👑 Owner] " /lp group owner permission set * true # Assign Holly to Builder group /lp user unicorn20089 parent set builder # Assign Michael to Owner group (use your Minecraft username) /lp user Frostystyle parent set owner ``` **What this does:** - ✅ **Holly (Builder):** Full WorldEdit access, gamemode, unlimited chunks/homes - ✅ **Michael (Owner):** All permissions (full admin) - ❌ **ALL subscribers (even Sovereign $499):** NO WorldEdit access **This prevents:** - Subscribers using WorldEdit to duplicate items - Subscribers using WorldEdit to bypass chunk claims - Subscribers using WorldEdit to grief or crash servers #### Optional: Increase Max Blocks for Staff **If you want staff (Builder rank) to have higher WorldEdit limits:** Edit `/config/worldedit/worldedit.properties`: ```properties # Maximum number of blocks that can be changed at once max-blocks-changed=10000000 # 10 million for staff (default is 1 million) # Maximum number of polygonal points max-polygon-points=50 # Higher for complex selections # Maximum radius for commands max-radius=5000 # Larger radius for staff # Maximum super pickaxe size max-super-pickaxe-size=500 ``` **Note:** These limits apply to everyone with WorldEdit access (Builder and Owner ranks only). --- ### YAWP Configuration **Location:** `/config/yawp/` (exact path depends on YAWP version) **YAWP is typically configured in-game via commands.** **Basic setup:** 1. Start the server 2. Join as an admin/op 3. Use commands like: ``` /yawp region create spawn /yawp region flag spawn pvp deny /yawp region flag spawn mob-spawning deny ``` **Full YAWP configuration is beyond this guide - configure as needed per server.** --- ### Discord Integration Configuration **Configuration varies by mod - choose based on your server version:** #### For DiscordSRV (1.16.5): **Location:** `/config/discordsrv/config.yml` ```yaml # Discord bot token (get from Michael or Discord Developer Portal) BotToken: "YOUR_DISCORD_BOT_TOKEN" # Channel IDs Channels: global: "DISCORD_CHANNEL_ID" # Options DiscordChatChannelConsoleCommandNotificationsEnabled: false DiscordChatChannelServerStartupMessageEnabled: true DiscordChatChannelServerShutdownMessageEnabled: true ``` #### For dcintegration (1.20.x / 1.21.x NeoForge): **Location:** `/config/dcintegration/config.toml` ```toml [discord] # Bot token token = "YOUR_DISCORD_BOT_TOKEN" # Channel ID for chat relay channelId = "DISCORD_CHANNEL_ID" [minecraft] # Enable chat relay enableChatRelay = true # Webhook settings (optional) useWebhook = false ``` **Get bot token and channel IDs from Michael.** --- ### Spark Configuration **Location:** No config file needed! **Spark works out of the box.** **Usage:** 1. In-game, run `/spark profiler start` 2. Let it run for 30-60 seconds 3. Run `/spark profiler stop` 4. Spark gives you a web link to view results **Only staff (Builder rank and above) should have access to Spark commands.** --- ### Waystones Configuration (If Modpack Includes It) **ONLY configure if the modpack already has Waystones installed. Do NOT add this mod separately.** **What Waystones does:** Fast travel between waystone structures that players place in the world. **Integration with Subscriber Tiers:** Waystones cooldown should match /rtp cooldown per tier. #### Configure Waystones Cooldowns via LuckPerms **Location:** Configure via LuckPerms permissions (not config file) **Set cooldown permissions for each subscriber tier:** ``` # Awakened - No Waystones access (same as no /rtp) /lp group awakened permission set waystones.use false # Fire/Frost Elemental - 60 minute cooldown /lp group fire_elemental permission set waystones.use true /lp group fire_elemental meta setmeta waystones-cooldown 3600 /lp group frost_elemental permission set waystones.use true /lp group frost_elemental meta setmeta waystones-cooldown 3600 # Fire/Frost Knight - 30 minute cooldown /lp group fire_knight meta setmeta waystones-cooldown 1800 /lp group frost_knight meta setmeta waystones-cooldown 1800 # Fire/Frost Master - 15 minute cooldown /lp group fire_master meta setmeta waystones-cooldown 900 /lp group frost_master meta setmeta waystones-cooldown 900 # Fire/Frost Legend - 10 minute cooldown /lp group fire_legend meta setmeta waystones-cooldown 600 /lp group frost_legend meta setmeta waystones-cooldown 600 # Sovereign - No cooldown (unlimited) /lp group sovereign meta setmeta waystones-cooldown 0 # Staff - No cooldown /lp group builder meta setmeta waystones-cooldown 0 /lp group owner meta setmeta waystones-cooldown 0 ``` **Cooldown Summary:** - Awakened: Cannot use Waystones - Elemental: 60 minutes (3600 seconds) - Knight: 30 minutes (1800 seconds) - Master: 15 minutes (900 seconds) - Legend: 10 minutes (600 seconds) - Sovereign/Staff: No cooldown (0 seconds) **Note:** These cooldowns match the /rtp cooldowns, maintaining tier consistency. --- ## ✅ TESTING & VERIFICATION ### Test Checklist - Per Server After configuring all mods on a server, test the following: #### 1. Server Starts Successfully - [ ] Server starts without errors - [ ] All mods load (check console) - [ ] No "missing dependency" errors - [ ] Server reaches "Done" state #### 2. LuckPerms Works ``` # In-game or console, run: /lp info # Should show LuckPerms version and connection status # Should say "Storage: MySQL" (not h2 or sqlite) ``` **💡 TIP: Use the LuckPerms Web Editor** Instead of managing permissions via console commands, you can use the visual web editor: 1. Join the server in-game 2. Run command: `/lp editor` 3. Click the link that appears in chat 4. Opens https://luckperms.net/editor/xxxxxxxx in your browser 5. Visual interface to create groups, set permissions, configure prefixes 6. Click "Save" when done, copy the command, paste in console **Benefits:** - Visual group hierarchy - Color picker for chat prefixes - Drag-and-drop permissions - No typing errors - Much faster than console commands **See the Subscription Automation Guide (Part 3) for detailed web editor instructions.** #### 3. FTB Chunks Works ``` # In-game: /ftbchunks # Should open chunk claiming GUI # Try claiming a chunk (right-click a chunk on the map) ``` #### 4. FTB Essentials Works ``` # In-game: /sethome test /home test /delhome test # Should set, teleport to, and delete home successfully ``` #### 5. WorldEdit Works ``` # In-game (as Builder rank): //wand # Should give you a wooden axe (WorldEdit selection tool) ``` #### 6. Discord Integration Works ``` # In-game, type a message in chat # Check Discord channel - message should appear # Type in Discord - message should appear in-game ``` --- ## 🔧 TROUBLESHOOTING ### Server Won't Start **Symptom:** Server crashes on startup or gets stuck loading. **Common Causes:** 1. **Wrong Forge/NeoForge version** - Make sure mod matches server type 2. **Missing dependencies** - Check for "missing required mod" errors 3. **Incompatible mods** - Some mods conflict with each other 4. **Corrupted jar file** - Re-download and re-upload **Solution:** 1. Check server console for specific error messages 2. Look for lines like "Missing required mod: [modname]" 3. Download missing dependencies 4. If still broken, remove mods one by one to find the problem --- ### LuckPerms Can't Connect to MySQL **Symptom:** LuckPerms loads but shows errors about database connection. **Common Causes:** 1. **Wrong MySQL credentials** - Double-check username, password, host, port 2. **Firewall blocking connection** - Server can't reach Command Center 3. **MySQL not running** - Database server is down **Solution:** 1. Check credentials in `/config/luckperms/luckperms.conf` 2. Test connection from server to MySQL: ```bash telnet 63.143.34.217 3306 ``` 3. If connection fails, ask Michael to check firewall rules --- ### FTB Chunks Claims Not Working **Symptom:** Players can't claim chunks or claims don't protect. **Common Causes:** 1. **Permission not granted** - Player doesn't have `ftbchunks.claim` permission 2. **Chunk limit reached** - Player hit their claim limit for their tier 3. **Protected area** - Trying to claim in spawn protection zone **Solution:** 1. Grant permission via LuckPerms: ``` /lp group awakened permission set ftbchunks.claim true ``` 2. Check player's claim count: ``` /ftbchunks admin info ``` 3. Adjust claim limits in config or via permissions --- ### Discord Integration Not Working **Symptom:** Messages don't relay between Minecraft and Discord. **Common Causes:** 1. **Wrong bot token** - Discord bot token is incorrect or expired 2. **Wrong channel ID** - Pointing to wrong Discord channel 3. **Bot not in server** - Discord bot hasn't been invited to your Discord server 4. **Missing bot permissions** - Bot doesn't have Send Messages / Read Messages permissions **Solution:** 1. Double-check bot token in config file 2. Verify channel ID (right-click channel in Discord, Copy ID) 3. Re-invite bot to Discord server with proper permissions 4. Restart Minecraft server after config changes --- ## 📚 REFERENCE ### Quick Command Reference #### LuckPerms Commands ```bash # View user info /lp user info # View group info /lp group info # Add user to group /lp user parent add # Set permission /lp group permission set true # View all groups /lp listgroups ``` #### FTB Chunks Commands ```bash # Open chunk claiming GUI /ftbchunks # View player's claims /ftbchunks admin info # Force claim for player (admin only) /ftbchunks admin claim # Unclaim chunk /ftbchunks unclaim ``` #### FTB Essentials Commands ```bash # Set home /sethome # Go to home /home # Delete home /delhome # List homes /homes # Random teleport /rtp # Go back to previous location /back ``` #### WorldEdit Commands (Staff Only) ```bash # Get selection wand //wand # Set position 1 //pos1 # Set position 2 //pos2 # Replace blocks in selection //replace # Fill area //set # Copy selection //copy # Paste selection //paste ``` --- ### File Locations Quick Reference ``` Server Root ├── mods/ │ ├── LuckPerms-Forge-5.4.xxx.jar │ ├── ftbchunks-forge-xxx.jar │ ├── ftbessentials-xxx.jar │ ├── ftblibrary-xxx.jar │ ├── ftbteams-xxx.jar │ ├── worldedit-forge-xxx.jar │ ├── ServerCore-xxx.jar │ ├── FerriteCore-xxx.jar │ └── ... (other mods) │ ├── config/ │ ├── luckperms/ │ │ └── luckperms.conf │ ├── ftbchunks/ │ │ └── common-config.snbt │ ├── ftbessentials.snbt │ ├── worldedit/ │ │ └── worldedit.properties │ └── ... (other configs) │ └── logs/ └── latest.log ``` --- ### Subscriber Tier Limits (Quick Reference) | Tier | Homes | Claimed Chunks | Force-Load Chunks | /rtp Cooldown | |------|-------|----------------|-------------------|---------------| | Wanderer | 0 | 0 | 0 | None (no access) | | Awakened | 1 | 0 | 0 | None (no access) | | Elemental | 5 | 25 | 0 | 60 min | | Knight | 10 | 49 | 4 | 30 min | | Master | 20 | 100 | 9 | 15 min | | Legend | 35 | 121 | 16 | 10 min | | Sovereign | 50 | 225 | 81 | None (unlimited) | **These limits are configured in the Subscription Automation Guide (separate document).** --- ### Important Reminders 1. **Always stop the server before editing config files** 2. **Test changes on ONE server before applying to all 13** 3. **MySQL credentials are the SAME for all servers** (they all connect to the same database) 4. **Make backups before making major changes** 5. **Ask Michael if you're unsure** - don't guess --- ### Getting Help **If something isn't working:** 1. **Check server console** - Most errors are logged there 2. **Check `/logs/latest.log`** - More detailed error information 3. **Ask Michael** - He can check from the backend 4. **Discord/Pterodactyl Panel** - Michael can see console remotely **When asking for help, provide:** - Which server (name/IP) - What you were trying to do - Exact error message from console/logs - What you've already tried --- ## 🎯 DEPLOYMENT CHECKLIST Use this checklist to track your progress across all 13 servers. ### TX1 Dallas Servers - [ ] Server 1: All mods installed, configured, tested - [ ] Server 2: All mods installed, configured, tested - [ ] Server 3: All mods installed, configured, tested - [ ] Server 4: All mods installed, configured, tested - [ ] Server 5: All mods installed, configured, tested - [ ] Server 6: All mods installed, configured, tested - [ ] Server 7: All mods installed, configured, tested (if applicable) ### NC1 Charlotte Servers - [ ] Server 1: All mods installed, configured, tested - [ ] Server 2: All mods installed, configured, tested - [ ] Server 3: All mods installed, configured, tested - [ ] Server 4: All mods installed, configured, tested - [ ] Server 5: All mods installed, configured, tested - [ ] Server 6: All mods installed, configured, tested - [ ] Server 7: All mods installed, configured, tested (if applicable) ### Post-Deployment - [ ] All servers connecting to MySQL successfully - [ ] LuckPerms syncing across all servers - [ ] FTB Chunks working on all servers - [ ] FTB Essentials working on all servers - [ ] WorldEdit permissions configured for Builder rank - [ ] Discord integration tested on at least one server per modpack type - [ ] Documented any server-specific issues or configurations --- **End of Server-Side Mod Deployment Guide** **Next Step:** Proceed to **Subscription Automation Guide** to configure the Paymenter → Discord → LuckPerms integration. **Fire + Frost + Foundation = Where Love Builds Legacy** 🔥❄️ --- **Document Version:** 1.0 **Last Updated:** March 23, 2026 **Maintained By:** Firefrost Gaming Infrastructure Team