# Config

**You can change individual values in config.lua**

## Debug

If you see anything wrong and you would like to know more, for example to show in support ticket, you can set `Config.Debug = true` to see more debug info in client (F8) console ingame, or server console.

## DeleteAllCommandName

This command could be used by player with group listed in `Config.AllowedGroups` and it deletes all existing camping props/objects placed on server.

## AllowedDistance

Biggest distance allowed for each item type to be interacted with by player. All item types should be filled here.

```lua
Config.AllowedDistance = {
    [Types.TENT] = 12.0,
    [Types.CHAIR] = 3.0,
    [Types.FIREPLACE] = 3.0,
    [Types.GAZEBO] = 10.0,
    [Types.BEER] = 3.0,
}
```

## HeadingSpeed

Defines how fast should be changing of object heading during placement.

## Controls

Defines all controls for object placement

## ChanceToBrokeFlint

When light item is used there is a change that the item breaks. If you want the item to be unbreakable set the value to `0`.

## LightItems

Defines all items that could be used for lighting up the fireplace. All items uses `ChanceToBrokeFlint`.

## Heal in Tent

Defines if players will be healed while in tent.

Config.HealingInterval - defines how often is player healed (in seconds) Config.HealthPerRestore - defines how much % from max health should be player healed in each interval (1 - 100%)

## Destroyable objects

Config.AllowDestroyableObjects - Defines if objects could be destroyed with gunshots. When set to `false` `DestroyChance` and `DestroyableObjects` are both ignored.

Config.DestroyChance - defines chance if object should be destroyed or not (0 - always fail, 100 - always success, 0-100)

```lua
Config.DestroyChance = {
    UNARMED = 0, -- fists, melee attacks without weapons
    MELEE_WEAPONS = 5, -- knife, nightstick, hammer, ...
    RANGED_WEAPONS = 5, -- pistols, smgs, rifles, shotguns, ...
    THROWABLE_WEAPONS = 5, -- grenade, molotov, ...
    EXPLOSION = 100,
    VEHICLE = 100,
    FIRE = 100,
}
```

Config.DestroyableObjects - defines objects which could be destroyed with gunshots.

## beerContainedOptions

Defines which item should be added to player when beerkeg is cleared.

```lua
local beerContainedOptions = {
    ['3_3'] = 'beerkeg',        -- full beerkeg
    ['2_3'] = 'beerkeg_2_3',    -- 2/3 beerkeg
    ['1_3'] = 'beerkeg_1_3',    -- 1/3 beerkeg
    ['0_3'] = 'beerkeg_0_3',    -- empty beerkeg
}
```

## PlaceableObjects

List of all camping objects which could be used.

### FIREPLACE

```lua
{
    object = 'rcore_wood_fire', -- default object without fire
    usableItem = 'fireplace', -- name of item registered as usable for object placement
    type = Types.FIREPLACE, -- this defines the item is FIREPLACE
    options = {
        inFireObject = 'prop_beach_fire', -- propname of object when fireplace is lighted on
    }
},
```

### TENT

```lua
{
    object = 'ba_prop_battle_tent_01', -- default object
    usableItem = 'tent_1', -- name of item registered as usable for object placement
    type = Types.TENT, -- this defines the item is TENT
},
```

### CHAIR

```lua
{
    object = 'prop_skid_chair_01', -- default object
    usableItem = 'chair_1', -- name of item registered as usable for object placement
    type = Types.CHAIR, -- this defines the item is CHAIR
},
```

### GAZEBO

```lua
{
    object = 'prop_gazebo_01', -- default object
    usableItem = 'gazebo_1', -- name of item registered as usable for object placement
    type = Types.GAZEBO, -- this defines the item is GAZEBO
},
```

### BEER

```lua
{
    object = 'prop_keg_01', -- default object
    usableItem = 'beerkeg', -- name of item registered as usable for object placement
    type = Types.BEER, -- this defines the item is BEER
    beerContained = 30.0, --how many liters of beer are in keg
    full = 30.0, -- how many liters of beer are in full keg
    containerItemOptions = beerContainedOptions -- check `beerContainedOptions` section
},
```

## ObjectOffset

You could define offset for each camping object. If object is not placed correctly on the floor during placement you could add offset to it here.

```lua
['rcore_wood_fire'] = vector3(0.0, 0.0, 0.1), -- X, Y, Z
```

## FireCraftable

Defines which items could be cooked on fireplace. You could choose length of cooking and result for each item.

```lua
{
    name = 'raw_chicken', -- item which could be cooked
    result = 'cooked_chicken', -- item player receives after cooking
    failChance = 50, -- (optional) you could define % chance of burning the items and have no result
                     -- 100 always succeeds, 0 always fails
    time = 30 * SECONDS, -- how long it takes to cook the item
    anim = Animation.CHICKEN,
}
```

You could also add additional required items with specific amounts for cooking. Amount is `1` by default if not specified

```lua
{
    name = 'raw_chicken', -- item which could be cooked
    additionalRequiredItems = {
        {name = 'garlic', amount = 2},
        {name = 'salt'},
    },
    result = 'cooked_chicken', -- item player receives after cooking
    time = 30 * SECONDS, -- how long it takes to cook the item
    anim = Animation.CHICKEN,
}
```
