Configuration

This is the doc that contains the full config.lua for Zombies, so you can get a full look at what is all configurable.

Config = {}

-- Temperature system settings
Config.Temperature = {
    -- Temperature range: -100 (freezing) to 100 (burning), 0 is comfortable
    MinTemp = -100,
    MaxTemp = 100,
    NeutralTemp = 0,

    ResetOnDeathOrDying = true, -- If true, temperature will be reset to NeutralTemp.

    -- Damage settings
    ColdDamageThreshold = -90,  -- Below this, take cold damage
    HotDamageThreshold = 90,    -- Above this, take hot damage
    DamageInterval = 5000,      -- Damage tick every 5 seconds (in ms)
    ColdDamage = 1,             -- HP damage per tick when cold
    HotDamage = 1,              -- HP damage per tick when hot

    -- Healing settings
    EnableWarmHealing = true,   -- Enable healing when warm
    WarmHealingThreshold = 50,  -- Above this temperature, start healing
    WarmHealingRate = 1,         -- HP healed per update interval when warm

    -- Temperature change rates
    BaseCoolRate = 0.5,         -- How fast temperature decreases naturally (per second)
    BaseHeatRate = 0.5,         -- How fast temperature increases naturally (per second)
    HeatObjectBonus = 0.5,      -- Bonus heat rate when near heating objects

    -- Update intervals
    UpdateInterval = 1000,      -- Update temperature every 1 second (in ms)

    -- Environmental cooling rates
    WaterCoolingRate = 2,     -- Cooling rate when in water
    RainCoolingMultiplier = 0.2, -- Multiplier for rain level
    SnowCoolingMultiplier = 1.0  -- Multiplier for snow level
}

-- Clothing protection settings
Config.ClothingProtection = {
    -- Define clothing items and their checks
    items = {
        gloves = {
            type = 'component',  -- 'component' or 'prop'
            id = 3,              -- Component ID (3 for hands)
            minVariation = 1     -- Minimum variation to consider as having gloves (0 = no gloves)
        },
        hat = {
            type = 'prop',       -- Hat is a prop
            id = 0,              -- Prop ID (0 for hat)
            minIndex = 0         -- Minimum index to consider as having hat (-1 = no hat)
        },
        mask = {
            type = 'component',  -- Mask is a component
            id = 1,              -- Component ID (1 for mask)
            minVariation = 1     -- Minimum variation to consider as having mask (0 = no mask)
        }
    },
    -- Protection values: percentage reduction in cooling rate (0.0 to 1.0)
    protectionValues = {
        gloves = 0.6,  -- 60% reduction when wearing gloves
        hat = 0.4,     -- 40% reduction when wearing hat
        mask = 0.6     -- 60% reduction when wearing mask
    }
}

-- Objects that provide heat (by hash or model name)
Config.HeatingObjects = {
    -- Common GTA V objects
    {
        hash = GetHashKey("prop_beach_fire"),     -- Campfire
        emote = {dict = "amb@world_human_stand_fire@male@idle_a", name = "idle_a"}  -- Require warming hands emote (/e warmth)
    },
    {
        hash = GetHashKey("prop_hobo_stove"),
        emote = nil  -- No emote required
    },
    {
        hash = GetHashKey("gr_prop_gr_hobo_stove_01"),
        emote = nil  -- No emote required
    },
    -- Add more as needed
    -- You can add custom objects here
}

-- UI settings
Config.UI = {
    Position = {
        Horizontal = 'left',  -- 'left', 'center', 'right'
        Vertical = 'top',    -- 'top', 'bottom'
        HorizontalOffset = '40px',  -- Offset from horizontal anchor
        VerticalOffset = '40px'    -- Offset from vertical anchor
    }
}

-- Additional features
Config.EnableNotifications = true  -- Show notifications when temperature is critical
Config.NotificationCooldown = 30000 -- 30 seconds between notifications
Config.EnableVehicleProtection = true  -- Prevent cooling when in a vehicle
Config.EnableIndoorProtection = true  -- Prevent cooling when indoors

return Config

This script is completely standalone, no offering or any need of a framework.

Last updated