---
description: Electronic Anklet & Phone Tracker System FiveM
---

# Tracker System

{% embed url="https://www.youtube.com/watch?v=kbyI61W4IJo" %}
Video Preview Tracker System
{% endembed %}

This script is available both escrow version and source open&#x20;

{% hint style="success" %}
Buy at: [Ruxo Shop - Tracker System](https://ruxo-shop.tebex.io/package/5876275)
{% endhint %}

## Dependencies

* ESX

## Jobs Allowed

You can manage what jobs can use the tracker

````lua
```lua
Config.AuthorizedJobShare = {
    ['police'] = true,
    ['sheriff'] = false,
    ['fbi'] = false,
    ['army'] = false
}
```
````

## Range

You can set how much rage an anklet will have, in config you will find the maximum range:

```lua
Config.Maximumboundary = 5000.0
```

## Commands

You can use `/tracker` command to open the tracker system with one of the allowed jobs in config

<figure><img src="https://513767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5DKmJ55J2qbdpU88AvJi%2Fuploads%2FnNxPcEDIY0E8uO2vauJF%2F448ee7ef42effee6d3253faf33ee9a636b13344f.png?alt=media&#x26;token=8b23deba-2002-481a-800c-730aeddc1662" alt=""><figcaption><p>Tracker System</p></figcaption></figure>

## Phone Tracker

You can decide how much time the blip to track phones will persist on game map, this is done for game purpose (sometimes this feature can be OP for police) and for performance.

In this case 5 is 25 seconds: (Current: 5 \* 5000 = 25 seconds)

```lua

Config.Cont = 5 --Duration for phone traker map blips (Current: 5 * 5000 = 25 seconds)

```

## Animations

You can disable all animations from config

```lua
Config.RpEmotes = true
```

{% hint style="info" %}
If you enable RpEmotes option, you need a script for animations
{% endhint %}



{% tabs %}
{% tab title="Rp Emotes" %}
If you have RpEmotes you can leave the exports like this

you can change the "tablet" animation with any other animation

```lua
-- Animation
Config.EmoteTablet = function() -- You can change here events for animation
    exports["rpemotes"]:EmoteCommandStart("tablet", nil)
end

Config.EmoteReset = function() -- You can change here events for animation
    exports["rpemotes"]:EmoteCancel()
end
```
{% endtab %}

{% tab title="Other" %}
If you have a different script for animations just change the exports

```lua
-- Animation
Config.EmoteTablet = function() -- You can change here events for animation
    exports["Your Export"]:??
end

Config.EmoteReset = function() -- You can change here events for animation
    exports["Your Export"]:??
end
```
{% endtab %}
{% endtabs %}

#### Blips Appearance

In config you can edit blips type, color, and scale

```lua
Config.TargetBlipInformations = {
    Sprite = 459,
    Color = 2,
    Scale = 1.4,
    Display = 2
}

Config.CarTargetBlipInformations = {
    Sprite = 645,
    Color = 2,
    Scale = 1.4,
    Display = 2
}
```

## Logs

You can log when a new anklet is created and when is removed, just add your Discord Webhook link in config file

```lua
-- Log webhooks for discord
Config.WebhookNewAnklet= ""

Config.WebhookRemoveAnklet= ""
```

## Translations

You can select with this settings what local you prefer

```lua

Config.Local = "en" -- it,es,fr,en,de Transaltion

```

You can add more locals, just add a code block like this in config file

```lua
Config.TranslateEN = {
    blips_off = "Blips deactivated",
    blips_on = "Blips activated",
    leave = "Player escaped with ankle monitor: ",
    invalid_limit = "Please enter a valid limit",
    max_range = "Please enter a number lower as boundary. Maximum: ",
    tracked = "The target already has a tracking bracelet.",
    no_player = "There is no player near you",
    removed = "Successfully removed the tracker",
    no_tracker = "The target does not have a tracking bracelet.",
    quit = "Player left the server with ankle monitor: ",
    cut = "Someone cut an anklet",
    success = "Done",
    car_success = "Tracker connected to vehicle",
    car_error = "No cars nearby",
    jammer_on = "Jammer on",
}
```

For example:

```
Config.TranslateJP = {
    blips_off = "Your new translation",
```

## SQL

This script works with any db, you can adapt everything from config

The original query for phone is:

{% code overflow="wrap" %}
```lua
('SELECT '..Config.DbIdentifier ..' FROM '..Config.PhoneDbTable..' WHERE '..Config.DbPhoneNumber ..' = @phone_number')
```
{% endcode %}

```lua
Config.PhoneDbTable = "users" -- users db table

Config.DbIdentifier = "identifier" --identifier field inside users db table

Config.DbPhoneNumber = "phone_number" --phone field inside users db table
```

You Must add this table in your DB, If you didn't recieve SQL file:

{% file src="https://513767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5DKmJ55J2qbdpU88AvJi%2Fuploads%2FbvSHxiF2gULNa1tbTGG9%2Ftracker.sql?alt=media&token=515f62da-cfbc-42bf-bbb4-8073c467f648" %}

## Items and Props

You can disable game props like the anklet when you add a new anklet to a player from config

```lua
Config.Props = true --Enable props when add a new tracker
```

You need also to create the items that players will use with tracker system, or use existing items

Configure item names in config:

{% code overflow="wrap" %}
```lua
Config.ItemNames = {BoltCutter = 'tronchesi', CarTracker = 'cartracker', CarJam = 'carjammer'}

```
{% endcode %}

Also you can decide what items will be removed from player inventory after usage:

{% code overflow="wrap" %}
```lua
Config.RemoveItemsUponUsage = {BoltCutter = true, CarJam = true, CarTracker = true}
```
{% endcode %}

Set how much time (seconds) a player need to add or remove an anklet:

```lua
Config.InstallTimes = {
    Tracker = 5, -- How Many seconds will take to install the tracker
    BoltCutter = 7 -- how many seconds will take to deattach the tracker
}
```

## Notifications

Tracker system works with default esx notification system, if you have a custom script, change the export inside the config:

```lua
-- NOTIFICATION
Config.Notification = function(message, type) -- You can change here events for notifications
    TriggerEvent("esx:showNotification", message, type) -- type can be "info", "error", "success"
end
```

## Support

If you need more help:

{% content-ref url="../overview/support" %}
[support](../overview/support)
{% endcontent-ref %}
