Appearance
Discord Commands
This page lists the commands available to members and Guild staff. Discord only shows commands that are registered for the current HAF Bot installation.
Reaction Rules
These commands require server-management access.
| Command | Parameters | Result |
|---|---|---|
/blocklist add | emoji | Adds a Unicode or server emoji to the Blocklist |
/blocklist remove | emoji | Removes an emoji from the Blocklist |
/blocklist list | None | Shows the server's blocked emojis |
Example: /blocklist add emoji:🤡
Timed Roles
These commands require server-management access. HAF Bot's highest Discord role must be above the role being assigned or removed.
| Command | Parameters | Result |
|---|---|---|
/timedrole add | user, role, duration | Gives the member a role until the duration expires |
/timedrole remove | user, role | Removes the role and its timed assignment |
/timedrole list | None | Lists active timed assignments |
Duration values accept one positive whole number followed by:
h— hours, such as24h;w— weeks, such as2w; orm— calendar months, such as1m.
Minutes, days, seconds, decimals, and combined values are not accepted.
Example: /timedrole add user:@Player role:@Muted duration:24h
Tickets
Ticket commands must be used inside an active Ticket channel.
| Command | Audience | Parameters | Result |
|---|---|---|---|
/ticket close | Member or staff | None | Closes the current Ticket |
/ticket request-close | Member or staff | None | Asks the opener to confirm closure |
/ticket claim | Staff | None | Assigns the Ticket to the staff member |
/ticket history | Staff | Optional user | Shows previous Tickets for the selected member, or the current opener when omitted |
/ticket reply | Staff | template | Previews and sends a saved Message Template |
/ticket add-user | Staff | user | Grants a Guild member access to the current Ticket |
/ticket remove-user | Staff | user | Revokes access previously granted to an added participant |
Clan Management
| Command | Audience | Parameters | Result |
|---|---|---|---|
/clan request | Eligible members | name, tag, description, focus, recruitment | Submits a Clan proposal for staff review |
/clan manage | Clan members | None | Opens the member's Clan controls |
Recruitment can be Applications open, Invite only, or Closed.
Events and Event Teams
Events require a paid plan. Participant and captain actions are private; Event Team IDs and proposal IDs are shown by /event manage and /event list-teams.
| Command | Result |
|---|---|
/event manage | Opens the current private Event management view |
/event list-teams | Lists Event Teams, openings, and readiness |
/event view-team | Shows one accepted Event Team roster |
/event leave | Withdraws from the Event |
/event leave-team | Leaves the Event Team but keeps the Event Signup |
/event create-team | Creates an Event Team in the selected Signup Group |
/event rename-team | Renames the captain's Event Team |
/event join-team | Requests to join an Event Team |
/event withdraw-request | Withdraws a pending join request |
/event accept | Accepts an invitation or captain-approved join request |
/event decline | Declines and blocks repeat invitations from that team |
/event open-requests | Opens captain-managed recruitment |
/event close-requests | Closes captain-managed recruitment |
/event reject-request | Rejects a pending join request |
/event invite | Invites a participant to an Event Team |
/event remove-member | Removes a member while preserving their Event Signup |
/event transfer-captain | Transfers captainship to an accepted Event Team member |
/event disband | Disbands the Event Team and returns members to the pool |
Player Count
These commands require server-management access. Player Count requires a paid plan.
| Command | Parameters | Result |
|---|---|---|
/playercount add | name, steam_host; optional steam_port, channel, alert_channel, refresh_interval_minutes, failure_threshold | Adds a Steam-query server |
/playercount remove | name | Removes a tracked server |
/playercount list | None | Lists configured servers |
/playercount show | None | Shows the latest player counts |
The query port must be between 1 and 65535. Refresh intervals can be 5 to 60 minutes. The failure threshold can be 1 to 20 consecutive failed checks.
Server Levels
Server Levels is a paid beta. Commands publish aggregate progression only; attendance history remains private.
| Command | Parameters | Result |
|---|---|---|
/serverlevel profile | Optional user | Shows Server XP, level, and next-level progress |
/serverlevel leaderboard | None | Shows the current-member Server XP leaders |
Only members who are currently in the Discord server appear. A targeted profile also requires the target to be a current member.
Player Link
Member-facing request commands post a link button in the current channel. Lookup, manual-link, count, setup, panel, and role-sync commands are staff tools.
Steam
| Command | Parameters |
|---|---|
/steamlink request | None |
/steamlink whois | Optional user or steamid |
/steamlink manual-link | user, steamid |
/steamlink unlink | Optional user; optional steamid when the member has multiple links |
/steamlink linkedcount | None |
Steam IDs must be 17-digit SteamID64 values.
Xbox
| Command | Parameters |
|---|---|
/xboxlink request | None |
/xboxlink whois | Optional user or xuid |
/xboxlink manual-link | user, xuid |
/xboxlink unlink | Optional user; optional xuid when the member has multiple links |
/xboxlink linkedcount | None |
PlayStation
| Command | Parameters |
|---|---|
/playstationlink request | None |
/playstationlink panel | None |
/playstationlink setup | Optional linked role, log channel, panel text/style, and relink settings |
/playstationlink whois | Optional user or psn_id |
/playstationlink manual-link | user, psn_id |
/playstationlink unlink | Optional user; optional psn_id when the member has multiple links |
/playstationlink linkedcount | None |
/playstationlink syncroles | None |
PlayStation links use a self-reported PSN Online ID unless a staff member creates the link manually.
Evidence Vault
These actions require Guild Administrator, Manage Guild, or a configured Evidence Vault access role.
| Command or action | Parameters | Result |
|---|---|---|
| Apps → Hide Evidence | Select a Discord message | Stores the message, deletes the original when possible, and posts a placeholder |
/evidence-vault search | At least one of user, source_text, or configured field values | Searches records in the current Guild |
/evidence-vault amend | record_id, action, identifier | Adds or removes a subject identifier |
Common Problems
- Command is missing: Confirm the feature is enabled and the bot commands have been synced for the server.
- Missing access: Use the required staff role or Discord permission.
- Role cannot be assigned: Move HAF Bot above the target role and grant Manage Roles.
- Invalid Timed Role duration: Use a single hours, weeks, or months value such as
12h,2w, or1m. - Ticket command fails: Run it inside an active HAF Ticket channel.
- Lookup returns nothing: Check the identifier format and confirm the member is linked in the current Discord server.
