Documentation › Mushrooms › Features › Forests & Spawning

Forests & Spawning

Forests, species, hidden forests, weather and time of day.

Mushrooms are real props spawned around players inside forests. Every forest has its own species and density, and a picked mushroom grows back after Config.RespawnTime seconds (300 by default).

Forests

lua
Config.Forests = {
    {
        name = 'North_Forest',             -- id, also the translation key names.forests.<name>
        label = 'North Forest',            -- fallback name
        coords = vec3(-366.57, 1353.75, 335.13),
        radius = 80.0,
        countMultiplier = 1.0,             -- x every mushroom amount in this forest
        showBlip = true,
        showInfo = true,                   -- visible on the seller map
        blip = { sprite = 141, color = 2, scale = 0.8, areaColor = 2, areaAlpha = 64 },
    },
    -- hidden forest:
    { name = 'Hidden_Forest_1', hidden = true, coords = vec3(-1535.12, 4437.85, 19.85), radius = 60.0, ... },
}

The package ships with North, Paleto and South Forest and 4 hidden forests.

Hidden forests

Forests with hidden = true are invisible (no map area, no blip, no mushrooms) until the player reaches the level of the hidden_forests perk (level 7 by default). After that they show on the seller map and, with Config.UI.map.hiddenForestBlips, on the GTA map.

Mushrooms

lua
Config.MushroomSpawns = {
    {
        mushroom = 'boletus',      -- item name
        label = 'Boletus',         -- fallback (locales: names.mushrooms.<item>)
        rarity = 'common',         -- common | uncommon | rare | legendary
        desc = '...',              -- encyclopedia text (locales: names.descriptions.<item>)
        prop = 'borowik',          -- world model
        count = 10,                -- base number of props in the forest
        countMultiplier = 1.0,
        forest = 'North_Forest',
        abundance = 'medium',      -- shown in the UI
        icon = 'fa-solid fa-seedling', -- target icon
        collectTime = 6000,        -- ms, falls back to Config.ProgressDuration
        showInfo = true,
        sellable = true,
        edible = true,             -- false = can't be eaten
    },
}

Legendary mushrooms can only be picked after the legendary perk (level 14 by default). Locked mushrooms show "(locked)" on the target with the level needed.

Weather & time of day

lua
Config.Conditions = {
    enabled = true,
    weather = {               -- x mushroom amount in this weather
        RAIN = 1.5, THUNDER = 1.6, CLEARING = 1.3, FOGGY = 1.2, OVERCAST = 1.1, EXTRASUNNY = 0.8,
    },
    rules = {
        {   -- psilocybe only grows at night
            name = 'night_psilocybe',
            mushrooms = { 'psilocybe_semilanceata', 'psilocybe_cyanescens', 'psilocybe_cubensis' },
            hours = { 20, 5 },
            multiplier = 1.0,
            onlyWhenActive = true,
        },
        { name = 'morning_dew', hours = { 5, 9 }, multiplier = 1.25 },
    },
}

A rule is active when every filter matches: mushrooms (omit = all), weather (omit = any), hours = { from, to } (may wrap over midnight). onlyWhenActive = true means the listed mushrooms don't grow at all outside the rule. enabled = false switches a rule off.

Night glow

lua
Config.MushroomGlow = {
    enabled = true,
    onlyAtNight = true,
    nightStartHour = 19, nightEndHour = 6,
    maxDistance = 48.0,   -- only outline props this close (0 = no limit, heavier)
    refreshMs = 350,
    outlineR = 100, outlineG = 220, outlineB = 130, outlineA = 140,
}