> For the complete documentation index, see [llms.txt](https://docs.rivalryze.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rivalryze.com/for-guild-admins/bot-commands-reference.md).

# Bot Commands Reference

The RivalRyze Bot supports **slash commands** in any channel where it has Send Messages permission. Type `/` in the chat and pick from the list, or use the commands directly.

This page documents every command, what it does, and who can use it.

## Command quick reference

| Command                     | What it does                                               | Who can use it                                        |
| --------------------------- | ---------------------------------------------------------- | ----------------------------------------------------- |
| `/help`                     | Lists all available commands.                              | Anyone                                                |
| `/invite`                   | Shows the bot's invite link for adding to another server.  | Anyone                                                |
| `/setup`                    | Registers the guild with RivalRyze.                        | Manage Server                                         |
| `/guild`                    | Shows guild info and stats for the current server.         | Anyone                                                |
| `/guild-settings`           | Opens the guild configuration menu.                        | Manage Server                                         |
| `/guild-permissions`        | Diagnoses whether the bot has the permissions it needs.    | Anyone (anyone can run; admins should act on results) |
| `/list_guilds`              | Lists every guild the bot is in (admin/internal).          | RivalRyze admins only                                 |
| `/profile [@user]`          | Shows a user's RivalRyze profile. Defaults to you.         | Anyone                                                |
| `/balance`                  | Shows your current gem wallet balance.                     | Anyone (private response by default)                  |
| `/leaderboard`              | Shows the global or guild leaderboard.                     | Anyone                                                |
| `/gem-leaderboard`          | Shows the gem earnings leaderboard for this server.        | Anyone                                                |
| `/set-active-guild`         | Sets the current server as your active guild on RivalRyze. | Anyone                                                |
| `/create-challenge`         | Creates a new guild Contest.                               | Anyone (configurable to Admins only)                  |
| `/game [game]`              | Shows info about a specific game.                          | Anyone                                                |
| `/game-achievements [game]` | Lists achievements for a game.                             | Anyone                                                |
| `/game-stats [game]`        | Shows your stats in a specific game.                       | Anyone                                                |
| `/completion [game]`        | Generates a shareable completion card for a game.          | Anyone                                                |
| `/discord-user [@user]`     | Shows Discord-side info about a user (debug/inspect).      | Manage Server                                         |
| `/user [@user]`             | Shows a user's Dota 2 profile (Dota-specific).             | Anyone                                                |

## Command details

### Account & identity

#### `/profile [@user]`

Shows a user's RivalRyze profile: total points, platform breakdown, recent achievements, active guild, Contest wins.

* With no argument, shows your own profile.
* With `@user`, shows that user's profile (if they're on RivalRyze).
* If the target isn't on RivalRyze, the bot offers them a signup link.

#### `/balance`

Shows your current gem wallet balance. Response is private (only you see it) by default.

#### `/set-active-guild`

Marks the current Discord server as your **active guild** on RivalRyze. This affects which guild's leaderboard you're prominently shown on, which guild appears next to your username, etc.

Useful when you're in multiple guilds.

### Guild commands

#### `/setup`

The one-time guild registration command. Walks the admin through registering the server with RivalRyze, picking an activity channel, and verifying permissions.

Requires **Manage Server** permission.

See [Initial Setup](/for-guild-admins/initial-setup.md).

#### `/guild`

Shows the current server's guild info: registration status, member count, top players, active Contests, total Contests hosted.

#### `/guild-settings`

Opens the interactive guild configuration menu. Lets admins change the activity channel, toggle post types, adjust defaults, sync with Discord, and verify permissions.

Requires **Manage Server** permission.

See [Guild Settings & Activity Feed](/for-guild-admins/guild-settings.md).

#### `/guild-permissions`

Diagnoses whether the bot has the permissions it needs. Anyone can run this; results are useful for admins.

See [Bot Permissions Checklist](/for-guild-admins/bot-permissions.md).

### Leaderboards

#### `/leaderboard`

Shows a leaderboard in the current channel. Options:

* **Scope:** `global` | `guild` (this server)
* **Window:** `all-time` | `season` | `month` | `week`
* **Platform:** `all` | `steam` | `psn` | `xbox` | `riot` | `battlenet`
* **Top N:** how many entries to show (default 10, max 25)

Defaults to guild + all-time + all platforms + top 10.

#### `/gem-leaderboard`

Shows the gem earnings leaderboard for this server's members. Same options as `/leaderboard` but filtered to gem totals.

Great for tracking who's been winning the most.

### Contests

#### `/create-challenge`

Creates a new guild Contest interactively. The bot walks you through Objective Mode, game, entry fee, duration, and access policy.

By default, anyone in the guild can use this command. Owners can restrict it to admins only via `/guild-settings → Contest Hosting`.

See [Hosting Guild Contests](/for-guild-admins/hosting-guild-contests.md).

### Games and stats

#### `/game [name]`

Looks up info about a specific game: cover art, genre, supported platforms, achievement / trophy count.

Use the autocomplete to pick a game from the search results.

#### `/game-achievements [game]`

Lists all achievements (or trophies) for a game. Useful for planning a Hunter Bounty ("what does it take to get this game's platinum?").

#### `/game-stats [game]`

Shows your personal stats in a specific game: achievements unlocked, completion percentage, playtime, your rarest achievements.

#### `/completion [game]`

Generates a shareable **completion card** — a visual image showing your achievements, completion %, and playtime in the game.

Drop the resulting card in `#general` to brag.

#### `/user [@user]` (Dota 2 specific)

Shows a user's Dota 2 profile: MMR, win rate, recent matches, signature heroes.

Requires the user to have linked their Steam account and have their Dota 2 profile public.

### Utility

#### `/help`

Lists every available command in a single message. Quick reference if you forget a command name.

#### `/invite`

Shows the official link to invite the RivalRyze Bot to another server.

#### `/discord-user [@user]`

Inspects a Discord user from a debugging perspective: their Discord ID, when they joined the server, what roles they have, whether they have a RivalRyze account.

Requires **Manage Server**. Useful for moderators tracking down account issues.

#### `/list_guilds` (admin-only)

Lists all guilds the bot is in. Restricted to RivalRyze staff for support and diagnostics.

## Slash command tips

* **Type `/` and start typing the command name** — Discord autocompletes.
* **Hover over a command parameter** in the autocomplete to see its description.
* **Many commands have optional arguments** — they take sensible defaults if you skip them.
* **Most responses are visible to the whole channel.** A few (like `/balance` and `/profile` for yourself) default to ephemeral (only you see them).

## Command not working?

If a command doesn't autocomplete or returns "Unknown integration":

1. The bot needs **Use Application Commands** permission in that channel.
2. Slash commands sometimes need a few minutes to register after the bot is added. Wait 5 minutes and try again.
3. Try kicking and re-adding the bot.

If a command runs but errors out:

1. Run `/guild-permissions` first — many command failures are permission issues.
2. Check the error message — the bot tries to give actionable guidance.
3. Contact [support](/help-and-faq/contact-support.md) if the error doesn't make sense.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.rivalryze.com/for-guild-admins/bot-commands-reference.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
