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

# Troubleshooting

> Common nex_scalemenu issues and fixes — oxmysql order, the database table, permissions, Discord roles, gender lock, and persistence.

Most issues come down to start order, permissions, or Discord setup. Work through the sections below before reaching out.

## The menu won't open

* Confirm the resource started cleanly in the server console — look for the `nex_scalemenu` startup banner and no Lua errors.
* If permissions are enabled, make sure the player has the `openSelf` action. With the system enabled, the command silently does nothing for players who lack permission. See [Permissions](/nex_scalemenu/permissions).
* Check the [gender lock](#a-player-cant-open-the-menu-gender-lock).

## Scales don't save or load

This is almost always a `oxmysql` start-order problem.

<Warning>
  `oxmysql` must be started **before** `nex_scalemenu`. Put `ensure oxmysql` first in `server.cfg`, before your framework and before this resource.
</Warning>

* Verify the order in `server.cfg`:

  ```cfg theme={null}
  ensure oxmysql
  ensure qbx_core
  ensure nex_scalemenu
  ```

* Confirm `oxmysql` itself is connected to your database.

* Reconnect after confirming a scale — the value is read back on join.

## The database table wasn't created

The `nex_scalemenu` table is created automatically on first start with `CREATE TABLE IF NOT EXISTS`. If it's missing:

* Make sure `oxmysql` started **before** `nex_scalemenu` (see above) — the schema can't be created otherwise.
* Look for `failed to ensure schema` in the server console, which points to a database connection or permissions error on the MySQL user.
* Confirm the MySQL user has `CREATE` privileges on the database.

## Permissions block everyone after enabling

When you set `permissions.enabled = true`, only the actions granted across the four layers are allowed — everything else is denied.

* Make sure `defaultPermissions` grants the baseline you want. The shipped default grants `openSelf` and `resetSelf` to everyone, with `openOther` and `resetOther` reserved.

* To give admins `openOther` / `resetOther`, add the ACE line and assign the group:

  ```cfg theme={null}
  add_ace group.admin nex_scalemenu.admin allow
  ```

* See [Permissions](/nex_scalemenu/permissions) for the full layered model.

## Discord roles aren't resolving

If Discord-based permissions never grant access:

* Set `discord.enabled = true` and fill in both `botToken` and `guildId`. If either is empty, the lookup returns no roles.
* Enable the **Server Members Intent** in the bot's settings — without it, the Discord API returns no member data.
* Invite the bot to the guild with at least the **View Server Members** permission.
* Confirm the **role IDs** in `roles` are correct (right-click a role with Developer Mode on, then **Copy Role ID**).
* Remember roles are cached per player for `cacheSeconds` (default 300, five minutes), so changes can take up to five minutes to take effect.

<Info>
  A player must have a `discord:` identifier (be connected to FiveM through Discord) for role lookup to work at all.
</Info>

## A player can't open the menu (gender lock)

The `gender` block restricts who can use the menu by ped gender. If a player is blocked, check `config.lua`:

```lua theme={null}
gender = {
    male   = true,
    female = true,
},
```

Set both to `true` to allow either gender.

## Scale resets to 1.0 on its own

This is expected behavior in a couple of cases, surfaced in the in-menu notices:

* **Entering or exiting a vehicle** resets the scale to `1.0`.
* **Changing terrain** can cause sudden scale adjustments as the ped re-snaps to the ground.

## A confirmed scale doesn't persist

* If you confirm a **default** scale (`1.0 / 1.0`), the row is intentionally **deleted** rather than stored — this keeps the table free of no-op rows. Only non-default scales are saved.
* Otherwise, recheck the `oxmysql` start order and database connection above.

## Still stuck?

If none of the above resolves it, head to [Support](/general/support) with your `server.cfg` ensure order, the relevant console output, and your `config.lua` permissions block.
