> For the complete documentation index, see [llms.txt](https://bsensei-script.gitbook.io/bsensei-script-documentation-officiel-fivem/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bsensei-script.gitbook.io/bsensei-script-documentation-officiel-fivem/illegal-and-criminalite/bsensei-npc-robbery-braquage-de-citoyens-immersif/configuration.md).

# Configuration

## ⚙️ Configuration complète du script

Le fichier `config.lua` te permet de personnaliser le comportement du script **BSensei NPC Robbery** selon les besoins de ton serveur.\
Chaque option est expliquée ci-dessous pour t’aider à tout régler rapidement.

***

### 📁 Localisation du fichier

Le fichier se trouve ici :

```
BSensei_npcrobbery/shared/config.lua
```

***

### 🔧 Structure du fichier

Voici une structure type du `config.lua` avec les explications associées 👇

```lua
Config = {}

-- Langue utilisée pour les notifications et les textes
Config.Locale = "fr"

-- Framework utilisé par le serveur ("esx" ou "qbcore")
Config.Framework = "esx"

-- Nombre minimum de policiers connectés pour autoriser un braquage
Config.RequiredPolice = 1

-- Cooldown global entre deux braquages (en secondes)
Config.Cooldown = 60

-- Système de récompenses en argent
Config.Rewards = {
    Money = {
        enabled = true,
        min = 200,
        max = 450
    },

    Items = {
        enabled = true,
        list = {
            { name = "water", label = "Bouteille d'eau", quantity = 1 },
            { name = "md_goldring", label = "Bague en or", quantity = 1 },
            { name = "t1ger_credit_card", label = "Carte bancaire", quantity = 1 }
        }
    }
}

-- Système de dispatch
Config.Dispatch = {
    Enabled = true,
    System = "qs",
    Jobs = {
        "police",
        "sheriff"
    }
}

-- Système de notifications
Config.Notifications = {
    System = "esx"
}

-- Interaction manuelle
Config.Interaction = {
    EnableCommand = true,
    CommandName = "snatch"
}

-- Mode debug
Config.Debug = false
```

***

### 💬 Détails des options

#### 🌍 `Config.Locale`

Langue utilisée pour les textes et notifications du script.\
Actuellement : `"fr"` ou `"en"`.

***

#### 🧠 `Config.Framework`

Détermine le framework utilisé par ton serveur.\
Valeurs disponibles :

* `"esx"`
* `"qbcore"`

Exemple :

```lua
Config.Framework = "esx"
```

💡 Choisis la valeur qui correspond exactement à ton serveur.

***

#### 👮 `Config.RequiredPolice`

Définit le nombre minimum de policiers connectés nécessaire pour autoriser un braquage de PNJ.

Exemple :

```lua
Config.RequiredPolice = 1
```

➡️ Si le nombre requis n’est pas atteint, le braquage ne pourra pas se lancer.

***

#### ⏱️ `Config.Cooldown`

Délai en secondes entre deux braquages.\
Permet d’éviter le spam et de mieux réguler l’activité illégale.

Exemple :

```lua
Config.Cooldown = 60
```

***

#### 💰 `Config.Rewards.Money`

Permet de gérer les récompenses en argent.

```lua
Config.Rewards.Money.enabled = true
Config.Rewards.Money.min = 200
Config.Rewards.Money.max = 450
```

* `enabled` : active ou désactive la récompense en argent
* `min` : montant minimum
* `max` : montant maximum

💡 Le montant final est tiré aléatoirement entre les deux valeurs.

***

#### 🎒 `Config.Rewards.Items`

Permet d’activer les récompenses en objets.

Exemple :

```lua
Config.Rewards.Items.enabled = true
```

La liste des objets se configure ici :

```lua
Config.Rewards.Items.list = {
    { name = "water", label = "Bouteille d'eau", quantity = 1 },
    { name = "md_goldring", label = "Bague en or", quantity = 1 }
}
```

➡️ Vérifie bien que les objets existent dans ton inventaire.

***

#### 🚔 `Config.Dispatch.Enabled`

Active ou désactive complètement l’envoi d’alertes aux forces de l’ordre.

```lua
Config.Dispatch.Enabled = true
```

* `true` : dispatch actif
* `false` : aucun dispatch

***

#### 📢 `Config.Dispatch.System`

Détermine le système de dispatch utilisé par le script.

Valeurs possibles :

* `"qs"`
* `"fallback"`
* `"custom"`
* `"none"`

Exemple :

```lua
Config.Dispatch.System = "qs"
```

💡 Utilise `"none"` si tu ne veux aucun système d’alerte.

***

#### 👮‍♂️ `Config.Dispatch.Jobs`

Liste des métiers qui recevront les alertes.

Exemple :

```lua
Config.Dispatch.Jobs = {
    "police",
    "sheriff"
}
```

➡️ Tu peux adapter cette liste selon les jobs utilisés sur ton serveur.

***

#### 🔔 `Config.Notifications.System`

Système de notification utilisé pour les messages en jeu :

* `"esx"`
* `"ox_lib"`
* `"okokNotify"`
* `"qbcore"`
* `"custom"`

Exemple :

```lua
Config.Notifications.System = "esx"
```

💡 Si tu utilises un système personnalisé, tu peux l’adapter dans `editable.lua`.

***

#### 🎯 `Config.Interaction.EnableCommand`

Active ou désactive la commande manuelle de test / interaction.

```lua
Config.Interaction.EnableCommand = true
```

* `true` : commande active
* `false` : commande désactivée

***

#### ⌨️ `Config.Interaction.CommandName`

Nom de la commande utilisée en jeu.

Exemple :

```lua
Config.Interaction.CommandName = "snatch"
```

Le joueur pourra alors utiliser :

```
/snatch
```

***

#### 🧠 `Config.Debug`

Mode développeur.

Quand activé (`true`), affiche dans la console différents logs liés au script.

```lua
Config.Debug = false
```

💡 Laisse `false` en production pour éviter de polluer les logs.

***

### 🧰 Exemple de configuration personnalisée

Voici un exemple prêt à l’emploi pour un serveur RP dynamique :

```lua
Config.Locale = "fr"
Config.Framework = "esx"
Config.RequiredPolice = 2
Config.Cooldown = 90

Config.Rewards = {
    Money = {
        enabled = true,
        min = 250,
        max = 500
    },

    Items = {
        enabled = true,
        list = {
            { name = "water", label = "Bouteille d'eau", quantity = 1 },
            { name = "md_goldring", label = "Bague en or", quantity = 1 },
            { name = "t1ger_credit_card", label = "Carte bancaire", quantity = 1 }
        }
    }
}

Config.Dispatch = {
    Enabled = true,
    System = "qs",
    Jobs = {
        "police",
        "sheriff"
    }
}

Config.Notifications = {
    System = "esx"
}

Config.Interaction = {
    EnableCommand = true,
    CommandName = "snatch"
}

Config.Debug = false
```

***

➡️ **Étape suivante : Dépendances nécessaires**


---

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://bsensei-script.gitbook.io/bsensei-script-documentation-officiel-fivem/illegal-and-criminalite/bsensei-npc-robbery-braquage-de-citoyens-immersif/configuration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
