> For the complete documentation index, see [llms.txt](https://visionstore.gitbook.io/visionstore-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://visionstore.gitbook.io/visionstore-docs/scripts/boxing-creator/configuration/match-flow-and-judges.md).

# Match flow and judges

Rounds, timers, ring-outs and how the three judges score.

## Timers and rounds

```lua
Config.Match = {
    Rounds = { Min = 1, Default = 3 },   -- the max comes from each ring's rules (maxRounds)
    RoundTimes = { 60, 90, 120, 180 },   -- seconds, chosen in the lobby
    DefaultRoundTime = 90,
    BreakTime = 12,           -- rest between rounds (seconds)
    IntroTime = 7,            -- walk-out / tale of the tape
    CountdownTime = 3,        -- 3, 2, 1, FIGHT
    ResultTime = 11,          -- result screen before the ring resets
    RingOutSeconds = 6,       -- outside the ropes this long during a round = disqualified
    LobbyLeaveDistance = 35.0,-- a lobby fighter who walks this far away is removed
    RestoreHealth = true,     -- give back pre-fight health and armour afterwards
}
```

## How a fight can end

| Ending         | When                                                                                               |
| -------------- | -------------------------------------------------------------------------------------------------- |
| **K.O.**       | The referee's count reaches 10, or the knockout perk lands                                         |
| **T.K.O.**     | The third knockdown of the fight                                                                   |
| **Decision**   | After the last round, by the judges' cards (unanimous, majority, split or draw)                    |
| **Ring-out**   | A fighter stays outside the ropes for `RingOutSeconds` during a round                              |
| **Towel**      | A fighter holds **Backspace** (or types `/towel`) to give up                                       |
| **Forfeit**    | A fighter disconnects. Bets are refunded                                                           |
| **No contest** | An admin stops it, or someone outside the fight uses a weapon on a fighter. Everything is refunded |

## The judges

Three judges score every round **10-9** to the winner of the round (**10-10** when it's even). Each one looks at something different:

```lua
Config.Judges = {
    EvenDamage = 4,   -- judge 1: damage dealt. Within 4 HP = even
    EvenLanded = 2,   -- judge 2: clean hits landed. Within 2 = even
    EvenControl = 2,  -- judge 3: hits landed + power punches. Within 2 = even
}
```

A knockdown costs the downed fighter an extra point on every card (**10-8**).

{% hint style="info" %}
Raise the `Even...` values for more draws and closer cards. Lower them so every small edge wins the round.
{% endhint %}

## Controls blocked in the ring

```lua
-- Off for fighters during a match: vehicles, weapons, cover, stealth takedowns.
Config.DisabledControls = { 23, 75, 36, 37, 44, 47, 58, 157, ..., 199 }

-- GTA's attack keys: off before the bell, between rounds, during a count and after the result.
Config.MeleeControls = { 24, 25, 140, 141, 142, 143, 257, 263, 264 }
```


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://visionstore.gitbook.io/visionstore-docs/scripts/boxing-creator/configuration/match-flow-and-judges.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
