> For the complete documentation index, see [llms.txt](https://docs.cuxial.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cuxial.com/scripts/es/ocio/cuxial-gym/troubleshooting.md).

# Problemas frecuentes

Problemas habituales de Cuxial Gym, con su causa y su solución.

Los fallos más habituales después de instalar Cuxial Gym, con la causa y la solución de cada uno.

<details>

<summary>El recurso no arranca</summary>

**Causa.** Falta una dependencia o arranca después del gimnasio. Cuxial Gym necesita OneSync, `ox_lib`, `oxmysql`, `cuxial_bridge`, `sleepless_interact` y `cuxial_gym_assets`.

**Solución.** Activa OneSync y arranca antes las dependencias:

{% code title="server.cfg" %}

```cfg
ensure ox_lib
ensure oxmysql
ensure sleepless_interact
ensure cuxial_bridge
ensure cuxial_gym_assets
ensure cuxial_gym
```

{% endcode %}

</details>

<details>

<summary>Los equipos son invisibles, o los ejercicios no tienen animación ni sonido</summary>

**Causa.** `cuxial_gym_assets` no está en marcha, se ha renombrado o se subió incompleto. Los props, las animaciones y los sonidos están ahí.

**Solución.** Vuelve a copiar `cuxial_gym_assets` desde el paquete original, no le cambies el nombre y arráncalo antes que `cuxial_gym`. Reinicia el servidor: los assets no siempre se cargan reiniciando solo el recurso.

</details>

<details>

<summary>No hay ningún gimnasio después de instalar</summary>

**Causa.** La zona de ejemplo se crea solo en el primer arranque, cuando la tabla de zonas está vacía. Si en ese momento no había conexión con la base de datos, o la zona se borró después, no hay nada que cargar.

**Solución.** Ejecuta `/gymcreator` y crea una zona. `data/seed.lua` solo se lee en el primer arranque.

</details>

<details>

<summary>/gymcreator o /gymadmin no hace nada</summary>

**Causa.** Una de estas:

* El jugador no tiene ni el ACE ni el permiso del framework.
* El módulo está apagado: `/gymcreator` necesita `modules.creator`; `/gymadmin` necesita `modules.admin` y `modules.business`.
* El comando se renombró o se puso a `false` en `commands`.
* El jugador está entrenando o ayudando.

**Solución.** Concede los ACE y revisa el config:

{% code title="server.cfg" %}

```cfg
add_ace group.admin cuxial_gym.admin allow
add_ace group.admin cuxial_gym.creator allow
```

{% endcode %}

</details>

<details>

<summary>El equipo dice que hace falta membresía</summary>

**Causa.** La zona exige pase y el jugador no tiene.

**Solución.** Compra un pase en el punto del menú del gimnasio, o abre la zona en `/gymcreator` y quita el requisito. El staff también puede conceder uno con el export `GrantMembership`.

</details>

<details>

<summary>El panel o el minijuego no aparecen</summary>

**Causa.** La interfaz no carga. Falta la carpeta `web/dist` o está incompleta, normalmente por una subida parcial.

**Solución.** Comprueba que existe `web/dist/index.html` dentro de `cuxial_gym`. Si no, vuelve a copiar el recurso desde el paquete original y reinicia el servidor.

</details>

<details>

<summary>El panel se abre a pantalla completa en vez de en la pantalla del gimnasio</summary>

**Causa.** El panel se dibuja en el prop de la pantalla cuando el jugador está a menos de `tablet.maxDistance` de uno. En el resto de casos se abre a pantalla completa.

**Solución.** Usa el menú del gimnasio desde un punto que esté junto a un prop de pantalla. Para usar siempre la interfaz a pantalla completa, pon `tablet.dui = false`. No cambies los demás valores de `tablet`: corresponden al prop.

</details>

<details>

<summary>Usar un suplemento no hace nada</summary>

**Causa.** El item no existe en el inventario, o el gimnasio arrancó antes que el inventario. La consola muestra `el suplemento "<id>" usa un item que no existe` por cada item que falta.

**Solución.** Añade los ocho items de `install/items.lua` a tu inventario, arranca el inventario antes que `cuxial_gym` y reinicia el gimnasio.

</details>

<details>

<summary>Los items salen sin imagen en la tienda o en el almacén</summary>

**Causa.** Falta la imagen, o tu inventario guarda las imágenes en otra ruta.

**Solución.** Añade `<item>.webp` a la carpeta de imágenes de tu inventario, o cambia `items.imageUrl` a la ruta correcta. `%s` se sustituye por el nombre del item.

</details>

<details>

<summary>Las taquillas y los alijos no se abren</summary>

**Causa.** Las taquillas y los alijos requieren `ox_inventory`.

**Solución.** Usa `ox_inventory`, o quita las acciones de taquilla y alijo de los puntos de interacción.

</details>

<details>

<summary>El punto de vestuario no hace nada</summary>

**Causa.** El manejador apunta a un recurso que no está en marcha. El que viene por defecto llama a `cuxial_appearance`.

**Solución.** Arranca ese recurso, o cambia `cloakroom.handlers` a un export o un evento de cliente de tu recurso de ropa.

</details>

<details>

<summary>Falta la tienda, el menú del jefe o la opción de ayudar</summary>

**Causa.** Pertenecen a los módulos de negocio. `modules.business = false` los quita todos; `modules.shop` y `modules.helper` quitan cada uno. Un punto de tienda necesita además que su zona o su punto pertenezca a un negocio.

**Solución.** Activa los módulos, crea el negocio en `/gymadmin` y asígnale la zona.

</details>

<details>

<summary>La recompensa diaria dice que no hay stock</summary>

**Causa.** En una zona que pertenece a un negocio, la recompensa sale del almacén del negocio.

**Solución.** El negocio tiene que pedir o depositar ese item en su almacén.

</details>

<details>

<summary>Los minutos trabajados de un empleado no suben</summary>

**Causa.** Los minutos solo cuentan mientras el empleado está conectado y dentro del área de trabajo del negocio. Un negocio sin área de trabajo no cuenta nada.

**Solución.** Define el área de trabajo del negocio en `/gymadmin`.

</details>

<details>

<summary>He cambiado un archivo de datos y en juego no cambia nada</summary>

**Causa.** Esa sección se guardó alguna vez desde un editor. La copia de la base de datos sustituye al archivo.

**Solución.** Edítala desde `/gymcreator` o `/gymadmin`. En el creador, *Restablecer valores* devuelve una sección a los valores del archivo.

</details>

<details>

<summary>El gimnasio de la playa se ve mal o tiene objetos duplicados</summary>

**Causa.** `cuxial_gym_assets` incluye un archivo de mapa de esa zona. Otro recurso de mapa que edite el mismo sitio entra en conflicto con él.

**Solución.** Deja en marcha solo uno de los dos mapas de esa zona.

</details>

<details>

<summary>No llegan los registros a Discord</summary>

**Causa.** La convar no está definida, o se define después de arrancar el gimnasio.

**Solución.** Pon `set cuxial_gym_webhook "..."` en `server.cfg` por encima de `ensure cuxial_gym`. Con el debug activado, la consola indica si se ha leído el webhook.

</details>

<details>

<summary>Otro recurso no encuentra exports.CuxialGym</summary>

**Causa.** Ese recurso arranca antes que el gimnasio.

**Solución.** Arranca primero `cuxial_gym`. Con ese nombre solo están pensados `AddSkillToPlayer`, `GetPlayerSkills` y `MaxAllSkills`; para todo lo demás usa `exports.cuxial_gym`.

</details>


---

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cuxial.com/scripts/es/ocio/cuxial-gym/troubleshooting.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
