Config
Here is the config files for your viewing pleasure.
You can also edit the menu system to your own if you wish in the menu.lua file. You can also edit the targeting system in the target.lua file. There is also a no_escrow file that includes a CanSellToPed Function that you can edit if you need to. I am 99% sure that you would never need to edit the escrow locked files but I do expose functions upon request as long as the reasoning is valid!
Config = Config or {}
--[[
set to 'qbcore' for qb-core.
set to 'qbox-core' for qbox-core.
set to 'esxlegacy' for esx legacy.
set to 'custom' if you wish to set this up for your own framework.
]]
Config.Framework = 'qbcore'
--[[
set to 'default' if you are using qb-inventory/esx-inventory inventory system
set to 'ox_inventory' for ox inventory
]]
Config.Inventory = 'default'
--[[
'stand_alone' is RageUI (Built in)
'qb-menu' is for qb-menu. (REQUIRES: qb-menu)
'ox_lib' is for ox_lib. (REQUIRES: ox_lib) ! MAKE SURE TO EDIT THE fxmanifest.lua FILE IF YOU PLAN TO USE ox_lib !
You could also make your own if you wish in the menu.lua file, Just copy the same format.
]]
Config.MenuSystem = 'stand_alone'
--[[
Set to 'qb-target' for qb-target.
Set to 'ox_target' for ox_target.
You can also add your own in the target.lua file.
]]
Config.UseTarget = true--true/false, If false then it will be a press [button] help notification, Would recommend using target though has it will cost less resources for your players.
Config.TargetSystem = 'qb-target'
--[[
This is what account balance the player will recieve when they sell drugs.
Change this to 'money' if you are using ESX!!!!
You can also change it to any other account if you want.. so you could even change it to 'black_money' if you want to use the black money system (ESX)
]]
Config.PaymentAccount = 'cash'
--Enables a chance to call the police, Chances can be edited in the framework.lua file in the DealDeclined function.
Config.CallPoliceEnabled = true
--Enables a chance to get mugged, Chances can be edited in the framework.lua file in the DealDeclined function.
Config.MuggingEnabled = true
--This can be a static number like 'Config.MugAmount = 5' or can be a table like so 'Config.MugAmount = {1,4}' this would choose a random number from 1 to 4 to remove from the player.
Config.MugAmount = {1,4}
-- Jobs that are not allowed to sell drugs.
Config.BlacklistedJobs = {
['police'] = true,
['sheriff'] = true,
}
-- Ped models that are not allowed to be sold to.
Config.BlacklistedModels = {
-- Use model names like so:
[`S_M_Y_AmmuCity_01`] = true,
[`S_M_M_AmmuCountry`] = true,
[`S_F_M_Shop_HIGH`] = true,
[`MP_M_ShopKeep_01`] = true,
[`S_F_Y_Shop_LOW`] = true,
[`S_F_Y_Shop_MID`] = true,
[`s_m_y_cop_01`] = true,
[`s_m_y_dealer_01`] = true,
}
--Set this to false if you don't want the police to receive alerts.
Config.CallPolice = true
--Set this to 0 if you dont use it. This would require the amount of Police online to sell drugs.
Config.PoliceRequired = 0
--The jobs to notify + the jobs to get the count from for cops online.
Config.PoliceJobs = {'police', 'sheriff'}
Config.PDBlip = {
--Blip settings
sprite = 51,
display = 6,
scale = 0.7,
short_range = true,
colour = 1,
text = 'Possible Drug Deal',
--How long the blip lasts in seconds.
lasting = 180,
--Notification
notif = {
text = 'Report received for a possible drug sale, area: %s, Check your GPS for a exact location.',
type = 'primary'
}
}
Config.SellDrugsTime = 5 --How long it takes to attempt to sell drugs in seconds.
Config.DealsDeclinedInARow = 5 --Max amount of sales declined before guarenteed sale, Simply set this to a high number if you don't want to use this.
Config.DefaultSellChance = 0.4 --a number from 0 - 1, Default is 40% chance (0.5), Default sell chance (if the items is in SellChances this gets overwritten for that item)
Config.CallPoliceOnFailSaleChance = 0.30 --a number from 0 - 1, Chance to call the police when failing a sale. (0.3 = 30% chance, 0.03 = 3% chance etc.)
--All the names of sellable drugs.
Config.SellableDrugs = {
'cokebaggy',
'crack_baggy',
'xtcbaggy',
'xtc',
'oxy',
'meth',
'weed_white-widow',
'weed_skunk',
'weed_purple-haze',
'weed_og-kush',
'weed_amnesia',
'weed_ak47',
}
--Sell chances for drugs to be sold number from 0.0 - 1.0, 1.0 Being 100% chance
Config.SellChances = {
['cokebaggy'] = 0.4,
['crack_baggy'] = 0.4,
['xtcbaggy'] = 0.4,
['xtc'] = 0.4,
['oxy'] = 0.4,
['meth'] = 0.4,
['weed_white-widow'] = 0.5,
['weed_skunk'] = 0.5,
['weed_purple-haze'] = 0.5,
['weed_og-kush'] = 0.5,
['weed_amnesia'] = 0.5,
['weed_ak47'] = 0.5,
}
Config.CornerSelling = {
enabled = true,
sales_needed = 1,--Player needs to have completed 100 sales before being able corner sell.
command = 'cornersell',
sale_radius = 30.0,--The radius to check for peds to come and start a sale.
blocked_controls = {
{0, 22},--Jump
{0, 30},--Move L/R
{0, 31},--Move U/D
{0, 32},--Move Up
{0, 33},--Move Down
{0, 34},--Move Left
{0, 35},--Move Right
},
ped_check_radius = 75.0,--Gets all peds that are allowed to be sold to in this radius
sell_timer = 5,--In seconds how long between each sale before we find a new ped to possibly sell to?
ped_approach_chance = 0.75,--A number from 0.0 - 1.0 | 1.0 being a 100% chance, 0.75 is a 75% chance etc.
--[[
I would recommend leaving this at 1000/2000.
This just checks to see how often we should search for peds if a sale is not currently in progress.
Going too low will cause people to sell too many drugs too quickly and probably cause performance issues.
I would also recommend editing the Config.CornerSelling > sell_timer before this.
]]
tick_interval = 1000,
}
Config = Config or {}
--[[
['drug_item_name'] = {
price = 35,--Price per 1 bag.
max = 4,--Maximum amount of bags to sell per sale
zonebonus = 'coke',--Bonus area for the drug, If sold here they receive the bonus below per bag.
zonebonuspay = 20,--Bonus per bag to add, If they sell 3 bags we give them a extra $60. in this example.
},
]]
Config.DrugsData = {
['cokebaggy'] = {price = 35, max = 4, zonebonus = 'coke', zonebonuspay = 20},
['crack_baggy'] = {price = 35, max = 4, zonebonus = 'coke', zonebonuspay = 20},
['xtcbaggy'] = {price = 35, max = 4, zonebonus = 'party', zonebonuspay = 20},
['xtc'] = {price = 35, max = 4, zonebonus = 'party', zonebonuspay = 20},
['oxy'] = {price = 35, max = 4, zonebonus = '', zonebonuspay = 20},
['meth'] = {price = 35, max = 4, zonebonus = 'meth', zonebonuspay = 20},
-- Weed --
['weed_white-widow'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
['weed_skunk'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
['weed_purple-haze'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
['weed_og-kush'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
['weed_amnesia'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
['weed_ak47'] = {price = 20, max = 4, zonebonus = 'weed', zonebonuspay = 20},
}
--This amount will be added to each sale maximum sold drugs random value.
Config.PoliceOnlineExtraSales = {
[1] = 0,
[2] = 1,
[3] = 2,
}
-- Max amount of drugs to be sold if the highest number of PD exceeds Config.PoliceOnlineExtraSales
Config.PDHighestSaleAmount = 3
--MAKE SURE THIS GOES FROM INDEX VALUES (1,2,3 etc)
--This amount will be added to each bag that is sold based on PD online.
Config.PoliceOnlineExtraMoney = {
[1] = 3,
[2] = 6,
[3] = 8,
}
-- Max amount of money to add if the amount of cops online is above the highest number in Config.PoliceOnlineExtraMoney
Config.PDHighestMoney = 10/
draw_debug_zones = false--true/false turns on/off debugpoly so you can see the areas for combo zones.
-- Bonus Zones --
zones = {
-- Davis Area --
PolyZone:Create({
vector2(-159.41627502441, -1786.4553222656),
vector2(-230.62223815918, -1723.5009765625),
vector2(-255.9446105957, -1695.5634765625),
vector2(-342.24401855469, -1648.5267333984),
vector2(-274.68099975586, -1525.8544921875),
vector2(-265.94073486328, -1495.2200927734),
vector2(-262.13061523438, -1444.5786132812),
vector2(-243.68647766113, -1444.8511962891),
vector2(-238.00704956055, -1448.380859375),
vector2(-206.8360748291, -1474.5517578125),
vector2(358.95239257812, -1948.0305175781),
vector2(372.31182861328, -1959.5861816406),
vector2(383.36911010742, -1970.9239501953),
vector2(399.73770141602, -1989.2998046875),
vector2(462.4150390625, -2055.1262207031),
vector2(464.47219848633, -2060.5141601562),
vector2(461.17687988281, -2068.5864257812),
vector2(402.44396972656, -2135.54296875),
vector2(394.7004699707, -2142.8735351562),
vector2(382.33938598633, -2150.03515625),
vector2(349.64050292969, -2153.8950195312),
vector2(339.02606201172, -2150.9458007812),
vector2(327.79577636719, -2145.2646484375),
vector2(231.80430603027, -2058.6794433594),
vector2(212.01649475098, -2043.7445068359),
vector2(199.5384979248, -2037.9504394531),
vector2(180.82107543945, -2033.4545898438),
vector2(168.06440734863, -2032.1865234375),
vector2(131.96990966797, -2030.3538818359),
vector2(80.670509338379, -2029.0997314453),
vector2(84.912452697754, -2022.4617919922),
vector2(82.544189453125, -2011.3421630859),
vector2(79.505859375, -2004.3352050781),
vector2(74.811233520508, -1997.0406494141),
vector2(68.533096313477, -1988.0120849609),
vector2(63.434379577637, -1981.533203125),
vector2(57.818794250488, -1976.2983398438),
vector2(7.7374424934387, -1934.1196289062),
vector2(-49.494640350342, -1896.7778320312),
vector2(-75.657180786133, -1879.0941162109),
vector2(-115.64164733887, -1846.9466552734),
vector2(-168.8324432373, -1801.5380859375),
vector2(-174.17839050293, -1796.4300537109)
}, {
name="drug_sell_grove",
minZ = 0.0,
maxZ = 50.0,
debugPoly=false,
data = {
bonus = {
['weed'] = true,--Drugs marked with the 'weed' bonus type in sv_config.lua will receive a bonus in this zone.
['meth'] = true,
},
}
}),
-- Davis Area --
PolyZone:Create({
vector2(-858.79034423828, -1512.81640625),
vector2(-1278.4635009766, -1932.5832519531),
vector2(-1280.8336181641, -1921.7877197266),
vector2(-1239.9143066406, -1872.0311279297),
vector2(-1381.8828125, -1666.52734375),
vector2(-1458.5456542969, -1516.4622802734),
vector2(-1488.2882080078, -1522.1561279297),
vector2(-1521.1038818359, -1452.5404052734),
vector2(-1506.4742431641, -1399.6568603516),
vector2(-1575.1761474609, -1232.2825927734),
vector2(-1635.4445800781, -1133.4624023438),
vector2(-1672.0989990234, -1179.5279541016),
vector2(-1732.3005371094, -1150.4741210938),
vector2(-1824.0881347656, -1282.2130126953),
vector2(-1904.9135742188, -1212.2642822266),
vector2(-1853.5911865234, -1142.2241210938),
vector2(-1795.4692382812, -1155.4631347656),
vector2(-1725.7781982422, -1053.6480712891),
vector2(-1836.9776611328, -949.63201904297),
vector2(-2129.84765625, -574.28918457031),
vector2(-2221.6977539062, -466.61700439453),
vector2(-2194.2399902344, -426.2981262207),
vector2(-2163.6022949219, -432.64846801758),
vector2(-2140.1201171875, -418.56527709961),
vector2(-2124.6257324219, -396.13464355469),
vector2(-2078.2875976562, -402.48458862305),
vector2(-1983.9202880859, -482.25366210938),
vector2(-1803.533203125, -633.50225830078),
vector2(-1732.3460693359, -701.44213867188),
vector2(-1590.3577880859, -820.90997314453),
vector2(-1559.4251708984, -828.19921875),
vector2(-1459.7739257812, -754.06042480469),
vector2(-1437.4619140625, -772.74609375),
vector2(-1400.7933349609, -802.65466308594),
vector2(-1363.8223876953, -833.88421630859),
vector2(-1339.0002441406, -857.38946533203),
vector2(-1309.8706054688, -893.52447509766),
vector2(-1281.2824707031, -984.61285400391),
vector2(-1261.1704101562, -1053.9821777344),
vector2(-1227.9776611328, -1147.3972167969),
vector2(-1221.1007080078, -1175.4114990234),
vector2(-1210.3269042969, -1234.8160400391),
vector2(-1201.1171875, -1262.2183837891),
vector2(-1171.7690429688, -1327.2609863281),
vector2(-1157.0277099609, -1359.5903320312),
vector2(-1123.1275634766, -1424.5104980469),
vector2(-1081.185546875, -1485.4017333984),
vector2(-1019.0894165039, -1554.2386474609)
}, {
name="drug_sell_beach",
minZ = -1.0,
maxZ = 40.0,
debugPoly=false,
data = {
bonus = {
['weed'] = true,--Drugs marked with the 'weed' bonus type in sv_config.lua will receive a bonus in this zone.
['party'] = true,--Drugs marked with the 'part' bonus type in sv_config.lua will receive a bonus in this zone.
},
}
}),
-- Industrial Area --
PolyZone:Create({
vector2(619.67462158203, -1751.2551269531),
vector2(589.87701416016, -2030.7282714844),
vector2(586.91717529297, -2074.3486328125),
vector2(704.78143310547, -2086.0712890625),
vector2(655.607421875, -2486.1682128906),
vector2(657.56658935547, -2510.4575195312),
vector2(715.46496582031, -2549.1296386719),
vector2(750.41156005859, -2549.9113769531),
vector2(1082.2408447266, -2553.8825683594),
vector2(1093.4996337891, -2424.5805664062),
vector2(1158.8067626953, -2352.0751953125),
vector2(1179.3999023438, -2322.1213378906),
vector2(1217.9019775391, -2273.6083984375),
vector2(1208.8178710938, -2231.8271484375),
vector2(1167.7279052734, -2095.3208007812),
vector2(1160.9477539062, -2060.3937988281),
vector2(1122.9053955078, -1905.8287353516),
vector2(1122.1346435547, -1870.6207275391),
vector2(1179.7856445312, -1850.5134277344),
vector2(1171.4111328125, -1827.8388671875),
vector2(1116.7155761719, -1847.9942626953),
vector2(1085.5798339844, -1763.2442626953),
vector2(1140.8981933594, -1743.5935058594),
vector2(1128.5992431641, -1709.6068115234),
vector2(1071.9670410156, -1730.0177001953),
vector2(1055.83203125, -1736.1320800781),
vector2(1031.6126708984, -1451.8190917969),
vector2(1033.5385742188, -1451.5363769531),
vector2(1138.7293701172, -1451.1740722656),
vector2(1141.90234375, -1418.4254150391),
vector2(1113.5402832031, -1417.7485351562),
vector2(1099.2568359375, -1420.9940185547),
vector2(979.25854492188, -1420.7620849609),
vector2(978.04449462891, -1403.8630371094),
vector2(967.69219970703, -1408.6958007812),
vector2(942.55017089844, -1408.884765625),
vector2(846.63671875, -1418.2191162109),
vector2(808.96801757812, -1418.2808837891),
vector2(779.40777587891, -1418.0876464844),
vector2(554.04479980469, -1418.2705078125),
vector2(555.19586181641, -1450.6732177734),
vector2(601.45062255859, -1567.1188964844),
vector2(624.68969726562, -1610.4476318359)
}, {
name="drug_sell_industrial",
minZ = 10.0,
maxZ = 100.0,
debugPoly=false,
data = {
bonus = {
['meth'] = true,--Drugs marked with the 'meth' bonus type in sv_config.lua will receive a bonus in this zone.
},
}
}),
-- VineWood --
PolyZone:Create({
vector2(36.178825378418, 239.40776062012),
vector2(48.104965209961, 272.57192993164),
vector2(66.619262695312, 329.46942138672),
vector2(84.979225158691, 360.87951660156),
vector2(168.40739440918, 378.9358215332),
vector2(181.89004516602, 378.15936279297),
vector2(271.21643066406, 351.31762695312),
vector2(417.65841674805, 311.77203369141),
vector2(565.92236328125, 256.85238647461),
vector2(557.32788085938, 233.77320861816),
vector2(510.21295166016, 100.08786010742),
vector2(471.0514831543, 15.720988273621),
vector2(391.76547241211, -120.99773406982),
vector2(-38.656204223633, 34.950035095215)
}, {
name="drug_sell_vinewood",
minZ = 60.0,
maxZ = 120.0,
debugPoly=false,
data = {
bonus = {
['coke'] = true,--Drugs marked with the 'coke' bonus type in sv_config.lua will receive a bonus in this zone.
},
}
}),
}
-- End Of Bonus Zones --
-- No Sell Zones --
no_sell_zones = {
PolyZone:Create({
vector2(-1588.8369140625, 2782.0219726562),
vector2(-1576.2755126953, 2791.8815917969),
vector2(-1581.0219726562, 2978.1662597656),
vector2(-1571.7238769531, 3108.9853515625),
vector2(-1602.265625, 3199.6394042969),
vector2(-1978.5269775391, 3424.8325195312),
vector2(-2125.2817382812, 3468.1943359375),
vector2(-2200.2958984375, 3508.6755371094),
vector2(-2251.0522460938, 3493.5522460938),
vector2(-2323.8752441406, 3463.7863769531),
vector2(-2385.25390625, 3424.4260253906),
vector2(-2564.9340820312, 3323.5512695312),
vector2(-2669.5649414062, 3374.6401367188),
vector2(-2844.2333984375, 3398.5512695312),
vector2(-2900.8823242188, 3310.0373535156),
vector2(-2813.1818847656, 3251.0825195312),
vector2(-2758.5075683594, 3184.7333984375),
vector2(-2542.4719238281, 3058.119140625),
vector2(-2509.5788574219, 2925.0224609375),
vector2(-2451.8015136719, 2891.7692871094),
vector2(-2416.8706054688, 2909.7138671875),
vector2(-2375.3247070312, 2930.7126464844),
vector2(-2324.7268066406, 2932.2221679688),
vector2(-2281.5639648438, 2915.8112792969),
vector2(-2230.37890625, 2884.8581542969),
vector2(-2161.2370605469, 2843.9455566406),
vector2(-2145.6423339844, 2813.0949707031),
vector2(-2140.2138671875, 2800.4282226562),
vector2(-2112.5983886719, 2787.59765625),
vector2(-2074.9221191406, 2783.6440429688),
vector2(-1838.5063476562, 2757.697265625),
vector2(-1796.2065429688, 2795.2373046875),
vector2(-1713.6889648438, 2809.4167480469),
vector2(-1676.64453125, 2858.2644042969),
vector2(-1613.3912353516, 2792.3903808594)
}, {
name="military base",
minZ = 13.733312606812,
maxZ = 120.465393066406,
debugPoly=false,
}),
}
-- End Of No Sell Zones --
Last updated