# Territory Configuration

```lua
['Southern Grove'] = { -- name of the zone. this will also be the name of the polyzone if enabled
        Show = true,
        NPC = vector4(115.5239, -1989.0295, 17.4042, 255.1343),
        ProductionTime = 300, -- Every 5 minutes (300 seconds), NOT SAVED BETWEEN RESTARTS -> EVERYTHING MORE THAN RESTART INTERVAL WILL NOT TAKE EFFECT
        DrugItem = "weedbrick", -- Item that gets produced
        MaxStock = 1000,

        -- NOTE THESE ARE NOT SAVED BETWEEN RESTARTS, SO EVERYTHING MORE THAN RESTART INTERVAL WILL NOT TAKE EFFECT
        ProgressDecayTime = 6,  -- Time in hours before the progress decays -> 6 = every 6 hours the progress will decay by ProgressDecayAmount
        ProgressDecayAmount = 1, -- Amount of progress that gets decayed every ProgressDecayTime

        Vector = vector3(116.5874, -1948.5792, 20.6988), -- blip location
        Width = 120.0, -- must end with a decimal value
        Length = 120.0, -- ^^
        
        Rotation = 50, -- rotation of the rectangle
        Color = 0,
        Alpha = 155,

        Flash = false,
        MS = 0, -- flashes the blip every x milliseconds 

        -- polyzones. must have ps-zones
        PolyZone = true, -- set to true to create a polyzone for this blip.
        DebugPoly = false, -- draws the poly
        MinZ = 20.8037 - 10, -- make sure to set 
        MaxZ = 20.8037 + 10, -- ^^
        Points = false, -- see the note
        
        -- trigger an event that contains whatever codeblocks you want to run.
        PlayerIn = { event = 'example:1' }, -- the event that triggers when a player enters this zone.
        PlayerOut = { event = 'example:2' },  -- the event that triggers when a player leaves this zone.

    },
```

```
Show = true
```

Enables this zone.

```
NPC = vector4(115.5239, -1989.0295, 17.4042, 255.1343)
```

NPC location of this specific territory.

### Production

Each territory produces its own item. You can configure this feature here.

```
ProductionTime = 300
```

Time till a new item is produced in this territory.

```
DrugItem = "weedbrick"
```

Item that gets produced in this territory.

```
MaxStock = 1000
```

The amount of items this territory stores before running full.

### Progress Decay

Progress decay intervals are not saved between restart, meaning the amount of hours for decay should be less than your servers restart interval.

```
ProgressDecayTime = 6,
```

Time in hours before the progress decays.

```
ProgressDecayAmount = 1
```

Amount of progress a gang looses on this territory every interval.

### Blip Settings

```
Vector = vector3(116.5874, -1948.5792, 20.6988)
```

Center points of the zone.

```
Width = 120.0
```

Width of a zone, must end with a decimal value.

```
Length = 120.0
```

Length of a zone, must end with a decimal value.

```
Rotation = 50
```

The rotation angle of a zone.

```
Color = 0
```

Default color of a zone, only showing when its not captured or no gang color is set.

```lua
Flash = false
```

True makes the blip/marker flash on the map. (not recommended)

```lua
MS = 0
```

Flash interval if flash is enabled. (not recommended)

### Polyzone Settings

```
PolyZone = true
```

This needs to be true to draw the actual 3d zones of this territory. If this is false the territory wont work.

```
DebugPoly = false
```

Enables visual render of zones, useful when adjusting zone position.

```lua
MinZ = 20.8037 - 10
```

The lowest point to draw the zone from, make sure to get the lowest point of your zone and deduct another 10 to make sure the zone renders effectively.

```lua
MaxZ = 20.8037 + 10
```

The highest point to draw the zone from, make sure to get the highest point of your zone (including rooftops) and add another 10 to make sure the zone renders effectively.

### Custom Integrations

You can add custom functions to be called by using the following settings. The example event simply calls a notify when a player enters or leaves a zone.

<pre class="language-lua"><code class="lang-lua"><strong>PlayerIn = { event = 'example:1' },
</strong>PlayerOut = { event = 'example:2' }
</code></pre>

PlayerIn event will be called when a player enters this zone. (Client-Side)\
PlayerOut event will be called when a player leaves this zone. (Client-Side)


---

# 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://jp5m-scripts.gitbook.io/docs/jp-territories/configuration/territory-configuration.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.
