# Matchmaking System

![In-game Matchmaking Screen](/files/uqjL63rkTOEFYWnpSd6z)

The matchmaking process pairs users with teams of similar overall Skill ratings for online PvP matches.

Users must have enough [**Energy**](/game-mechanics-and-features/energy.md) to enter matchmaking. If this is true, they can select the relevant game mode to find match from the in-game main menu.

Currently, PvP pairing is based on an elo rating, which is calculated using the formula **`Base Skills + y * Added Skills`**, where y is currently 1.5 i.e. Added Skills are valued at 1.5x more than Base Skills in the current 'elo' formula.

By default, matchmaking attempts to pair users whose teams' elo ratings are within 30 of each other.

While a user waits to be paired with an opponent, their matchmaking standards adjust based on the table below.

|                                         |                        |
| --------------------------------------- | ---------------------- |
| **Time Spent in Matchmaking (Seconds)** | **Max Elo Difference** |
| 0                                       | 30                     |
| 15                                      | 50                     |
| 30                                      | 75                     |
| 45                                      | 100                    |
| 60                                      | 150                    |
| 90                                      | 200                    |
| 120                                     | 300                    |
| 180                                     | 400                    |
| 240                                     | 500                    |
| 300                                     | 700                    |

While users are waiting in matchmaking, they may cancel matchmaking by clicking the cancel button to return to the main menu.


---

# 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.cyball.com/game-mechanics-and-features/matchmaking-system.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.
