Starboard
The channel where the messages a server applauds land, once they reach a chosen number of reactions.
In short
Members drop an emoji on a message. Once it has gathered enough of them, the bot posts a copy in a separate channel, which becomes the server's wall of best moments.
A starboard listens to a single emoji, ⭐ by default, and counts the reactions placed with it. As soon as that count reaches the threshold, 3 to start with, the bot copies the message into the channel set aside for it.
It all fits in four settings: the destination channel, the emoji it listens to, the threshold to reach and the list of watched channels. A server can run several of them, one per destination channel.
The threshold accepts 1 to 100 reactions. A value outside that range is not refused, it simply falls back to 3.
The copy is published once and for all: taking a reaction back does not remove it, and the counter shown never goes down. The settings are held in memory for 2 minutes, but the slightest change reloads them at once.
Four settings, and nothing more
A starboard is created in one command. With nothing specified, it listens to ⭐, fires at 3 reactions and watches the whole server.
| Setting | What it accepts | Default | What it decides |
|---|---|---|---|
| Destination channel | A text channel, or an announcement channel. | must be named | It receives the copies. A channel already taken refuses a second starboard. |
| Listened emoji | A native emoji, or a server emoji. | ⭐ | Only the reactions placed with that emoji are counted. |
| Threshold | A whole number from 1 to 100. | 3 | The number of reactions to gather before the copy fires. |
| Watched channels | A list of channels, or nothing at all. | empty | Empty, the whole server is watched. Otherwise, reactions outside the list do not count. |
The list of watched channels can only be set from the dashboard. A starboard created on Discord therefore listens to the whole server.
A reaction's journey
Between the emoji dropped and the message on the wall there are five steps, and each one can end the journey.
- The message's channel is in the watched list, or the list is empty.
- A native emoji is matched by its name, colour variants included.
- A server emoji is matched by its id, whatever its name.
- The count is the one Discord returns, not a tally kept by the bot.
- The message has not been copied yet, otherwise it goes through the update instead.
- The destination channel still exists and the bot can write in it.
- The counter shown only moves when it climbs: it never goes back down.
- An edit to the original message is carried over to the copy.
The bot does not re-read old messages: only a reaction placed while it is running can trigger a copy.
The settings are re-read at most every 2 minutes, unless a change reloads them right away. A freshly created starboard is therefore active at once.
What lands in the channel
The copy is not the original message: it is a card from the bot, carrying the gist of it and keeping a link back to the original.
⭐ x3
- Title
The listened emoji followed by the count reached. That count never goes back down.
- Author
The nickname and avatar of the original message's author.
- Content
The text of the message, carried over as is.
- Image
Only one image is carried over, and only if there is one.
- Origin
The channel the message comes from and the time it was written.
- Buttons
A link to the original message, and a second one to the quoted message when there is one.
When the original message replies to another one, a second button leads to the quoted message.
The commands
Manage server starboards · servers only
[channel]Destination channel for starred messages[emoji]Emoji used to star messages (default: ⭐)[threshold]Number of reactions needed (default: 3)[allowself]Allow authors to star their own messages
[channel]Destination channel of the starboard to delete