# Configuration Guide

## Weed Lab

```lua
gathering = {
    requiredItems = { -- Required items to start the gathering process
        ["plant_spray"] = 1,
    },
    removeItem = false, -- Remove the required items after the process
    coords = {
        { 
            coords = vector3(1057.61, -3196.85, -39.16), 
            offset = vector3(-0.9, 0.1, -1.18), 
            rotation = vector3(0.0, 0.0, 90.0) 
        },
        { 
            coords = vector3(1060.54, -3193.35, -39.16), 
            offset = vector3(-0.9, 0.1, -1.18), 
            rotation = vector3(0.0, 0.0, 180.0) 
        },
        { 
            coords = vector3(1056.25, -3192.8, -39.16), 
            offset = vector3(-0.9, 0.1, -1.18), 
            rotation = vector3(0.0, 0.0, 270.0) 
        },
        { 
            coords = vector3(1053.94, -3195.96, -39.16), 
            offset = vector3(-0.9, 0.1, -1.18), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
    },
    itemName = "weed_bud", -- Item name to add to the player inventory
    itemCount = 1, -- Item count to add to the player inventory
},
packing = {
    requiredItems = { -- Required items to start the pack process
        ["weed_bud"] = 1,
        ["empty_package"] = 1,
    },
    removeItem = true, -- Remove the required items after the process
    coords = {
        { 
            coords = vector3(1039.2, -3205.11, -38.17), 
            offset = vector3(-0.76, 0.87, -0.98), 
            rotation = vector3(0.0, 0.0, 90.0) 
        },
        { 
            coords = vector3(1037.52, -3205.37, -38.17), 
            offset = vector3(0.76, 0.70, -0.98), 
            rotation = vector3(0.0, 0.0, -90.0) 
        },
        { 
            coords = vector3(1034.67, -3205.44, -38.17), 
            offset = vector3(-0.76, 0.87, -0.98), 
            rotation = vector3(0.0, 0.0, 90.0) 
        },
        { 
            coords = vector3(1032.95, -3205.49, -38.17), 
            offset = vector3(0.76, 0.70, -0.98), 
            rotation = vector3(0.0, 0.0, -90.0) 
        },
        { 
            coords = vector3(1034.15, -3203.81, -38.17), 
            offset = vector3(-0.65, 0.79, -0.98), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
    },
    itemName = "weed_packed", -- Item name to add to the player inventory
    itemCount = 1 -- Item count to add to the player inventory
},
```

## Meth Lab

```lua
multiProcess = false, -- If true, more than one person can do the stages
cooking = {
    requiredItems = { -- Required items to start the cooking process
        ["meth_ammonia"] = 1,
        ["meth_sacid"] = 1,
    },
    hcacidItemName = "meth_hcacid", 
    removeItem = true, -- Remove the required items after the process

    baseMixtureAmount = 1, -- number of items given upon completing the mixture. (final amount will depend on the quality.)
    qualityMultiplier = 1.5, -- multiplier for the quality of the mixture. (final amount = baseMixtureAmount + ((quality / 20) * qualityMultiplier))
    
    uniqueOrder = true, -- If true, the amounts will be different for each user. If false, the amounts in the orderlist will be for each user.
    uniqueOrderList = {
        ammonia = 65, -- range -> 1 - 100
        hcacid = 30, -- range -> 1 - 100
        sacid = 10, -- range -> 1 - 100
    },
    orderTolerance = 5, -- tolerance for the order amounts

    coords = vector3(1005.74, -3200.39, -38.52),
    offset = vector3(5.0, 2.0, -0.40),
    rotation = vector3(0.0, 0.0, 0.0),
    itemName = "mext_mixture", -- Item name to be given after the process
},
furnace = {
    coords = vector3(1002.83, -3200.05, -38.99),
    uniqueHeat = true, -- If true, everyone's temperature will be different.
    uniqueHeatLevel = 63, -- If uniqueHeat is false, this temperature will be valid for everyone
    temperatureRange = {40, 80}, -- random temperature value will be assigned between these two values
    temperatureTolerance = 7, -- tolerance for the temperature
    temperatureAttempts = 3, -- number of attempts player has to get the correct temperature
    cookTime = 0.5, -- (minutes)
    explosionDamage = 100, -- Explosion damage when the temperature is exceeded
},
mixer = {
    coords = vector3(1004.19, -3196.5, -38.99),
    requiredItems = { -- Required items to start the mixing process
        ["lithium"] = 1,
        ["phosphorus"] = 1,
    },
    removeItem = true, -- Remove the required items after the process
    
    baseBeakerAmount = 1, -- number of items given upon completing the beaker. (final amount will depend on the quality.)
    qualityMultiplier = 2, -- multiplier for the quality of the beaker. (final amount = baseBeakerAmount + ((quality / 20) * qualityMultiplier))

    uniqueReaction = true, -- If true, the amounts will be different for each user. If false, the amounts in the reactionList will be for each user.
    reactionList = {
        phosphorus = 3, -- range -> 1 - 10
        lithium = 1, -- range -> 1 - 10
    },
    orderTolerance = 2, -- If the difference between the order and the player's mixture is less than this value, the quality will be higher.
   
    itemName = "meth_beaker", -- Item name to be given after the process
},
tray = {
    requiredItems = { -- Required items to start the tray process
        ["meth_mixture"] = 1,
        ["meth_beaker"] = 1,
        ["empty_tray"] = 1,
    },
    removeItem = true, -- Remove the required items after the process

    maxTrayAmount = 3, -- Maximum number of trays that can be placed
    coolingTime = 0.5, -- (minutes) time it takes for the tray to cool down

    coords = vector3(1007.86, -3195.07, -38.99),

    itemName = "meth_tray", -- Item name to be given after the process
    itemCount = 1 -- Number of items to be given
},
hammer = {
    requiredItems = { -- Required items to start the hammer process
        ["meth_tray"] = 1,
    },
    removeItem = true, -- Remove the required items after the process

    coords = vector3(1016.44, -3194.87, -38.99),
    offset = vector3(-3.16, -1.75, -1.0),
    rotation = vector3(0.0, 0.0, 0.0),

    itemName = { -- Item name to be given after the process [itemName] = itemAmount
        ["meth_crystal"] = 12,
        ["empty_tray"] = 1
    },
},
packing = {
    requiredItems = { -- Required items to start the packing process [itemName] = itemAmount
        ["meth_crystal"] = 6,
        ["empty_package"] = 6
    },
    removeItem = true,

    coords = vector3(1012.07, -3194.95, -38.99),
    offset = vector3(-4.71, -1.52, -1.0),
    rotation = vector3(0.0, 0.0, 0.0),

    itemName = "meth_packed", -- Item name to be given after the process
    itemCount = 6 -- Number of items to be given
},
```

## Coke Lab

```lua
unpacking = {
    requiredItems = { -- Required items to start the unpacking process
        ["powdered_milk"] = 1
    },
    removeItem = true, -- Remove the required items after the process
    coords = {
        { 
            coords = vector3(1088.61, -3195.95, -38.99), 
            offset = vector3(0.09, 0.57, -0.65), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
        { 
            coords = vector3(1097.01, -3195.63, -38.99), 
            offset = vector3(0.09, 0.57, -0.65), 
            rotation = vector3(0.0, 0.0, -180.0) 
        },
    },
    itemName = "coke_pile", -- Item name to add to the player inventory
    itemCount = 3 -- Item count to add to the player inventory
},
cutting = {
    requiredItems = { -- Required items to start the cut process
        ["coke_pile"] = 1
    },
    removeItem = true, -- Remove the required items after the process
    coords = {
        { 
            coords = vector3(1090.27, -3194.92, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
        { 
            coords = vector3(1093.12, -3194.93, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
        { 
            coords = vector3(1095.41, -3194.92, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, 0.0) 
        },
        { 
            coords = vector3(1090.37, -3196.59, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, -180.0) 
        },
        { 
            coords = vector3(1093.03, -3196.58, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, -180.0) 
        },
        { 
            coords = vector3(1095.43, -3196.58, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, -180.0) 
        },
        { 
            coords = vector3(1099.54, -3194.33, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, -90.0) 
        },
        { 
            coords = vector3(1101.75, -3193.67, -38.99), 
            offset = vector3(-1.91, -0.32, -0.64), 
            rotation = vector3(0.0, 0.0, -180.0) 
        },
    },
    itemName = "cutted_coke", -- Item name to add to the player inventory
    itemCount = 6 -- Item count to add to the player inventory
},
packing = {
    requiredItems = { -- Required items to start the pack process
        ["cutted_coke"] = 6
    },
    removeItem = true, -- Remove the required items after the process
    coords = vector3(1101.245, -3198.82, -38.99),
    offset = vector3(-7.66, 2.17, -1.0),
    rotation = vector3(0.0, 0.0, 0.0),
    itemName = "coke_packed", -- Item name to add to the player inventory
    itemCount = 12 -- Item count to add to the player inventory
},
```

## Acid Lab

```lua
bottling = {
    requiredItems = { -- Required items to start the bottling process
        ["empty_bottle"] = 6
    },
    removeItem = true, -- Remove the required items after the process

    coords = vector3(484.33, -2626.08, -49.06),
    offset = vector3(0.4, 1.1, -1.0),
    rotation = vector3(0.0, 0.0, 0.0),
    itemName = "acid_bottle", -- Item name to add to the player inventory
    itemCount = 6 -- Item count to add to the player inventory
},
packing = {
    requiredItems = { -- Required items to start the pack process
        ["acid_bottle"] = 6,
    },
    removeItem = true, -- Remove the required items after the process
    
    coords = vector3(488.73, -2624.39, -48.66),
    offset = vector3(-3.63, 0.26, -1.35),
    rotation = vector3(0.0, 0.0, 0.0),
    itemName = "acid", -- Item name to add to the player inventory
    itemCount = 6 -- Item count to add to the player inventory
}
```

## Main

```lua
Config.general = {
    -- bucket = 5000,
    fallbackCoords = vector3(299.79, -579.98, 43.26),
}

Config.stashSettings = {
    maxSlot = 20,
    maxWeight = 20000
}

Config.labs = {
    emptyLab = {
        camCoords = {
            {
                startCoords = vector4(1065.79, -3181.6, -38.22, 147.71),
                endCoords = vector4(1050.33, -3204.05, -38.22, 96.67),
            },
            {
                startCoords = vector4(1031.45, -3205.58, -37.34, 274.5),
                endCoords = vector4(1062.12, -3204.53, -37.84, 34.79),
            },
        },
        labs = {
            {
                labName = "Empty Lab No.1",
                price = 100000,
                enterCoords = vector3(1108.84, -2256.84, 30.94),
                exitCoords = vector3(1066.0, -3183.48, -39.16),
                stashCoords = vector3(1039.13, -3196.01, -38.17)
            },
        },
    },
    cokeLab = {
        camCoords = {
            {
                startCoords = vector4(1087.86, -3188.51, -38.11, 203.0),
                endCoords = vector4(1102.13, -3195.99, -38.11, 91.74),
            },
            {
                startCoords = vector4(1102.13, -3195.99, -38.11, 91.74),
                endCoords = vector4(1086.89, -3195.64, -38.11, 91.74),
            },
        },
        labs = {
            {
                labName = "Coke Lab No.1",
                price = 100000,
                enterCoords = vector3(809.84, -490.93, 30.63),
                exitCoords = vector3(1088.56, -3188.12, -39.0),
                stashCoords = vector3(1087.15, -3197.81, -38.99),
            },
        },
    },
    methLab = {
        camCoords = {
            {
                startCoords = vector4(998.21, -3198.98, -36.59, 271.30),
                endCoords = vector4(1016.19, -3201.78, -36.59, 62.79),
            },
            {
                startCoords = vector4(1016.19, -3201.78, -36.59, 62.79),
                endCoords = vector4(999.77, -3194.49, -36.59, 245.62),
            },
        },
        labs = {
            {
                labName = "Meth Lab No.1",
                price = 100000,
                enterCoords = vector3(1189.94, 2651.22, 37.84),
                exitCoords = vector3(996.89, -3200.64, -36.39),
                stashCoords = vector3(1003.22, -3194.96, -38.99),
            },
        },
    },
    acidLab = {
        camCoords = {
            {
                startCoords = vector4(480.92, -2624.96, -48.62, 266.71),
                endCoords = vector4(488.71, -2625.01, -48.62, 270.92),
            },
        },
        labs = {
            {
                labName = "Acid Lab No.1",
                price = 100000,
                enterCoords = vector3(101.14, 3652.63, 40.43),
                exitCoords = vector3(482.22, -2623.8, -49.06),
                stashCoords = vector3(481.1, -2625.7, -48.66),
            },
        },
    },
    weedLab = {
        camCoords = {
            {
                startCoords = vector4(1065.79, -3181.6, -38.22, 147.71),
                endCoords = vector4(1050.33, -3204.05, -38.22, 96.67),
            },
            {
                startCoords = vector4(1031.45, -3205.58, -37.34, 274.5),
                endCoords = vector4(1062.12, -3204.53, -37.84, 34.79),
            },
        },
        labs = {
            {
                labName = "Weed Lab No.1",
                price = 100000,
                enterCoords = vector3(951.24, -1711.76, 30.92),
                exitCoords = vector3(1066.0, -3183.48, -39.1),
                stashCoords = vector3(1039.13, -3196.01, -38.17)
            },
        },
    }
}
```


---

# 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://docs.rainmad.com/resources/drugs-v-laboratories/configuration-guide.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.
