# MMR commands

#### :crown: **Admin only commands**

#### :bulb: **General command for everyone**

<mark style="color:red;">**Required**</mark> parameters will be in \[Square brackets]

<mark style="color:green;">**Optional**</mark> parameters will be in (Curly brackets)

***

### :crown: Enable or Disable MMR

```
/mmr toggle [mmr_type]
```

Choose from three modes:

| Option                 | Description                                                                                                                                     |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Disabled**           | Turns MMR off entirely. No skill-based matchmaking.                                                                                             |
| **Dynamic (Standard)** | The default skill-based matchmaking system. MMR adjusts based on the skill gap between teams — bigger upsets yield bigger swings.               |
| **Flat**               | A simple fixed-point system. Winners always gain a set number of points; losers always lose a set number of points, regardless of team balance. |

You can tell which mode is active by the label shown in the queue embed: **Dynamic MMR: ON** or **Flat MMR: ON**.

<div align="left"><figure><img src="/files/NbNPR6P8BU9ky1kAKJnU" alt=""><figcaption></figcaption></figure></div>

#### Flat MMR configuration

When you select **Flat**, a configuration modal opens where you set three values:

| Field            | Description                                              | Default |
| ---------------- | -------------------------------------------------------- | ------- |
| **Win Points**   | MMR awarded to every player on the winning team          | 30      |
| **Loss Points**  | MMR deducted from every player on the losing team        | 30      |
| **Starting MMR** | MMR new players begin with (and return to after a reset) | 150     |

{% hint style="info" %}
You can re-run `/mmr toggle Flat` at any time to update these values. The modal will pre-populate with your current settings.
{% endhint %}

Please join our [Support server](https://discord.gg/rT9cZD3tkA) if you need help deciding which MMR mode is right for your server.

***

## :crown: **Add or remove MMR for players**

```
/mmr add [member] [amount] [game] (queue_channel)

/mmr remove [member] [amount] [game] (queue_channel)
```

Manually increase or decrease the Matchmaking Rating (MMR) for specific players by a fixed amount.

{% hint style="info" %}
**Dynamic MMR note:** Manually adjusting a player’s MMR without changing their accuracy (sigma) can cause large MMR swings in subsequent games. Adjust gradually to avoid unbalanced matchmaking.

**Flat MMR note:** There is no accuracy factor in flat mode — adjustments are straightforward and take effect immediately with no side effects.
{% endhint %}

If you have set up a [unique leaderboard](/docs/quick-start/leaderboards-explained.md#creating-a-unique-leaderboard), you can add or remove MMR for a player in a specific (`queue_channel`) by selecting it.

***

## :crown: Set a player’s MMR

```
/mmr set [member] [new_mmr] [game] (queue_channel)
```

Manually set a player to an exact MMR value using this command.

{% hint style="info" %}
Players’ MMR cannot be set to above 9999, or below 0.

**Dynamic MMR note:** Setting a player’s MMR without adjusting their accuracy (sigma) can result in unexpected MMR gains or losses. Use this command carefully.

**Flat MMR note:** There is no accuracy factor — setting MMR is straightforward.
{% endhint %}

***

## :crown: Show player MMRs

```
/mmr show [preference]
```

Enable this command to display players' current MMR next to their names in the queue.

<div align="left"><figure><img src="/files/ujanEcsX1nM8AFYidkuN" alt=""><figcaption></figcaption></figure></div>

{% hint style="info" %}
If you play more than one game on your server (**LoL, Overwatch, Valorant, or Custom**), the MMR shown will be from your most **recent game** played.
{% endhint %}

***

## :crown: Adjust starting MMR

```
/mmr set_starting
```

By default, all players start at **833 MMR**. As players complete games, they build data for more consistent and balanced matchmaking. However, if skill levels vary significantly, adjusting the starting MMR can help provide more realistic matchmaking.

This doesn't change the players **current** MMR. This command determines what MMR players start with when MMR is [reset,](/docs/commands/reset-commands.md#crown-reset-mmr) or they've never played a Match.

### How it works:

### Important note

A player’s **personal starting MMR** always beats any starting MMR that comes from their Discord roles.

**Example 1**

1. Player 1 has a personal starting MMR of **1200** and also holds a role with a starting MMR of **900**. When the system resets, Player 1 will start at **1200**.

<div align="left"><figure><img src="/files/GafHRSJfpMnU4i91vVVz" alt=""><figcaption><p>Henry has personal starting MMR of 1200, and also has the @Silver role. Henry's MMR will always go back to his personal starting MMR.</p></figcaption></figure></div>

***

2. If a player has multiple roles, each with its own starting MMR, the system uses the role that sits higher in the Discord role hierarchy.

**Example 2**

Player 1 has @Silver (1000 MMR) above @Bronze (800 MMR) in the server’s role list. On reset, Player 1 will start at 1000 MMR (@Silver).

<div align="left"><figure><img src="/files/59NSHQeBD5YbZq1rBDTA" alt=""><figcaption><p>Silver is above Bronze in this Discord. If Player has both roles, they are reset to the Silver starting MMR</p></figcaption></figure></div>

***

**Instructions**

1. After running the command select the <mark style="color:green;">Game</mark> you'd like to apply the MMR changes for.

<div align="left"><figure><img src="/files/GafHRSJfpMnU4i91vVVz" alt=""><figcaption></figcaption></figure></div>

2. Select the Queue channel this should apply for. 3. If you pick a [Unique queue](/docs/quick-start/leaderboards-explained.md#creating-a-unique-leaderboard), the MMR applies only to that queue. 4. If you pick a [🌐 Global queue](/docs/quick-start/leaderboards-explained.md#-leaderboards-explained), the MMR applies to every queue that is marked 🌐 Global in your server.

<div align="left"><figure><img src="/files/5GxXQ0wwN1eZPB1K5dgM" alt=""><figcaption></figcaption></figure></div>

3. Select whether you want the Starting MMR to apply to <mark style="color:green;">Individuals</mark>, or everyone who has a specific <mark style="color:green;">Discord role</mark>.

<div align="left"><figure><img src="/files/F1DeMwNhMD9ly9RfERvJ" alt=""><figcaption></figcaption></figure></div>

4. In this example, we're going with a Discord role.

<div align="left"><figure><img src="/files/wx9qGpYFrwuhjHob1Kuh" alt=""><figcaption></figcaption></figure></div>

5. Enter the MMR amount you want. 6. You cannot set a players starting MMR Lower than 100, and Higher than 9000.

<div align="left"><figure><img src="/files/BYPP9uVdnAUQsodomtcE" alt=""><figcaption></figcaption></figure></div>

6. When you're done, you will get a confirmation, and another Embed will be sent incase you'd like to continue adding more roles.

<div align="left"><figure><img src="/files/JKRftCEo6HCAIM3XkKHS" alt=""><figcaption></figcaption></figure></div>

***

## :crown: Win/Lose Streak Multipliers

```
/mmr streak [game]
```

Reward players on hot streaks — or soften the blow for players struggling. The streak multiplier system boosts or reduces MMR changes based on how many consecutive wins or losses a player has.

### How it works

After each game, a player's streak counter updates:

* **Win** → win streak goes up by 1, lose streak resets to 0
* **Loss** → lose streak goes up by 1, win streak resets to 0

When a player's streak reaches a configured threshold, a multiplier is applied to their MMR change for that game. There are three tiers — the highest tier reached takes effect.

| Tier              | Default Threshold | Win Multiplier | Lose Multiplier |
| ----------------- | ----------------- | -------------- | --------------- |
| 🔥 **Tier 1**     | 3 in a row        | 1.25×          | 0.75×           |
| 🔥🔥 **Tier 2**   | 5 in a row        | 1.50×          | 0.60×           |
| 🔥🔥🔥 **Tier 3** | 8 in a row        | 2.00×          | 0.50×           |

{% hint style="info" %}
Win and lose streaks are tracked independently per player, per queue channel, and per game. Streaks reset automatically when a new season starts.
{% endhint %}

### Setting it up

Run `/mmr streak [game]` to open the streak settings menu.

1. **Select a queue channel** from the dropdown — settings are saved per queue channel.
2. **Toggle Win Streak** or **Toggle Lose Streak** to enable or disable each independently.
3. Use **Set Thresholds 🎯** to set how many consecutive wins or losses are needed to reach each tier. Thresholds must be in ascending order and at least 2.
4. Use **Set Win Multipliers 📈** to set how much extra MMR winners gain per tier. Must be between **1.0× and 9.99×**.
5. Use **Set Lose Multipliers 📉** to set how much MMR losers lose per tier. Must be between **0.01× and 1.0×** (lower = harsher penalty).
6. Click **Save 💾** to apply your settings.

{% hint style="info" %}
You can enable win streaks and lose streaks independently — for example, you could reward hot streaks without applying any extra penalty for losing runs.
{% endhint %}


---

# Agent Instructions: 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:

```
GET https://docs.inhousequeue.xyz/docs/commands/mmr-commands.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
