Server Setup
The general-purpose settings that don't belong to any one feature - prefix, cosmetics, welcome/leave messages, autorole, role links, new member pings, and word/emoji auto-replies.
Prefix
$prefix
Also /prefix show. Opens a panel: Change Main Prefix (needs
Manage Guild), Add Extra Prefix and
Remove Extra Prefix (need Administrator, up to 2 extra
prefixes at once - every prefix works for every command). Text equivalents still work too:
$prefix change <prefix>, $prefix add <prefix>,
$prefix remove [prefix].
Cosmetics
$customize
Also /customize. Changes how Pixie appears in this server only: nickname, bio, avatar, banner, and embed color - purely cosmetic.
Welcome & leave messages
$welcomemessage
$leavemessage
$testwelcomes
Also $welcome/$leave (aliases), and /greetmessage welcome/
leave/testwelcomes. Each opens its own panel for the channel, message, and
(when sending in an embed) a Set Image button for a direct image URL. Placeholders:
<user>, <username>, <server>,
<count>. $testwelcomes sends both right now using the current config,
without waiting for an actual join/leave.
$welcomemessage setmsg [message]/$leavemessage setmsg [message] (prefix
only) sets the message directly - paste plain text or a whole script
in one command, no need to click through the panel at all. Omit the message to just view the current
one; use reset to reset it. $welcomemessage preview/$leavemessage
preview post a button that shows the current message privately (only you see it) when clicked,
and $welcomemessage test/$leavemessage test send the real thing end-to-end in
the configured channel - same idea as $testwelcomes above but one at a time instead of
both together.
A few more placeholders reference who invited the new member, if Pixie was able to tell:
<inviter_ping> pings them, <inviter_noping> shows the same real
mention but doesn't notify them, and <inviter_invites_count> shows how many members
they've invited in total (including this one). All three only work for an actual tracked invite link
created by a real member - joins via the server's vanity URL, ones Discord doesn't give attribution
for, or ones from an invite a bot created, show vanity in bold instead for
any of them.
To only show a line at all when there's a real inviter, wrap it in
[ifinvitedbyuser](...) - the text inside only appears for a tracked invite-link join and is
skipped entirely otherwise (no "vanity" filler text left behind). [ifnotinvitedbyuser](...)
is the opposite - only shows for a vanity/unknown/bot-invite join. Use both together to have a
completely different message for each case. For example, setting the welcome message to:
Welcome <user> to <server>! [ifinvitedbyuser](They were invited by <inviter_noping>, who now has <inviter_invites_count> invites!)[ifnotinvitedbyuser](Glad you found us!)
posts "Welcome @NewPerson to Shikyo! They were invited by @SomeMember, who now has 7 invites!" when someone used a real invite link (without pinging SomeMember), and "Welcome @NewPerson to Shikyo! Glad you found us!" for a vanity-URL, untracked, or bot-created-invite join - each bracketed block only shows for its own case, never both, and never neither.
Autorole
$autorole
Also $autoroles, /autorole. Panel with On/Off, Add Role, and Remove Role - supports multiple roles, all given out on every join.
Role links
$rolelink add <trigger role> <linked role>
$rolelink remove <trigger role> <linked role>
$rolelink list
Also $rolelinks/$linkrole, /rolelink add/remove/list.
Getting the trigger role auto-grants the linked role, and it stays enforced - removed manually, it's
restored as long as a trigger role is still held; removing the last trigger removes it for good. Links
can chain, up to 10 per trigger.
New member ping
$newmemberping
$newmemberping <#channel>
$newmemberping add/remove <#channel>
Also $nmp, $poj. Pings new members in the configured channel(s) then immediately deletes the ping - just enough to trigger a notification without leaving clutter behind. A channel being added is what turns it on for that channel - no separate toggle. Running it with no arguments shows the current channels; running it with a channel toggles that channel on/off.
Auto responder & reactor
$autoresponder add [--strict] <word> <response>
$autoreactor add <word> <emoji>
$autoresponder/$autoreactor remove/list
Auto-responder replies (as a real reply) whenever a word/phrase is said; --strict requires
an exact match instead of matching anywhere in the message. Auto-reactor reacts with an emoji instead
of replying. Adding a word that already exists updates it rather than duplicating it.
Other
$weekstart [day]
Needs Manage Guild. Sets which day "weekly" leaderboards/rewards reset on across chat XP, VC XP, and message rewards (default Monday, 00:00 UTC) - most servers never need to touch this.
$resetserver
Permanently wipes every bit of this server's data - settings, prefix, word filter, XP/leveling, message rewards, webhooks, auto-kick-bans, AFK status, all of it. Three separate confirmations (30s, then 20s, then 15s), and it cannot be undone once the last one goes through.