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

# Configuration

<details>

<summary>View Full Config</summary>

```lua
--[[
    ███╗   ██╗ █████╗ ██╗   ██╗███████╗███████╗███████╗███████╗
    ████╗  ██║██╔══██╗╚██╗ ██╔╝╚══███╔╝██╔════╝██╔════╝██╔════╝
    ██╔██╗ ██║███████║ ╚████╔╝   ███╔╝ █████╗  █████╗  █████╗  
    ██║╚██╗██║██╔══██║  ╚██╔╝   ███╔╝  ██╔══╝  ██╔══╝  ██╔══╝  
    ██║ ╚████║██║  ██║   ██║   ███████╗███████╗███████╗███████╗
    ╚═╝  ╚═══╝╚═╝  ╚═╝   ╚═╝   ╚══════╝╚══════╝╚══════╝╚══════╝
                                                                
    ██████╗ ███████╗██╗   ██╗███████╗██╗      ██████╗ ██████╗ ███╗   ███╗███████╗███╗   ██╗████████╗
    ██╔══██╗██╔════╝██║   ██║██╔════╝██║     ██╔═══██╗██╔══██╗████╗ ████║██╔════╝████╗  ██║╚══██╔══╝
    ██║  ██║█████╗  ██║   ██║█████╗  ██║     ██║   ██║██████╔╝██╔████╔██║█████╗  ██╔██╗ ██║   ██║   
    ██║  ██║██╔══╝  ╚██╗ ██╔╝██╔══╝  ██║     ██║   ██║██╔═══╝ ██║╚██╔╝██║██╔══╝  ██║╚██╗██║   ██║   
    ██████╔╝███████╗ ╚████╔╝ ███████╗███████╗╚██████╔╝██║     ██║ ╚═╝ ██║███████╗██║ ╚████║   ██║   
    ╚═════╝ ╚══════╝  ╚═══╝  ╚══════╝╚══════╝ ╚═════╝ ╚═╝     ╚═╝     ╚═╝╚══════╝╚═╝  ╚═══╝   ╚═╝   
                                                                                                      
    NAYZEEE DRUG SELLING - 1.0.0
    Discord: discord.gg/nayzeeedev
]]

Config = {}

-- ██████╗ ███████╗███╗   ██╗███████╗██████╗  █████╗ ██╗     
-- ██╔════╝ ██╔════╝████╗  ██║██╔════╝██╔══██╗██╔══██╗██║     
-- ██║  ███╗█████╗  ██╔██╗ ██║█████╗  ██████╔╝███████║██║     
-- ██║   ██║██╔══╝  ██║╚██╗██║██╔══╝  ██╔══██╗██╔══██║██║     
-- ╚██████╔╝███████╗██║ ╚████║███████╗██║  ██║██║  ██║███████╗
--  ╚═════╝ ╚══════╝╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝

Config.Debug = false
Config.Locale = 'en'

-- ███████╗██████╗  █████╗ ███╗   ███╗███████╗██╗    ██╗ ██████╗ ██████╗ ██╗  ██╗
-- ██╔════╝██╔══██╗██╔══██╗████╗ ████║██╔════╝██║    ██║██╔═══██╗██╔══██╗██║ ██╔╝
-- █████╗  ██████╔╝███████║██╔████╔██║█████╗  ██║ █╗ ██║██║   ██║██████╔╝█████╔╝ 
-- ██╔══╝  ██╔══██╗██╔══██║██║╚██╔╝██║██╔══╝  ██║███╗██║██║   ██║██╔══██╗██╔═██╗ 
-- ██║     ██║  ██║██║  ██║██║ ╚═╝ ██║███████╗╚███╔███╔╝╚██████╔╝██║  ██║██║  ██╗
-- ╚═╝     ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝     ╚═╝╚══════╝ ╚══╝╚══╝  ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝

Config.Target = 'ox_target' -- 'ox_target' or 'qb-target'
Config.Notify = 'ox_lib'    -- 'ox_lib', 'ESX', 'QBCORE', 'okokNotify', 'vms_notify', 'brutal_notify'

-- ██████╗ ███████╗ ██████╗ ██╗   ██╗██╗██████╗ ███████╗██████╗     ██╗████████╗███████╗███╗   ███╗
-- ██╔══██╗██╔════╝██╔═══██╗██║   ██║██║██╔══██╗██╔════╝██╔══██╗    ██║╚══██╔══╝██╔════╝████╗ ████║
-- ██████╔╝█████╗  ██║   ██║██║   ██║██║██████╔╝█████╗  ██║  ██║    ██║   ██║   █████╗  ██╔████╔██║
-- ██╔══██╗██╔══╝  ██║▄▄ ██║██║   ██║██║██╔══██╗██╔══╝  ██║  ██║    ██║   ██║   ██╔══╝  ██║╚██╔╝██║
-- ██║  ██║███████╗╚██████╔╝╚██████╔╝██║██║  ██║███████╗██████╔╝    ██║   ██║   ███████╗██║ ╚═╝ ██║
-- ╚═╝  ╚═╝╚══════╝ ╚══▀▀═╝  ╚═════╝ ╚═╝╚═╝  ╚═╝╚══════╝╚═════╝     ╚═╝   ╚═╝   ╚══════╝╚═╝     ╚═╝

Config.RequiredItem = {
    enabled = false,              -- Set to true to require an item to sell drugs
    item = 'burner_phone',        -- Item name required in inventory
    consume = false,              -- If true, item is removed after each sale
    label = 'Burner Phone',       -- Display name for notifications
}

-- ██████╗ ██╗███████╗██████╗  █████╗ ████████╗ ██████╗██╗  ██╗
-- ██╔══██╗██║██╔════╝██╔══██╗██╔══██╗╚══██╔══╝██╔════╝██║  ██║
-- ██║  ██║██║███████╗██████╔╝███████║   ██║   ██║     ███████║
-- ██║  ██║██║╚════██║██╔═══╝ ██╔══██║   ██║   ██║     ██╔══██║
-- ██████╔╝██║███████║██║     ██║  ██║   ██║   ╚██████╗██║  ██║
-- ╚═════╝ ╚═╝╚══════╝╚═╝     ╚═╝  ╚═╝   ╚═╝    ╚═════╝╚═╝  ╚═╝

Config.Dispatch = {
    system = 'none', -- 'none', 'cd_dispatch', 'ps-dispatch', 'lb-tablet', 'origen_police', 'rcore_dispatch', 'codem_dispatch', 'kartik-mdt', 'piotreq_gpt'
    chance = 35,     -- % chance police are called after a sell was made
    code = '10-31',
    blip = {
        sprite = 51,
        color = 1,
        scale = 1.0,
    }
}

--  ██████╗██╗   ██╗██████╗ ██████╗ ███████╗███╗   ██╗ ██████╗██╗   ██╗
-- ██╔════╝██║   ██║██╔══██╗██╔══██╗██╔════╝████╗  ██║██╔════╝╚██╗ ██╔╝
-- ██║     ██║   ██║██████╔╝██████╔╝█████╗  ██╔██╗ ██║██║      ╚████╔╝ 
-- ██║     ██║   ██║██╔══██╗██╔══██╗██╔══╝  ██║╚██╗██║██║       ╚██╔╝  
-- ╚██████╗╚██████╔╝██║  ██║██║  ██║███████╗██║ ╚████║╚██████╗   ██║   
--  ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝╚═╝  ╚═══╝ ╚═════╝   ╚═╝   

Config.Currency = {
    locale = 'en-US',
    code = 'USD',
    style = 'currency',
}

-- ██████╗ ██╗██████╗ ████████╗██╗   ██╗    ███╗   ███╗ ██████╗ ███╗   ██╗███████╗██╗   ██╗
-- ██╔══██╗██║██╔══██╗╚══██╔══╝╚██╗ ██╔╝    ████╗ ████║██╔═══██╗████╗  ██║██╔════╝╚██╗ ██╔╝
-- ██║  ██║██║██████╔╝   ██║    ╚████╔╝     ██╔████╔██║██║   ██║██╔██╗ ██║█████╗   ╚████╔╝ 
-- ██║  ██║██║██╔══██╗   ██║     ╚██╔╝      ██║╚██╔╝██║██║   ██║██║╚██╗██║██╔══╝    ╚██╔╝  
-- ██████╔╝██║██║  ██║   ██║      ██║       ██║ ╚═╝ ██║╚██████╔╝██║ ╚████║███████╗   ██║   
-- ╚═════╝ ╚═╝╚═╝  ╚═╝   ╚═╝      ╚═╝       ╚═╝     ╚═╝ ╚═════╝ ╚═╝  ╚═══╝╚══════╝   ╚═╝   

Config.DirtyMoney = {
    enabled = true,
    item = 'black_money',
}

--  ██████╗ ██████╗ ██████╗ ███╗   ██╗███████╗██████╗     ███████╗███████╗██╗     ██╗     ██╗███╗   ██╗ ██████╗ 
-- ██╔════╝██╔═══██╗██╔══██╗████╗  ██║██╔════╝██╔══██╗    ██╔════╝██╔════╝██║     ██║     ██║████╗  ██║██╔════╝ 
-- ██║     ██║   ██║██████╔╝██╔██╗ ██║█████╗  ██████╔╝    ███████╗█████╗  ██║     ██║     ██║██╔██╗ ██║██║  ███╗
-- ██║     ██║   ██║██╔══██╗██║╚██╗██║██╔══╝  ██╔══██╗    ╚════██║██╔══╝  ██║     ██║     ██║██║╚██╗██║██║   ██║
-- ╚██████╗╚██████╔╝██║  ██║██║ ╚████║███████╗██║  ██║    ███████║███████╗███████╗███████╗██║██║ ╚████║╚██████╔╝
--  ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝    ╚══════╝╚══════╝╚══════╝╚══════╝╚═╝╚═╝  ╚═══╝ ╚═════╝ 

Config.Corner = {
    enabled = true,
    command = 'dealer',
    cooldown = 7, -- seconds between ped spawns
}

--  ██████╗██╗   ██╗██████╗ ███████╗███████╗██╗    ██╗
-- ██╔════╝██║   ██║██╔══██╗██╔════╝██╔════╝██║    ██║
-- ██║     ██║   ██║██████╔╝█████╗  █████╗  ██║ █╗ ██║
-- ██║     ██║   ██║██╔══██╗██╔══╝  ██╔══╝  ██║███╗██║
-- ╚██████╗╚██████╔╝██║  ██║██║     ███████╗╚███╔███╔╝
--  ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝     ╚══════╝ ╚══╝╚══╝ 

Config.Curfew = {
    enabled = true,
    startHour = 22, -- 10 PM (22:00)
    endHour = 6,    -- 6 AM (06:00)
    
    -- Bonuses during curfew hours
    priceMultiplier = 1.5,   -- 50% more money
    expMultiplier = 1.25,    -- 25% more XP
    
    -- Increased risk during curfew
    dispatchChanceMultiplier = 2.0, -- Double the chance police get called


    -- Here A Break Down How The Multiplier Works 
    -- If The Base Payout Is $100 Then You Do $100 x 1.5 = $150 
    -- If Your Base XP Is 100 XP Then You Do 100 x 1.25 = 125 XP
    -- If Your Base Dispatch Chance Is At A Certain Percentage Then You Do 35 x 2 = 70% chance
}

-- ██╗     ███████╗██╗   ██╗███████╗██╗     ██╗███╗   ██╗ ██████╗ 
-- ██║     ██╔════╝██║   ██║██╔════╝██║     ██║████╗  ██║██╔════╝ 
-- ██║     █████╗  ██║   ██║█████╗  ██║     ██║██╔██╗ ██║██║  ███╗
-- ██║     ██╔══╝  ╚██╗ ██╔╝██╔══╝  ██║     ██║██║╚██╗██║██║   ██║
-- ███████╗███████╗ ╚████╔╝ ███████╗███████╗██║██║ ╚████║╚██████╔╝
-- ╚══════╝╚══════╝  ╚═══╝  ╚══════╝╚══════╝╚═╝╚═╝  ╚═══╝ ╚═════╝ 

Config.Leveling = {
    enabled = true,
    command = 'traprank',
    expPerLevel = 1500,
    
    -- Level titles (name + level range)
    titles = {
        { name = 'Street Rat',    minLevel = 1,  maxLevel = 5  },
        { name = 'Hoodlum',    minLevel = 6,  maxLevel = 10  },
        { name = 'Peddler',   minLevel = 11,  maxLevel = 15  },
        { name = 'Hustler',    minLevel = 16, maxLevel = 20 },
        { name = 'Bagman',     minLevel = 21, maxLevel = 25 },
        { name = 'Enforcer',     minLevel = 26, maxLevel = 30 },
        { name = 'Shot Caller',     minLevel = 31, maxLevel = 35 },
        { name = 'Block Boss',     minLevel = 36, maxLevel = 40 },
        { name = 'Underlord',     minLevel = 41, maxLevel = 45 },
        { name = 'Baron',     minLevel = 46, maxLevel = 50 },
        { name = 'Kingpin',     minLevel = 51, maxLevel = 60 },
        { name = 'Kingpin +',     minLevel = 61, maxLevel = 100 },
    },
    
    -- Level = Price Boost %
    boosts = {
        [5] = 2,
        [10] = 4,
        [15] = 6,
        [20] = 8,
        [25] = 10,
        [30] = 12,
        [35] = 14,
        [40] = 16,
        [45] = 18,
        [50] = 20,
        [60] = 25,
        [100] = 30,
    },
    
    -- Leaderboard UI Settings
    leaderboard = {
        enabled = true,
        command = 'trapleaderboard', -- Command to open leaderboard UI
    },
    
    -- Admin Reset Command
    resetCommand = {
        enabled = true,
        command = 'resettraprank',
        -- Groups/roles that can use the reset command
        allowedGroups = { 'admin', 'superadmin', 'god', 'owner', 'developer' },
    },
    
    -- XSound for Level Up
    levelUpSound = {
        enabled = true,
        sound = 'levelup', -- Sound filename (without extension)
        url = 'https://cfx-nui-xsound/html/sounds/levelup.ogg', -- Full URL to sound file in xsound resource
        volume = 0.9,
    },
}

-- ██████╗ ██╗   ██╗██╗     ██╗  ██╗    ███████╗███████╗██╗     ██╗     ██╗███╗   ██╗ ██████╗ 
-- ██╔══██╗██║   ██║██║     ██║ ██╔╝    ██╔════╝██╔════╝██║     ██║     ██║████╗  ██║██╔════╝ 
-- ██████╔╝██║   ██║██║     █████╔╝     ███████╗█████╗  ██║     ██║     ██║██╔██╗ ██║██║  ███╗
-- ██╔══██╗██║   ██║██║     ██╔═██╗     ╚════██║██╔══╝  ██║     ██║     ██║██║╚██╗██║██║   ██║
-- ██████╔╝╚██████╔╝███████╗██║  ██╗    ███████║███████╗███████╗███████╗██║██║ ╚████║╚██████╔╝
-- ╚═════╝  ╚═════╝ ╚══════╝╚═╝  ╚═╝    ╚══════╝╚══════╝╚══════╝╚══════╝╚═╝╚═╝  ╚═══╝ ╚═════╝ 

Config.BulkSelling = {
    enabled = true,
    command = 'bulksale',
    
    -- Bulk sale multipliers
    minMultiplier = 5,  -- Minimum amount multiplier
    maxMultiplier = 15, -- Maximum amount multiplier
    
    -- Payout modifier (1.2 = 20% bonus for bulk)
    bulkBonus = 1.2,
    
    -- Cooldown between bulk sales (in seconds)
    cooldown = 300, -- 5 minutes
    
    -- Wait time before client spawns after command (in seconds)
    waitTime = 30, -- 30 seconds to wait before client appears
    
    -- Client NPC settings
    pedModel = 'a_m_y_business_02',
    meetDistance = 3.0,   -- How close to trigger meeting
    
    -- Spawn locations for client NPC (leave empty for random spawn around player)
    -- If locations are provided, one will be picked randomly
    locations = {
        -- Example locations (uncomment and edit to use):
        -- { x = -355.9633, y = -1486.6702, z = 29.1879 },
        -- { x = 234.56, y = -567.89, z = 30.0 },
        -- { x = 345.67, y = -678.90, z = 31.0 },
    },
    
    -- If locations table is empty, client spawns randomly this far from player
    spawnDistance = 50.0,
}

-- ██████╗ ██████╗ ██╗   ██╗ ██████╗ ███████╗
-- ██╔══██╗██╔══██╗██║   ██║██╔════╝ ██╔════╝
-- ██║  ██║██████╔╝██║   ██║██║  ███╗███████╗
-- ██║  ██║██╔══██╗██║   ██║██║   ██║╚════██║
-- ██████╔╝██║  ██║╚██████╔╝╚██████╔╝███████║
-- ╚═════╝ ╚═╝  ╚═╝ ╚═════╝  ╚═════╝ ╚══════╝

Config.Drugs = {
    ['weed'] = {
        item = 'weed',
        label = 'Weed',
        minPrice = 50,
        optPrice = 80,
        maxPrice = 100,
        maxSell = 5,
        prop = 'prop_weed_bottle',
        icon = 'nui://nayzeee-drugselling/html/images/weed.png',
    },
    
    ['meth'] = {
        item = 'meth',
        label = 'Meth',
        minPrice = 150,
        optPrice = 180,
        maxPrice = 250,
        maxSell = 7,
        prop = 'p_meth_bag_01_s',
        icon = 'nui://nayzeee-drugselling/html/images/meth.png',
    },
    
    ['coke'] = {
        item = 'coke',
        label = 'Cocaine',
        minPrice = 450,
        optPrice = 580,
        maxPrice = 700,
        maxSell = 4,
        prop = 'p_meth_bag_01_s',
        icon = 'nui://nayzeee-drugselling/html/images/coke.png',
    },
}

-- ██████╗ ███████╗██████╗     ████████╗██╗   ██╗██████╗ ███████╗███████╗
-- ██╔══██╗██╔════╝██╔══██╗    ╚══██╔══╝╚██╗ ██╔╝██╔══██╗██╔════╝██╔════╝
-- ██████╔╝█████╗  ██║  ██║       ██║    ╚████╔╝ ██████╔╝█████╗  ███████╗
-- ██╔═══╝ ██╔══╝  ██║  ██║       ██║     ╚██╔╝  ██╔═══╝ ██╔══╝  ╚════██║
-- ██║     ███████╗██████╔╝       ██║      ██║   ██║     ███████╗███████║
-- ╚═╝     ╚══════╝╚═════╝        ╚═╝      ╚═╝   ╚═╝     ╚══════╝╚══════╝

Config.PedTypes = {
    ['normal'] = {
        label = 'Regular',
        exp = 20,
        stealChance = 5,
        buyChance = 80,
        refuseChance = 10,
        callsPolice = true,
        colors = { border = '#58a6ff', bg = '#58a6ff40' }
    },
    
    ['addicted'] = {
        label = 'Addicted',
        exp = 25,
        stealChance = 15,
        buyChance = 85,
        refuseChance = 5,
        callsPolice = false,
        colors = { border = '#00ccff', bg = '#00ccff40' }
    },
    
    ['party'] = {
        label = 'Party',
        exp = 15,
        stealChance = 10,
        buyChance = 75,
        refuseChance = 5,
        callsPolice = true,
        colors = { border = '#ffa600', bg = '#ffa60040' }
    },
    
    ['snitch'] = {
        label = 'Snitch',
        exp = 40,
        stealChance = 0,
        buyChance = 20,
        refuseChance = 50,
        callsPolice = true,
        colors = { border = '#ff0000', bg = '#ff000040' }
    },
    
    ['dealer'] = {
        label = 'Street Dealer',
        exp = 30,
        stealChance = 20,
        buyChance = 60,
        refuseChance = 10,
        callsPolice = false,
        colors = { border = '#00ff00', bg = '#00ff0040' }
    },
    
    ['rich'] = {
        label = 'Rich',
        exp = 10,
        stealChance = 0,
        buyChance = 90,
        refuseChance = 0,
        callsPolice = true,
        colors = { border = '#ffd700', bg = '#ffd70040' }
    },
    
    ['junkie'] = {
        label = 'Junkie',
        exp = 5,
        stealChance = 50,
        buyChance = 70,
        refuseChance = 10,
        callsPolice = false,
        colors = { border = '#8b4513', bg = '#8b451340' }
    },
    
    ['undercover'] = {
        label = 'Undercover',
        exp = 50,
        stealChance = 0,
        buyChance = 30,
        refuseChance = 0,
        callsPolice = true,
        colors = { border = '#2121c4', bg = '#2121c440' }
    },
}

```

</details>
