Module Configuration
The main dashboard view is a module (cog) grid — tiles representing individual bot features. From here you enable, disable, and configure each module.
Access
Available to any user who can log into the panel (ADMINISTRATOR or Dashboard Users).
Module Grid
After selecting a server, you'll see a tile grid divided into categories:
| Category | Modules |
|---|---|
| Administration | Settings, Moderation |
| Utilities | Logs, Translation, Message Builder |
| Community | Welcome, Reaction Roles, Suggestions, Polls, Duel Reminder, Schedule Events |
| Dark War Survival | Alliances, Presidents, Armory, APC |
Each tile contains:
- Module name and category
- On/off toggle — enables/disables the module
- "Config required" info — if the module requires an API key
- Short description of module functionality
- "Edit" button — opens the detailed configuration panel
Bot Status
In the top-right corner above the grid, the bot status is displayed:
- Online (green dot) — bot is connected to the server
- Offline (gray dot) — bot is unavailable
Enabling and Disabling Modules
Click the toggle on a module tile:
- Purple = enabled
- Gray = disabled
After toggling a module, the bot within a few seconds:
- Syncs slash commands — they will appear or disappear from the Discord command list
- Starts or stops responding to events associated with that module
The "Settings" tile has no toggle — it's always active because it contains essential server settings.
Module Configuration Panel
Clicking "Edit" on a tile opens the detailed configuration panel. A slide animation will take you to the edit view.
Navigation
- "Back" button (left arrow) — return to the module grid
- If you have unsaved changes, going back is blocked — the UnsavedBar will flash red
Types of Settings in Panels
Depending on the module, the configuration panel may contain:
| Element | Description |
|---|---|
| Channel selection (dropdown) | Text channel where the module operates |
| Role selection (multi-select) | Roles with permissions for the module |
| Color (picker + hex) | Module embed color |
| Toggles | Enabling sub-features |
| Text fields | Message configuration, tags, etc. |
| Visual embed editor | Building embeds with live preview |
| Card grid | Reaction Roles configurations, logs, alliances |
Module Command List
At the bottom of each module's configuration panel (if it has commands), a list of its slash commands is displayed in a two-column format:
- Command name (purple, code style)
- Command description (gray)
Save Pattern (UnsavedBar)
All configuration panels use a consistent save system:
- You make changes to settings
- The "Unsaved changes" bar appears at the bottom of the screen
- You have two buttons:
- Save — saves changes to the database
- Cancel — reverts all changes to the last saved state
- After a successful save, the bar animates with a gradient checkmark (orange→purple) and disappears
Behavior When Trying to Leave
If you try to return to the module grid ("Back" button) with unsaved changes:
- Navigation is blocked
- The UnsavedBar flashes red
- The screen slightly shakes
You must first save or cancel changes.
The panel compares the current form state with the last saved state (JSON.stringify). Any difference — even an extra space — activates the bar.
Modules with Dedicated Panels
Each module has its own panel tailored to its needs:
| Module | Panel Specifics |
|---|---|
| Logs | Log tile grid — each with toggle, channel, and color |
| Welcome | Embed editor (welcome + goodbye) + DM message |
| Moderation | Moderation roles + warning threshold |
| Translation | API key (DeepL/Groq) |
| Reaction Roles | Configuration card grid + auto-redeploy |
| Suggestions | Channel + colors + permissions |
| Polls | Color + duration + permissions |
| Message Builder | Template sidebar + visual embed editor |
| Alliances | Alliance creation/editing + member list |
| Presidents | President system configuration |
| Armory | Armory rotation configuration |
| Duel Reminder | Duel reminder configuration |
| Schedule Events | Event CRUD + instances |
| APC | APC power ranking with leaderboard channel |
In the Logs module, you cannot enable a log category without selecting a target channel. Attempting to save with an enabled log without a channel will cause:
- Red border on the channel field
- Toast error message
- Save will be blocked