> For the complete documentation index, see [llms.txt](https://docs.mosotoscripts.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mosotoscripts.com/scripts/mst_taxijob/installation.md).

# Installation

If you aren't familiar with programming or just you don't know how to set up the script, we present our installation guide which is as comprehensive as possible so you don't have any difficulties.

***

## STEP 1 - Download

* Download **mst\_taxijob** and **mst\_bridge** from [Portal](https://portal.cfx.re/assets/granted-assets).

## STEP 2 - Dependencies

{% hint style="info" %}
The script requires dependencies to function properly.
{% endhint %}

**Required:**

* [es\_extended](https://github.com/esx-framework/esx_core/tree/main/%5Bcore%5D/es_extended) or [qb-core](https://github.com/qbcore-framework/qb-core) or [qbx\_core](https://github.com/Qbox-project/qbx_core)
* [mst\_bridge](https://portal.cfx.re/assets/granted-assets)
* [oxmysql](https://github.com/overextended/oxmysql)
* [ox\_lib](https://github.com/communityox/ox_lib/releases)

**Optional:**

* mst\_seatbelt
* mst\_taxivehicles
* [VehicleDeformation](https://github.com/Kiminaze/VehicleDeformation)
* Phone (lb-phone, lb-tablet, yseries, gks-phone, 17Mov\_Phone, codem-phone, okokPhone, qs-smartphone)<br>

## STEP 3 - Resources order

{% hint style="warning" %}
It is recommended that the resources be at the end of the server.cfg
{% endhint %}

<pre class="language-markdown" data-title="SERVER.CFG"><code class="lang-markdown">ensure es_extended/qb-core/qbx_core
ensure oxmysql
ensure ox_lib

ensure inventory
ensure phone
ensure clothing
ensure banking
ensure fuel
ensure target

ensure VehicleDeformation
ensure mst_seatbelt

<strong>ensure mst_bridge
</strong><strong>ensure mst_taxijob
</strong><strong>ensure mst_taxijob_yourPhoneApp
</strong><strong>ensure mst_taxivehicles
</strong></code></pre>

## STEP 4 - Setting up items

{% hint style="danger" %}
Without adding these items to the database, the script will not work!
{% endhint %}

{% tabs %}
{% tab title="MySQL" %}

```sql
DELETE FROM items WHERE name = 'taxitablet';
DELETE FROM items WHERE name = 'taximeter';
DELETE FROM items WHERE name = 'receiptroll';
DELETE FROM items WHERE name = 'receipt';

INSERT INTO `items` (`name`, `label`, `weight`) VALUES
	('taxitablet', 'Taxi Tablet', 1),
	('taximeter', 'Taxi Meter', 1),
	('receiptroll', 'Receipt Roll', 1),
	('receipt', 'Receipt', 1)
;
```

{% endtab %}

{% tab title="QB" %}

```lua
taxitablet     = { name = 'taxitablet',     label = 'Taxi Tablet',  weight = 500, type = 'item', image = 'taxitablet.png',  unique = true,  useable = true,  shouldClose = true, description = 'A driver tablet for managing your taxi job - dispatch, vehicles, stats, rewards and more' },
taximeter      = { name = 'taximeter',      label = 'Taximeter',    weight = 800, type = 'item', image = 'taximeter.png',   unique = false, useable = true,  shouldClose = true, description = 'A physical taximeter device that mounts on your dashboard to calculate fares' },
receiptroll    = { name = 'receiptroll',    label = 'Receipt Roll', weight = 50,  type = 'item', image = 'receiptroll.png', unique = false, useable = true,  shouldClose = true, description = 'A paper roll used to refill the taximeter receipt printer' },
receipt        = { name = 'receipt',        label = 'Receipt',      weight = 1,   type = 'item', image = 'receipt.png',     unique = true,  useable = false, shouldClose = true, description = 'A printed receipt with ride details and fare information' },
```

{% endtab %}

{% tab title="OX" %}

```lua
['taxitablet'] = {
    label = 'Taxi Tablet',
    weight = 500,
    stack = false,
    close = true,
    description = 'A driver tablet for managing your taxi job - dispatch, vehicles, stats, rewards and more',
    client = {
        image = 'taxitablet.png'
    }
},

['taximeter'] = {
    label = 'Taximeter',
    weight = 800,
    stack = true,
    close = true,
    description = 'A physical taximeter device that mounts on your dashboard to calculate fares',
    client = {
        image = 'taximeter.png'
    }
},

['receiptroll'] = {
    label = 'Receipt Roll',
    weight = 50,
    stack = true,
    close = true,
    description = 'A paper roll used to refill the taximeter receipt printer',
    client = {
        image = 'receiptroll.png'
    }
},

['receipt'] = {
    label = 'Receipt',
    weight = 1,
    stack = false,
    close = true,
    description = 'A printed receipt with ride details and fare information',
    client = {
        image = 'receipt.png'
    }
},
```

{% endtab %}

{% tab title="TGIANN" %}
{% code fullWidth="false" %}

```lua
taxitablet = { label = "Taxi Tablet", weight = 500, type = "item", image = "taxitablet.png", unique = true, useable = true, shouldClose = true, description = "A driver tablet for managing your taxi job - dispatch, vehicles, stats, rewards and more" },
taximeter = { label = "Taximeter", weight = 800, type = "item", image = "taximeter.png", unique = false, useable = true, shouldClose = true, description = "A physical taximeter device that mounts on your dashboard to calculate fares" },
receiptroll = { label = "Receipt Roll", weight = 50, type = "item", image = "receiptroll.png", unique = false, useable = true, shouldClose = true, description = "A paper roll used to refill the taximeter receipt printer" },
receipt = { label = "Receipt", weight = 1, type = "item", image = "receipt.png", unique = true, useable = false, shouldClose = true, description = "A printed receipt with ride details and fare information" },
```

{% endcode %}
{% endtab %}
{% endtabs %}

## STEP 5 - Remove Other Taxi Jobs

{% hint style="info" %}
For the script to run without any problems, there should be no other resources connected to the taxi job.
{% endhint %}

{% tabs %}
{% tab title="ESX" %}
Remove **esx\_taxijob** resource.
{% endtab %}

{% tab title="QBCore" %}
Remove **qb\_taxijob** resource.
{% endtab %}

{% tab title="Qbox" %}
Remove **qbx\_taxijob** resource.
{% endtab %}
{% endtabs %}

## STEP 6 - Not working?

We hope you won’t need this step, but if you do, feel free to join our [**Discord**](https://discord.mosotoscripts.com) and open a support ticket. :)
