> For the complete documentation index, see [llms.txt](https://cylexdev.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cylexdev.gitbook.io/docs/cylex-multicharv3/installation-and-configuration/edit-character-slots.md).

# Edit Character Slots

Set slot counts, delete permissions, and logout access in shared/slot.lua — per-license overrides, Discord roles, framework admin groups, and ace permissions.

All slot, delete, and logout permissions are configured in `shared/slot.lua`. This file runs server-side only and controls how many character slots each player gets, who can delete characters, and who can use the logout command. The permission system checks in order: license override → Discord role → framework admin group → ace permission.

### [​](https://cylex.mintlify.app/configuration/slots-permissions#default-character-slots)Default character slots <a href="#default-character-slots" id="default-character-slots"></a>

shared/slot.lua

```lua
Config.MaxCharacters = 5
```

Every player receives this many character slots by default. You can increase or decrease this to any positive integer.

### [​](https://cylex.mintlify.app/configuration/slots-permissions#per-license-slot-overrides)Per-license slot overrides <a href="#per-license-slot-overrides" id="per-license-slot-overrides"></a>

shared/slot.lua

```lua
Config.SlotOverrides = {
    -- ["license:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = 10,
    -- ["license2:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = 8,
}
```

To give a specific player more (or fewer) character slots than the default, add their license identifier as the key and the desired slot count as the value. Both `license:` and `license2:` prefixes are supported — the script checks both.shared/slot.lua

```lua
Config.SlotOverrides = {
    ["license:abc123def456abc123def456abc123def456abc12"] = 10,
}
```

You can find a player’s license identifier in the server console with `print(GetPlayerIdentifiers(source))`, or by checking your framework’s player data.

### [​](https://cylex.mintlify.app/configuration/slots-permissions#discord-role-slot-overrides)Discord role slot overrides <a href="#discord-role-slot-overrides" id="discord-role-slot-overrides"></a>

shared/slot.lua

```lua
Config.DiscordSlotRoles = {
    -- ["DISCORD_ROLE_ID"] = 10,
}
```

Players who have a matching Discord role are automatically granted the slot count you specify. The highest matching role wins — if a player has two matching roles, they receive the higher slot count.shared/slot.lua

```lua
Config.DiscordSlotRoles = {
    ["1234567890123456789"] = 8,   -- VIP role
    ["9876543210987654321"] = 15,  -- Donator role
}
```

Discord role lookups require two convars in your `server.cfg`:server.cfg

```lua
set cylex_multicharv3:DISCORD_GUILD_ID  "YOUR_GUILD_ID"
set cylex_multicharv3:DISCORD_BOT_TOKEN "YOUR_BOT_TOKEN"
```

The bot must be a member of your Discord server and have the **Server Members Intent** enabled in the Discord Developer Portal.

### [​](https://cylex.mintlify.app/configuration/slots-permissions#character-deletion)Character deletion <a href="#character-deletion" id="character-deletion"></a>

shared/slot.lua

```lua
Config.AllowDeleteCharacter = false
```

* `true` — all players can delete their own characters.
* `false` — only players explicitly listed in `DeleteOverrides` or `DiscordDeleteRoles` can delete.

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#per-license-delete-overrides)Per-license delete overrides <a href="#per-license-delete-overrides" id="per-license-delete-overrides"></a>

shared/slot.lua

```lua
Config.DeleteOverrides = {
    -- ["license:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = true,
    -- ["license2:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = true,
}
```

When `AllowDeleteCharacter = false`, add specific player licenses here to grant them delete access.

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#discord-delete-roles)Discord delete roles <a href="#discord-delete-roles" id="discord-delete-roles"></a>

shared/slot.lua

```lua
Config.DiscordDeleteRoles = {
    -- "DISCORD_ROLE_ID",
}
```

Players who hold one of these Discord roles gain delete access regardless of the `AllowDeleteCharacter` setting.

### [​](https://cylex.mintlify.app/configuration/slots-permissions#logout-command-permissions)Logout command permissions <a href="#logout-command-permissions" id="logout-command-permissions"></a>

shared/slot.lua

```lua
Config.AllowLogout = false
```

* `true` — all players can use the logout command.
* `false` — only players listed below, or those with qualifying admin groups or ace permissions, can use it.

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#per-license-logout-overrides)Per-license logout overrides <a href="#per-license-logout-overrides" id="per-license-logout-overrides"></a>

shared/slot.lua

```lua
Config.LogoutOverrides = {
    -- ["license:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = true,
    -- ["license2:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"] = true,
}
```

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#framework-admin-groups)Framework admin groups <a href="#framework-admin-groups" id="framework-admin-groups"></a>

These groups are checked against your framework’s permission system. Members of a listed group can always use the logout command.

* QBCore
* ESX

shared/slot.lua

```lua
Config.LogoutQBAdminGroups = {
    "god",
    "admin",
}
```

Players in these groups are checked using QBCore’s built-in permission system.

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#discord-logout-roles)Discord logout roles <a href="#discord-logout-roles" id="discord-logout-roles"></a>

shared/slot.lua

```lua
Config.DiscordLogoutRoles = {
    -- "DISCORD_ROLE_ID",
}
```

Players who hold one of these Discord roles can use the logout command. Requires the Discord convars described above.

#### [​](https://cylex.mintlify.app/configuration/slots-permissions#ace-permissions)Ace permissions <a href="#ace-permissions" id="ace-permissions"></a>

Players with any of the following ace permissions always have logout access, regardless of any other setting:

* `god`
* `command`
* `admin`
* `mod`

These are checked via FiveM’s built-in `IsPlayerAceAllowed` and cannot be overridden by config.
