> For the complete documentation index, see [llms.txt](https://wiki.qfdevelopers.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.qfdevelopers.com/scripts/editor-8/configuration.md).

# Configuration

## Languages

You can set the language of the script in the configuration file.

* `en`: English
* `fr`: French
* `pl`: Polish
* `de`: German
* `es`: Spanish

<figure><img src="/files/ig9o7wm8oX8fWWbPFHXs" alt=""><figcaption></figcaption></figure>

## Compatibility

Defines compatibility settings for notification, vehicle key, and fuel systems:

***

**`notifications`:**

Select which notification system should be used by the script:

* `script_custom_notify`: Set to `true` to use the built-in notification system.
* `qf_notify`: Set to `true` to use **QF Developers'** notification system.
* `esx`: Set to `true` to use default **ESX notifications** (requires ESX).
* `qb`: Set to `true` to use default **QB notifications** (requires QBCore).
* `qbox`: Set to `true` to use default **QBox notifications** (requires QBox).

***

**`vehiclekeys`:**

Defines compatibility with different vehicle key systems:

* `qb_vehiclekeys`: For **qb-vehiclekeys**.
* `qbox_vehiclekeys`: For **qbox vehicle key** system.
* `wasabi_carlock`: For **wasabi\_carlock** integration.
* `renewed_vehiclekeys`: For **renewed-vehiclekeys**.
* `sna_vehiclekeys`: For **sna-vehiclekeys**.
* `custom`: Set to `true` if you're using a custom key system (requires manual setup in `client/editable.lua`).

***

**`fuel`:**

Defines fuel system compatibility and starting fuel level:

* `CDNFuel`: Set to `true` for **cdn-fuel**.
* `LegacyFuel`: Set to `true` for **LegacyFuel**.
* `ox_fuel`: Set to `true` for **ox\_fuel**.
* `fuellevel`: Fuel level (percentage) assigned to the spawned vehicle (e.g., `100` for full tank).

> ⚠️ Only one system per category (notifications, keys, fuel) should be enabled at a time to avoid conflicts.

<figure><img src="/files/csXPmX7ohZxzH89cZTzj" alt=""><figcaption></figcaption></figure>

## Job Data

Defines general job configuration, access restrictions, and blip settings:

***

**`Lobby.maxPlayers`:**

Maximum number of players that can join a single electrician job session (e.g., `4`).

***

**`Job`:**

Controls job restriction and role assignment:

* `requiredJob`:\
  Set to `true` to require a specific job to access the system.
* `name`:\
  Name of the job required (e.g., `'electrician'`). Ignored if `requiredJob = false`.

***

**`Blip`:**

Map blip configuration for the electrician job start point:

* `coords`: Location where the blip appears on the map.
* `sprite`: Icon used for the blip (e.g., `643`).
* `colour`: Color of the blip (e.g., `28`).
* `scale`: Size of the blip (e.g., `0.8`).
* `label`: Text label shown on the map. Uses localization via `TRANSLATIONS.LOCALE('BLIP_LABEL')`.

> 📌 This section controls how and where the job becomes accessible to players.

<figure><img src="/files/9Xw6KAg4LtydEjXoJoP1" alt=""><figcaption></figcaption></figure>

## Salary

Defines payment settings for completing electrician tasks:

* `amount`:\
  The amount of money awarded to each player upon job completion (e.g., `5000`).
* `moneyType`:\
  Automatically selects the currency type based on your active framework:\
  • `'money'` for **ESX**\
  • `'cash'` for **QBCore** and **QBox**\
  • `'yourcustomtypeofmoney'` if you're using a custom or unsupported system

> 📌 You can override the default selection by manually setting the `moneyType` string to match your economy system.

<figure><img src="/files/DEGXBGHoueS2mly7jaZD" alt=""><figcaption></figcaption></figure>

## Target

Defines the targeting system used to interact with job zones, props, and objects:

* `ox_target`: Set to `true` to use **ox\_target**.
* `qtarget`: Set to `true` to use **qtarget**.
* `qb_target`: Set to `true` to use **qb-target**.
* `own`: Set to `true` if you're using a **custom targeting system**. Requires implementation in `client/editable.lua`.
* `useE`: Set to `true` to enable interaction using the **E key** instead of a target system.

> 📌 Only one system should be enabled at a time to avoid conflicts.

<figure><img src="/files/iJ4ioMD4OnzS50l4zrLL" alt=""><figcaption></figcaption></figure>

## Freeze Props

Determines whether placed job-related props (e.g., fuse boxes, ladders, tools) should be frozen in place:

* `FreezeProps`:\
  Set to `true` to **prevent props from being moved or knocked over** by players or vehicles.\
  Set to `false` to allow natural physics interactions.

> 📌 Recommended to keep enabled for stable and immersive job scenes.

<figure><img src="/files/T814CUIPiUOYGnnMxCxg" alt=""><figcaption></figcaption></figure>

## Zones

Defines the NPC interaction zone for starting the electrician job:

* `targetLabel`:\
  Text displayed when targeting the NPC (uses localization via `TRANSLATIONS.LOCALE('LABEL_STARTJOB_TARGET')`).
* `icon`:\
  Font Awesome icon shown in the interaction menu (e.g., `'fa-solid fa-play'`).
* `model`:\
  Ped model spawned at the zone (e.g., `'s_m_m_dockwork_01'`).
* `coords`:\
  Position where the ped and interaction zone are created (`vec3`).
* `heading`:\
  Direction the NPC will face.
* `distance`:\
  Maximum interaction distance (e.g., `1.5` meters).
* `groups`:\
  Restricts interaction to a specific job if `Config.JobData.Job.requiredJob = true`.\
  Uses the job name defined in `Config.JobData.Job.name`.

> 📌 This is the main entry point where players initiate the job.

<figure><img src="/files/GYScLTPUqztJPEeb09Yg" alt=""><figcaption></figcaption></figure>

## Markers

Defines visual marker settings used in the job system:

***

**`PedMarkers`:**

Displayed under job-related NPCs (e.g., start job ped).

* `id`:\
  Marker type ID (e.g., `2` – vertical cylinder).
* `color`:\
  RGB color of the marker (e.g., `{243, 207, 7}` for yellow).

***

**`DeleteCar`:**

Displayed at vehicle return zone (e.g., garage marker).

* `id`:\
  Marker type ID (e.g., `25` – vehicle garage marker).
* `color`:\
  RGB color of the marker (same format as above).

> 🎨 You can customize marker types and colors to match your server’s visual style.

<figure><img src="/files/mguemLUHnTCsGwqDKVWc" alt=""><figcaption></figcaption></figure>

## Remove Vehicle Timeout

Controls automatic deletion of the job vehicle after a delay:

* `enabled`:\
  Set to `true` to enable automatic vehicle removal after a set time.
* `time`:\
  Time in **seconds** before the vehicle is deleted (e.g., `30`).

> 📌 Useful for preventing abandoned electrician vehicles from cluttering the map.

<figure><img src="/files/NaXfJNLA7qyFtImvgHOL" alt=""><figcaption></figcaption></figure>

## Garage

Defines vehicle spawn and return settings for the electrician job:

* `SpawnPoints`:\
  List of `vec4` coordinates where the job vehicle will be spawned.\
  Format: `vec4(x, y, z, heading)`.
* `DeleteCar`:\
  List of `vec4` coordinates where players can return (delete) their job vehicle.
* `vehicleModel`:\
  Model name of the electrician job vehicle (e.g., `'burrito_electrician'`).

> 📌 You can add multiple spawn or return points if you want to support different garage zones.

<figure><img src="/files/IhYCYLfwvUjzgEvRevmH" alt=""><figcaption></figcaption></figure>

## Uniforms

Defines the electrician job uniform applied to players when starting the job:

* `male`:\
  Clothing components for male characters:\
  • `tshirt_1`, `tshirt_2` – T-shirt base and variation\
  • `torso_1`, `torso_2` – Upper body/clothing\
  • `arms` – Arm style (sleeves)\
  • `pants_1`, `pants_2` – Pants and variation\
  • `shoes_1`, `shoes_2` – Footwear\
  • `helmet_1`, `helmet_2` – Helmet or headgear
* `female`:\
  Same structure as male, adjusted for female ped model clothing indexes.

> 📌 You can customize these values to fit your server’s clothing packs or RP uniform standards.

<figure><img src="/files/eFe8Y9oYBczJbWbTmpjb" alt=""><figcaption></figcaption></figure>

## Places

Defines electrician job locations and task types for each mission:

Each entry represents a **mission zone** with a waypoint and multiple job objectives:

* `waypoint_coords`:\
  Coordinates (`x`, `y`, `z`) shown on the map/GPS for player navigation to the job location.
* `jobs`:\
  A list of tasks that need to be completed within the mission area. Each task includes:

  • `player_position`:\
  Position and heading (`x`, `y`, `z`, `h`) where the player must stand to perform the task.

  • `job_type`:\
  Type of electrician task to be performed at the position:

  * `'Light'`: Replace or repair street lighting.
  * `'Key'`: Access and reconfigure fuse boxes.
  * `'Cable'`: Connect or repair electrical cabling.

> 📌 You can create additional mission zones by duplicating the structure and customizing the coordinates and job types.

<figure><img src="/files/gdWYwGeLhS3FHIcrf8Ja" alt=""><figcaption></figcaption></figure>

## Mini Games Options

Defines task-specific settings for each type of electrician job:

***

**`['Light']`**

Configuration for light replacement or repair tasks:

* `time`:\
  Duration of the task in **seconds** (randomized range, e.g., `25–35`).
* `fuses`:\
  Number of fuses the player needs to find during the mini-task (randomized, e.g., `2–4`).

***

**`['Cable']`**

Configuration for cable connection or repair tasks:

* `time`:\
  Duration of the task in **seconds** (randomized range, e.g., `8–12`).

> 📌 You can adjust the timing and complexity of each task type independently for better balance and immersion.

<figure><img src="/files/o8btGJpJ5aMCmWUQsdWt" alt=""><figcaption></figcaption></figure>


---

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://wiki.qfdevelopers.com/scripts/editor-8/configuration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
