> For the complete documentation index, see [llms.txt](https://kierandev.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kierandev.gitbook.io/documentation/tmc-resources/locker-boxes/config-options.md).

# Config Options

## Item

```lua
-- Item needed to fit a lockerbox
Config.Item = 'car_lockerbox'
```

## Allow removing from car

```lua
-- Allow removing them from the car
Config.AllowRemove = true     
```

## Receive back item

```lua
-- If the player gets the item back when they remove it
Config.GiveItemOnRemove = true 
```

## Wipe stash on removal

```lua
-- Does the stash get wiped when they remove the locker
Config.WipeOnRemove = true   
```

## Police raid lockerboxes

```lua
-- Raid settings for police
Config.RaidTools = {
    {
        item = 'police_stormram',
        jobs  = {
            'police',
            'sheriff',
            'bcso',
        },
    },
}
```

## Inventory config

```lua
-- Inventory settings
Config.Inventory = {
    SlotCount = 20,
    MaxWeight = 10000,
    Title = 'Vehicle Lockerbox',
}
```

## Civilian box blacklist

```lua
-- Item's that cant be put into locker boxes (excludes pd lockers)
Config.ItemBlacklist = {
    Enabled = true,
    Items = {
        'weapon_pistol',
        'weapon_pistol50',
        'weapon_combatpistol',
    }
}
```

## Pre-Installed vehicle classes

```lua
-- Pre installed classes with locker boxes (police)
Config.PreInstalledClasses = {
    Enabled = true,
    Classes = {
        [18] = {
            Label = 'Emergency Locker',
            AuthorisedJobs = {
                'police',
                'sheriff',
                'bcso',
            },
            Inventory = {
                SlotCount = 40,
                MaxWeight = 30000,
                Title = 'Police Equipment Locker',
            },
            ItemBlacklist = {
                Enabled = false,
                Items = {}
            },
            RequirePin = false,
        }
    }
}
```

## Break into police lockers

```lua
-- If players can attempt to break into pd boxes
Config.PoliceBreakIn = {
    Enabled = true,
    BreakInItem = 'radio',
    RemoveItemOnSuccess = true,
    RemoveItemOnFailureChance = 40,
    BreachAccessTime = 300000,
    StashTimeout = 30000,
    Minigame = {
        Name    = 'Lockbox',
        Settings = {
            difficulty   = 3,
            speed        = 3,
            attempts     = 2,
            stages       = 3,
            stageTimeout = 12000,
        },
    },
    Dispatch = {
        Enabled     = false,
        Chance      = 100,
        JobType     = { 'police', 'sheriff', 'bcso' },
        Title       = 'Police locker breach',
        Description = 'A police locker is being breached in a vehicle.',
        Urgency     = 2,
    },
}
```

## Progressbars

```lua
-- progressbar for installing lockerbox
Config.InstallProgressBar = {
    Duration = 8000,
    Title = 'Installing Lockerbox',
    SubTitle = 'Securing to vehicle frame...',
    canCancel = true,
    disableMovement = true,
    disableCarMovement = true,
    disableMouse = false,
    disableCombat = true,
    ragdollCancel = true,
}

-- progressbar for opening lockerbox
Config.OpenProgressBar = {
    Duration = 3000,
    Title = 'Opening Lockerbox',
    SubTitle = 'Entering combination...',
    canCancel = false,
    disableMovement = true,
    disableCarMovement = true,
    disableMouse = false,
    disableCombat = true,
    ragdollCancel = false,
}

-- progressbar for raiding police lockerbox
Config.RaidProgressBar = {
    Duration = 5000,
    Title = 'Raiding Lockerbox',
    SubTitle = 'Breaching the locker...',
    canCancel = false,
    disableMovement = true,
    disableCarMovement = true,
    disableMouse = false,
    disableCombat = true,
    ragdollCancel = false,
}

-- progressbar for removing lockerbox
Config.RemoveProgressBar = {
    Duration = 6000,
    Title = 'Removing Lockerbox',
    SubTitle = 'Unbolting from vehicle frame...',
    canCancel = true,
    disableMovement = true,
    disableCarMovement = true,
    disableMouse = false,
    disableCombat = true,
    ragdollCancel = true,
}
```

## Civilian Radial

```lua
-- Radial menu settings
Config.RadialMenu = {
    RootId = 'lockerbox_root',
    DisplayName = 'Lockerbox',
    Icon = 'box-open',
    IconCategory = 'solid',
}
```

## Police Radial

```lua
-- Radial menu settings for police lockers
Config.PoliceRadialMenu = {
    Enabled = true,
    RootId = 'police_locker_root',
    DisplayName = 'Police Locker',
    Icon = 'box-open',
    IconCategory = 'solid',
}
```

## Notifications

```lua
-- Notification messages
Config.Notify = {
    NotInVehicle = {
        Message = 'You must be inside a vehicle to use this item!',
        Type = 'error',
        Duration = 4000,
    },
    NotOwnVehicle = {
        Message = 'This vehicle does not belong to you!',
        Type = 'error',
        Duration = 4000,
    },
    AlreadyInstalled = {
        Message = 'This vehicle already has a lockerbox installed!',
        Type = 'error',
        Duration = 4000,
    },
    InstallSuccess = {
        Message = 'Lockerbox successfully installed!',
        Type = 'success',
        Duration = 4000,
    },
    InstallCancelled = {
        Message = 'Lockerbox installation cancelled.',
        Type = 'error',
        Duration = 3000,
    },
    WrongPin = {
        Message = 'Incorrect PIN! Access denied.',
        Type = 'error',
        Duration = 4000,
    },
    PinChanged = {
        Message = 'PIN successfully updated!',
        Type = 'success',
        Duration = 4000,
    },
    RemoveSuccess = {
        Message = 'Lockerbox removed. All contents have been wiped.',
        Type = 'success',
        Duration = 5000,
    },
    RemoveCancelled = {
        Message = 'Lockerbox removal cancelled.',
        Type = 'error',
        Duration = 3000,
    },
    NoLockerbox = {
        Message = 'This vehicle does not have a lockerbox installed.',
        Type = 'error',
        Duration = 4000,
    },
    InvalidPin = {
        Message = 'PIN must be exactly 4 digits (numbers only).',
        Type = 'warning',
        Duration = 4000,
    },
    RaidNoTool = {
        Message = 'You need the correct breaching tool to raid this police locker.',
        Type = 'error',
        Duration = 4000,
    },
    RaidFailed = {
        Message = 'Break-in failed! The tool may have been damaged.',
        Type = 'error',
        Duration = 4000,
    },
    RaidSuccess = {
        Message = 'Break-in successful. Accessing the police locker...',
        Type = 'success',
        Duration = 4000,
    },
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://kierandev.gitbook.io/documentation/tmc-resources/locker-boxes/config-options.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.
