> For the complete documentation index, see [llms.txt](https://docs.kuzquality.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kuzquality.com/resources/premium-resources/shrooms-cultivation/config.md).

# Config

{% tabs %}
{% tab title="config.lua" %}

```lua
Config = {}

-- To safely restart the script without crashing use "/kq_shrooms:restart"

-- Enables extra debug prints
Config.debug = false

Config.locale = 'en'

-- Item names
Config.items = {
    shelf = 'kq_shroom_shelf',
    table = 'kq_shroom_table',
    planter = 'kq_shroom_planter',
    dryingRack = 'kq_shroom_drying_rack',
    soil = 'kq_shroom_soil',
    wild = 'kq_shroom_wild',
}


-- Growing / watering balance
Config.growing = {
    moisture = {
        -- Moisture added per spray (per click in the watering minigame)
        spray = 6.0,
        -- Moisture lost per minute (default = 4.0 = fully watered planter (100%) lasts ~25 min)
        decayPerMinute = 4.0,
    },
}

Config.shroomEffect = {
    -- Health restored on use
    heal = 30,
    -- Armor raised to at least this on use
    armor = 30,

    timecycle = 'drug_flying_base',
    timecycleStrength = 0.5,

    -- Optional effects
    sounds = true,      -- distant sirens
    idleAnims = true,   -- random idle anims while standing still
    wildShrooms = true, -- ring of hallucinated wild shrooms around the player
}

-- Fixed world objects
Config.prePlaced = {
    shelves = {
        -- { coords = vec3(x, y, z), rotation = vec3(0, 0, 0) },
    },
    tables = {
        -- { coords = vec3(x, y, z), rotation = vec3(0, 0, 0) },
    },
    planters = {
        -- { coords = vec3(x, y, z), rotation = vec3(0, 0, 0) },
    },
    dryingRacks = {
        -- { coords = vec3(x, y, z), rotation = vec3(0, 0, 0) },
    },
}

-- Placement rules
Config.placing = {
    checks = {
        -- Only allow placement in non-default routing buckets (e.g. housing interiors)
        onlyInNonDefaultRoutingBucket = false,

        -- Max objects each player may place, per type
        limits = {
            enabled = false,

            shelf = 4,
            table = 3,
            planter = 6,
            dryingRack = 4,
        },

        housing = {
            -- Only allow placement while inside a house
            enabled = false,

            -- Available systems:
            -- nolag_properties
            -- origen_housing
            -- bcs_housing
            -- qs-housing
            -- vms_housing
            -- sn_properties
            -- loaf_housing
            -- rtx_housing
            system = 'nolag_properties',
        },

        -- Restrict placement to specific areas
        whitelistedAreas = {
            enabled = false,

            showBlips = true,
            areas = {
                {
                    coords = vec3(1085.47, 3591.06, 33.30),
                    radius = 200.0
                },
            }
        }
    },

    -- Only the player who placed an object can pick it up
    onlyOwnerCanPickup = true,
}

-- Wild shrooms
-- Forageable shrooms that spawn inside radius zones
Config.wildShrooms = {
    enabled = true,

    -- Wild shroom models
    models = {
        'kq_shroom_wild_1',
        'kq_shroom_wild_2',
        'kq_shroom_wild_3',
    },

    -- Each spawn point is a bunch of shrooms clustered together
    bunch = {
        min = 1,
        max = 3,

        -- Cluster radius around the bunch point
        spread = 0.04,
    },

    -- Random size multiplier per shroom
    scale = {
        min = 1.1,
        max = 1.8,
    },

    -- Seconds before a picked shroom respawns. Zones will never run out of shrooms
    respawnDelay = 30,

    -- Trip length + strength when a wild shroom is eaten
    effect = {
        duration = 180,
        intensity = 0.8,
    },

    -- Optional map blips at each zone
    blip = {
        enabled = true,
        sprite = 557,
        color = 31,
        alpha = 255,
        scale = 0.8,
        label = 'Wild Shrooms',
        radius = {
            enabled = true,
            color = 31,
            alpha = 70,
        },
    },

    -- Zones where the wild shrooms will spawn
    zones = {
        ['forest_1'] = {
            center = vec3(-1489.33, 4436.79, 20.02),
            radius = 70.0,
            count = 50,
        },
        ['forest_2'] = {
            center = vec3(-1340.51, 4437.17, 27.16),
            radius = 70.0,
            count = 35,
        },
    },
}

-- Misc options
Config.misc = {
    -- Force CLEAR weather inside cellars (also disables weather-sync resources)
    setWeatherInCellars = true,

    -- How hovered props are highlighted in the minigames
    -- 'default' - native FiveM outline (best looking, but can be problematic for QuantV users)
    -- 'box'     - custom line box drawn around the entity bounds
    -- 'glow'    - soft glow light on the hovered entity
    -- 'none'    - no highlight
    interactionIndicator = 'default',
}

-- Recommended to remove these vendors and add these items into your existing shops/robberies etc.
Config.vendors = {
    ['equipment_dealer'] = {
        coords = vec4(-694.35, 5784.47, 16.33, 156.69),
        model = 'a_m_o_salton_01',
        idleAnim = {
            dict = 'amb@world_human_leaning@male@wall@back@foot_up@idle_a',
            anim = 'idle_a',
        },
        items = {
            ['kq_shroom_table']       = { label = 'Shroom Table', price = 8000 },
            ['kq_shroom_shelf']       = { label = 'Shroom Shelf', price = 5000 },
            ['kq_shroom_planter']     = { label = 'Shroom Planter', price = 7000 },
            ['kq_shroom_drying_rack'] = { label = 'Shroom Drying Rack', price = 4000 },
        },
        blip = {
            enabled = true,

            label = 'Shroom Equipment',
            sprite = 566,
            color = 31,
            alpha = 255,
            scale = 0.5,
        },
    },

    ['supply_dealer'] = {
        coords = vec4(2482.89, 3724.51, 42.65, 34.94),
        model = 'u_m_y_dancerave_01',
        idleAnim = {
            dict = 'timetable@jimmy@mics3_ig_15@',
            anim = 'mics3_15_base_tracy',
        },
        items = {
            ['kq_shroom_soil']                  = { label = 'Shroom Soil', price = 100 },
            ['kq_shroom_substrate_grain']       = { label = 'Grain Substrate Bag', amount = 3, price = 150 },
            ['kq_shroom_substrate_compost']     = { label = 'Compost Substrate Bag', amount = 3, price = 200 },
            ['kq_shroom_substrate_sawdust']     = { label = 'Sawdust Substrate Bag', amount = 3, price = 200 },
            ['kq_shroom_spores_golden_teacher'] = { label = 'Golden Teacher Spores', amount = 3, price = 500 },
            ['kq_shroom_spores_blue_meanies']   = { label = 'Blue Meanies Spores', amount = 3, price = 650 },
            ['kq_shroom_spores_penis_envy']     = { label = 'Penis Envy Spores', amount = 3, price = 800 },
            ['kq_shroom_spores_pink_penis_envy'] = { label = 'Pink Penis Envy Spores', amount = 3, price = 900 },
            ['kq_shroom_spores_enigma'] = { label = 'Enigma Spores', amount = 3, price = 1600 },
        },
        blip = {
            enabled = true,

            label = 'Shroom Supplies',
            sprite = 566,
            color = 31,
            alpha = 255,
            scale = 0.5,
        },
    },
}
```

{% endtab %}

{% tab title="config.cellars.lua" %}

```lua
Config.cellars = {
    ['cellar_1'] = {
        model = 'kq_shroom_entry',

        -- Blip at each cellar's entrance
        blip = {
            enabled = true,
            sprite = 557,
            color = 31,
            scale = 0.8,
            alpha = 255,
            label = 'Shroom Cellar',
        },

        -- Interior shell offset above the entrance
        shellZOffset = 900.0,

        locations = {
            {
                coords = vec3(2339.27, 2602.60, 45.53),
                rotation = vec3(0, 0, -136),

                -- jobs = { 'gang1', 'mafia' }, -- You can limit the specific cellar location to certain jobs only
                -- requiredItem = 'cellar_key', -- You can also set a required item for the cellar
                -- requireBoth = false, -- If both jobs and requiredItem are enabled, you can set whether just one of them is enough or both
            },
            {
                coords = vec3(-272.50, 6410.48, 29.9),
                rotation = vec3(0, 0, 30),
            },
            {
                coords = vec3(1520.46, 6316.74, 23.08),
                rotation = vec3(0, 0, 240),
            },
            {
                coords = vec3(1664.08, 4683.77, 42.1),
                rotation = vec3(0, 0, 180),
            },
            {
                coords = vec3(2636.0, 4233.65, 43.8),
                rotation = vec3(0, 0, 224),
            },
            {
                coords = vec3(788.31, 4189.45, 39.65),
                rotation = vec3(0, 0, 90),
            },
            {
                coords = vec3(-1102.64, 4893.50, 214.53),
                rotation = vec3(0, 0, 156),
            },
            {
                coords = vec3(-121.73, 2798.01, 52.15),
                rotation = vec3(0, 0, 97),
            },
            {
                coords = vec3(1366.24, -1736.51, 64.2),
                rotation = vec3(0, 0, 286),
            },
            {
                coords = vec3(-936.89, 845.38, 184.8),
                rotation = vec3(0, 0, 310),
            },
        },

        -- Decoration props inside the shell (offsets relative to the shell origin)
        props = {
            { chance = 100, model = 'prop_skid_box_07',        coords = vec3(-1.85, 1.6, 0.01),   rotation = vec3(0, 0, 93) },
            { chance = 100, model = 'prop_wooden_barrel',      coords = vec3(-1.8, -2.5, 0.01),   rotation = vec3(0, 0, 0) },
            { chance = 100, model = 'prop_wooden_barrel',      coords = vec3(-1.82, -3.27, 0.01), rotation = vec3(0, 0, 60) },
            { chance = 100, model = 'prop_ld_rubble_03',       coords = vec3(2.04, 1.98, 0.01),   rotation = vec3(0, 0, 80) },
            { chance = 100, model = 'prop_rub_binbag_06',      coords = vec3(2.12, 0.88, 0.01),   rotation = vec3(0, 0, 10) },
            { chance = 100, model = 'prop_dart_bd_01',         coords = vec3(2.04, -0.24, 1.45),  rotation = vec3(0, 0, 270) },
            { chance = 100, model = 'prop_bucket_01b',         coords = vec3(-2.0, -1.86, 0.03),  rotation = vec3(0, 0, 220) },
            { chance = 100, model = 'prop_rub_litter_07',      coords = vec3(-1.48, 0.8, 0.01),   rotation = vec3(0, 0, 0) },
            { chance = 100, model = 'proc_litter_02',          coords = vec3(-4.14, -2.93, 0.01), rotation = vec3(0, 0, 0) },
            { chance = 100, model = 'prop_wall_vent_03',       coords = vec3(-8.5, -6.95, 1.75),  rotation = vec3(0, 0, 180) },
            { chance = 100, model = 'prop_wall_vent_03',       coords = vec3(-8.5, -2.21, 1.75),  rotation = vec3(0, 0, 0) },
            { chance = 100, model = 'prop_fire_exting_3a',     coords = vec3(-2.9, -6.95, 0.2),   rotation = vec3(0, 0, 180) },

            { chance = 100, model = 'prop_rub_cabinet01',      coords = vec3(-2.95, -2.97, 0.01), rotation = vec3(0, 0, 270) },
            { chance = 50, model = 'bkr_prop_weed_spray_01a', coords = vec3(-2.82, -2.55, 1.12), rotation = vec3(0, 0, 10) },
            { chance = 50, model = 'bkr_prop_weed_spray_01a', coords = vec3(-2.93, -2.78, 1.12), rotation = vec3(0, 0, 255) },
            { chance = 50, model = 'bkr_prop_weed_spray_01a', coords = vec3(-3.15, -2.66, 1.12), rotation = vec3(0, 0, 140) },
            { chance = 100, model = 'prop_cs_trowel',          coords = vec3(-3.05, -3.3, 0.88),  rotation = vec3(270, 0, 340) },
            { chance = 50, model = 'ch_prop_ch_cockroach_tub_01a',          coords = vec3(2.25, -5.6, 0.02),  rotation = vec3(0, 0, 105) },
            { chance = 100, model = 'ng_proc_cigpak01c',          coords = vec3(-2.05, -0.91, 0.85),  rotation = vec3(0, 0, 20) },
        },

        -- Shroom objects (offsets relative to the shell origin)
        shelves = {
            { coords = vec3(2.17, -1.8, 0.01), rotation = vec3(0, 0, 270) },
            { coords = vec3(2.17, -3.6, 0.01), rotation = vec3(0, 0, 270) },
            { coords = vec3(2.17, -5.4, 0.01), rotation = vec3(0, 0, 270) },
        },

        tables = {
            { coords = vec3(-1.76, 0.0, 0.01), rotation = vec3(0, 0, 90) },
        },

        planters = {
            { coords = vec3(-5.05, -4.05, 0.01), rotation = vec3(0, 0, 180) },
            { coords = vec3(-5.06, -5.11, 0.01), rotation = vec3(0, 0, 0) },

            { coords = vec3(-6.59, -4.05, 0.01), rotation = vec3(0, 0, 180) },
            { coords = vec3(-6.60, -5.11, 0.01), rotation = vec3(0, 0, 0) },

            { coords = vec3(-8.13, -4.05, 0.01), rotation = vec3(0, 0, 180) },
            { coords = vec3(-8.14, -5.11, 0.01), rotation = vec3(0, 0, 0) },
        },

        dryingRacks = {
            { coords = vec3(-1.35, -6.0, 0.01), rotation = vec3(0, 0, 180) },
            { coords = vec3(0.07, -6.0, 0.01),  rotation = vec3(0, 0, 180) },
        },

    },
}
```

{% endtab %}

{% tab title="config.strains.lua" %}

```lua
-- Syringe prop used during the spore injection minigame
Config.syringeProp = 'kq_shroom_syringe'

-- Raw substrates
-- You can use this to add more substrate types if you wish
Config.substrates = {
    ['grain'] = {
        label = 'Grain substrate',

        item = 'kq_shroom_substrate_grain',

        prop = 'kq_grain_bag',
        soilProp = 'kq_shroom_planter_soil_grain',
        colonizedTint = 0,
        uncolonizedTint = 1,
    },
    ['compost'] = {
        label = 'Compost substrate',

        item = 'kq_shroom_substrate_compost',

        prop = 'kq_compost_bag',
        soilProp = 'kq_shroom_planter_soil_compost',
        colonizedTint = 0,
        uncolonizedTint = 2,
    },
    ['sawdust'] = {
        label = 'Sawdust substrate',

        item = 'kq_shroom_substrate_sawdust',

        prop = 'kq_sawdust_bag',
        soilProp = 'kq_shroom_planter_soil_sawdust',
        colonizedTint = 0,
        uncolonizedTint = 3,
    },
}

-- Strains
-- You can modify, remove and add new strains. Make sure that all strains have definitions for all existing substrates
Config.strains = {
    ['golden_teacher'] = {
        label = 'Golden Teacher',

        item = 'kq_shroom_spores_golden_teacher',

        -- Syringe texture variation used during the injection minigame
        color = 1,

        -- Spores of this strain recovered when its used soil is cleared out (random min..max)
        sporeRefund = { min = 2, max = 5 },

        shroom = {
            yield = { min = 8, max = 14 }, -- base shroom count per one grow

            harvestItem = 'kq_shroom_golden_teacher', -- given per fully grown shroom harvested
            driedItem = 'kq_shroom_golden_teacher_dried', -- given per dried shroom collected off a drying rack

            growthDuration = 15, -- growth time in minutes (planter)

            dryingDuration = 20, -- drying time in minutes (drying rack)

            baseMoldChance = 15, -- chance for each shroom to get moldy during the entire growth process
            overMoisturizedMoldChance = 60, -- mold chance for each shroom while the planter is over-moisturized (moisture > 100)
            moldSpreadChance = 40, -- % chance a full-mold shroom infects its nearest neighbour when it's due to spread

            -- rackRotation = lay angle on the drying rack
            models = {
                growing = {
                    { model = 'kq_shroom_1', moldHalf = 'kq_shroom_mold_1', moldFull = 'kq_shroom_mold_full_1' },
                    { model = 'kq_shroom_2', moldHalf = 'kq_shroom_mold_2', moldFull = 'kq_shroom_mold_full_2' },
                },
                grown = {
                    { model = 'kq_shroom_3', moldHalf = 'kq_shroom_mold_3', moldFull = 'kq_shroom_mold_full_3', rackRotation = vec3(55.0, 0.0, 180.0) },
                },
                dried = {
                    { model = 'kq_shroom_dried_1', rackRotation = vec3(80.0, 0.0, 180.0) },
                    { model = 'kq_shroom_dried_2', rackRotation = vec3(80.0, 0.0, 180.0) },
                },
            },

            -- Duration and intensity of the high effect after eating the dried shroom
            effect = {
                duration = 120, -- time in seconds
                intensity = 0.4, -- intensity of the shroom effect (0 - 1)
            },
        },

        substrates = {
            ['grain'] = {
                item = 'kq_shroom_substrate_grain_golden_teacher',
                colonizedItem = 'kq_shroom_substrate_grain_golden_teacher_colonized',

                growthSpeed = 1.0,
                moldRatio = 1.0,
                yield = 1.0,

                colonizationDuration = 15, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
            ['compost'] = {
                item = 'kq_shroom_substrate_compost_golden_teacher',
                colonizedItem = 'kq_shroom_substrate_compost_golden_teacher_colonized',

                growthSpeed = 1.3,
                moldRatio = 1.15,
                yield = 1.0,

                colonizationDuration = 10, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
            ['sawdust'] = {
                item = 'kq_shroom_substrate_sawdust_golden_teacher',
                colonizedItem = 'kq_shroom_substrate_sawdust_golden_teacher_colonized',

                growthSpeed = 0.7,
                moldRatio = 1.0,
                yield = 1.25,

                colonizationDuration = 12, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
        }
    },

    ['blue_meanies'] = {
        label = 'Blue Meanies',

        item = 'kq_shroom_spores_blue_meanies',

        -- Syringe texture variation used during the injection minigame
        color = 3,

        -- Spores of this strain recovered when its used soil is cleared out (random min..max)
        sporeRefund = { min = 2, max = 5 },

        shroom = {
            yield = { min = 7, max = 13 }, -- base shroom count range, rolled per plant (then * substrate yield)

            harvestItem = 'kq_shroom_blue_meanies', -- given per fully grown shroom harvested
            driedItem = 'kq_shroom_blue_meanies_dried', -- given per dried shroom collected off a drying rack

            growthDuration = 22, -- growth time in minutes (planter)

            dryingDuration = 20, -- drying time in minutes (drying rack)

            baseMoldChance = 10, -- chance for each shroom to get moldy during the entire growth process
            overMoisturizedMoldChance = 60, -- mold chance for each shroom while the planter is over-moisturized (moisture > 100)
            moldSpreadChance = 40, -- % chance a full-mold shroom infects its nearest neighbour when it's due to spread

            models = {
                growing = {
                    { model = 'kq_shroom_1', moldHalf = 'kq_shroom_mold_1', moldFull = 'kq_shroom_mold_full_1', tintColor = 3 },
                    { model = 'kq_shroom_2', moldHalf = 'kq_shroom_mold_2', moldFull = 'kq_shroom_mold_full_2', tintColor = 3 },
                },
                grown = {
                    { model = 'kq_shroom_3', moldHalf = 'kq_shroom_mold_3', moldFull = 'kq_shroom_mold_full_3', rackRotation = vec3(55.0, 0.0, 180.0), tintColor = 3 },
                },
                dried = {
                    { model = 'kq_shroom_dried_1', rackRotation = vec3(80.0, 0.0, 180.0), tintColor = 3 },
                    { model = 'kq_shroom_dried_2', rackRotation = vec3(80.0, 0.0, 180.0), tintColor = 3 },
                },
            },

            effect = {
                duration = 120, -- time in seconds
                intensity = 0.5,
            },
        },

        substrates = {
            ['grain'] = {
                item = 'kq_shroom_substrate_grain_blue_meanies',
                colonizedItem = 'kq_shroom_substrate_grain_blue_meanies_colonized',

                growthSpeed = 1.0,
                moldRatio = 1.0,
                yield = 1.0,

                colonizationDuration = 15, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
            ['compost'] = {
                item = 'kq_shroom_substrate_compost_blue_meanies',
                colonizedItem = 'kq_shroom_substrate_compost_blue_meanies_colonized',

                growthSpeed = 1.3,
                moldRatio = 1.15,
                yield = 1.0,

                colonizationDuration = 10, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
            ['sawdust'] = {
                item = 'kq_shroom_substrate_sawdust_blue_meanies',
                colonizedItem = 'kq_shroom_substrate_sawdust_blue_meanies_colonized',

                growthSpeed = 0.7,
                moldRatio = 1.0,
                yield = 1.25,

                colonizationDuration = 12, -- time in minutes

                bagsRequired = 3, -- colonized bags needed in a planter to start growing
            },
        }
    },

    ['penis_envy'] = {
        label = 'Penis Envy',

        item = 'kq_shroom_spores_penis_envy',

        -- Syringe texture variation used during the injection minigame
        color = 7,

        sporeRefund = { min = 2, max = 4 },

        shroom = {
            yield = { min = 12, max = 15 },

            harvestItem = 'kq_shroom_penis_envy',
            driedItem = 'kq_shroom_penis_envy_dried',

            growthDuration = 20,
            dryingDuration = 30,

            baseMoldChance = 10,
            overMoisturizedMoldChance = 60,
            moldSpreadChance = 60,

            -- Own model set (kq_shroom2_*): _1 growing, _2 grown, _dried_1/2 dried
            models = {
                growing = {
                    { model = 'kq_shroom2_1', moldHalf = 'kq_shroom2_mold_1', moldFull = 'kq_shroom2_mold_full_1', tintColor = 0 },
                },
                grown = {
                    { model = 'kq_shroom2_2', moldHalf = 'kq_shroom2_mold_2', moldFull = 'kq_shroom2_mold_full_2', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 0 },
                },
                dried = {
                    { model = 'kq_shroom2_dried_1', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 0 },
                    { model = 'kq_shroom2_dried_2', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 0 },
                },
            },

            effect = {
                duration = 120,
                intensity = 0.6,
            },
        },

        substrates = {
            ['grain'] = {
                item = 'kq_shroom_substrate_grain_penis_envy',
                colonizedItem = 'kq_shroom_substrate_grain_penis_envy_colonized',

                growthSpeed = 1.0,
                moldRatio = 1.0,
                yield = 1.0,

                colonizationDuration = 15,

                bagsRequired = 3,
            },
            ['compost'] = {
                item = 'kq_shroom_substrate_compost_penis_envy',
                colonizedItem = 'kq_shroom_substrate_compost_penis_envy_colonized',

                growthSpeed = 1.3,
                moldRatio = 1.15,
                yield = 1.0,

                colonizationDuration = 10,

                bagsRequired = 3,
            },
            ['sawdust'] = {
                item = 'kq_shroom_substrate_sawdust_penis_envy',
                colonizedItem = 'kq_shroom_substrate_sawdust_penis_envy_colonized',

                growthSpeed = 0.7,
                moldRatio = 1.0,
                yield = 1.25,

                colonizationDuration = 12,

                bagsRequired = 3,
            },
        }
    },

    ['pink_penis_envy'] = {
        label = 'Pink Penis Envy',

        item = 'kq_shroom_spores_pink_penis_envy',

        -- Syringe texture variation used during the injection minigame
        color = 8,

        sporeRefund = { min = 2, max = 4 },

        shroom = {
            yield = { min = 11, max = 14 },

            harvestItem = 'kq_shroom_pink_penis_envy',
            driedItem = 'kq_shroom_pink_penis_envy_dried',

            growthDuration = 26,
            dryingDuration = 30,

            baseMoldChance = 10,
            overMoisturizedMoldChance = 60,
            moldSpreadChance = 60,

            -- Same models as Penis Envy, tinted pink (tintColor = 8)
            models = {
                growing = {
                    { model = 'kq_shroom2_1', moldHalf = 'kq_shroom2_mold_1', moldFull = 'kq_shroom2_mold_full_1', tintColor = 8 },
                },
                grown = {
                    { model = 'kq_shroom2_2', moldHalf = 'kq_shroom2_mold_2', moldFull = 'kq_shroom2_mold_full_2', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 8 },
                },
                dried = {
                    { model = 'kq_shroom2_dried_1', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 8 },
                    { model = 'kq_shroom2_dried_2', rackRotation = vec3(88.0, 0.0, 180.0), tintColor = 8 },
                },
            },

            effect = {
                duration = 120,
                intensity = 0.6,
            },
        },

        substrates = {
            ['grain'] = {
                item = 'kq_shroom_substrate_grain_pink_penis_envy',
                colonizedItem = 'kq_shroom_substrate_grain_pink_penis_envy_colonized',

                growthSpeed = 1.0,
                moldRatio = 1.0,
                yield = 1.0,

                colonizationDuration = 15,

                bagsRequired = 3,
            },
            ['compost'] = {
                item = 'kq_shroom_substrate_compost_pink_penis_envy',
                colonizedItem = 'kq_shroom_substrate_compost_pink_penis_envy_colonized',

                growthSpeed = 1.3,
                moldRatio = 1.15,
                yield = 1.0,

                colonizationDuration = 10,

                bagsRequired = 3,
            },
            ['sawdust'] = {
                item = 'kq_shroom_substrate_sawdust_pink_penis_envy',
                colonizedItem = 'kq_shroom_substrate_sawdust_pink_penis_envy_colonized',

                growthSpeed = 0.7,
                moldRatio = 1.0,
                yield = 1.25,

                colonizationDuration = 12,

                bagsRequired = 3,
            },
        }
    },

    ['enigma'] = {
        label = 'Enigma',

        item = 'kq_shroom_spores_enigma',

        -- Syringe texture variation used during the injection minigame
        color = 14,

        sporeRefund = { min = 2, max = 3 },

        shroom = {
            yield = { min = 7, max = 11 },

            harvestItem = 'kq_shroom_enigma',
            driedItem = 'kq_shroom_enigma_dried',

            growthDuration = 35,
            dryingDuration = 40,

            baseMoldChance = 10,
            overMoisturizedMoldChance = 50,
            moldSpreadChance = 70,

            -- Same models as Penis Envy, tinted pink (tintColor = 8)
            models = {
                growing = {
                    { model = 'kq_shroom3_1', moldHalf = 'kq_shroom3_mold_1', moldFull = 'kq_shroom3_mold_full_1' },
                    { model = 'kq_shroom3_2', moldHalf = 'kq_shroom3_mold_2', moldFull = 'kq_shroom3_mold_full_2' },
                    { model = 'kq_shroom3_3', moldHalf = 'kq_shroom3_mold_3', moldFull = 'kq_shroom3_mold_full_3' },
                },
                grown = {
                    { model = 'kq_shroom3_1', moldHalf = 'kq_shroom3_mold_1', moldFull = 'kq_shroom3_mold_full_1', rackRotation = vec3(0, 0, 0) },
                    { model = 'kq_shroom3_2', moldHalf = 'kq_shroom3_mold_2', moldFull = 'kq_shroom3_mold_full_2', rackRotation = vec3(0, 0, 0) },
                    { model = 'kq_shroom3_3', moldHalf = 'kq_shroom3_mold_3', moldFull = 'kq_shroom3_mold_full_3', rackRotation = vec3(0, 0, 0) },
                },
                dried = {
                    { model = 'kq_shroom3_dried_1', rackRotation = vec3(0, 0, 0) },
                    { model = 'kq_shroom3_dried_2', rackRotation = vec3(0, 0, 0) },
                },
            },

            effect = {
                duration = 240,
                intensity = 1.0,
            },
        },

        substrates = {
            ['grain'] = {
                item = 'kq_shroom_substrate_grain_enigma',
                colonizedItem = 'kq_shroom_substrate_grain_enigma_colonized',

                growthSpeed = 1.0,
                moldRatio = 1.0,
                yield = 1.0,

                colonizationDuration = 20,

                bagsRequired = 3,
            },
            ['compost'] = {
                item = 'kq_shroom_substrate_compost_enigma',
                colonizedItem = 'kq_shroom_substrate_compost_enigma_colonized',

                growthSpeed = 1.3,
                moldRatio = 1.15,
                yield = 1.0,

                colonizationDuration = 15,

                bagsRequired = 3,
            },
            ['sawdust'] = {
                item = 'kq_shroom_substrate_sawdust_enigma',
                colonizedItem = 'kq_shroom_substrate_sawdust_enigma_colonized',

                growthSpeed = 0.7,
                moldRatio = 1.0,
                yield = 1.25,

                colonizationDuration = 18,

                bagsRequired = 3,
            },
        }
    },
}

--- TINT COLORS
--- Colors are the same for the shrooms and syringe
-- 0 = white
-- 1 = Light Yellow
-- 2 = Gold
-- 3 = Blue
-- 4 = Light red
-- 5 = Light green
-- 6 = Gray
-- 7 = Grayish Blue
-- 8 = Light purple
-- 9 = Cyan
-- 10 = Pink
-- 11 = Green
-- 12 = Red
-- 13 = Lime
-- 14 = Deep Purple
-- 15 = Yellow
```

{% endtab %}
{% endtabs %}
