Configuration
Example of configuration file for fsg_banking
Config = {}
-- Debug Settings
Config.Locale = 'en'
Config.Debug = true -- Set to true to enable debug prints in console
Config.ResourceNames = {
ESX = 'es_extended',
QBCore = 'qb-core',
QBox = 'qbx_core'
}
-- UI Settings
Config.Logo = {
width = '2.75rem', -- Logo width (e.g., '2.75rem', '44px', '3rem')
height = '2.75rem', -- Logo height (e.g., '2.75rem', '44px', '3rem')
}
Config.Notify = 'esx' -- esx, qb, qbox, ox_lib
Config.InteractionType = "target" -- target (auto-detects ox_target or qb-target) / text_ui / drawtext
Config.ATMModels = {
"prop_atm_01",
"prop_atm_02",
"prop_atm_03",
"prop_fleeca_atm"
}
Config.TargetDistance = 2.0 -- Distance for all target interactions
Config.BankLocations = {
{
coords = vector3(150.03, -1040.78, 29.37),
ped = vector4(150.13, -1042.37, 29.37, 345.55),
model = "a_f_m_business_02",
blips = true,
name = "Legion Square Bank",
blip_color = 2
},
{
coords = vector3(314.27, -279.21, 54.17),
ped = vector4(314.44, -280.75, 54.16, 10.96),
model = "a_f_m_business_02",
blips = true,
name = "Hawick Ave Bank",
blip_color = 2
},
{
coords = vector3(241.95, 225.16, 106.29),
ped = vector4(243.32, 226.4, 106.29, 161.23),
model = "a_f_m_business_02",
blips = true,
name = "Pacific Bank",
blip_color = 2
},
{
coords = vector3(-1212.66, -330.71, 37.78),
ped = vector4(-1212.4, -332.22, 37.78, 350.48),
model = "a_f_m_business_02",
blips = true,
name = "Blvd Del Perro Bank",
blip_color = 2
},
{
coords = vector3(-2962.56, 483.09, 15.7),
ped = vector4(-2961.12, 482.47, 15.7, 57.38),
model = "a_f_m_business_02",
blips = true,
name = "Banham Canyon Bank",
blip_color = 2
},
{
coords = vector3(1175.0, 2706.9, 38.09),
ped = vector4(1175.45, 2708.22, 38.09, 154.19),
model = "a_f_m_business_02",
blips = true,
name = "Harmony Bank",
blip_color = 2
},
{
coords = vector3(-112.95, 6470.05, 31.63),
ped = vector4(-112.43, 6471.22, 31.63, 135.73),
model = "a_f_m_business_02",
blips = true,
name = "Paleto Bank",
blip_color = 2
}
}
-- Specific ATM Wall Locations - for ATMs that don't work with ox_target
Config.ATMWallLocations = {
vector3(265.9, 213.86, 106.28),
vector3(265.56, 212.98, 106.28),
vector3(265.19, 211.91, 106.28),
vector3(264.86, 211.03, 106.28),
vector3(264.52, 210.06, 106.28),
vector3(236.64, 219.72, 106.29),
vector3(237.04, 218.72, 106.29),
vector3(237.5, 217.87, 106.29),
vector3(237.93, 216.94, 106.29),
vector3(238.36, 216.03, 106.29)
}
Config.AuthenticationScreen = true -- Show fingerprint authentication screen before opening bank
Config.ATMDepositsEnabled = true -- Allow deposits at ATMs (set to false to only allow withdrawals at ATMs)
Config.ATMTransfersEnabled = true -- Allow transfers at ATMs (set to false to only allow at banks)
-- Security Settings
Config.MinTransaction = 1
Config.MaxTransaction = 999999999
Config.ActionCooldown = 2000 -- milliseconds between actions
Config.AntiSpam = true
-- Discord Webhook Logs Settings
Config.EnableLogs = true
Config.WebhookRateLimit = 5000 -- milliseconds between webhook sends
Config.WebhookColor = {
deposit = 3066993, -- Green
withdraw = 15158332, -- Red
transfer = 3447003, -- Blue
tax = 15105570, -- Orange
interest = 5763719, -- Purple
creditScore = 15844367 -- Gold
}
-- Account Creation
Config.CreatePersonalAccountOnJoin = true
Config.WithdrawalLimit = 10000 -- Daily withdrawal limit
Config.Interest = {
enabled = true,
rate = 0.01, -- 1% per cycle
cycle = 86400, -- 24 hours in seconds
minBalance = 1000, -- Minimum balance to earn interest
maxInterest = 10000, -- Cap interest per payout (0 = unlimited)
depositCooldown = 3600, -- Seconds since last deposit before interest applies (anti-abuse)
}
Config.Tax = {
enabled = true,
cycle = 604800, -- seconds (weekly = 7 days)
brackets = {
{min = 0, max = 10000, rate = 0.00}, -- 0% tax on 0-10k
{min = 10001, max = 50000, rate = 0.05}, -- 5% tax on 10k-50k
{min = 50001, max = 100000, rate = 0.10}, -- 10% tax on 50k-100k
{min = 100001, max = 500000, rate = 0.15}, -- 15% tax on 100k-500k
{min = 500001, max = 1000000, rate = 0.20},-- 20% tax on 500k-1M
{min = 1000001, max = 999999999, rate = 0.25} -- 25% tax on 1M+
},
exemptions = {
minBalance = 1000, -- Balances below this are exempt
societyAccounts = true
},
holidays = {} -- Tax-free periods: {start = {month=12, day=24}, endDate = {month=12, day=26}}
}
Config.CreditScore = {
enabled = true,
defaultScore = 500,
minScore = 300,
maxScore = 850,
modifiers = {
-- Positive
consistentDeposit = 2, -- Regular deposits
maintainBalance = 5, -- Keeping balance above threshold
interestEarned = 3, -- Earning interest
taxPaid = 10, -- Paying taxes on time
-- Negative
overdraftAttempt = -15, -- Trying to withdraw more than balance
failedTransfer = -10, -- Insufficient funds for transfer
taxAvoidance = -25, -- Attempting to evade tax
suspiciousActivity = -50 -- Flagged by anticheat
},
balanceThreshold = 10000, -- Balance to maintain for score boost
updateCycle = 86400, -- seconds (daily recalculation)
-- Deposit validation to prevent deposit/withdraw cycling
depositValidation = {
enabled = true,
minDepositAmount = 100, -- Minimum deposit amount to count toward bonus
requireNetPositive = true, -- Net deposits must exceed withdrawals in window
preventDuplicateAmounts = true, -- Same amount deposited 3+ times = rejected
windowDays = 7 -- Time window for all checks
},
tips = {
{
enabled = true,
name = "Make Regular Deposits",
description = "Deposit 5+ times per week for +2 pts each",
icon = "trending_up",
impact = "high"
},
{
enabled = true,
name = "Maintain Balance",
description = "Keep balance above $10,000 for +5 pts",
icon = "shield",
impact = "high"
},
{
enabled = true,
name = "Pay Taxes On Time",
description = "Tax payments give +10 pts boost",
icon = "target",
impact = "high"
},
{
enabled = true,
name = "Avoid Overdrafts",
description = "Failed withdrawals cost -15 pts",
icon = "alert",
impact = "medium"
}
}
}
Config.Society = {
enabled = true, -- Enable society/job account tab
allowDeposit = true, -- Allow boss to deposit personal money to society
allowWithdraw = true, -- Allow boss to withdraw society money
maxWithdrawal = 0, -- Max single withdrawal (0 = unlimited)
logTransactions = true, -- Log all society transactions to database
bossNames = {
'owner',
'ceo',
'boss',
'chief',
}
}
Config.TxAdmin = {
enabled = true, -- Enable txAdmin restart handling
stopAtSeconds = 600, -- Seconds before restart to close UI (default: 600 -- 10 minutes)
}
Last updated