> 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/vehiculos/cuxial-fuel/troubleshooting.md).

# Problemas frecuentes

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

Los problemas más habituales después de instalar Cuxial Fuel, 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 de Cuxial Fuel. Necesita OneSync, `ox_lib`, `oxmysql`, `cuxial_bridge`, `sleepless_interact`, `ox_inventory` y `cuxial_gas_assets`.

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

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

```cfg
ensure ox_lib
ensure oxmysql
ensure cuxial_bridge
ensure ox_inventory
ensure sleepless_interact
ensure cuxial_gas_assets
ensure cuxial_fuel
```

{% endcode %}

</details>

<details>

<summary>El nivel de combustible da saltos, o dos sistemas reaccionan a los surtidores</summary>

**Causa.** Sigue arrancado otro recurso de combustible. Los dos escriben el nivel de los mismos vehículos.

**Solución.** Quita cualquier otro script de combustible de `server.cfg` y reinicia el servidor. Cuxial Fuel responde a los exports de combustible que piden otros recursos.

</details>

<details>

<summary>Un surtidor no enseña la opción Repostar</summary>

**Causa.** Una de estas:

* El modelo de ese surtidor no está en `pumps.props`, o su entrada tiene `enabled = false`.
* El jugador ya lleva una boquilla o tiene un bidón equipado.
* `sleepless_interact` no está arrancado.

**Solución.** Añade el modelo a `pumps.props` en `shared/config.lua`, o quita `enabled = false`. Para los cargadores, revisa `chargers.enabled` y `chargers.props`.

</details>

<details>

<summary>El surtidor abre un panel en medio de la pantalla en vez de su propia pantalla</summary>

**Causa.** La pantalla del surtidor no está disponible para ese surtidor:

* Su modelo no tiene entrada en `screen.models`.
* `screen.enabled` está en `false`.
* La pantalla no ha cargado. La consola F8 del jugador lo dice, y lo habitual es una carpeta `web/dist` incompleta después de una subida parcial.

**Solución.** Para un modelo tuyo, coloca la pantalla con `/fuel_screen` y pega la línea impresa en `screen.models`. Si la pantalla no ha cargado, comprueba que `web/dist/index.html` y el resto de `web/dist` existen dentro del recurso; si no, vuelve a copiar el recurso desde el paquete original.

</details>

<details>

<summary>La pantalla se dibuja en el sitio equivocado del surtidor</summary>

**Causa.** Una posición guardada con `/fuel_screen` en tu propio juego, o una entrada incorrecta en `screen.models`.

**Solución.** Ponte junto al surtidor, ejecuta `/fuel_screen` y pulsa <kbd>Retroceso</kbd>: se borra la posición guardada en tu juego y vuelve a usarse la del config. Después ajústala y pega la línea nueva en `screen.models`. No ajustes los modelos con `mesh = true`.

</details>

<details>

<summary>Faltan cargadores, pantallas de surtidor o tótems, o no hay sonido</summary>

**Causa.** `cuxial_gas_assets` no está arrancado o no se copió entero. Lleva el modelo del cargador, los modelos de surtidor con pantalla, las pantallas de los tótems y los sonidos.

**Solución.** Vuelve a copiar `cuxial_gas_assets` desde el paquete y arráncalo antes que `cuxial_fuel`. Para los sonidos, revisa también `audio.enabled`. Para los tótems, revisa `screen.totems.enabled`; solo se encienden a la vez los `maxDuis` tótems más cercanos.

</details>

<details>

<summary>«Este surtidor no sirve para este vehículo»</summary>

**Causa.** Un vehículo eléctrico en un surtidor de combustible, uno de combustible en un cargador, o un vehículo que no puede repostar (está en `data/blacklist.lua`, o tiene un depósito de `0`).

**Solución.** Si un modelo eléctrico propio se trata como de combustible, añádelo a `chargers.vehicles`. En builds del juego anteriores a la 3258 esa lista es la única forma de reconocer los eléctricos.

</details>

<details>

<summary>El motor se avería unos segundos después de repostar</summary>

**Causa.** Combustible equivocado. Se echó diésel a un vehículo que no está en `data/diesel.lua`, u otro combustible a uno que sí está.

**Solución.** Repara el vehículo y reposta con el combustible correcto; comprar un combustible distinto vacía antes el depósito. Si el modelo debe ir con diésel, añádelo a `data/diesel.lua`. El retardo es `wrongFuelDelay`.

</details>

<details>

<summary>No vuelve dinero al devolver la boquilla</summary>

**Causa.** Una de estas:

* `refundOnReturn` está en `false`.
* Sobró menos de 1 L.
* Los litros se derramaron y `spill.customerPays` está en `true`.
* Con `cuxial_gasstations`, el reembolso lo paga la caja de la gasolinera, hasta donde alcance su saldo.

**Solución.** Pon `refundOnReturn = true`, y `spill.customerPays = false` si los litros derramados también deben reembolsarse.

</details>

<details>

<summary>No se aplica el descuento por trabajo</summary>

**Causa.** El jugador está fuera de servicio, o `jobDiscounts` usa la etiqueta del trabajo en vez de su nombre. En ESX, el descuento requiere una versión que informe del estado de servicio.

**Solución.** Usa como clave el nombre interno del trabajo y entra de servicio. El bidón nunca tiene descuento.

</details>

<details>

<summary>No se puede comprar el bidón</summary>

**Causa.** Una de estas:

* `jerryCan.enabled` está en `false`.
* El ítem de `jerryCan.item` no existe en `ox_inventory`, o el jugador no puede llevarlo.
* Ningún combustible de la gasolinera tiene `jerryCan.requiredStock` litros de stock.
* El jugador está en un cargador: los bidones solo se venden en surtidores de combustible.

**Solución.** Revisa el nombre del ítem y el stock. El dinero se devuelve siempre que el bidón no se puede entregar.

</details>

<details>

<summary>«Esta gasolinera no tiene stock suficiente» en un surtidor sin dueño</summary>

**Causa.** Ese combustible tiene `false` en `defaults.stock`, o la compra pasa de 1000 L, el límite de un surtidor que no pertenece a ninguna gasolinera.

**Solución.** Pon el combustible en `true` en `defaults.stock`. Para los cargadores, revisa `stock` en `chargers.types`.

</details>

<details>

<summary>Un vehículo olvida su tipo de combustible después de un reinicio</summary>

**Causa.** `saveAllFuelTypes` está en `false` y el vehículo no es de un jugador, así que su tipo solo se guarda en memoria. También puede ser un error de base de datos: la consola del servidor imprime la consulta que ha fallado.

**Solución.** Pon `saveAllFuelTypes = true` para guardar todos los vehículos, y comprueba que `oxmysql` arranca antes que `cuxial_fuel`.

</details>

<details>

<summary>No hay blips de gasolinera en el mapa</summary>

**Causa.** `blips.enabled` viene en `false`, porque `cuxial_gasstations` pone sus propios blips.

**Solución.** Sin `cuxial_gasstations`, pon `blips.enabled = true` y revisa las posiciones de `blips.coords`.

</details>

<details>

<summary>Un recurso fija el combustible pero los demás jugadores no ven el cambio</summary>

**Causa.** El export de cliente `SetFuel` se llamó desde un cliente que no es el dueño de red del vehículo.

**Solución.** Llámalo desde el cliente del conductor, o usa el export de servidor. Consulta [Exports y eventos](/scripts/es/vehiculos/cuxial-fuel/developers.md).

</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/vehiculos/cuxial-fuel/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.
