Objectives System
The Objectives System is a live tracking panel that lets your guild monitor active world objectives in real time — Orbs, Vortexes, and Resource Nodes. Each objective is displayed in a persistent Discord embed with a live countdown, the map it’s located at, and who reported it. Managers can also configure and manage everything from the web dashboard.
Table of Contents
- How It Works
- Requirements & Permissions
- Setting Up the Panel
- Adding an Objective
- Embed Preview
- Adjusting Timers
- Removing an Objective
- Auto-Archive (Expiry)
- Web Dashboard
- Display Language
- Embed Capacity Limit
- Commands Reference
- Troubleshooting
How It Works
Once set up, the Objectives System works like a live notice board inside Discord:
- A manager posts the panel in a channel using
/objectives panel. - Any member with Manage Server permission can add objectives using
/objectives add. - Each objective shows up in the embed instantly with a countdown timer and map name.
- When an objective’s time runs out, the bot automatically removes it from the panel and logs it.
- Managers can adjust timers or remove objectives at any time — from Discord or the web dashboard.
/objectives move to relocate it to a different channel.
Requirements & Permissions
| Action | Who can do it |
|---|---|
Create / move the panel (/objectives panel, /objectives move) |
Members with Manage Server or Administrator |
Add an objective (/objectives add) |
Any member |
View current objectives (/objectives view) |
Any member |
| Adjust timers (Discord button) | Members with Manage Server or Administrator |
| Remove an objective (Discord button) | Members with Manage Server or Administrator |
| Manage via web dashboard | Members with Manage Server or Administrator |
Setting Up the Panel
Go to the channel where you want the objectives panel to live and run:
/objectives panel
The bot will post the initial embed in that channel. Do not delete the message — all objectives are linked to it. If the message is accidentally deleted, run /objectives panel again in the same or a different channel and the bot will re-post it, recovering all previously stored objectives.
#objectives) so members always know where to look. Restrict posting permissions so only the bot can send messages there.
Moving the Panel
To move the panel to a different channel without losing any objectives, go to the new channel and run:
/objectives move
The bot will delete the old message, post a new one in the current channel, and automatically reassign all existing objectives to the new message.
Adding an Objective
Use the /objectives add command. It has the following options:
| Option | Description | Example |
|---|---|---|
| type | Type of objective. Options appear based on your server’s configured language. | Orb, Vortex, Ressource Fiber… |
| tier | Tier or color. Options change depending on the selected type (resources get Tier 7.4 / 8.4; orbs and vortexes get Green / Blue / Purple / Gold). | Tier 7.4, Blue, Gold… |
| map | The map or zone where the objective is active. Autocomplete is available — start typing the name to see suggestions from the Albion world map. | Brambleshore Hinterlands |
| hours | Hours until the objective ends (0–72). Use 0 if only using minutes. | 2 |
| minutes | Additional minutes on top of hours (0–59). Hours and minutes cannot both be 0. | 30 |
After submitting, the panel embed updates instantly showing the new objective with a live countdown and map location.
Embed Preview
Empty Panel
Panel with Active Objectives
Orb Gold at Brambleshore Hinterlands by @KaelirixEnds: in 45 minutes (Apr 20, 2026 15:15 UTC)
Vortex Blue at Stonemouth Southbluff by @SorvakEnds: in 2 hours (Apr 20, 2026 16:30 UTC)
Ressource Ore Tier 8.4 at Swiftsands Chaparral by @MyrrathEnds: in 3 hours (Apr 20, 2026 17:00 UTC)
Objective Line Format
Each objective in the embed follows this structure:
emoji Type Tier at Map Name by @DiscordUser
Ends: <relative time> (<absolute date/time UTC>)
Both timestamps are rendered by Discord automatically in each member’s own timezone. The relative part ("in 45 minutes") updates live as time passes.
Adjusting Timers
When at least one active objective exists, the Adjust Timers button appears on the embed. This lets any member extend or shorten a timer:
- Click Adjust Timers — a private dropdown appears (only visible to you).
- Select up to 10 objectives from the list.
- A modal asks for how many hours and minutes to add or subtract (use negative numbers to reduce time).
- The selected objectives are updated and the embed refreshes instantly.
Objectives adjusted via this button are marked as *(adjusted)* in the embed so the team knows the timer was manually changed.
You can also adjust timers in bulk from the web dashboard — useful for making precise changes with hours and minutes independently.
Removing an Objective
Click the red Remove Objective button on the embed. A private dropdown appears where you can select which objective to remove. The panel updates instantly after confirmation.
Objectives can also be deleted individually from the web dashboard using the trash icon next to each row.
Auto-Archive (Expiry)
The bot checks for expired objectives every time the embed is updated. An objective expires when the current time passes its end timestamp.
| What happens | Details |
|---|---|
| Objective is archived | It is flagged as archived in the database and removed from the live panel. |
| Embed is refreshed | The panel updates automatically to reflect the removal. |
| Log notification sent | A message is sent to the guild’s configured log channel listing the expired objectives. |
| Data is kept | Archived objectives are not deleted — they remain in the database for historical reference. |
Web Dashboard
The objectives panel can also be managed through the web dashboard at Dashboard → Objectives. The dashboard provides a full overview and several management tools not available through Discord commands alone.
Panel Status
Shows whether the panel is active and provides a direct link to jump to the embed in Discord.
Panel Settings
Allows editing:
- Panel Title — shown in the embed header as “Server Name — Title”.
- Panel Description — optional text shown above the objectives list.
- Display Language — choose between English and Spanish for type/tier names. See Display Language.
Saving these settings automatically refreshes the Discord embed.
Active Objectives Table
Shows all current active objectives with their map, end time, and who added them. From this table you can:
- ✏️ Edit — change type, tier, map, end time, or archive status.
- 🗑️ Delete — permanently remove the objective.
Adjust Timers (Dashboard)
The Adjust Timers button at the top of the active objectives table opens a modal where you can select multiple objectives and add or subtract hours and minutes from each independently.
Display Language
The Objectives System supports two display languages for type and tier names:
| Language | Type names | Tier names |
|---|---|---|
| English (default) | Orb, Vortex, Ressource Fiber, Ressource Hide, Ressource Ore, Ressource Wood | Tier 7.4, Tier 8.4, Green, Blue, Purple, Gold |
| Español | Orb, Vórtex, Nodo Fibra, Nodo Piel, Nodo Mineral, Nodo Madera | Tier 7.4, Tier 8.4, Verde, Azul, Morado, Dorado |
The selected language affects:
- The autocomplete options when running
/objectives addin Discord. - The type and tier names shown inside the Discord embed.
- The type and tier labels in the Edit Objective modal on the dashboard.
To change the language, go to the dashboard → Panel Settings → Display Language and save.
Embed Capacity Limit
Discord limits embed descriptions to 4,096 characters. The bot reserves 150 characters as a safety buffer, leaving 3,946 characters for the objectives list.
In the worst case scenario (longest possible map name + longest type/tier combination + adjusted tag), each objective uses approximately 176 characters, allowing a maximum of 22 objectives simultaneously. In practice, shorter names allow significantly more.
| Scenario | Max objectives |
|---|---|
| Worst case — longest map (24 chars) + longest type/tier (24 chars) + adjusted tag | ≈ 22 |
| Typical — average map (~12 chars) + average type/tier (~10 chars) | ≈ 35+ |
If a new objective would not fit in the embed, the bot will block the /objectives add command with a clear message asking you to remove or archive some objectives first.
The dashboard also shows a live capacity notice in the Active Objectives section, with a warning when you are approaching the limit.
Commands Reference
| Command | What it does | Who can use |
|---|---|---|
/objectives panel |
Posts the objectives panel in the current channel. If the message was deleted, re-posts it recovering all existing objectives. | Manage Server / Admin |
/objectives move |
Moves the panel to the current channel. Deletes the old message and preserves all objectives. | Manage Server / Admin |
/objectives add |
Adds a new objective to the panel. Requires type, tier, map, hours, and minutes. | Any member |
/objectives view |
Shows the current active objectives in a private reply (only visible to you). Does not require the panel to be visible. | Any member |
Troubleshooting
| Problem | Cause | Solution |
|---|---|---|
| The panel message was deleted | Someone manually deleted the embed message from Discord. | Run /objectives panel again. The bot re-posts the panel and restores all objectives automatically. |
| “Cannot add objective — embed character limit reached” | The embed description is full (4,096 character limit). | Remove or archive some existing objectives first to free up space. |
| The embed does not update after adding an objective | The bot may not have permission to edit its own message in the channel. | Check that the bot role has Send Messages and Embed Links permissions in the panel channel. |
| The autocomplete for map does not show results | The world map data is loaded from an external source and cached for 24 hours. It may have failed to load. | Try again after a few seconds. If the issue persists, restart the bot. |
| The type/tier names are still in English after changing to Spanish | The Discord command autocomplete updates at next use, and the embed updates on the next objective add or adjust. | Add or adjust any objective to force the embed to refresh with the new language. |
| The “Adjust Timers” or “Remove Objective” button does not appear | Buttons only appear when there is at least one active objective on the panel. | Add an objective first using /objectives add. |