# Setup

This page covers the setup work you should finish before balancing routes: dependencies, `server.cfg` order, database behavior, localization, and menu item setup.

## Required Dependencies

* [oxmysql](https://github.com/overextended/oxmysql/releases)
* [ox\_lib](https://github.com/overextended/ox_lib/releases)
* `0r_lib`
* `excavator-vehicles`
* `excavator-map`
* Your framework: `es_extended`, `qb-core`, or `qbx_core`

## Recommended server.cfg Start Order

```lua
start oxmysql
start ox_lib
start framework -- es_extended, qb-core, or qbx_core
-- other resources
start 0r_lib
start excavator-vehicles
start excavator-map
start 0r-excavatorjob
```

## Database

You do not need to import SQL manually for this script.

The real resource creates the profile table automatically in `modules/mysql/server.lua`:

```sql
CREATE TABLE `0resmon_excavator_job_profiles`
```

## Localization

Language selection for this resource starts from:

```lua
config/main.lua
```

Default source value:

```lua
Config.locale = "en"
```

If you want another language:

1. Change `Config.locale` in `config/main.lua`
2. Make sure a matching locale file exists in `locales/`

## Ready To Paste Item Tables

This script only needs one main item from the real source:

* `excavator_op_tablet`

## OX Inventory

{% tabs fullWidth="false" %}
{% tab title="items.lua" %}

```lua
["excavator_op_tablet"] = { label = "Excavator Tablet", weight = 100, stack = false },
```

{% endtab %}
{% endtabs %}

## QB Core

{% tabs fullWidth="false" %}
{% tab title="shared/items.lua" %}

```lua
excavator_op_tablet = { name = "excavator_op_tablet", label = "Excavator Tablet", weight = 100, type = "item", image = "excavator_op_tablet.png", unique = false, useable = true, shouldClose = false },
```

{% endtab %}
{% endtabs %}

## Final Checklist

* `0r_lib` starts without errors
* `excavator-vehicles` starts without errors
* `excavator-map` starts without errors
* `0r-excavatorjob` starts without errors
* `excavator_op_tablet` exists if `openWithItem.active = true`
* The profile table is created automatically in MySQL


---

# Agent Instructions: 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:

```
GET https://docs.0resmon.org/0resmon/0r-resources/0r-excavatorjob/setup.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
