> For the complete documentation index, see [llms.txt](https://docs.noctrastore.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.noctrastore.net/noctra-garage/configuration.md).

# Configuration

Configure the main behavior and integrations of Noctra Garage.

Most server-wide options are in `config.lua`. Individual garage settings should be changed through the garage creator.

## General settings

| Option                | Description                                                                                                                      |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `Config.Framework`    | Selects ESX, QBCore, Qbox, or custom support. Automatic detection is enabled by default.                                         |
| `Config.Lang`         | Selects a file from the `lang` folder. Included languages are English, Spanish, German, French, Italian, Polish, and Portuguese. |
| `Config.Deformations` | Saves and restores detailed body deformation with the rest of the vehicle properties.                                            |
| `Config.Target`       | Set to `false`, `ox_target`, or `qb-target`. When disabled, the configured interaction keys are used.                            |
| `Config.GangSystem`   | Selects the optional gang integration used for gang access rules.                                                                |

## Vehicle persistence

| Option                      | Description                                                                                            |
| --------------------------- | ------------------------------------------------------------------------------------------------------ |
| `Config.PersistentVehicles` | Keeps retrieved vehicles registered with the persistence system.                                       |
| `Config.NeedsEngineOff`     | Requires the engine to be off before a parked vehicle is saved by persistence.                         |
| `Config.RemoveFarVehicles`  | Temporarily removes persistent vehicles that are far from every player and recreates them when needed. |

{% hint style="info" %}
Leave `Config.RemoveFarVehicles` disabled unless your server needs the additional world-vehicle optimization. Removing distant entities can affect other resources that expect the vehicle to remain available.
{% endhint %}

## Commands and permissions

| Option                       | Description                                                                           |
| ---------------------------- | ------------------------------------------------------------------------------------- |
| `Config.CreatorCommand`      | Command used to open the garage creator.                                              |
| `Config.CreatorAce`          | ACE permission used by compatible framework bridges for creator access.               |
| `Config.ImpoundCommand`      | Enables and names the nearby vehicle impound command.                                 |
| `Config.ImpoundJobs`         | Jobs allowed to use the impound flow. Set it to `false` to allow every job.           |
| `Config.AdminImpoundCommand` | Configures the admin mass-impound command, maximum radius, and maximum vehicle count. |
| `Config.AdminAce`            | ACE permission used by compatible bridges for the admin impound command.              |

The final permission decision is made by `FW.HasCreatorPermission` and `FW.IsPlayerAdmin` in the active framework bridge.

## Interactions

`Config.Interactions` controls the entry, storage, purchase, and showroom keys. It also contains the interaction cooldown, request timeout, idle update interval, and blip scale.

The default controls are:

| Action          | Key |
| --------------- | --- |
| Enter garage    | E   |
| Store vehicle   | E   |
| Purchase garage | E   |
| Enter showroom  | G   |

If a target integration is enabled, the target options replace these world key prompts where supported.

## Fuel and vehicle keys

Compatibility is kept in `custom/client/vehicle.lua`. The included bridge detects common fuel and vehicle-key resources automatically.

If your resource is not supported, edit only these functions:

```lua
FW.GetVehicleFuel(vehicle)
FW.SetVehicleFuel(vehicle, fuelLevel)
FW.GiveVehicleKeys(plate, vehicle)
```

Fuel falls back to FiveM vehicle fuel natives. Vehicle keys perform no fallback action when no supported key resource is running.

## Preview music

`Config.PreviewMusic` enables music inside the vehicle preview and controls autoplay, volume, and the available tracks. Use the included tracks or direct playable audio URLs.

```lua
Config.PreviewMusic = {
    enabled = true,
    autoplay = true,
    volume = 0.15,
    tracks = {
        { label = 'Online track', artist = 'Artist', url = 'https://example.com/song.mp3' }
    }
}
```

## Built-in templates

* `Config.PreviewConfigurations` contains read-only preview layouts offered by the creator.
* `Config.ShowroomIPLs` contains read-only IPL showroom layouts, including their loading data and display positions.
* Creator-made preview and showroom templates are saved separately in `preview_templates.json` and `showroom_templates.json`.

Changing a built-in template affects every garage that uses it. Creator-made templates can be edited from the creator.

## Final tips before finishing

* Test each payment account used by garage and impound fees.
* Test job and gang access after an in-game role change.
* Verify fuel and keys with the resources used by your server.
* Keep command permissions limited to trusted groups.


---

# 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.noctrastore.net/noctra-garage/configuration.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.
