Config Files
View the source-available Trap Phone configuration.
Config Files
Config = Config or {}
---@class TrapPhoneRange
---@field min number
---@field max number
---@class TrapPhoneBuyerDrugConfig
---@field drug string
---@field price TrapPhoneRange Per-item price range.
---@field amount TrapPhoneRange Requested item amount range.
---@class TrapPhoneBuyerConfig
---@field id string
---@field name string
---@field enabled boolean|nil
---@field minReputation number
---@field introducedBy string|nil
---@field drugs TrapPhoneBuyerDrugConfig[]
---@field neededBeforeMinutes number
---@field reputationReward number
---@field failedReputationPenalty number
---@field policeRisk number
---@field replyDelaySeconds TrapPhoneRange|nil
---@field buyIntervalHours TrapPhoneRange|nil
---@field buyerPedModel string|nil
---@field buyerVehicleModel string|nil
---@field angryChance number|nil
---@type TrapPhoneBuyerConfig[]
Config.Buyers = {
{
id = "amanda",
name = "Amanda",
minReputation = 0,
drugs = {
{
drug = "weed",
price = { min = 40, max = 75 },
amount = { min = 1, max = 3 },
},
},
neededBeforeMinutes = 12,
reputationReward = 10,
failedReputationPenalty = 5,
policeRisk = 3,
replyDelaySeconds = {
min = 20,
max = 45,
},
buyIntervalHours = {
min = 1,
max = 3,
},
buyerPedModel = "ig_amandatownley_02",
buyerVehicleModel = "emperor",
angryChance = 25,
},
{
id = "theo",
name = "Theo",
minReputation = 0,
drugs = {
{
drug = "weed",
price = { min = 40, max = 70 },
amount = { min = 1, max = 4 },
},
},
neededBeforeMinutes = 10,
reputationReward = 12,
failedReputationPenalty = 6,
policeRisk = 4,
replyDelaySeconds = {
min = 25,
max = 55,
},
buyIntervalHours = {
min = 1,
max = 4,
},
buyerPedModel = "a_m_y_sunbathe_01",
buyerVehicleModel = "asea",
angryChance = 30,
},
{
id = "lena",
name = "Lena",
minReputation = 25,
introducedBy = "amanda",
drugs = {
{
drug = "weed",
price = { min = 45, max = 70 },
amount = { min = 2, max = 5 },
},
},
neededBeforeMinutes = 9,
reputationReward = 18,
failedReputationPenalty = 9,
policeRisk = 6,
replyDelaySeconds = {
min = 35,
max = 90,
},
buyIntervalHours = {
min = 3,
max = 6,
},
buyerPedModel = "s_f_y_clubbar_01",
buyerVehicleModel = "surge",
angryChance = 42,
},
{
id = "elias",
name = "Elias",
minReputation = 50,
introducedBy = "lena",
drugs = {
{
drug = "weed",
price = { min = 50, max = 75 },
amount = { min = 3, max = 7 },
},
},
neededBeforeMinutes = 11,
reputationReward = 22,
failedReputationPenalty = 11,
policeRisk = 8,
replyDelaySeconds = {
min = 40,
max = 100,
},
buyIntervalHours = {
min = 4,
max = 8,
},
buyerPedModel = "s_m_m_autoshop_01",
buyerVehicleModel = "warrener2",
angryChance = 45,
},
{
id = "nina",
name = "Nina",
minReputation = 75,
introducedBy = "elias",
drugs = {
{
drug = "weed",
price = { min = 50, max = 75 },
amount = { min = 4, max = 8 },
},
{
drug = "coke",
price = { min = 50, max = 75 },
amount = { min = 3, max = 7 },
},
},
neededBeforeMinutes = 7,
reputationReward = 26,
failedReputationPenalty = 13,
policeRisk = 12,
replyDelaySeconds = {
min = 45,
max = 110,
},
buyIntervalHours = {
min = 5,
max = 10,
},
buyerPedModel = "s_f_m_sweatshop_01",
buyerVehicleModel = "baller2",
angryChance = 55,
},
{
id = "sofia",
name = "Sofia",
minReputation = 100,
introducedBy = "nina",
drugs = {
{
drug = "weed",
price = { min = 55, max = 80 },
amount = { min = 4, max = 9 },
},
},
neededBeforeMinutes = 10,
reputationReward = 30,
failedReputationPenalty = 15,
policeRisk = 9,
replyDelaySeconds = {
min = 50,
max = 120,
},
buyIntervalHours = {
min = 6,
max = 12,
},
buyerPedModel = "s_f_m_shop_high",
buyerVehicleModel = "cavalcade3",
angryChance = 52,
},
{
id = "devon",
name = "Devon",
minReputation = 125,
introducedBy = "sofia",
drugs = {
{
drug = "coke",
price = { min = 55, max = 85 },
amount = { min = 5, max = 10 },
},
},
neededBeforeMinutes = 8,
reputationReward = 34,
failedReputationPenalty = 17,
policeRisk = 15,
replyDelaySeconds = {
min = 55,
max = 130,
},
buyIntervalHours = {
min = 7,
max = 14,
},
buyerPedModel = "u_m_m_jewelthief",
buyerVehicleModel = "toros",
angryChance = 60,
},
{
id = "iris",
name = "Iris",
minReputation = 150,
introducedBy = "devon",
drugs = {
{
drug = "coke",
price = { min = 60, max = 90 },
amount = { min = 6, max = 12 },
},
},
neededBeforeMinutes = 12,
reputationReward = 40,
failedReputationPenalty = 20,
policeRisk = 20,
replyDelaySeconds = {
min = 60,
max = 150,
},
buyIntervalHours = {
min = 8,
max = 16,
},
buyerPedModel = "a_m_m_business_01",
buyerVehicleModel = "schafter2",
angryChance = 48,
},
{
id = "rhea",
name = "Rhea",
minReputation = 175,
introducedBy = "iris",
drugs = {
{
drug = "weed",
price = { min = 60, max = 85 },
amount = { min = 6, max = 12 },
},
{
drug = "coke",
price = { min = 65, max = 95 },
amount = { min = 5, max = 10 },
},
},
neededBeforeMinutes = 9,
reputationReward = 42,
failedReputationPenalty = 21,
policeRisk = 18,
replyDelaySeconds = {
min = 60,
max = 150,
},
buyIntervalHours = {
min = 8,
max = 16,
},
buyerPedModel = "s_f_y_shop_low",
buyerVehicleModel = "premier",
angryChance = 45,
},
{
id = "maia",
name = "Maia",
minReputation = 200,
introducedBy = "rhea",
drugs = {
{
drug = "coke",
price = { min = 70, max = 100 },
amount = { min = 6, max = 13 },
},
},
neededBeforeMinutes = 10,
reputationReward = 46,
failedReputationPenalty = 23,
policeRisk = 21,
replyDelaySeconds = {
min = 65,
max = 155,
},
buyIntervalHours = {
min = 9,
max = 18,
},
buyerPedModel = "s_f_y_shop_mid",
buyerVehicleModel = "primo",
angryChance = 50,
},
{
id = "kira",
name = "Kira",
minReputation = 225,
introducedBy = "maia",
drugs = {
{
drug = "weed",
price = { min = 65, max = 90 },
amount = { min = 7, max = 14 },
},
{
drug = "coke",
price = { min = 75, max = 105 },
amount = { min = 6, max = 12 },
},
},
neededBeforeMinutes = 8,
reputationReward = 50,
failedReputationPenalty = 25,
policeRisk = 24,
replyDelaySeconds = {
min = 70,
max = 165,
},
buyIntervalHours = {
min = 10,
max = 20,
},
buyerPedModel = "s_f_y_sweatshop_01",
buyerVehicleModel = "tailgater",
angryChance = 56,
},
{
id = "selene",
name = "Selene",
minReputation = 250,
introducedBy = "kira",
drugs = {
{
drug = "coke",
price = { min = 80, max = 115 },
amount = { min = 7, max = 15 },
},
},
neededBeforeMinutes = 9,
reputationReward = 54,
failedReputationPenalty = 27,
policeRisk = 26,
replyDelaySeconds = {
min = 75,
max = 175,
},
buyIntervalHours = {
min = 11,
max = 22,
},
buyerPedModel = "s_f_y_casino_01",
buyerVehicleModel = "oracle",
angryChance = 52,
},
{
id = "alina",
name = "Alina",
minReputation = 275,
introducedBy = "selene",
drugs = {
{
drug = "weed",
price = { min = 70, max = 95 },
amount = { min = 8, max = 16 },
},
{
drug = "coke",
price = { min = 85, max = 120 },
amount = { min = 7, max = 14 },
},
},
neededBeforeMinutes = 11,
reputationReward = 58,
failedReputationPenalty = 29,
policeRisk = 28,
replyDelaySeconds = {
min = 80,
max = 185,
},
buyIntervalHours = {
min = 12,
max = 24,
},
buyerPedModel = "s_f_y_migrant_01",
buyerVehicleModel = "felon",
angryChance = 58,
},
{
id = "valeria",
name = "Valeria",
minReputation = 400,
introducedBy = "alina",
drugs = {
{
drug = "coke",
price = { min = 90, max = 130 },
amount = { min = 8, max = 18 },
},
},
neededBeforeMinutes = 12,
reputationReward = 64,
failedReputationPenalty = 32,
policeRisk = 30,
replyDelaySeconds = {
min = 85,
max = 200,
},
buyIntervalHours = {
min = 14,
max = 28,
},
buyerPedModel = "s_f_y_movprem_01",
buyerVehicleModel = "exemplar",
angryChance = 62,
},
}
Config.MeetingSpots = Config.MeetingSpots or {}
Config.MeetingSpots.Static = {}