Giveaways
Post a giveaway members enter with a button click, with winners picked automatically when it ends.
Starting one
$giveaway <duration> <winners> <prize>
Also $gw, $gstart, /giveaway start. E.g.
$giveaway 1h 1 Nitro Classic. Members click Enter Giveaway to join;
winners are picked automatically the moment it ends. Add --hostedby @member anywhere in
the prize text to credit someone else as the host instead of you (shown on the giveaway embed) -
handy when you're posting it on behalf of whoever's actually supplying the prize.
Managing one
| Command | Permission |
|---|---|
$giveaway end <message id> | Manage Guild |
$giveaway reroll <message id> [count] | Manage Guild |
$giveaway rerollrequire ... (also rerollreq, rerollrequirement) | Manage Guild |
$giveaway requiredrole <@role> <message id> (also reqrole) | Manage Guild |
$giveaway list | Open to anyone |
requiredrole can be run more than once on the same giveaway to add several roles -
having any one of them is enough to enter, it's not required to have all of them. For
end/reroll/rerollrequire/requiredrole, reply to
the giveaway message instead of typing its ID if that's easier.
Requirement-based reroll
Plain reroll just picks a fresh winner at random from everyone who entered. If you need
the new winner to actually meet some bar - enough activity, enough invites, enough XP -
rerollrequire does a live reroll instead: it keeps drawing one entrant at a
time and checking them against every requirement you gave, discarding anyone who doesn't fully
qualify, until it's found however many winners you asked for.
$giveaway rerollrequire [message id or link] count=<n> <requirement>=<amount> [...]
Or reply to the giveaway message and leave off the id/link entirely. Every requirement given must be met - it's an AND, not an OR. For example:
$giveaway rerollrequire count=2 invites_alltime=1 messages_7d=1500
This rerolls until it finds 2 entrants who both have at least 1 all-time invite and at least 1500 messages in the last 7 days.
| Requirement | Checks |
|---|---|
messages_week | Message count, current calendar week |
messages_month | Message count, current calendar month |
messages_<N>d | Message count over a custom rolling window, e.g. messages_7d, messages_14d - any day count up to 90 |
invites_week | Invites, current calendar week |
invites_month | Invites, current calendar month |
invites_alltime | Invites, all-time |
xp_month | Chat XP earned this calendar month |
xp_alltime | Chat XP, all-time |