> 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/vehicles/cuxial-gasstations/troubleshooting.md).

# Troubleshooting

Common Cuxial Gas Stations problems, with their cause and fix.

The most frequent problems after installing Cuxial Gas Stations, with the cause and the fix for each one.

<details>

<summary>The resource does not start</summary>

**Cause.** A dependency is missing or starts later. Cuxial Gas Stations needs OneSync, `ox_lib`, `oxmysql`, `cuxial_bridge`, `sleepless_interact` and `cuxial_gas_assets`.

**Fix.** Enable OneSync and start the dependencies first:

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

```cfg
ensure ox_lib
ensure oxmysql
ensure cuxial_bridge
ensure sleepless_interact
ensure cuxial_gas_assets
ensure cuxial_gasstations
```

{% endcode %}

</details>

<details>

<summary>The pressure gun disappears as soon as I take it</summary>

**Cause.** `ox_inventory` removes any weapon in the hands that is not an inventory item. The client console (F8) shows a warning about `WEAPON_PRESSURE1`.

**Fix.** Add it to the ignore list and restart the server:

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

```cfg
setr inventory:ignoreweapons ["WEAPON_PRESSURE1"]
```

{% endcode %}

If the convar already exists, add the entry to its list.

</details>

<details>

<summary>Pressure washers, the detailing van or the gun are invisible or missing</summary>

**Cause.** `cuxial_gas_assets` is not running, or it started after the script.

**Fix.** Check that the folder is in `resources` and that `ensure cuxial_gas_assets` comes before `ensure cuxial_gasstations`. Restart the server: streamed assets do not load with a resource restart alone.

</details>

<details>

<summary>/gasadmin says I do not have permission</summary>

**Cause.** Your account has neither the ACE nor the framework permission set in `admin`.

**Fix.** Grant the ACE to your group:

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

```cfg
add_ace group.admin cuxial_gasstations.admin allow
```

{% endcode %}

</details>

<details>

<summary>The panel or the admin panel does not open, or opens blank</summary>

**Cause.** The interface files are missing or incomplete, usually after a partial upload of `web/dist`.

**Fix.** Copy the resource again from the package you downloaded and restart it.

</details>

<details>

<summary>Texts appear in the wrong language</summary>

**Cause.** The language follows the `ox:locale` convar. English and Spanish are included.

**Fix.** Set `setr ox:locale "en"` in `server.cfg` and restart the server. The texts are in `locales/en.json` and `locales/es.json`.

</details>

<details>

<summary>Fuel is sold but the station stock and cash box do not change</summary>

**Cause.** The fuel script is not reporting sales to the station, or the pump is outside the station's `pumps` sphere.

**Fix.** Use Cuxial Fuel, or call `SellFuel` from your own fuel script as shown in [Exports & events](/scripts/vehicles/cuxial-gasstations/developers.md#sellfuel). If only some pumps fail, widen the radius (fourth value) of `pumps` for that station in `data/stations.lua`.

</details>

<details>

<summary>A contract says "No destination found within that distance"</summary>

**Cause.** There is no enabled destination within the `maxDistance` of that contract size, or the factory locations were never loaded. In the second case the server console warns that `cuxial_gasstations_points` has no factory locations.

**Fix.** Open `/gasadmin` → **Loading points** and check that destinations exist and are enabled. If the list is empty, make sure `install/seed_points.sql` is in the resource folder and restart it, or create destinations with **New location here**.

</details>

<details>

<summary>The run vehicle disappears as soon as it appears</summary>

**Cause.** A model blacklist on your server deletes it. The client console warns that the vehicle vanished right after being created.

**Fix.** Remove the fleet models from the blacklist, or change the `model` of those entries in `fleet.catalog`. On QBox, check the list of `qbx_entitiesblacklist`.

</details>

<details>

<summary>The driver cannot start the run vehicle or the van</summary>

**Cause.** Keys are handed out through Cuxial Garages. Without it, the script gives no keys.

**Fix.** Start `cuxial_garages`, or configure your key system so vehicles with the plate prefixes `GS` and `GW` can be driven.

</details>

<details>

<summary>The Wash page says no pressure washers have been placed</summary>

**Cause.** Wash slots are placed by an admin. The upgrade only turns on slots that already exist.

**Fix.** Open `/gasadmin` → **Pressure washers**, stand at the station and use **New slot here**, then adjust it with the editor. The owner then buys the **Pressure washers** upgrade.

</details>

<details>

<summary>NPC customers never arrive</summary>

**Cause.** One of the conditions is not met:

* the `npc` module and `npc.enabled` are on, and the owner has enabled customers on the Wash page;
* an employee is on shift within `npc.presenceRadius` of the bay;
* at least one active wash slot has a bay, and the bay is free;
* the station has soap and water for an enabled service;
* no hourly, daily or server-wide cap has been reached.

**Fix.** Check each point. The Wash page of the owner panel shows which cap or condition is blocking. Caps can be raised in `/gasadmin` → **Upgrades** → **Global limits**.

</details>

<details>

<summary>A change in config.lua has no effect on a station</summary>

**Cause.** A rule set in the admin panel overrides the config for that station or for all of them.

**Fix.** Open `/gasadmin` → **Upgrades**, find the rule and reset it to inherit the config value again.

</details>

<details>

<summary>An owner lost their station</summary>

**Cause.** The total stock stayed below `abandon.minStockPct` for `abandon.hours` in a row. The event is recorded in `/gasadmin` → **Log**.

**Fix.** Give it back with **Grant to a player** in the station detail if needed. To relax or remove the rule, change `abandon` in the config.

</details>

<details>

<summary>Notices do not arrive on the phone</summary>

**Cause.** The phone integration only works with a phone supported by `cuxial_bridge`, and the player must have a phone. Otherwise notices fall back to the standard notification.

**Fix.** Nothing is lost: notices are also stored in the panel inbox. Check that `notices.phone` is `true` and that the phone resource is started.

</details>

<details>

<summary>Discord logs do not arrive</summary>

**Cause.** The webhook convar is empty or has another name. It is read once, when the resource starts.

**Fix.** Set `set cuxial_gasstations_webhook "..."` in `server.cfg`, with the name in `logs.convar`, and restart the resource.

</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/vehicles/cuxial-gasstations/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.
