> For the complete documentation index, see [llms.txt](https://zat-scripts.gitbook.io/zat-scripts/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zat-scripts.gitbook.io/zat-scripts/qbcore/laundromat/configuration.md).

# Configuration

## The config.lua

```lua
Config = {}

Config.Framework        = "qb" -- "qb"
Config.Inventory        = "ox" -- "ps", "qb", "ox", "qs"
Config.QBInventory      = "old" -- new
Config.Target           = "qb" -- ox !!!!!!!!! IMPORTANT
Config.FrameworkPseudo  = 'qb-core'
Config.Doorlock         = 'ox' -- ox
Config.phone            = 'qb-phone'
Config.ZoneDebug        = false
Config.UseNPCDialog     = true
Config.UseInteract      = true
Config.UseGangApp       = true

---------- Only if Config.UseNPCDialog is set to false ---------------         
                                                                    --
Config.NPC = {                                                      --
    model  = "a_m_m_eastsa_02",                                     --
    anim   = "CODE_HUMAN_MEDIC_TIME_OF_DEATH",                      --
    coords = vector4(510.69, -1951.57, 23.99, 307.67)               --
}                                                                   -- 
Config.ShopItems = {                                                --
    [1] = {                                                         --
        name = "laundromatusb",                                     --
        price = 1000,                                               --
        amount = 50,                                                --
        info = {},                                                  --
        type = "item",                                              --
        slot = 1,                                                   --
    }                                                               --
}                                   --
----------------------------------------------------------------------
Config.MiniumCops   = 0
Config.zatui        = 'zat-ui' -- set 'qb-menu', if you renamed the 'zat-ui' resource name to 'qb-menu'
Config.RequiredItem = 'laundromatusb'
Config.GenerateTime = 1 -- time in minutes
Config.Fail         = 3 -- number of fails to cancel the Safe 
Config.AlarmUrl     = 'https://www.youtube.com/watch?v=EnRK43JkxJk' -- alarm URL
Config.AlarmStop    = 3 -- 3 minutes and the alarm sound will stop
Config.Dispatch     = 'qb-core' -- cd_dispatch, ps-dispatch
Config.Timeout      = 30 -- 30 minutes cooldown between each laundromat (doors are closed again after this timeout so make it as longer as you can)
Config.PoliceJobs   = {
    'police'
}
Config.ChoppingMinigame = {
    timer = 7,
    cols = 6,
    rows = 3,
    letters = 15,
}

Config.BreakMinigame = {
    speed = 20
}

Config.BossMinigame = {
    circles = 5,
    time = 40,
}

Config.Generator = {coords = vector3(78.90, -1562.24, 34.70), heading = 141.64} -- heading is used for animation heading
Config.CutPower  = {coords = vector3(98.11, -1558.70, 30.10), heading = 53.90} -- heading is used for animation heading
Config.Safe      = {coords = vector3(95.950, -1555.21, 30.01), open_h = 120.0, close_h = 50.0, model  = -1992154984} -- open heading and closed heading.
Config.Slots = 2 -- laundromat safe slots
-- random Safe Reward from the list below.
-- feel free to add/modify the list below.t
Config.SafeRewards = {
    [1] = { name = 'rollcash', info = { worth = 2650 }, amount = 5},
    [2] = { name = 'markedbills', info = { worth = 5620 }, amount = 2},
    [3] = { name = 'goldbar', info = { }, amount = 3},
}
-- 3% to get a rare reward from the list below
-- feel free to add/modify the list below.
Config.RareRewardChance = 3 
Config.SafeRareRewards = {
    [1] = { name = 'blueprint', info = { type = "thermite" }, amount = 1},
}
-- random Usb will be spawned on the table from the list below.
-- feel free to add/modify the list below.
Config.Usbs = {
    [1] = { model = 'hei_prop_hst_usb_drive', coords = vector3(95.18, -1556.87, 29.54), name = 'trojan_usb', info = {}, amount = 1},
}
-- random Break Reward from the list below.
-- feel free to add/modify the list below.
Config.WMRewards = {
    [1] = { name = 'goldcoin', info = {}, min = 1, max = 50},
}
Config.Washmachines = {
    [1]  = {coords = vector3(89.20, -1556.84, 29.53), busy = false},
    [2]  = {coords = vector3(89.61, -1557.38, 29.48), busy = false},
    [3]  = {coords = vector3(90.22, -1557.80, 29.53), busy = false},
    [4]  = {coords = vector3(90.78, -1558.33, 29.47), busy = false},
    [5]  = {coords = vector3(91.31, -1558.79, 29.53), busy = false},
    [6]  = {coords = vector3(91.89, -1559.27, 29.53), busy = false},
    [7]  = {coords = vector3(92.45, -1559.78, 29.48), busy = false},
    [8]  = {coords = vector3(91.33, -1561.10, 29.53), busy = false},
    [9]  = {coords = vector3(90.78, -1560.61, 29.48), busy = false},
    [10] = {coords = vector3(90.20, -1560.16, 29.53), busy = false},
    [11] = {coords = vector3(89.65, -1559.66, 29.48), busy = false},
    [12] = {coords = vector3(89.05, -1559.24, 29.53), busy = false},
    [13] = {coords = vector3(91.39, -1564.65, 29.53), busy = false},
    [14] = {coords = vector3(91.84, -1564.08, 29.48), busy = false},
    [15] = {coords = vector3(92.32, -1563.57, 29.53), busy = false},
    [16] = {coords = vector3(92.79, -1563.00, 29.53), busy = false},
    [17] = {coords = vector3(93.26, -1562.42, 29.53), busy = false},
}

Config.Props = {
    ['top'] = {
        coords = vector4(78.90, -1562.24, 33.30, 140.00),
        prop = 'm23_1_prop_m31_electricbox_01a',
    },
    ['office'] = {
        coords = vector4(98.12, -1558.73, 30.00, 52.97),
        prop = 'm23_1_prop_m31_keypad_01a',
    }
}
```


---

# 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://zat-scripts.gitbook.io/zat-scripts/qbcore/laundromat/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.
