34 Commits

Author SHA1 Message Date
Claude
9dffd71f8a Add CapCut tutorial for Post #5 'The Hint' - blurred logo reveal effect
- Step-by-step keyframe animation guide
- Mobile and desktop instructions
- Alternative simpler approach included
- Export settings for vertical + horizontal
- Strategy notes on FOMO campaign placement
2026-04-07 21:10:48 +00:00
Claude
69f9956d1b Add Discord Onboarding & MVC Support Infrastructure Guide
Complete implementation guide for Holly covering:

PART 1: TWO-STAGE ONBOARDING SYSTEM
- Stage 1: Wanderer onboarding (Discord Native)
  - Forced rules acceptance
  - See ALL channels (FOMO strategy)
  - Can post in #general, #rules, #open-a-ticket
  - "Stop wandering. You found home."

- Stage 2: Subscriber onboarding (Carl-bot + Arbiter)
  - BOTH: Carl-bot DM + #choose-your-roles mention
  - Fire/Frost path selection
  - Server role selection
  - Notification preferences
  - "You're family now. Make this place yours."

PART 2: MODPACKCHECKER SUPPORT ECOSYSTEM
- #mvc-general (public peer support chat)
- #mvc-support (private tickets via Ticket Tool, role-gated)
- 🎙️ MVC Voice Support (live troubleshooting)
- 📋 MVC Help Forum (searchable FAQs, pre-seeded threads)

Complete with:
- Step-by-step setup instructions
- Permission configurations
- Carl-bot reaction role templates
- Ticket Tool 7th category setup
- Forum pre-seed content (3 starter threads)
- Testing checklists
- 2-3 hour implementation timeline

Strategy approved by Michael and Holly.

Chronicler #64 - Building welcoming infrastructure
2026-04-06 22:01:58 +00:00
Claude (Chronicler #59)
eb2d138e67 docs: Add FOMO campaign final plan + Holly's Discord prep checklist
WHAT:
- Final execution plan for Phase 1 FOMO campaign (Apr 6-14)
- Holly's Discord prep checklist for campaign readiness

KEY DECISIONS LOCKED:
- Option C timeline: Assets Apr 4-5, Posts Apr 6-14, Launch Apr 15
- Posting time: 4:00 PM CDT daily (all platforms)
- Scheduling: Native tools ($0) not Buffer ($40)
- Post 7: Butter (CEO) not Jack (save for Phase 2)
- Hashtag strategy: 3-2-2 rule (broad/niche/branded)
- Backup plan: Do nothing, proceed with confidence

HOLLY'S TASKS:
1. Verify Wanderer channel visibility (visible but locked)
2. Add Message Scheduler bot for daily prompts
3. Optional: Carl-bot welcome DM
4. Ongoing: Greet new Wanderers during campaign

Campaign architecture by Chronicler #47
Tactical review by Gemini AI
Final plan by Chronicler #59 + Michael

Signed-off-by: claude@firefrostgaming.com
2026-04-04 03:05:24 +00:00
Claude (Chronicler #56)
c39ed2c024 docs: add Holly's guide for adding new servers to website
WHAT WAS DONE:
Created quick-reference guide for Holly explaining how to add new
Minecraft servers to the dynamic website status display.

FILE CREATED:
docs/guides/holly-new-server-guide.md

COVERS:
- Why: Automatic live status on website
- What: Add website-api@firefrostgaming.com as subuser
- How: 6-step process with exact permission (ACTIVITY → Read)
- Why that permission: Safest read-only option
- What if forgotten: No big deal, add anytime

CONTEXT:
Every new Minecraft server needs website-api added as subuser with
ACTIVITY → Read permission for it to appear on the live status page.
Takes 30 seconds, appears on website within 60 seconds.

This is a non-technical guide written for Holly's reference when
creating new servers.

Signed-off-by: Claude (Chronicler #56) <claude@firefrostgaming.com>
2026-04-03 05:19:18 +00:00
Claude (Chronicler #35)
82a3b6a332 docs: Add Holly's Discord prep guide for Arbiter 2.x launch
WHAT WAS ADDED:
- Discord preparation guide for Holly (The Catalyst)
- Friendly, step-by-step instructions for pre-launch setup
- Correct Sovereign tier pricing ($499 lifetime, not monthly)

GUIDE INCLUDES:
- Create #link-your-account channel with pinned message
- Verify all 6 subscription tier roles exist
- Check role hierarchy for bot permissions
- Optional: Set up subscriber-only channels
- Optional: Configure Discord onboarding flow

WHAT TO WAIT ON:
- Don't test /link command (doesn't exist yet)
- Don't manually link accounts (no database yet)
- Don't configure Paymenter (Michael handles backend)

WHY:
Holly can prep Discord structure now while Michael builds Arbiter 2.x.
Makes launch day smoother when subscription system goes live.

CORRECT TIER PRICING EMPHASIZED:
Monthly tiers: Awakened ($1), Elemental ($5), Knight ($10),
Master ($15), Legend ($20)

Lifetime tier: Sovereign ($499 ONE-TIME payment, not $50/month)

FILES:
- docs/guides/holly-arbiter-2x-discord-prep.md (new, 147 lines)

Signed-off-by: The Golden Chronicler <claude@firefrostgaming.com>
2026-03-31 22:54:24 +00:00
Claude (Chronicler #49)
404454b24e docs: Add LuckPerms testing guide for Holly
WHAT WAS DONE:
Created comprehensive testing guide for Holly to verify LuckPerms configuration

GUIDE CONTENTS:
- Quick checks (5 minutes) - verify groups exist, check permissions
- Full 9-step testing procedure (30-45 minutes total)
- Testing checklist with 10 validation items
- Troubleshooting section for common issues
- Quick command reference for LuckPerms

TESTING STEPS COVERED:
1. Create test player (alt account or ask Meg)
2. Test Awakened rank (1 home, no /rtp, no chunks)
3. Test Fire Elemental (5 homes, /rtp 60min, 25 chunks)
4. Test Frost Elemental (verify cyan vs orange colors)
5. Test Knight tier (10 homes, 49 chunks, 30min /rtp)
6. Test Sovereign (50 homes, 225 chunks, no cooldown)
7. Test Mod rank (kick/ban commands)
8. Test chat prefixes (colors and display)
9. Test inheritance (perks remain after upgrade)

KEY VALIDATIONS:
- Verify all 13 groups exist
- Check prefix colors (Fire=#FF3D00, Frost=#00E5FF)
- Confirm permissions work (homes, chunks, /rtp)
- Validate inheritance chain
- Test moderation commands

TROUBLESHOOTING INCLUDED:
- Prefix not showing (chat plugin issues)
- Permissions not working (permission checks)
- Chunks not claiming (FTB config needed)
- Homes not working (FTB Essentials config)

AUDIENCE: Holly (unicorn20089)
ESTIMATED TIME: 30-45 minutes
PURPOSE: Validate LuckPerms setup before rolling out to all 13 servers

WHY THIS MATTERS:
Holly figured out LuckPerms configuration and needs systematic testing
before deploying across entire server network. This guide ensures nothing
breaks in production.

FRIENDLY URL: git.firefrostgaming.com/firefrost-gaming/firefrost-operations-manual/src/branch/master/docs/guides/holly-luckperms-testing-guide.md

FILE: docs/guides/holly-luckperms-testing-guide.md

Signed-off-by: Claude (Chronicler #49) <claude@firefrostgaming.com>
2026-03-30 15:27:00 +00:00
Claude (Chronicler #47)
f815525f81 fix: rename Founder tier to Sovereign across all active docs
The top subscription tier is Sovereign, not Founder.
This has been corrected multiple times across sessions — fixing at source.

FILES UPDATED:
- docs/core/tasks.md
- docs/core/project-scope.md
- docs/tasks/rank-system-deployment/rank-structure.md
- docs/tasks/paymenter-pterodactyl-integration/README.md
- docs/archive/2026-02-09-consolidation/luckperms-structure.md
- docs/planning/subscription-tiers.md
- docs/planning/awakened-gateway.md
- docs/guides/subscription-automation-guide.md
- docs/guides/holly-discord-roles-setup.md
- docs/guides/holly-wanderer-permissions-setup.md
- docs/systems/arbiter-discord-role-mappings.md
- docs/branding/trinity-leadership-artwork.md

NOTE: References to 'founders' meaning Michael/Meg/Holly as company
founders were intentionally preserved. Only tier name updated.

Signed-off-by: claude@firefrostgaming.com
2026-03-29 19:42:01 +00:00
Claude (Chronicler #46)
e134d5713f docs: complete zero-to-hero guide for Firefrost Rules mod
WHAT WAS DONE:
Created comprehensive beginner's tutorial for building the Firefrost
Rules mod from absolute zero experience. Assumes no prior Java or
Minecraft modding knowledge.

WHY:
Michael requested "sub zero to hero" level guide - he has no prior
Java development experience and needs to learn everything from scratch.

Guide covers (1,700+ lines):
- What Java/JDK/IDE/Gradle/NeoForge are (plain English)
- Installing Java 21 JDK (Windows/Mac/Linux)
- Installing IntelliJ IDEA Community Edition
- Creating project structure from scratch
- Understanding folder organization (src/main/java, package names)
- Copy/paste all 10 files (3 build + 1 metadata + 7 Java)
- Running Gradle build (first-time setup)
- Finding the compiled JAR
- Deploying to Pterodactyl server
- Configuring Discord (channel ID, message ID, bot token)
- Testing the /rules command
- Troubleshooting common errors (build failures, runtime issues)
- Holly's editing workflow
- Creating a Discord bot (appendix)

Accessibility features:
- Plain English explanations (no jargon without definition)
- Step-by-step with screenshots described
- Common errors with exact fixes
- Analogies for complex concepts
- Checkpoints after each phase

FILES CHANGED:
- docs/guides/firefrost-rules-mod-beginner-guide.md (new, 1,741 lines)

NEXT STEP:
Michael follows guide on desktop, builds first Java mod from zero.

Signed-off-by: Claude (Chronicler #46) <claude@firefrostgaming.com>
2026-03-29 03:57:39 +00:00
Claude (Chronicler #45)
258b77dee8 docs: document Lead Builder Discord role color as #A855F7
WHAT WAS DONE:
- Added warning note to design-bible.md Arcane palette section
- Added troubleshooting entry to holly-discord-roles-setup.md
- Both reference March 28, 2026 incident where the role was found gray

WHY:
Holly's Lead Builder Discord role was found with no color set (gray).
Restored to #A855F7 (Arcane purple) — her Trinity founder identity
color. Documented in two places so future sessions and Holly herself
know what to look for if it happens again.

FILES MODIFIED:
- docs/planning/design-bible.md
- docs/guides/holly-discord-roles-setup.md

Signed-off-by: Chronicler #45 <claude@firefrostgaming.com>
2026-03-28 21:13:03 +00:00
Claude (Chronicler #45)
54d615e7f0 docs: add comprehensive Ticket Tool setup guide
WHAT WAS DONE:
- Created docs/guides/ticket-tool-setup-guide.md
- 10-step installation and configuration guide for Ticket Tool
- Documents all 6 ticket categories with rationale for each
- Includes complete panel configuration (welcome messages, routing,
  naming, permissions) for every ticket type
- Transcript and logging setup
- Staff workflow reference
- Troubleshooting section (including role hierarchy lesson learned today)
- Future enhancements roadmap
- References Task #85 (Paymenter redirect)

TICKET CATEGORIES:
1. Billing & Subscriptions (💳)
2. Server Help (🎮)
3. Technical Issues (🔧)
4. Report a Player (🚨)
5. Sales & Upgrades (💎)
6. Suggestions & Feedback (💡)

WHY:
Decision made this session: all support lives in Discord.
Paymenter built-in ticket system will be bypassed (Task #85).
Complete guide means anyone on the team can set this up
without needing Michael present.

FILES ADDED:
- docs/guides/ticket-tool-setup-guide.md

Signed-off-by: Chronicler #45 <claude@firefrostgaming.com>
2026-03-28 21:05:50 +00:00
Claude (Chronicler #45)
518d3396ae docs: add Carl-bot role hierarchy troubleshooting entry
WHAT WAS DONE:
- Added troubleshooting entry to holly-wanderer-permissions-setup.md
- Documents the gray circle symptom in Carl-bot Autoroles dashboard
- Explains root cause: bot role must be above any role it assigns
- Includes fix steps and verification method

WHY:
Encountered live on 2026-03-28. New members were joining and
receiving no role. Root cause was Carl-bot's role positioned below
Wanderer in the Discord role hierarchy. One-drag fix. Documented
immediately so this is never a mystery again.

FILES MODIFIED:
- docs/guides/holly-wanderer-permissions-setup.md

Signed-off-by: Chronicler #45 <claude@firefrostgaming.com>
2026-03-28 20:46:38 +00:00
Claude
1c79ea6535 docs: Enhance Holly's Wanderer guide with reasoning and Carl-bot info
MAJOR ADDITIONS:
- Background section explaining what Wanderer tier is
- FOMO strategy psychology and reasoning (why visible-but-locked works)
- Carl-bot configuration details and verification steps
- Complete subscription flow (Discord join → Paymenter → role assignment)
- Business strategy and conversion funnel explanation
- Why we use multiple bots (separation of concerns)
- Success metrics to track
- Future enhancement ideas

EDUCATIONAL CONTENT:
- Psychology behind FOMO (scarcity, social proof, curiosity)
- Real-world examples (Spotify, Discord Nitro, gaming demos)
- Conversion funnel math (1000 joins → 100-200 subscribers)
- Engineering principles (right tool for the job)

Guide now explains:
- WHAT to do (step-by-step instructions)
- WHY we're doing it (business/psychology reasoning)
- HOW it all connects (Carl-bot → Wanderer → Arbiter → paid tiers)

This gives Holly full context so she understands the strategy,
not just follows instructions blindly.

Updated by: Chronicler #44
Date: March 28, 2026

Signed-off-by: Claude <claude@firefrostgaming.com>
2026-03-28 02:19:31 +00:00
Claude
3d0ee1e670 docs: Add Holly's guide for Wanderer Discord permissions setup
Created comprehensive step-by-step guide for configuring Wanderer role
channel permissions to implement the FOMO strategy.

GUIDE COVERS:
- Making Fire/Frost paths visible but locked (FOMO driver)
- Hiding modlog from free users (staff only)
- Verifying Support category visibility
- Complete permission matrix and troubleshooting

FOMO STRATEGY:
Free users (Wanderer) can see Fire/Frost path categories and channels
but cannot access them - drives conversions to paid tiers.

Current Issues Found:
- Fire/Frost paths completely hidden (should be visible but locked)
- modlog visible to Wanderer (should be staff-only)

Guide includes:
- 4 fixes with detailed steps
- Verification methods (View Server As Role + test account)
- Permission summary cheat sheet
- Troubleshooting section
- Estimated completion time: 10-15 minutes

For: Holly (The Catalyst) to configure
Created by: Chronicler #44
Date: March 28, 2026

Signed-off-by: Claude <claude@firefrostgaming.com>
2026-03-28 02:16:28 +00:00
Claude
abcf09aca9 docs: add Discord roles setup guide for Holly
Complete guide for creating missing subscription tier roles and renaming
Founder to The Sovereign (99 tier). Includes step-by-step instructions
with reasoning, role color recommendations, and verification checklist.

Task: Discord bot configuration (Part 2 of Task #2)
For: Holly (unicorn20089)

Signed-off-by: The Verifier <claude@firefrostgaming.com>
2026-03-27 14:27:15 +00:00
Claude
c90974d725 docs: Update Subscription Automation Guide to prioritize admin panel workflow
UPDATED: Part 2 Step 3 - Update Role Mappings in Bot

Changed from manual-only to dual-option approach:

OPTION A (RECOMMENDED): Discord Bot Admin Panel
- Holly can update role IDs herself
- No SSH access needed
- No bot restart needed
- Instant validation and feedback
- Zero downtime
- Audit logs posted to Discord automatically
- Complete workflow documented

OPTION B (MANUAL): SSH + Manual Edit
- Requires Michael's SSH access
- Requires bot restart
- Only use if admin panel not deployed yet
- Kept for backward compatibility

Updated Prerequisites Section:
- Added admin panel access requirement
- Clarified SSH only needed for LuckPerms testing
- Not needed for Discord role management anymore

Benefits of Update:
- Makes admin panel the primary, recommended method
- Reduces Holly's dependency on Michael
- Promotes modern, self-service workflow
- Still documents manual fallback if needed

Guide now properly reflects the new admin panel infrastructure
deployed in discord-bot-admin-panel.md

Chronicler #40
2026-03-22 13:58:00 +00:00
Claude
8ea691ec05 feat: Add .env.template to Discord Bot Admin Panel guide - DEPLOYMENT PACKAGE COMPLETE
ADDED: Complete .env.template file to Part 4 Step 2

.env.template Features:
- Clear section headers (Server Config, Discord Bot, OAuth2, Security)
- Detailed comments explaining each variable
- Example values showing format
- Instructions on where to find each value
- Security reminder: DO NOT commit .env to version control

Two-Option Approach:
- Option A (Recommended): Create .env.template first, then copy to .env
- Option B (Alternative): Create .env directly

Variables Included (11 total):
1. NODE_ENV (production/development)
2. PORT (internal port for Node app)
3. SESSION_SECRET (random string for cookie encryption)
4. DISCORD_TOKEN (bot token from Developer Portal)
5. GUILD_ID (Discord server ID)
6. DISCORD_CLIENT_ID (OAuth2 client ID)
7. DISCORD_CLIENT_SECRET (OAuth2 client secret)
8. CALLBACK_URL (OAuth2 redirect URL)
9. ALLOWED_ADMINS (Holly + Michael Discord user IDs)
10. AUDIT_CHANNEL_ID (#bot-audit-logs channel ID)

Security Notes:
- Template shows format without exposing secrets
- Actual .env must be chmod 600
- Actual .env owned by firefrost-bot user
- DO NOT commit .env to git

Template provided by: Gemini (Google AI) - March 23, 2026

STATUS: DEPLOYMENT PACKAGE 100% COMPLETE

All code files ready:
 bot.js (350+ lines)
 index.html (Fire/Frost branded)
 style.css (mobile-responsive)
 app.js (frontend logic)
 .env.template (complete)

All configuration ready:
 Systemd service file
 Nginx reverse proxy config
 Let's Encrypt SSL commands
 Environment variable template

All documentation ready:
 Complete deployment guide (2400+ lines)
 Step-by-step walkthrough
 Troubleshooting guide
 Holly's usage guide

READY FOR PRODUCTION DEPLOYMENT (March 24, 2026)

Chronicler #40
2026-03-22 13:48:02 +00:00
Claude
082cf4923a feat: Add complete production-ready bot.js to Discord Bot Admin Panel guide
ADDED: Part 4 complete implementation (7 comprehensive steps)

Complete Backend Code (by Gemini/Google AI):
- 350+ lines of production-ready Node.js/Express/Discord.js code
- 8 logical sections for easy understanding and maintenance
- Fully integrated: OAuth2, validation, atomic saves, audit logs, webhooks

Step 1: Install Dependencies
- Listed all required npm packages with explanations
- express, express-session, passport, passport-discord
- write-file-atomic, dotenv, discord.js

Step 2: Create Environment Variables File
- Complete .env template with all required variables
- Detailed instructions for obtaining each value
- DISCORD_TOKEN, CLIENT_ID, CLIENT_SECRET, GUILD_ID
- CALLBACK_URL, SESSION_SECRET, ALLOWED_ADMINS
- AUDIT_CHANNEL_ID (new for audit logging)
- NODE_ENV, PORT

Step 3: Set Environment File Permissions
- Critical security step (chmod 600, chown firefrost-bot)
- Prevents unauthorized access to secrets

Step 4: Deploy Complete bot.js (THE BIG ONE)
- 8 sections with clear separation:
  1. Imports and Environment Setup
  2. Constants and In-Memory State
  3. Helper Functions (saveConfig, roleExists)
  4. Audit Log Generator (Fire/Frost dynamic colors)
  5. Passport & Middleware Setup
  6. Authentication & UI Routes
  7. API Routes (config, logs, save)
  8. Webhook Receiver & Initialization
- Product name dictionary (for audit log embeds)
- Circular buffer webhook logging (max 50 events)
- Discord OAuth2 with whitelist
- In-memory config with atomic disk writes
- Regex + Discord API validation
- Fire/Frost dynamic embed colors (#FF6B35 / #4ECDC4)

Step 5: Set File Permissions
- Ensure firefrost-bot user owns bot.js

Step 6: Create Discord Audit Log Channel
- Instructions for creating #bot-audit-logs
- Set to private (Michael, Holly, bot only)
- Copy channel ID for .env

Step 7: Restart Bot Service
- systemctl restart commands
- Expected log output for verification

Backend Features Documented:
- Security (dedicated user, OAuth2, whitelist, sessions)
- Config management (in-memory, atomic writes, backups)
- Validation (regex + Discord API verification)
- Audit logging (Discord embeds, Fire/Frost colors, user attribution)
- Webhook logging (circular buffer, accessible via API)

Dynamic Fire/Frost Logic:
- Fire products → #FF6B35 (Fire Orange) embeds
- Frost products → #4ECDC4 (Frost Blue) embeds
- Based on product name (isFrost = name.includes('Frost'))

Expected Log Output Examples:
- Bot startup: "Bot logged in as Firefrost Subscription Manager#1234"
- Express server: "Firefrost Command Center running on port 3100"

Security Highlights:
- Runs as firefrost-bot user (NOT root)
- .env file chmod 600 (secrets protected)
- Session cookies secure in production
- Whitelist authorization (only Holly + Michael)

Status: Backend code COMPLETE and ready to deploy
Architecture credit: Gemini (Google AI) - March 23, 2026

Chronicler #40
2026-03-22 13:45:28 +00:00
Claude
a68ff3b885 feat: Add complete deployment commands to Discord Bot Admin Panel guide
UPDATED: Part 2 (Create Dedicated Bot User)
- Added complete systemd service configuration from Gemini
- Explained what each configuration option does
- After=network.target (wait for network)
- Restart=on-failure (auto-restart on crash)
- RestartSec=10 (10 second delay before restart)
- NODE_ENV=production (production mode)

UPDATED: Part 6 (Configure Nginx & SSL) - COMPLETE REWRITE
- 9 comprehensive steps with detailed explanations
- Step 1: Create Nginx config (proxy headers explained)
- Step 2: Enable site (symlink + test + reload)
- Step 3: Verify HTTP access (before SSL)
- Step 4: Install Certbot (if needed)
- Step 5: Obtain SSL certificate (detailed Certbot walkthrough)
- Step 6: Verify HTTPS access (test redirect)
- Step 7: Verify auto-renewal (90-day renewal timer)
- Step 8: View final Nginx config (Certbot modifications)
- Step 9: Security headers (optional hardening)

Key Additions:
- Explained ALL proxy headers (X-Real-IP, X-Forwarded-For, etc.)
- Step-by-step Certbot prompts (what to expect)
- Verification steps at each stage
- Auto-renewal testing (dry-run)
- Security headers with explanations
- Troubleshooting: Check logs, verify DNS, test bot status

What Certbot Does Automatically:
- Validates domain ownership
- Obtains SSL certificate
- Modifies Nginx config for HTTPS
- Adds HTTP → HTTPS redirect
- Sets up auto-renewal systemd timer

Example Outputs Included:
- nginx -t success message
- Certbot success message
- certbot.timer status
- Final Nginx config structure (2 server blocks)

Security Hardening:
- X-Frame-Options (prevent clickjacking)
- X-Content-Type-Options (prevent MIME sniffing)
- X-XSS-Protection (enable browser XSS filter)
- Referrer-Policy (control referer header)

Status: Deployment guide COMPLETE
- Part 2:  Complete (systemd service)
- Part 6:  Complete (Nginx + SSL)
- Ready for production deployment

Commands provided by: Gemini (Google AI) - March 23, 2026

Chronicler #40
2026-03-22 13:36:42 +00:00
Claude
0c0d19e7f1 feat: Add complete frontend code to Discord Bot Admin Panel guide
ADDED: Part 5 complete implementation (9 steps, production-ready)

Frontend Files (by Gemini/Google AI):
- index.html (login + dashboard views, Fire/Frost branding)
- style.css (mobile-responsive, CSS variables for theming)
- app.js (vanilla JavaScript, fetch API, per-row save logic)

Key Features Implemented:
- Discord OAuth login flow
- 10 product → role ID input fields (Awakened through Sovereign)
- Per-row save buttons with validation feedback
- Inline error messages (shows under specific failed field)
- Bot status indicator (Online/Offline)
- Recent webhook logs table (manual refresh, last 50 events)
- Mobile-responsive design (flexbox, touch-friendly)

UI/UX Decisions (Gemini's recommendations):
- Save per row (not Save All) - prevents one error blocking all saves
- Validate on save (not on blur) - prevents API spam
- Inline errors - Holly knows exactly what to fix
- Manual log refresh - prevents layout shifting, lower memory

Technical Details:
- No frameworks (vanilla JS, fast loading)
- CSS variables for Fire (#FF6B35) / Frost (#4ECDC4) theming
- Monospace font for role ID inputs (easier to verify 18-digit IDs)
- Button state changes: Save → Saving... → Saved! → Save
- Color-coded status: green = success, red = error

Added Backend Requirements:
- app.use(express.static('public')); - serve static files
- GET /api/logs endpoint - return webhookLogs array
- Webhook logging in POST /webhook/paymenter - populate logs array
- Circular buffer (max 50 logs, shift oldest when full)

File Permissions:
- chown firefrost-bot:firefrost-bot public/
- chmod 644 public/* - read-only for security

Status: Frontend code COMPLETE and ready to deploy
Next: Nginx + SSL configuration (Part 6)

Code credit: Gemini (Google AI) - March 23, 2026

Chronicler #40
2026-03-22 13:33:20 +00:00
Claude
5a2eee40fb docs: Create Discord Bot Admin Panel guide + update Subscription Automation Guide
CREATED: docs/guides/discord-bot-admin-panel.md (new comprehensive guide)
- Complete implementation guide for web-based admin panel
- Architecture section (credits Gemini for design decisions)
- Security-first approach (dedicated firefrost-bot user, Discord OAuth2)
- Zero-downtime config updates (in-memory + atomic disk writes)
- Holly's usage guide (how to update role IDs via web interface)
- Full troubleshooting section
- Maintenance procedures

Key Features Documented:
- Discord OAuth2 authentication (no passwords)
- Whitelist authorization (Holly + Michael only)
- Role ID validation (regex + Discord API verification)
- Atomic file writes with backup strategy
- In-memory config updates (no bot restart needed)
- Audit logging to Discord channel
- HTTPS via Nginx + Let's Encrypt

Status: Awaiting backend/frontend code from Gemini

UPDATED: docs/guides/subscription-automation-guide.md
- Task 9 rewritten to reference new admin panel guide
- Added Option A (admin panel) vs Option B (manual SSH) paths
- Removed SSH instructions for Holly (she won't have access)
- Removed bot token from credentials file (security)
- Updated Holly's tasks section with admin panel option
- Preserved manual method as fallback

Why These Changes:
- Admin panel gives Holly independence (no waiting for Michael)
- Cleaner separation of concerns (setup vs usage)
- Security improvement (no SSH access needed for Holly)
- Better documentation structure (1000+ line guide split logically)

Architecture Credit: Gemini (Google AI) consultation on March 23, 2026

Chronicler #40
2026-03-22 13:28:57 +00:00
Claude
f24e976690 refactor: Remove Waystones/Corpse from mod list, add config section
REMOVED from mod installation list:
- Waystones (mod #14) - only use if modpack includes it
- Balm dependency - not needed if not installing Waystones
- Corpse/Grave mods (mod #15) - only use if modpack includes it

ADDED new configuration section:
- Waystones Configuration (If Modpack Includes It)
- LuckPerms permissions to set cooldowns per tier
- Cooldowns match /rtp cooldowns for consistency:
  - Awakened: Cannot use (no access)
  - Elemental: 60 min (3600s)
  - Knight: 30 min (1800s)
  - Master: 15 min (900s)
  - Legend: 10 min (600s)
  - Sovereign/Staff: No cooldown (0s)

Updated:
- Dependency summary: Removed Waystones/Balm entries
- Reference table: Removed Waystones/Balm rows
- Renumbered mods: Discord → #14, Plan → #15, Voice Chat → #16

Rationale:
- Don't install mods the modpack might already have
- Configure Waystones via LuckPerms if present
- Maintains tier consistency (Waystones cooldown = /rtp cooldown)

Chronicler #40
2026-03-22 12:57:23 +00:00
Claude
027d3660e8 feat: Add LuckPerms web editor references to mod deployment guide
Added references to LuckPerms web editor in two key sections:

1. Testing & Verification Section:
   - Added tip box explaining web editor
   - Command: /lp editor
   - Benefits: Visual interface, color picker, no typing errors
   - Reference to Subscription Automation Guide for details

2. WorldEdit Configuration Section:
   - Added RECOMMENDED method: Use web editor
   - Alternative: Console commands (for those who prefer terminal)
   - Clear signposting to full instructions in other guide

Why This Helps:
- Holly sees web editor option while testing LuckPerms
- Reminded that web editor exists when configuring WorldEdit perms
- Cross-reference to Subscription Automation Guide Part 3
- Choice between visual (web editor) vs terminal (console commands)

Maintains consistency between both deployment guides.

Chronicler #40
2026-03-22 12:48:41 +00:00
Claude
878b11194a feat: Add 'Dependencies: None' to all mods without dependencies
Added explicit 'Dependencies:' field to ALL mods for clarity.

Mods with 'Dependencies: None':
- LuckPerms
- Architectury API (base library)
- WorldEdit
- ServerCore
- FerriteCore
- Spark
- Plan
- Simple Voice Chat

Mods with 'Check mod page' note:
- YAWP (varies by version)
- Prism (varies by version)
- Corpse/Grave mods (varies by which mod chosen)
- Discord integration (varies by mod version)

Why This Helps:
- Holly sees 'Dependencies: None' → knows she can install it immediately
- Holly sees specific dependencies → knows what to install first
- Holly sees 'Check mod page' → knows to verify before installing
- No ambiguity - every mod has a Dependencies field

Consistency: Every single mod now has a Dependencies line.

Chronicler #40
2026-03-22 12:45:21 +00:00
Claude
4c2a87a2f4 feat: Add Elite Holograms mod to deployment guide
Added Elite Holograms to Quality of Life mods section.

What it does:
- Creates floating holographic text/images in-game
- Display server info, rules, welcome messages, leaderboards
- Professional-looking information displays

Use cases for Firefrost:
- Spawn: Display server rules, tier comparison chart
- Welcome area: Greet new Awakened tier subscribers
- Hub: Show available perks per tier
- Events: Fire vs Frost standings, competitions

Dependencies: Architectury API (required)

Updated:
- Mod list: Elite Holograms is now mod #13
- Renumbered: Waystones → #14, Corpse → #15, Discord → #16, Plan → #17, Voice Chat → #18
- Dependency summary: Added to installation order
- Reference table: Added Elite Holograms entry

Download: https://www.curseforge.com/minecraft/mc-mods/elite-holograms

Chronicler #40
2026-03-22 12:41:59 +00:00
Claude
05eb60eddd fix: Add Dependencies field to each mod that requires them
CRITICAL FIX: Dependencies now listed ON EACH MOD, not just on library mods.

Before: Holly looks at FTB Chunks, sees no dependency info
After: Holly sees 'Dependencies: FTB Library, FTB Teams, Architectury API'

Changed Mods:
- FTB Chunks: Added 'Dependencies: FTB Library, FTB Teams, Architectury API'
- FTB Essentials: Added 'Dependencies: FTB Library, Architectury API'
- FTB Library: Added 'Dependencies: Architectury API'
- FTB Teams: Added 'Dependencies: FTB Library, Architectury API'
- Waystones: Dependencies field moved to top

Result: When Holly reads ANY mod, she immediately knows what to install first.

Chronicler #40
2026-03-22 12:39:56 +00:00
Claude
92d45929f3 feat: Add comprehensive mod dependency documentation
CRITICAL: Added all missing mod dependencies to prevent installation failures.

Dependencies Added:
- Architectury API (required by FTB Library)
- Balm (required by Waystones)
- FTB Teams marked as dependency for FTB Chunks

New Sections:
- Dependency Summary with installation order
- Quick dependency reference table
- Clear dependency chain explanation

Installation Order Now Documented:
1. Dependencies first (Architectury API, FTB Library, FTB Teams)
2. Core mods (LuckPerms, FTB Chunks, FTB Essentials, WorldEdit)
3. Performance mods (ServerCore, FerriteCore, Spark)
4. Optional mods with their dependencies noted

Why This Matters:
- Prevents 'missing dependency' errors during installation
- Holly knows WHAT to install and IN WHAT ORDER
- Clear table shows dependency relationships
- Reduces troubleshooting time

Removed: Duplicate Discord Integration section

Chronicler #40
2026-03-22 12:38:02 +00:00
Claude
8302b4aaa5 feat: Rewrite Part 3 with dual method approach (web editor + console)
Part 3 now offers TWO ways to create LuckPerms groups:

METHOD A: Web Editor (RECOMMENDED)
- 30-45 minutes instead of 2-3 hours
- Visual interface with drag-and-drop
- Color picker for chat prefixes
- Built-in validation prevents mistakes
- Better for learning the structure
- Step-by-step guide for all 13 groups

METHOD B: Console Commands (ALTERNATIVE)
- Original ~150 command approach
- Exact and reproducible
- Good for documentation
- No internet upload required
- Same functionality as Method A

Benefits:
- Holly can choose based on comfort level
- Web editor is faster and less error-prone
- Console commands still available for automation/reproducibility
- Both methods produce identical results

Chronicler #40
2026-03-22 12:33:17 +00:00
Claude
7255275fd3 feat: Add WorldEdit staff-only permissions configuration
CRITICAL SECURITY: WorldEdit is now restricted to staff only.

Changes:
- Created Builder group (for Holly) with full WorldEdit access
- Created Owner group (for Michael) with all permissions
- Explicitly DENIED worldedit.* to ALL subscriber groups (including Sovereign)
- Added gamemode, unlimited chunks/homes to staff
- Updated both deployment guides with staff group creation

Why this matters:
- Prevents subscribers from using WorldEdit to duplicate items
- Prevents WorldEdit-based griefing and chunk bypass exploits
- Even $499 Sovereign tier does NOT get WorldEdit
- Only Holly (Builder) and Michael (Owner) have access

Commands added to LuckPerms group creation section in both guides.

Chronicler #40
2026-03-22 12:28:05 +00:00
Claude
1bc50370b0 fix: Add Cloudflare DNS setup to Michael's pre-setup
Added Task 7: Set Up DNS (Cloudflare) before Nginx configuration.

Michael needs to:
1. Add A record: webhook.firefrostgaming.com → 63.143.34.217
2. Set to DNS only (proxy OFF)
3. Verify DNS propagation with dig

Renumbered subsequent tasks (Nginx is now Task 8, Holly prep is Task 9).

Chronicler #40
2026-03-22 12:16:38 +00:00
Claude
12ef5a5a32 fix: Clarify bot role ID update is Michael's task
Step 3 of Part 2 now clearly marked as Michael's task.
Holly creates roles and copies IDs, then hands to Michael.
Michael SSHs to Command Center and updates bot.js.

Prevents confusion about who has SSH access to Command Center.

Chronicler #40
2026-03-22 12:14:58 +00:00
Claude
cee8f1256e fix: Clarify LuckPerms group creation - use Panel console only
Removed confusing SSH instruction. Holly should use Pterodactyl Panel
console directly - no SSH needed for running LuckPerms commands.

All servers share MySQL database, so commands on one server sync to all.

Chronicler #40
2026-03-22 12:11:10 +00:00
Claude
1dcabad9e7 docs: Add comprehensive deployment guides for Holly
Created two detailed deployment guides for server-side infrastructure:

1. Server-Side Mod Deployment Guide (976 lines)
   - Complete mod installation walkthrough (LuckPerms, FTB suite, WorldEdit, etc.)
   - MySQL database setup instructions for Michael
   - Per-mod configuration with exact commands
   - Version-flexible Discord integration (1.16.5, 1.20.x, 1.21.x)
   - Testing checklist and troubleshooting
   - Accessibility-focused (Holly can follow step-by-step)

2. Subscription Automation Guide (1000+ lines)
   - Michael's pre-setup section (Discord bot deployment)
   - Complete Paymenter → Discord → LuckPerms automation
   - Discord role configuration
   - LuckPerms group creation (all 11 tiers)
   - Webhook integration setup
   - End-to-end testing procedures

Both guides designed for Holly to implement with Michael handling
backend setup (MySQL, Discord bot, SSL certificates).

Covers: Forge/NeoForge versions, subscriber tier automation,
cross-server permission sync via MySQL, whitelist automation.

Chronicler #40
2026-03-22 05:29:00 +00:00
Claude
b67770d2b9 docs: Add comprehensive Replay Mod timelapse recording guide
Complete beginner-friendly guide for recording Firefrost castle world spawn timelapse using Schematicannon and Replay Mod.

Features:
- Table of contents with time estimates for each phase
- Mandatory pre-recording test procedure
- Complete TWO TIMELINE system explanation (critical for beginners)
- Step-by-step keyframe pair workflow (Position + Time)
- Quick-reference cheat sheet (glossary + camera controls)
- 4 camera angle strategy optimized for symmetrical castle
- Automatic speed calculation explanation
- Troubleshooting section with common problems
- Complete checklists for each phase
- Post-production and multi-platform export guidance

Locations:
- docs/guides/replay-mod-timelapse-guide.md (general reference)
- docs/tasks/castle-timelapse/replay-mod-guide.md (task-specific)

Build specs: 150x150x200 castle, ~220k blocks
Purpose: Website hero video, social media content, community showcase

For children not yet born. 🔥❄️🏰
2026-03-20 19:56:22 +00:00
df1d7f3a32 Add CapCut tutorial for Meg - Coming Soon video creation
Print-friendly guide for The Emissary:
- 24 step-by-step instructions
- Troubleshooting section
- Pro tips and shortcuts
- Social media posting guide
- Mobile-optimized workflow
2026-02-15 16:46:52 -06:00