# commands

All commands use the prefix configured in `.env` (default: `!`)

***

## Ban System

### !ban

Ban a player from the server.

{% code title="Usage" %}

```bash
!ban [player_id/license] [duration] [reason]
```

{% endcode %}

Duration formats:

| Format | Example | Duration   |
| ------ | ------- | ---------- |
| `s`    | `30s`   | 30 seconds |
| `m`    | `15m`   | 15 minutes |
| `h`    | `12h`   | 12 hours   |
| `d`    | `7d`    | 7 days     |
| `w`    | `2w`    | 2 weeks    |
| `M`    | `3M`    | 3 months   |
| `y`    | `1y`    | 1 year     |

Examples:

```bash
!ban 1 7d Cheating
!ban license:abc123 30d Ban evading
!ban 5 1h Toxic behavior
```

***

### !unban

Remove a ban from a player.

{% code title="Usage" %}

```bash
!unban [ban_id/license]
```

{% endcode %}

Examples:

```bash
!unban ABC12345
!unban license:abc123
```

***

### !bans

Check active bans.

{% code title="Usage" %}

```bash
!bans                    # List all active bans (last 20)
!bans [ban_id/license]   # Check specific ban
```

{% endcode %}

***

## Warning System

### !warn

Give a warning to an online player.

{% code title="Usage" %}

```bash
!warn [player_id] [reason]
```

{% endcode %}

Examples:

```bash
!warn 1 Breaking server rules
!warn 5 VDM
```

***

### !warnings

Check player warnings. Alias: `!warns`

{% code title="Usage" %}

```bash
!warnings [player_id/license]
```

{% endcode %}

***

### !unwarn

Remove a specific warning.

{% code title="Usage" %}

```bash
!unwarn [warning_id]
```

{% endcode %}

***

### !clearwarns

Clear all warnings for a player.

{% code title="Usage" %}

```bash
!clearwarns [player_id/license]
```

{% endcode %}

***

## Player Management

### !players

View all online players with details.

{% code title="Usage" %}

```bash
!players
```

{% endcode %}

Returns: Player ID, name, ping, coordinates, Discord mention

***

### !player

View detailed player information.

{% code title="Usage" %}

```bash
!player [player_id]
```

{% endcode %}

Returns:

* Name, ID, Ping, Health, Armor
* Position, Vehicle
* Discord, License, Steam, FiveM identifiers
* IP (spoilered for privacy)
* Token count

***

### !kick

Kick a player from the server.

{% code title="Usage" %}

```bash
!kick [player_id] [reason]
```

{% endcode %}

***

### !kickall

Kick all players from the server.

{% code title="Usage" %}

```bash
!kickall [reason]
```

{% endcode %}

***

## Health & Status

### !heal

Heal a player to full health.

{% code title="Usage" %}

```bash
!heal [player_id]
```

{% endcode %}

***

### !revive

Revive a dead player.

{% code title="Usage" %}

```bash
!revive [player_id]
```

{% endcode %}

***

### !freeze

Freeze a player in place.

{% code title="Usage" %}

```bash
!freeze [player_id]
```

{% endcode %}

***

### !unfreeze

Unfreeze a player.

{% code title="Usage" %}

```bash
!unfreeze [player_id]
```

{% endcode %}

***

### !crashplayer

Crash a player's game.

{% hint style="danger" %}
Use with extreme caution — this forcibly crashes the player's game.
{% endhint %}

{% code title="Usage" %}

```bash
!crashplayer [player_id]
```

{% endcode %}

***

## Economy (Requires Framework)

### !givemoney

Give money to a player.

{% code title="Usage" %}

```bash
!givemoney [player_id] [type] [amount]
```

{% endcode %}

Types:

* `cash`, `bank`, `black_money` (ESX)
* `cash`, `bank`, `crypto` (QB)

Examples:

```bash
!givemoney 1 cash 5000
!givemoney 1 bank 10000
```

***

### !giveitem

Give an item to a player.

{% code title="Usage" %}

```bash
!giveitem [player_id] [item_name] [amount]
```

{% endcode %}

Examples:

```bash
!giveitem 1 bread 5
!giveitem 1 lockpick 1
```

***

### !givecar

Spawn a vehicle for a player.

{% code title="Usage" %}

```bash
!givecar [player_id] [model]
```

{% endcode %}

Examples:

```bash
!givecar 1 adder
!givecar 1 police
```

***

## Jobs & Permissions (Requires Framework)

### !setjob

Set a player's job.

{% code title="Usage" %}

```bash
!setjob [player_id] [job_name] [grade]
```

{% endcode %}

Examples:

```bash
!setjob 1 police 3
!setjob 1 mechanic 0
```

***

### !setgroup

Set a player's permission group.

{% code title="Usage" %}

```bash
!setgroup [player_id] [group]
```

{% endcode %}

Examples:

```bash
!setgroup 1 admin
!setgroup 1 superadmin
```

***

## Teleport

### !bring

Teleport a player to another player.

{% code title="Usage" %}

```bash
!bring [player_id] [target_id]
```

{% endcode %}

Example:

```bash
!bring 1 5  # Teleports player 1 to player 5
```

***

### !teleport

Teleport a player to coordinates.

{% code title="Usage" %}

```bash
!teleport [player_id] [x] [y] [z]
```

{% endcode %}

Example:

```bash
!teleport 1 -425.5 1123.5 325.9
```

***

## Utilities

### !announce

Send an announcement to all players in-game.

{% code title="Usage" %}

```bash
!announce [message]
```

{% endcode %}

***

### !ss

Take a screenshot of a player's screen.

{% hint style="info" %}
Requires `screenshot-basic` resource and webhook configured.
{% endhint %}

{% code title="Usage" %}

```bash
!ss [player_id]
```

{% endcode %}

***

### !blackout

Toggle blackout (disable lights) for player(s).

{% code title="Usage" %}

```bash
!blackout [player_id/all] [on/off]
```

{% endcode %}

Examples:

```bash
!blackout 1 on
!blackout all off
```

***

## Server Management

### !ping

Check if bot is online.

{% code title="Usage" %}

```bash
!ping
```

{% endcode %}

***

### !serverinfo

Display server information.

{% code title="Usage" %}

```bash
!serverinfo
```

{% endcode %}

Returns: Online players, max players, uptime, framework

***

### !restartserver

Restart the server with delay (txAdmin).

{% code title="Usage" %}

```bash
!restartserver [delay_seconds] [reason]
```

{% endcode %}

Example:

```bash
!restartserver 60 Scheduled maintenance
```

***

### !stopserver

Stop the server with delay (txAdmin).

{% code title="Usage" %}

```bash
!stopserver [delay_seconds] [reason]
```

{% endcode %}

***

### !txannounce

Send a txAdmin-style announcement.

{% code title="Usage" %}

```bash
!txannounce [message]
```

{% endcode %}

***

## Help

### !help

Display all available commands.

{% code title="Usage" %}

```bash
!help
```

{% endcode %}
