---
title: "Strikes"
description: "How Asphyxia handles suspicious behaviour that isn't proof of cheating on its own."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.asphyxia.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Strikes

Not every detection is conclusive. Some things a cheat does can also happen
legitimately — a laggy client can look like a teleport, a scripted stunt can
look like a vehicle boost. Banning on the first sign of those would punish
innocent players.

Strikes are Asphyxia's answer. A strike is a recorded warning: it doesn't
disconnect anyone, but it counts, and enough of them in one session ends in a
ban.

## Severity

Every strike is filed as **low**, **medium**, or **high**, depending on how
strongly it points at cheating. Severity controls two things — how many it
takes to reach a ban, and how much it raises the player's risk score.

| Severity | Strikes to ban | Risk added |
| :--- | :--- | :--- |
| Low | 5 | +2 |
| Medium | 3 | +5 |
| High | 2 | +10 |

A single high-severity strike is a strong signal. Five low-severity ones mean a
pattern rather than an accident.

## They reset each session

Strike counts are **per session**. When a player disconnects, their running
count goes back to zero.

That's deliberate. The counter exists to catch someone cheating *right now* — a
player who tripped one detection months ago shouldn't be one step from a ban
today.

The strikes themselves are kept permanently. You'll find every one on the
dashboard's [Strikes page](/website/strikes), where you can see a player's full
history and mark old entries as resolved.

## Risk score

Alongside the session counter, every strike raises a permanent **risk score**
on the player's record — 0 to 100, and it never decays.

Risk score doesn't punish anyone by itself. It's a sorting tool: open the
[Players page](/website/players), sort by risk, and the accounts worth
reviewing are at the top. A player at 60 has tripped a lot of detections over
time, even if they were never quite bad enough to ban.

## Reaching the limit

When a player hits the strike limit for any severity, Asphyxia bans them
automatically with the reason **Maximum Strikes Reached**, and the ban details
record which severity tipped them over. From there it's an ordinary ban — it
appears in your ban list, on the dashboard, and in your Discord webhook.

## Issuing strikes yourself

From the server console:

```bash
asphyxia strike 12 high Suspected aimbot
```

From another resource:

```lua
exports.asphyxia:strikePlayer(source, "Suspicious behaviour", "Details here", 2)
```

Both are covered in more detail under [Commands](/anticheat/commands) and
[Exports](/anticheat/exports).

## Exempting a player

If a detection keeps striking someone it shouldn't — a developer testing
something, or a scripted event that trips a check — whitelist them against it
rather than turning the detection off for everyone. See
[Whitelisting](/anticheat/whitelisting).

Source: https://docs.asphyxia.dev/anticheat/strikes/index.mdx
