Config
Config = {}
-- Enabling this will add additional prints and debug visuals
Config.debug = false
--
Config.locale = 'en'
Config.sql = {
driver = 'oxmysql', -- oxmysql or ghmattimysql or mysql
-- If you're using an older version of oxmysql set this to false
newOxMysql = true,
}
-- Plant saving system
-- If you use short grow times (sub 10 minutes), we recommend turning this off, as it shouldn't be necessary and will save on some performance
Config.saving = {
-- Whether to save and load the plant state
enabled = true,
-- Systems: 'sql', 'kvp'
system = 'sql',
-- Saving interval in seconds (The save also occurs when a plant gets planted, collected or dies)
-- Recommended 180 (3min) - 1800 (30min)
interval = 600, -- default = 600 (10min)
-- Delete plants data from the database which have not been updated for more than X days
-- Specified in days
deletePlantsOlderThan = 7,
}
Config.items = {
emptyBaggie = 'kq_weed_bag_empty',
rollingPaper = 'kq_weed_paper',
weedPot = 'kq_weed_pot',
weedTable = 'kq_weed_table',
weedPress = 'kq_weed_press',
weedTent = 'kq_weed_tent',
wateringSystem = 'kq_weed_watering_system',
}
-- Various miscellaneous options
Config.misc = {
-- Whether players should always be able to destroy the plants. When disabled, players may only destroy them once the plants die
alwaysAllowPlantDestroy = true,
-- Whether the lockup/growop doors should be closed automatically after few seconds of inactivity
autoCloseDoors = true,
-- Whether players should be able to look around with the Grow Op security camera
allowSecurityCameraMovement = true,
-- Whether to display plant status in a UI box when standing near it
showPlantStatusUI = false,
blips = {
growop = {
enabled = true,
label = 'Weed Grow-op',
sprite = 496,
color = 62,
alpha = 255,
scale = 0.9,
},
lockup = {
enabled = true,
label = 'Weed Lockup',
sprite = 496,
color = 39,
alpha = 255,
scale = 0.7,
},
},
-- The time between player ability refresh (server -> client)
-- Used to limit/allow client sided interactions.
-- Time in ms
abilityRefreshInterval = 60000,
}
-- Watering minigame options
Config.watering = {
-- General speed of water application to the soil
-- (5 - 50)
wateringSpeed = 17,
-- Water brush size (max radius applied at once)
-- Larger = quicker watering, Lower = slower watering
-- (3 - 16)
brushSize = 7,
}
Config.placing = {
checks = {
-- Whether to only allow the placement of objects in routing buckets which are not `0`.
-- This prevents players from placing the objects when not in a housing or other system utilizing routing buckets
onlyInNonDefaultRoutingBucket = false,
-- Whether to disallow placement on/near roads
disallowPlacementNearRoads = true,
housing = {
-- Whether to enable a housing check. This will allow placement of objects, only when inside a house.
enabled = false,
-- Available systems:
-- nolag_properties
-- origen_housing
-- bcs_housing
-- If your system is not on the list. Chances are that the RoutingBucket detection will be sufficient.
-- We still recommend implementing a housing integration if you know how to.
-- Many popular systems are not pre-configured by us, as they lack the necessary exports/states or don't have any docs.
system = 'nolag_properties',
},
-- You may also restrict the placement of objects to specific areas.
-- When used with a housing check, it'll allow placement in houses as well as within the defined areas
-- If you want greater customization, check the `IsAllowedToPlace` function in server/editable/editable.lua
whitelistedAreas = {
enabled = false,
showBlips = true,
areas = {
{ -- Grape Seed fields area
coords = vec3(1933.0, 4922.0, 46.0),
radius = 250.0
},
{ -- Fields east of Grape Seed
coords = vec3(2880.0, 4624.0, 50.0),
radius = 150.0
},
}
}
},
-- Whether only the player who has placed an object can pick it back up
-- <!> Administrators can always pick them up. Check the editable server file for admin definition.
onlyOwnerCanPickup = true,
}
-- You can utilize our debug placement commands to easily gather these coordinates
-- /kq_weed:potOffset
-- /kq_weed:tableOffset
-- /kq_weed:pressOffset
Config.prePlaced = {
pots = {
-- Barn up north
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(433.70, 6455.19, 27.75), rotation = vec3(0, 0, 320) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(434.41, 6454.69, 27.75), rotation = vec3(0, 0, 320) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(435.09, 6454.19, 27.75), rotation = vec3(0, 0, 320) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(435.80, 6453.69, 27.75), rotation = vec3(0, 0, 320) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(436.51, 6453.19, 27.75), rotation = vec3(0, 0, 320) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(437.22, 6452.69, 27.75), rotation = vec3(0, 0, 320) },
-- Trevor's beach house
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(-1150.66, -1513.53, 9.63), rotation = vec3(0, 0, 290) },
-- Franklin's Mansion
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(5.74, 530.42, 174.34), rotation = vec3(0, 0, 331) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(4.94, 530.86, 174.34), rotation = vec3(0, 0, 331) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(4.14, 531.3, 174.34), rotation = vec3(0, 0, 331) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(3.34, 531.74, 174.34), rotation = vec3(0, 0, 331) },
-- Lost MC HQ
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(985.14, -90.25, 73.84), rotation = vec3(0, 0, 133) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(985.58, -90.73, 73.84), rotation = vec3(0, 0, 133) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(986.02, -91.21, 73.84), rotation = vec3(0, 0, 133) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(986.46, -91.69, 73.84), rotation = vec3(0, 0, 133) },
{ optimal = false, showTent = false, autoWatering = false, coords = vec3(986.90, -92.17, 73.84), rotation = vec3(0, 0, 133) },
-- Train cart in LS near Legion
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(563.98, -510.97, 24.89), rotation = vec3(0, 0, 82) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(564.11, -510.08, 24.89), rotation = vec3(0, 0, 82) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(564.24, -509.19, 24.89), rotation = vec3(0, 0, 82) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(564.37, -508.30, 24.89), rotation = vec3(0, 0, 82) },
{ optimal = true, showTent = true, autoWatering = false, coords = vec3(564.50, -507.41, 24.89), rotation = vec3(0, 0, 82) },
},
tables = {
-- Barn up north
{ coords = vec3(439.45, 6453.96, 27.77), rotation = vec3(0, 0, 51) },
-- Franklin's Mansion
{ coords = vec3(-2.15, 528.62, 173.99), rotation = vec3(0, 0, 59) },
-- Lost MC HQ
{ coords = vec3(983.52, -91.41, 73.85), rotation = vec3(0, 0, 222) },
-- Train cart in LS near Legion
{ coords = vec3(565.26, -501.37, 24.89), rotation = vec3(0, 0, 82) },
},
presses = {
-- Barn up north
{ coords = vec3(435.37, 6457.92, 27.82), rotation = vec3(0, 0, 225) },
-- Train cart in LS near Legion
{ coords = vec3(565.52, -499.61, 24.89), rotation = vec3(0, 0, 82) },
},
}
-- Simple item shop system
-- We highly recommend adding these items to your shops, heists, robberies etc. instead
Config.vendors = {
["fertilizer_store"] = {
coords = vec3(1976.11, 4636.80, 39.95),
heading = 80.0,
model = "a_m_m_hillbilly_01",
idleAnim = {
dict = "timetable@ron@ig_3_couch",
anim = "base"
},
items = {
['kq_weed_fertilizer_speed'] = { label = "Fertilizer [Growth speed]", price = 200 },
['kq_weed_fertilizer_yield'] = { label = "Fertilizer [Yield amount]", price = 200 },
['kq_weed_fertilizer_resistance'] = { label = "Fertilizer [Resistance booster]", price = 200 },
['kq_weed_fertilizer_blackmarket'] = { label = "Fertilizer [Blackmarket]", price = 400 },
},
blip = {
enabled = true,
label = 'Fertilizer dealer',
sprite = 622,
color = 62,
alpha = 255,
scale = 0.7,
},
},
["seed_store"] = {
coords = vec3(-1174.68, -1570.62, 3.35),
heading = 124.0,
model = "g_m_y_famdnf_01",
idleAnim = {
dict = "amb@world_human_leaning@male@wall@back@foot_up@idle_a",
anim = "idle_a"
},
items = {
['kq_weed_seed_og_kush'] = { label = "Weed seed [OG Kush]", price = 100 },
['kq_weed_seed_purple_haze'] = { label = "Weed seed [Purple Haze]", price = 250 },
['kq_weed_seed_white_widow'] = { label = "Weed seed [White Widow]", price = 750 },
['kq_weed_bag_empty'] = { label = "Empty baggie", price = 30, amount = 5 },
},
blip = {
enabled = true,
label = 'Weed seed dealer',
sprite = 140,
color = 62,
alpha = 255,
scale = 0.7,
},
},
["tools_store"] = {
coords = vec3(-197.64, -1711.25, 31.66),
heading = 124.0,
model = "g_m_y_famfor_01",
idleAnim = {
dict = "amb@world_human_leaning@male@wall@back@foot_up@idle_a",
anim = "idle_a"
},
items = {
['kq_weed_paper'] = { label = "Rolling paper", price = 15, amount = 5 },
['kq_weed_pot'] = { label = "Weed Pot", price = 1000 },
['kq_weed_table'] = { label = "Weed workbench", price = 5000 },
['kq_weed_press'] = { label = "Weed press", price = 15000 },
['kq_weed_tent'] = { label = "Grow tent", price = 6000 },
['kq_weed_watering_system'] = { label = "Automatic watering system", price = 7000 },
},
blip = {
enabled = true,
label = 'Weed Paraphernalia dealer',
sprite = 784,
color = 62,
alpha = 255,
scale = 0.7,
},
},
}
-- Item quality metadata (ONLY FOR ox_inventory !)
-- The weed quality depends on the plant conditions, how well it has been watered, and how quickly it has been collected since finishing its growing process
Config.qualityMetadata = {
-- Whether to enable the quality in the metadata for product. (Buds, bricks, baggies, joints)
-- If you do not know how to setup your selling systems to work with the quality metadata, there is no point in enabling it.
-- This is purely an option for advanced usage
enabled = false,
-- Whether to use the quality metadata for seeds as well. The quality of the seed will be the maximum quality of the weed buds collected
seedQuality = false,
}-- Colors of Lockups containers
-- 0 = white/default
-- 1 = blue
-- 2 = green
-- 3 = orange
-- 4 = red
-- 5 = black
-- 6 = Cyan
-- 7 = lime
-- 8 = dark green
-- 9 = maroon
-- 10 = dark red
-- 11 = dark purple
-- 12 = gray
-- 13 = dark gray
-- 14 = light gray
-- 15 = yellow
Config.lockups = {
['container_1'] = {
-- Model name of the container
model = 'kq_weed_container_01',
-- All the locations at which this lockup will spawn
locations = {
{
coords = vec3(REDACTED),
rotation = vec3(0, -0.5, -25.6),
color = 9,
-- Limit players of specific jobs to be able to access the lockups
jobs = { 'mafia', 'police' },
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 90),
color = 3,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 65),
color = 1,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 269),
color = 0,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 269),
color = 0,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, -0.06, 267),
color = 0,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 200),
color = 4,
},
{
coords = vec3(REDACTED),
rotation = vec3(0.95, 0, 223),
color = 7,
},
},
-- Information about the door of the lockup. No need to modify this
door = {
model = 'kq_weed_container_door',
coords = vec3(-2.61, -3.4, -0.0),
rotation = vec3(0, 0, 0)
},
-- The relative position of the interactions
interactions = {
lights = vec3(-2.15, 3.21, 1.56),
},
-- The relative placement of the tables
tables = {
{
coords = vec3(-2.1, 0.4, 0.07),
rotation = vec3(0, 0, 90),
},
},
-- The relative placement of the presses
presses = {
{
coords = vec3(-2.2, -1.3, 0.07),
rotation = vec3(0, 0, 90),
},
},
-- The relative placement of the pots
pots = {
-- Row A
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 2.5, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 1.75, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 1, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 0.25, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, -0.5, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, -1.25, 0.07), rotation = vec3(0, 0, 180) },
-- Row B
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.2, 2.5, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.2, 1.75, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.2, 1, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.2, 0.25, 0.07), rotation = vec3(0, 0, 0) },
},
-- Randomized props which may spawn inside the lockup
props = {
{
-- Chance of the prop spawning inside a location (seeded by its location)
chance = 60,
-- Possible models of the prop
models = {
'hei_prop_hei_skid_chair',
'bkr_prop_weed_chair_01a',
'prop_chair_02',
'v_serv_abox_1',
},
-- Relative coordinates of the prop
coords = vec3(1.85, -2.6, 0.07),
rotation = vec3(0, 0, 210),
},
{
chance = 65,
models = {
'prop_rub_couch03',
'prop_rub_couch01',
'v_res_tre_sofa_mess_b',
'v_tre_sofa_mess_c_s',
'v_res_tre_sofa_s',
'v_res_d_sofa',
'v_res_j_sofa',
'v_ind_meatbench',
'v_ret_ml_beerlog2',
},
coords = vec3(0.1, -2.85, 0.07),
rotation = vec3(0, 0, 181),
},
{
chance = 60,
model = 'prop_barrel_02b',
coords = vec3(-2.25, 2.95, 0.07),
rotation = vec3(0, 0, 240),
},
{
chance = 60,
model = 'prop_barrel_02b',
coords = vec3(-2.25, 2.4, 0.07),
rotation = vec3(0, 0, 30),
},
{
chance = 30,
model = 'prop_rub_binbag_04',
coords = vec3(-1.5, 2.79, 0.02),
rotation = vec3(20, 0, 140),
},
{
chance = 50,
models = {
'v_ind_cf_chckbox1',
'v_ind_meatboxsml_02',
'v_ind_cs_box02',
},
coords = vec3(-2.15, -0.13, 0.07),
rotation = vec3(0, 0, 9),
},
{
chance = 50,
model = 'v_ind_cfbox2',
coords = vec3(1.99, 3.0, 0.08),
rotation = vec3(0, 0, 354),
},
},
},
['container_2'] = {
model = 'kq_weed_container_02',
locations = {
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 270),
color = 14,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 148),
color = 3,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 90),
color = 1,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 220),
color = 2,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 181),
color = 13,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 88),
color = 10,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 67),
color = 6,
},
},
door = {
model = 'kq_weed_container_door',
coords = vec3(-2.61, -3.4, -0.0),
rotation = vec3(0, 0, 0)
},
interactions = {
lights = vec3(-2.15, 3.21, 1.56),
},
tables = {
{
coords = vec3(-2.1, 0.4, 0.07),
rotation = vec3(0, 0, 90),
}
},
presses = {
{
coords = vec3(-2.2, -1.3, 0.07),
rotation = vec3(0, 0, 90),
},
},
props = {
{
chance = 60,
model = 'prop_barrel_02b',
coords = vec3(-2.25, 2.95, 0.07),
rotation = vec3(0, 0, 240),
},
{
chance = 60,
model = 'prop_barrel_02b',
coords = vec3(-2.25, 2.4, 0.07),
rotation = vec3(0, 0, 30),
},
{
chance = 30,
model = 'prop_rub_binbag_04',
coords = vec3(-1.5, 2.79, 0.02),
rotation = vec3(20, 0, 140),
},
{
chance = 60,
models = {
'prop_barrel_02b',
'v_corp_sidechair',
'bkr_prop_weed_chair_01a',
},
coords = vec3(-1.0, -2.95, 0.07),
rotation = vec3(0, 0, 181),
},
{
chance = 50,
models = {
'v_ind_cf_chckbox1',
'v_ind_meatboxsml_02',
'v_ind_cs_box02',
},
coords = vec3(-2.15, -0.13, 0.07),
rotation = vec3(0, 0, 9),
},
},
pots = {
-- Row A
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2.1, 3.5, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(1.35, 3.5, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.6, 3.5, 0.07), rotation = vec3(0, 0, 270) },
-- Row B
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2.1, 1.85, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(1.35, 1.85, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.6, 1.85, 0.07), rotation = vec3(0, 0, 270) },
-- Row C
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2.1, 0.2, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(1.35, 0.2, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.6, 0.2, 0.07), rotation = vec3(0, 0, 270) },
-- Row D
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2.1, -1.45, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(1.35, -1.45, 0.07), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.6, -1.45, 0.07), rotation = vec3(0, 0, 270) },
},
},
['container_3'] = {
model = 'kq_weed_container_03',
locations = {
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 270),
color = 0,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 110),
color = 6,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 271),
color = 7,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 176),
color = 4,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 60),
color = 8,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 174),
color = 1,
},
{
coords = vec3(REDACTED6),
rotation = vec3(0, 0, 85),
color = 13,
},
{
coords = vec3(REDACTED),
rotation = vec3(-0.5, 1.8, 270),
color = 14,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 111),
color = 5,
},
},
door = {
model = 'kq_weed_container_door',
coords = vec3(-2.61, -3.4, -0.0),
rotation = vec3(0, 0, 0)
},
interactions = {
lights = vec3(-2.5, -1.4, 1.57),
},
tables = {
{
coords = vec3(2.1, -1.4, 0.07),
rotation = vec3(0, 0, 270),
}
},
presses = {
{
coords = vec3(0.055, -2.95, 0.07),
rotation = vec3(0, 0, 182),
},
},
props = {
{
chance = 60,
models = {
'prop_barrel_02b',
'bkr_prop_weed_chair_01a',
},
coords = vec3(-1.05, -2.95, 0.07),
rotation = vec3(0, 0, 185),
},
{
chance = 30,
model = 'prop_rub_binbag_04',
coords = vec3(-1.5, 2.78, 0.02),
rotation = vec3(20, 0, 140),
},
{
chance = 50,
model = 'v_ind_cfbox2',
coords = vec3(1.99, 3.0, 0.08),
rotation = vec3(0, 0, 354),
},
},
pots = {
-- Row A
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 2.5, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 1.75, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(2, 1, 0.07), rotation = vec3(0, 0, 180) },
-- Row B
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.35, 2.5, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.35, 1.75, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(0.35, 1, 0.07), rotation = vec3(0, 0, 0) },
-- Row C
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-0.35, 2.5, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-0.35, 1.75, 0.07), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-0.35, 1, 0.08), rotation = vec3(0, 0, 180) },
-- Row D
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-2, 2.5, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-2, 1.75, 0.07), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = false, coords = vec3(-2, 1, 0.07), rotation = vec3(0, 0, 0) },
},
},
}
-- Colors of GrowOps containers
-- 0 = white/default
-- 1 = blue
-- 2 = green
-- 3 = orange
-- 4 = red
-- 5 = black
-- 6 = Cyan
-- 7 = lime
-- 8 = dark green
-- 9 = maroon
-- 10 = dark red
-- 11 = dark purple
-- 12 = gray
-- 13 = dark gray
-- 14 = light gray
-- 15 = yellow
Config.growops = {
['main'] = {
interior = {
model = 'kq_weed_growop_int',
offset = vec3(0.3, 4.78, -4.3),
rotation = vec3(0, 0, 0)
},
-- The Z offset of the shell (interior) entity
shellZOffset = 1400.0,
-- All the locations at which this grow op will spawn
locations = {
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 57),
-- Limit players of specific jobs to be able to access the grow ops
jobs = { 'mafia', 'police' },
color = 12,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 170),
color = 2,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 270),
color = 4,
},
{
coords = vec3(REDACTED),
rotation = vec3(0.5, -0.25, 148),
color = 12,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 0),
color = 15,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 141),
color = 0,
},
{
coords = vec3(REDACTED9),
rotation = vec3(-1.9, -0.7, 350),
color = 6,
},
{
coords = vec3(REDACTED),
rotation = vec3(0, 0, 43),
color = 3,
},
},
-- The relative placement of the tables
tables = {
{
coords = vec3(-7.35, 5.1, -5.23),
rotation = vec3(0, 0, 90),
},
{
coords = vec3(-6.2, 9.17, -5.23),
rotation = vec3(0, 0, 0),
},
},
-- The relative placement of the presses
presses = {
{
coords = vec3(-3.27, 4.2, -5.23),
rotation = vec3(0, 0, 183),
},
{
coords = vec3(-4.9, 4.16, -5.23),
rotation = vec3(0, 0, 179),
},
},
-- The relative position of the interactions
interactions = {
cctv = vec3(2.15, 4.3, -4.2),
},
pots = {
-- Row 1A
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-3.25, 21.0, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-2.4, 21.0, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-1.55, 21.0, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-0.7, 21.0, -5.25), rotation = vec3(0, 0, 270) },
-- Row 1B
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-3.25, 18.5, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-2.4, 18.5, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-1.55, 18.5, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(-0.7, 18.5, -5.25), rotation = vec3(0, 0, 90) },
-- Row 2A
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.75, 20.8, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(2.9, 20.8, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(2.05, 20.8, -5.25), rotation = vec3(0, 0, 270) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1.2, 20.8, -5.25), rotation = vec3(0, 0, 270) },
-- Row 2B
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.75, 18.3, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(2.9, 18.3, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(2.05, 18.3, -5.25), rotation = vec3(0, 0, 90) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1.2, 18.3, -5.25), rotation = vec3(0, 0, 90) },
-- Row 3A
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.65, 15.25, -5.23), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.7, 14.45, -5.23), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.75, 13.65, -5.23), rotation = vec3(0, 0, 180) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(3.8, 12.85, -5.23), rotation = vec3(0, 0, 180) },
-- Row 3B
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1, 15.25, -5.23), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1.05, 14.45, -5.23), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1.1, 13.65, -5.23), rotation = vec3(0, 0, 0) },
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(1.15, 12.85, -5.23), rotation = vec3(0, 0, 0) },
},
props = {
{
model = 'prop_cctv_01_sm',
coords = vec3(2.7, 4.18, -4.36),
rotation = vec3(0, 0, 200),
},
{
model = 'prop_cctv_unit_03',
coords = vec3(2.05, 4.2, -4.36),
rotation = vec3(0, 0, 177),
},
{
model = 'prop_cctv_cont_04',
coords = vec3(2.15, 4.2, -4.74),
rotation = vec3(0, 0, 182),
},
{
model = 'bkr_prop_weed_fan_floor_01a',
coords = vec3(-3.5, 19.8, -5.24),
rotation = vec3(0, 0, 85),
},
{
model = 'bkr_prop_weed_fan_floor_01a',
coords = vec3(2.54, 11.56, -5.24),
rotation = vec3(0, 0, 172),
},
{
model = 'bkr_prop_weed_fan_floor_01a',
coords = vec3(4.01, 19.8, -5.24),
rotation = vec3(0, 0, 273),
},
{
model = 'xm3_prop_xm3_tank_water_01a',
coords = vec3(-2.6, 14.1, -5.43),
rotation = vec3(0, 0, 88),
},
{
model = 'xm3_prop_xm3_tank_water_01a',
coords = vec3(-2.62, 12.1, -5.43),
rotation = vec3(0, 0, 91),
},
{
chance = 45,
models = {
'prop_generator_01a',
},
coords = vec3(-1.18, 4.46, -5.25),
rotation = vec3(0, 0, 91),
},
{
chance = 65,
models = {
'prop_generator_01a',
},
coords = vec3(3.39, 16.64, -5.25),
rotation = vec3(0, 0, 273),
},
{
chance = 60,
models = {
'hei_prop_hei_skid_chair',
'bkr_prop_weed_chair_01a',
'prop_chair_02',
},
coords = vec3(-1.8, 13.1, -5.25),
rotation = vec3(0, 0, 110),
},
{
chance = 40,
models = {
'hei_prop_hei_skid_chair',
'bkr_prop_weed_chair_01a',
'prop_chair_02',
},
coords = vec3(-1.04, 10.68, -5.25),
rotation = vec3(0, 0, 188),
},
{
chance = 75,
models = {
'xm3_prop_xm3_box_wood_01a',
'xm3_prop_xm3_rub_matress_01a',
'xm3_prop_xm3_crate_phac_01b',
'v_res_tre_sofa_mess_b',
'xm3_prop_xm3_tarp_roll_01a',
'xm3_prop_xm3_crate_01a',
'prop_portaloo_01a',
},
coords = vec3(3.3, 7.4, -5.25),
rotation = vec3(0, 0, 265),
},
{
chance = 75,
models = {
'xm3_prop_xm3_box_wood_01a',
'xm3_prop_xm3_rub_matress_01a',
'xm3_prop_xm3_crate_phac_01b',
'xm3_prop_xm3_tarp_roll_01a',
'xm3_prop_xm3_crate_01a',
},
coords = vec3(-1.60, 16.12, -5.25),
rotation = vec3(0, 0, 182),
},
{
models = {
'hei_prop_hei_skid_chair',
'bkr_prop_weed_chair_01a',
'prop_chair_02',
},
coords = vec3(-7.45, 6.86, -5.26),
rotation = vec3(0, 0, 91),
},
{
models = {
'hei_prop_hei_skid_chair',
'bkr_prop_weed_chair_01a',
'prop_chair_02',
},
coords = vec3(2.7, 5.0, -5.26),
rotation = vec3(0, 0, 335),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(-2.99, 10.77, -5.25),
rotation = vec3(0, 0, 41),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(-2.95, 15.82, -5.25),
rotation = vec3(0, 0, 144),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(3.04, 15.55, -5.25),
rotation = vec3(0, 0, 32),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(2.52, 21.55, -5.25),
rotation = vec3(0, 0, 231),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(-0.9, 18.96, -5.25),
rotation = vec3(0, 0, 83),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(-2.87, 21.77, -5.25),
rotation = vec3(0, 0, 55),
},
{
chance = 80,
models = {
'bkr_prop_weed_bucket_01c', 'bkr_prop_weed_bucket_open_01a', 'ng_proc_leaves07',
'p_ld_cable_tie_01_s', 'ng_proc_cigpak01c', 'ng_proc_cigbuts02a', 'gr_prop_gr_pliers_01',
},
coords = vec3(3.67, 10.29, -5.25),
rotation = vec3(0, 0, 32),
},
{
models = {
'bkr_prop_weed_pallet', 'xm3_prop_xm3_crate_01b',
},
coords = vec3(-3.56, 8.8, -5.24),
rotation = vec3(0, 0, 184),
},
},
},
['kq_sbx_shell_64'] = {
interior = {
model = 'kq_sbx_shell_64',
offset = vec3(2.0, -2.0, 4.0),
rotation = vec3(0, 0, 180.0)
},
shellZOffset = 1400.0,
locations = {
{
coords = vec3(1111.07, 3020.13, 39.53), -- CHANGE ME
rotation = vec3(0, 0, 195.97), -- CHANGE ME
color = 9,
},
-- ADD MORE LOCATIONS HERE AS NEEDED
},
tables = {
{
coords = vec3(-2.1, 5.32, -5.24), -- CHANGE ME
rotation = vec3(0, 0, 89.62),
},
-- ADD MORE TABLES HERE AS NEEDED
},
presses = {
{
coords = vec3(2.79, 8.24, -5.24), -- CHANGE ME
rotation = vec3(0, 0, 270.9),
},
-- ADD MORE PRESSES HERE AS NEEDED
},
-- use `/kq_weed:potOffset` while inside the grow op to easily retrieve the offset coordinates
pots = {
{ optimal = true, showTent = false, autoWatering = true, coords = vec3(2.77, 6.2, -5.24), rotation = vec3(0, 0, 180.46) }
-- ADD MORE POTS HERE AS NEEDED
},
},
--['kq_sbx_shell_64'] = {
-- interior = {
-- model = 'kq_sbx_shell_64',
-- offset = vec3(2.0, -2.0, 4.0),
-- rotation = vec3(0, 0, 180.0)
-- },
--
-- shellZOffset = 1400.0,
--
-- locations = {
-- {
-- coords = vec3(2515.96, 4220.33, 38.93),
-- rotation = vec3(0, 0, 57),
-- color = 9,
-- },
-- },
--
-- tables = {
-- {
-- coords = vec3(-2.12, 6.28, -5.24),
-- rotation = vec3(0, 0, 90),
-- },
-- {
-- coords = vec3(-1.47, 11.2, -5.24),
-- rotation = vec3(0, 0, 0),
-- },
-- },
-- presses = {
-- {
-- coords = vec3(2.94, 4.93, -5.24),
-- rotation = vec3(0, 0, 270),
-- },
-- {
-- coords = vec3(2.94, 6.43, -5.24),
-- rotation = vec3(0, 0, 270),
-- },
-- },
-- -- use `/kq_weed:potOffset` while inside the grow op to easily retrieve the offset coordinates
-- pots = {
-- -- ROW A
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-3.75, 10.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-2.75, 10.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-1.75, 10.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-0.75, 10.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(0.25, 10.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(1.25, 10.86, -8.29), rotation = vec3(0, 0, 270) },
--
-- -- ROW B
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-3.75, 8.65, -8.29), rotation = vec3(0, 0, 90) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-2.75, 8.65, -8.29), rotation = vec3(0, 0, 90) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-1.75, 8.65, -8.29), rotation = vec3(0, 0, 90) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-0.75, 8.65, -8.29), rotation = vec3(0, 0, 90) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(0.25, 8.65, -8.29), rotation = vec3(0, 0, 90) },
--
-- -- ROW C
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-3.75, 7.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-2.75, 7.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-1.75, 7.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(-0.75, 7.86, -8.29), rotation = vec3(0, 0, 270) },
-- { optimal = true, showTent = false, autoWatering = true, coords = vec3(0.25, 7.86, -8.29), rotation = vec3(0, 0, 270) },
-- },
--},
}-- Define your fertilizer types here
Config.fertilizerTypes = {
['growth_speed'] = {
label = 'Growth speed',
item = 'kq_weed_fertilizer_speed',
-- 0 = Blue -- 1 = Yellow -- 2 = White -- 3 = Red -- 4 = Black -- 5 = Brown -- 6 = Purple -- 7 = Green
color = 0,
multipliers = {
-- General growth speed
growthSpeed = 1.3,
-- Water consumption multiplier
waterConsumption = 1.4,
-- Plant resistance to dryness and decay(collection) lifespan
resistance = 0.9,
-- Amount of weed received from the plant
yield = 0.9,
},
},
['yield_amount'] = {
label = 'Yield amount',
item = 'kq_weed_fertilizer_yield',
-- 0 = Blue -- 1 = Yellow -- 2 = White -- 3 = Red -- 4 = Black -- 5 = Brown -- 6 = Purple -- 7 = Green
color = 1,
multipliers = {
-- General growth speed
growthSpeed = 0.75,
-- Water consumption multiplier
waterConsumption = 1.2,
-- Plant resistance to dryness and decay(collection) lifespan
resistance = 1.0,
-- Amount of weed received from the plant
yield = 1.45,
},
},
['resistance_booster'] = {
label = 'Resistance booster',
item = 'kq_weed_fertilizer_resistance',
-- 0 = Blue -- 1 = Yellow -- 2 = White -- 3 = Red -- 4 = Black -- 5 = Brown -- 6 = Purple -- 7 = Green
color = 7,
multipliers = {
-- General growth speed
growthSpeed = 0.95,
-- Water consumption multiplier
waterConsumption = 1.1,
-- Plant resistance to dryness and decay(collection) lifespan
resistance = 2.5,
-- Amount of weed received from the plant
yield = 1.0,
},
},
['blackmarket_fertilizer'] = {
label = 'Blackmarket',
item = 'kq_weed_fertilizer_blackmarket',
-- 0 = Blue -- 1 = Yellow -- 2 = White -- 3 = Red -- 4 = Black -- 5 = Brown -- 6 = Purple -- 7 = Green
color = 6,
multipliers = {
-- General growth speed
growthSpeed = 1.3,
-- Water consumption multiplier
waterConsumption = 1.5,
-- Plant resistance to dryness and decay(collection) lifespan
resistance = 0.75,
-- Amount of weed received from the plant
yield = 1.1,
},
},
-- You can add as many different types of fertilizers as you want
}Config.weedTypes = {
['og_kush'] = {
-- Display name of the breed
label = 'OG Kush',
seedItem = 'kq_weed_seed_og_kush',
baggieItem = 'kq_weed_bag_og_kush',
jointItem = 'kq_weed_joint_og_kush',
brickItem = 'kq_weed_brick_og_kush',
-- Base growth time in minutes (Excluding any multipliers, think optimal conditions, fertilizer etc.)
-- Recommended minimum of 4 minutes
baseGrowTime = 13,
-- The yield of the plant
yield = {
-- Amount of buds the plant should give (excluding any multipliers)
buds = {
item = 'kq_weed_bud_og_kush',
min = 6,
max = 8,
},
seeds = {
-- The chances of receiving any seeds back
chance = 50,
-- Min/max amounts of seed once the random chance hits
min = 1,
max = 2,
-- Chances of receiving a different seed after plant collection
mutations = {
{
item = 'kq_weed_seed_purple_haze',
chance = 15,
},
{
item = 'kq_weed_seed_white_widow',
chance = 5,
},
}
}
},
-- Re-water time in minutes (How often does the plant need watering)
-- (Players are able to add water as soon as the level drops below 50%)
-- After this time, the plant will immediately start losing health. Treat this as the max time between watering
-- Recommended minimum of 3 minutes
wateringTime = 9,
-- The amount of health plants will lose per second when the soil fully dries out (max health = 100)
-- Plants will also halt growing without any water
dryHealthLoss = 0.83, -- (0.83) By default plants will survive for 2 minutes without any water
-- Full growth lifespan in minutes
-- The time players have between the plant fully growing and it dying after not being picked
-- Recommended minimum of 4 minutes
collectionLifespan = 25,
-- Requires "optimal conditions" to grow
-- Optimal conditions are defined in the config where pots are created, or by a player placed pot with a grow tent
-- The plant will die (at +-20% of growth process) if its not grown in optimal conditions (Lockups, Grow Ops or a grow tent)
needsConditions = false,
growthMultipliers = {
-- The growth speed multiplier of the plant when planted in a pot with optimal conditions
optimalConditions = 1.2,
},
-- Color of the leaves
-- 0 = Green (classic) -- 1 = Light purple -- 2 = Red -- 3 = Blue -- 4 = Yellow -- 5 = Bright pink -- 6 = White -- 7 = Black/dark
plantColor = 0,
-- Amount of buds needed for a brick
-- Recommended 10 - 40 buds per brick
budsPerBrick = 20,
},
['purple_haze'] = {
-- Display name of the breed
label = 'Purple Haze',
seedItem = 'kq_weed_seed_purple_haze',
baggieItem = 'kq_weed_bag_purple_haze',
jointItem = 'kq_weed_joint_purple_haze',
brickItem = 'kq_weed_brick_purple_haze',
-- Base growth time in minutes (Excluding any multipliers, think optimal conditions, fertilizer etc.)
-- Recommended minimum of 4 minutes
baseGrowTime = 20,
-- The yield of the plant
yield = {
-- Amount of buds the plant should give (excluding any multipliers)
buds = {
item = 'kq_weed_bud_purple_haze',
min = 5,
max = 6,
},
seeds = {
-- The chances of receiving any seeds back
chance = 30,
-- Min/max amounts of seed once the random chance hits
min = 1,
max = 2,
-- Chances of receiving a different seed after plant collection
mutations = {
{
item = 'kq_weed_seed_og_kush',
chance = 15,
},
{
item = 'kq_weed_seed_white_widow',
chance = 15,
},
{
item = 'kq_weed_seed_blue_dream',
chance = 5,
},
}
}
},
-- Re-water time in minutes (How often does the plant need watering)
-- (Players are able to add water as soon as the level drops below 50%)
-- After this time, the plant will immediately start losing health. Treat this as the max time between watering
-- Recommended minimum of 3 minutes
wateringTime = 12,
-- The amount of health plants will lose per second when the soil fully dries out (max health = 100)
-- Plants will also halt growing without any water
dryHealthLoss = 0.83, -- (0.83) By default plants will survive for 2 minutes without any water
-- Full growth lifespan in minutes
-- The time players have between the plant fully growing and it dying after not being picked
-- Recommended minimum of 4 minutes
collectionLifespan = 30,
-- Requires "optimal conditions" to grow
-- Optimal conditions are defined in the config where pots are created, or by a player placed pot with a grow tent
-- The plant will die if its not grown in optimal conditions (Lockups, Grow Ops or a grow tent)
needsConditions = false,
growthMultipliers = {
-- The growth speed multiplier of the plant when planted in a pot with optimal conditions
optimalConditions = 1.2,
},
-- Color of the leaves
-- 0 = Green (classic) -- 1 = Light purple -- 2 = Red -- 3 = Blue -- 4 = Yellow -- 5 = Bright pink -- 6 = White -- 7 = Black/dark
plantColor = 1,
-- Amount of buds needed for a brick
-- Recommended 10 - 40 buds per brick
budsPerBrick = 20,
},
['white_widow'] = {
-- Display name of the breed
label = 'White widow',
seedItem = 'kq_weed_seed_white_widow',
baggieItem = 'kq_weed_bag_white_widow',
jointItem = 'kq_weed_joint_white_widow',
brickItem = 'kq_weed_brick_white_widow',
-- Base growth time in minutes (Excluding any multipliers, think optimal conditions, fertilizer etc.)
-- Recommended minimum of 4 minutes
baseGrowTime = 30,
-- The yield of the plant
yield = {
-- Amount of buds the plant should give (excluding any multipliers)
buds = {
item = 'kq_weed_bud_white_widow',
min = 5,
max = 6,
},
seeds = {
-- The chances of receiving any seeds back
chance = 35,
-- Min/max amounts of seed once the random chance hits
min = 1,
max = 2,
-- Chances of receiving a different seed after plant collection
mutations = {
{
item = 'kq_weed_seed_purple_haze',
chance = 10,
}
}
}
},
-- Re-water time in minutes (How often does the plant need watering)
-- (Players are able to add water as soon as the level drops below 50%)
-- After this time, the plant will immediately start losing health. Treat this as the max time between watering
-- Recommended minimum of 3 minutes
wateringTime = 15,
-- The amount of health plants will lose per second when the soil fully dries out (max health = 100)
-- Plants will also halt growing without any water
dryHealthLoss = 0.83, -- (0.83) By default plants will survive for ~2 minutes without any water
-- Full growth lifespan in minutes
-- The time players have between the plant fully growing and it dying after not being picked
-- Recommended minimum of 4 minutes
collectionLifespan = 20,
-- Requires "optimal conditions" to grow
-- Optimal conditions are defined in the config where pots are created, or by a player placed pot with a grow tent
-- The plant will die if its not grown in optimal conditions (Lockups, Grow Ops or a grow tent)
needsConditions = true,
growthMultipliers = {
-- The growth speed multiplier of the plant when planted in a pot with optimal conditions
optimalConditions = 1.0,
},
-- Color of the leaves
-- 0 = Green (classic) -- 1 = Light purple -- 2 = Red -- 3 = Blue -- 4 = Yellow -- 5 = Bright pink -- 6 = White -- 7 = Black/dark
plantColor = 6,
-- Amount of buds needed for a brick
-- Recommended 10 - 40 buds per brick
budsPerBrick = 20,
},
['blue_dream'] = {
-- Display name of the breed
label = 'Blue dream',
seedItem = 'kq_weed_seed_blue_dream',
baggieItem = 'kq_weed_bag_blue_dream',
jointItem = 'kq_weed_joint_blue_dream',
brickItem = 'kq_weed_brick_blue_dream',
-- Base growth time in minutes (Excluding any multipliers, think optimal conditions, fertilizer etc.)
-- Recommended minimum of 4 minutes
baseGrowTime = 45,
-- The yield of the plant
yield = {
-- Amount of buds the plant should give (excluding any multipliers)
buds = {
item = 'kq_weed_bud_blue_dream',
min = 5,
max = 7,
},
seeds = {
-- The chances of receiving any seeds back
chance = 35,
-- Min/max amounts of seed once the random chance hits
min = 1,
max = 3,
-- Chances of receiving a different seed after plant collection
mutations = {
{
item = 'kq_weed_seed_purple_haze',
chance = 15,
}
}
}
},
-- Re-water time in minutes (How often does the plant need watering)
-- (Players are able to add water as soon as the level drops below 50%)
-- After this time, the plant will immediately start losing health. Treat this as the max time between watering
-- Recommended minimum of 3 minutes
wateringTime = 18,
-- The amount of health plants will lose per second when the soil fully dries out (max health = 100)
-- Plants will also halt growing without any water
dryHealthLoss = 0.83, -- (0.83) By default plants will survive for ~2 minutes without any water
-- Full growth lifespan in minutes
-- The time players have between the plant fully growing and it dying after not being picked
-- Recommended minimum of 4 minutes
collectionLifespan = 60,
-- Requires "optimal conditions" to grow
-- Optimal conditions are defined in the config where pots are created, or by a player placed pot with a grow tent
-- The plant will die if its not grown in optimal conditions (Lockups, Grow Ops or a grow tent)
needsConditions = true,
growthMultipliers = {
-- The growth speed multiplier of the plant when planted in a pot with optimal conditions
optimalConditions = 1.0,
},
-- Color of the leaves
-- 0 = Green (classic) -- 1 = Light purple -- 2 = Red -- 3 = Blue -- 4 = Yellow -- 5 = Bright pink -- 6 = White -- 7 = Black/dark
plantColor = 3,
-- Amount of buds needed for a brick
-- Recommended 10 - 40 buds per brick
budsPerBrick = 20,
},
-- You can add as many different strains of weed as you want
}Last updated