Commands
Every slash command provided by LW Alliance Helper, grouped by feature. Most commands require the configured leadership role and the leadership channel; the various /setup_* commands also accept anyone with server Administrator permission. Start with /setup if the bot hasn't been configured yet. 💎 marks Premium-only features (unlock with /upgrade).
🗂️ Your alliance's data lives in your own Google Sheet — see Where Your Data Lives for details.
/help.⚙️ Core Setup
Configure the bot for your server. Run these first before using any other features.
/setup— Configure roles, leadership channel, timezone, and Google Sheet./view_configuration— Show every configured setting across all setup wizards in a single embed./setup_reset— Clear server configuration and start over.
📣 Event Announcements
Schedule recurring events (Plague Marauder, Zombie Siege, or anything else) and post drafts to leadership for approval before announcing.
/setup_events— Configure events, announcement channels, draft posting time, and the 5-minute warning./events [date]— Open the event editor for today or a specific date (e.g.April 5or4/5)./events_log— Show approved event posts from the past 7 days.
🚂 Train Schedule
Track who is assigned the alliance train each day and optionally generate a personalised ChatGPT prompt for that member's announcement blurb.
/setup_train— Configure the train tab, blurb generation, reminders, and the 💎 Premium DM-to-assignee body (with{name}placeholder)./train— View the schedule. Inline buttons let you Add, Update, Generate Prompt, or Clear entries. Add and Update will offer to run the blurb wizard if blurb generation is enabled./train_log [date]— Show recent prompt log entries (defaults to the past 14 days; pass a date to look up a specific entry)./train_addbirthdays— Manually run the birthday check now and add upcoming birthdays to the schedule.
🎂 Birthdays
Read birthday data from your Google Sheet. The bot can post announcements in Discord and auto-add members to the train schedule on their birthday.
/setup_birthdays— Configure birthday tracking, train integration, Discord announcements, and the 💎 Premium per-member DM body (with{name}placeholder)./birthdays— Show upcoming birthdays in the next 14 days.
⚔️ Desert Storm
Generate ready-to-copy team mail drafts and log participation each week. The draft flow walks through Pick Team → Pick Time → Mail Template (Use as-is or Edit) → Preview, with a final Post & Copy button that posts the mail to your configured post channel and prints a copyable code block in leadership. Setup Step 6 is an opt-in participation tracker where you define what you want to log each week (text, yes/no, numeric, roster names — plus 💎 single-select, multi-select, and date for Premium).
/setup_desertstorm— Configure teams, sheet tab, log channel, post channel, mail template, and (optional) participation tracking with custom questions./desertstorm— Show current rosters and the active mail template./desertstorm_draft— Generate a Desert Storm mail draft for Team A or Team B./desertstorm_participation— Walk through your configured participation questions for this week's storm./desertstorm_log [date]— View a Desert Storm log entry (defaults to today). Free tier sees the 4 most recent entries; 💎 Premium has unlimited lookback./desertstorm_remind— 💎 DM every roster member to participate in this week's storm. The DM body is alliance-customisable in/setup_desertstormwith{name}as a placeholder.
🏜️ Canyon Storm
Same workflow as Desert Storm — mail generation with Post & Copy, configurable participation logging, and reminders.
/setup_canyonstorm— Configure teams, sheet tab, log channel, post channel, mail template, and (optional) participation tracking with custom questions./canyonstorm— Show current rosters and the active mail template./canyonstorm_draft— Generate a Canyon Storm mail draft for Team A or Team B./canyonstorm_participation— Walk through your configured participation questions for this week's storm./canyonstorm_log [date]— View a Canyon Storm log entry (defaults to today). Free tier sees the 4 most recent entries; 💎 Premium has unlimited lookback./canyonstorm_remind— 💎 DM every roster member to participate in this week's storm. The DM body is alliance-customisable in/setup_canyonstormwith{name}as a placeholder.
📋 Survey
Collect member statistics through a private Discord thread survey. Responses are saved directly to your Google Sheet and leadership is notified for each submission. Premium alliances can configure multiple named surveys (each with its own channel, intro, and reminder body) plus advanced question types (multi-select, date) and min/max bounds on numeric questions.
/setup_survey— Configure the default survey: questions, channels, sheet tabs, and intro message./survey— View configured survey(s). 💎 Premium tier renders a list of every survey plus Add / Edit / Remove buttons — the single surface for managing multiple surveys./survey_post— Post (or repost) the answer button. Premium guilds with multiple surveys are prompted to pick which one./survey_remind— Hub command. Send a reminder right now, or set up a recurring schedule (daily / weekly). Free tier delivers reminders via channel post; 💎 Premium adds DM-via-Member-Roster delivery.
📈 Growth Tracking
Take periodic snapshots of your members' stats to track alliance growth over time. Each snapshot also classifies every member's percent change into a bucket — Increased, Steady, Low, None, or Decline — written to a separate Growth Breakdown sheet tab so you can see who is climbing and who is stalled at a glance.
/setup_growth— Configure source tab, metrics to track, and snapshot schedule./setup_growth_breakdown— 💎 Configure the breakdown auto-post channel, bucket filter, custom thresholds, and custom bucket labels. The breakdown computation ships on every tier; this command unlocks the customisation layer./growth— Show growth status with options to run a snapshot, view the most recent breakdown, or edit config. The 📊 See most recent Breakdown button reads the breakdown tab and renders an ephemeral embed grouped by metric and bucket.
🌟 Shiny Tasks
Daily auto-post listing every Last War server in your alliance's transfer range that has shiny tasks today. Free for every alliance. No more checking the site by hand and copy-pasting the list into your in-game mail.
/setup_shiny_tasks— Configure the announcement channel, server range (your transfer-eligible window), post time, and message template.
💎 Member Roster Sync
Premium-only. Writes every member's Discord ID and name to a sheet tab so DM-based features (birthday DMs, train DMs, storm reminders, scheduled survey reminders, auto-mention) can find members by name. Most alliances configure this once and let auto-sync keep it current.
/setup_members— 💎 Configure the roster tab, optional role filter (member-role-only vs every non-bot), and whether to auto-resync when members join, leave, or change roles. Runs an initial sync at the end./sync_members— 💎 Manually rebuild the roster sheet now. Useful after a bulk role change or if auto-sync is off.
📦 Data Portability
Move your alliance's bot config to a new Discord server, or snapshot it as a backup you can restore later. Your alliance's data always lives in your own Google Sheet; these commands carry the bot-side wizard answers (templates, channels, schedules, custom questions) alongside it. Free for every alliance.
/export_config— Pick the categories you want to export (core setup, events, DS, CS, train, birthday, growth, surveys, shiny tasks, member roster) and the bot DMs you a JSON file with the saved config from those categories. Categories with no saved data don't appear in the picker./import_config— Attach an export JSON to apply it to this server. The bot walks a guided remap wizard for every channel and role referenced in the export — pick the new equivalent, keep the current value, or skip — then applies per category with a final summary embed naming what landed and what was skipped.
🔧 Utilities
/cancel— Cancel any active wizard or log session and reset wizard state./help— Show this command list inside Discord (always available, ephemeral)./donate— 💖 Show optional tip-jar links to support the bot's hosting./upgrade— 💎 Open Discord's subscription dialog and pin Premium to this server once checkout completes./premium_assign— 💎 Move your Premium subscription to this server. A subscription unlocks Premium in one server at a time; this is how you switch./premium_status— 💎 Show your subscription state and the server it's currently assigned to./premium_unassign— 💎 Release the assignment without canceling the subscription. The server reverts to Free; the subscription is still yours to reassign elsewhere.