> ## Documentation Index
> Fetch the complete documentation index at: https://rust-co.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration

> Chaque option RCO Creator, expliquée.

Creator a deux fichiers de config, tous deux dans `rco-creator/config/` — c'est tout ce qu'il faut toucher :

| Fichier      | Contenu                                                                                                  | Qui peut lire            |
| ------------ | -------------------------------------------------------------------------------------------------------- | ------------------------ |
| `config.lua` | Options gameplay : emplacements, règles d'âge, scène de sélection, comportement de spawn                 | Partagé avec les clients |
| `server.lua` | Tout ce qui est sensible : overrides d'emplacements, token bot Discord, permission admin, pack de départ | Serveur uniquement       |

Inutile de toucher quoi que ce soit en dehors de ces deux fichiers. Après édition, redémarrez la resource (`restart rco-creator`) pour appliquer.

## Général

```lua theme={"dark"}
Config.Framework = 'auto'  -- auto | rsg | vorp
Config.Debug = false
Config.Locale = 'en'       -- en | pt-BR
```

* **Framework** – laissez sur `auto`. Définissez explicitement seulement si la console indique un échec de détection ou les deux cores trouvés.
* **Debug** – imprime des diagnostics supplémentaires en console. Gardez-le off sur un serveur live.
* **Locale** – langue de l'UI à l'écran. Les fichiers texte sont dans `rco-creator/locales/` ; vous pouvez ajouter la vôtre en copiant `en.json`.

## Personnages et emplacements

```lua theme={"dark"}
Config.MaxCharacters = 5
Config.DefaultCharacterSlots = 4
Config.AllowCharacterDelete = true
Config.AllowLogoutCommand = true
Config.LogoutCommand = 'logout'
```

* **MaxCharacters** – le plafond dur. Personne ne peut en avoir plus, overrides compris.
* **DefaultCharacterSlots** – combien d'emplacements chaque joueur reçoit par défaut.
* **AllowCharacterDelete** – si les joueurs peuvent supprimer leurs personnages depuis la sélection.
* **AllowLogoutCommand / LogoutCommand** – permet `/logout` pour revenir à la sélection sans se reconnecter.

Vous voulez donner plus d'emplacements à certains joueurs ou rôles Discord ? Voir [Emplacements de personnage](/fr/rco-creator/character-slots).

## Règles d'identité

```lua theme={"dark"}
Config.CharacterNameMaxLength = 24
Config.NationalityMaxLength = 32
Config.IdentityReferenceDate = '1899-01-01'
Config.MinimumAge = 18
Config.MaximumAge = 100
Config.BirthYearMin = nil
Config.BirthYearMax = nil
```

L'âge est calculé par rapport à **IdentityReferenceDate**, le « aujourd'hui » de votre monde roleplay. Avec les défauts, un personnage doit être né entre 1799 et 1881.

Si votre serveur se situe plus tard, déplacez la date de référence et, optionnellement, limitez l'année de naissance :

```lua theme={"dark"}
Config.IdentityReferenceDate = '1940-01-01'
Config.BirthYearMax = 1920
```

Laissez `BirthYearMin` / `BirthYearMax` à `nil` pour que Creator les calcule depuis la tranche d'âge.

**Nationalities** est une liste simple de chaînes affichée dans le formulaire de création. Ajoutez, retirez ou traduisez librement :

```lua theme={"dark"}
Config.Nationalities = {
    'American',
    'Mexican',
    -- ...
}
```

Toutes ces règles sont appliquées côté serveur. Un client modifié ne peut pas les contourner.

## Scène de sélection

```lua theme={"dark"}
Config.Selection = {
    period = 'night',              -- night | day
    hideLockedSlotGhosts = false,
    snapPedsToGround = true,
    idleAnimation = { ... },
    focusCamera = { ... },
}
```

* **period** – heure du jour sur la scène de sélection. L'override météo ne s'applique que si la resource RSG `weathersync` tourne.
* **hideLockedSlotGhosts** – par défaut, les emplacements pas encore débloqués apparaissent en silhouettes estompées. Mettez `true` pour les masquer.
* **snapPedsToGround** – garde les peds plantés au sol de la scène.
* **idleAnimation / focusCamera** – la pose et le cadrage caméra du personnage sélectionné. Les défauts conviennent ; changez-les seulement si vous personnalisez la scène.

## Spawn

```lua theme={"dark"}
Config.Spawn = {
    selectorMode = 'always',
    useLastLocation = true,
    fallback = vec4(-301.48, 783.20, 118.75, 14.43),
    preview = { ... },
    locations = { ... },
}
```

### Quand les joueurs voient le sélecteur de spawn

| `selectorMode`                | En clair                                                                                                  |
| ----------------------------- | --------------------------------------------------------------------------------------------------------- |
| `'always'`                    | À chaque sélection de personnage.                                                                         |
| `'first_login_after_restart'` | Une fois par personnage par restart serveur. Ensuite ils spawnent où ils se sont déconnectés.             |
| `'new_character_only'`        | Seulement juste après avoir créé un personnage. Les existants spawnent toujours à leur dernière position. |

**useLastLocation** ajoute « Dernière position » au sélecteur pour reprendre où ils en étaient. **fallback** est où va un personnage si rien d'autre ne s'applique — par ex. le tout premier spawn sans dernière position.

### Emplacements

La liste `locations` est le jeu **initial** de points de spawn. Au premier démarrage elle est copiée en base ; ensuite c'est la base qui fait loi. Pour ajouter ou déplacer des spawns après, utilisez l'éditeur en jeu plutôt que ce fichier. Tout est dans [Emplacements de spawn](/fr/rco-creator/spawn-locations).

## Options serveur uniquement (`server.lua`)

### Pack de départ

Les nouveaux personnages peuvent recevoir un petit kit à leur premier spawn :

```lua theme={"dark"}
CreatorServerConfig.Starter = {
    enabled = true,
    items = {
        { name = 'bread', amount = 5 },
        { name = 'water', amount = 5 },
    },
    rsgHorse = {
        enabled = true,
        model = 'a_c_horse_mp_mangy_backup',
        stable = 'valentine',
        name = 'Starter Horse',
    },
}
```

Les noms d'items doivent exister dans l'inventaire de votre framework. Le cheval de départ n'est disponible que sur RSG ; sur VORP ce bloc est ignoré.

Le pack est accordé **une fois par personnage** et enregistré en base — impossible de l'obtenir deux fois en reloguant ou par connexion perdue pendant le spawn.

### Dernière position forcée

```lua theme={"dark"}
CreatorServerConfig.ForceLastPosition = function(source, character)
    return character.isJailed == true
end
```

Renvoyez `true` pour sauter le sélecteur et remettre le personnage exactement où il était — le défaut garde les emprisonnés en prison. Étendez pour vos propres états.

### Overrides d'emplacements et Discord

`PlayerSlots`, `Discord` et `ResolveCustomSlots` sont couverts dans [Emplacements de personnage](/fr/rco-creator/character-slots).

### Permission éditeur de spawn

`CanManageSpawns` décide qui peut utiliser `/rcospawns`. Voir [Emplacements de spawn](/fr/rco-creator/spawn-locations).
