config.lua
Preview File Updated: v2.0.0 - 22.08.2026
Config = Config or {}
-- ███████╗██████╗ █████╗ ███╗ ███╗███████╗██╗ ██╗ ██████╗ ██████╗ ██╗ ██╗
-- ██╔════╝██╔══██╗██╔══██╗████╗ ████║██╔════╝██║ ██║██╔═══██╗██╔══██╗██║ ██╔╝
-- █████╗ ██████╔╝███████║██╔████╔██║█████╗ ██║ █╗ ██║██║ ██║██████╔╝█████╔╝
-- ██╔══╝ ██╔══██╗██╔══██║██║╚██╔╝██║██╔══╝ ██║███╗██║██║ ██║██╔══██╗██╔═██╗
-- ██║ ██║ ██║██║ ██║██║ ╚═╝ ██║███████╗╚███╔███╔╝╚██████╔╝██║ ██║██║ ██╗
-- ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚══╝╚══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
local DetectActiveFramework = function()
if GetResourceState('es_extended') == 'started' then
return "ESX"
elseif GetResourceState('qbx_core') == 'started' then
return "QBX"
elseif GetResourceState('qb-core') == 'started' then
return "QB-Core"
end
end
Config.Core = DetectActiveFramework()
Config.CoreExport = function()
if Config.Core == "ESX" then
return exports['es_extended']:getSharedObject()
elseif Config.Core == "QB-Core" or Config.Core == "QBX" then
return exports['qb-core']:GetCoreObject()
end
end
-- ███╗ ███╗ █████╗ ██╗███╗ ██╗ ███████╗███████╗████████╗████████╗██╗███╗ ██╗ ██████╗ ███████╗
-- ████╗ ████║██╔══██╗██║████╗ ██║ ██╔════╝██╔════╝╚══██╔══╝╚══██╔══╝██║████╗ ██║██╔════╝ ██╔════╝
-- ██╔████╔██║███████║██║██╔██╗ ██║ ███████╗█████╗ ██║ ██║ ██║██╔██╗ ██║██║ ███╗███████╗
-- ██║╚██╔╝██║██╔══██║██║██║╚██╗██║ ╚════██║██╔══╝ ██║ ██║ ██║██║╚██╗██║██║ ██║╚════██║
-- ██║ ╚═╝ ██║██║ ██║██║██║ ╚████║ ███████║███████╗ ██║ ██║ ██║██║ ╚████║╚██████╔╝███████║
-- ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚══════╝╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚══════╝
---@class AutoExecuteQuery<boolean>
Config.AutoExecuteQuery = true
---@class DefaultSlots<number>
Config.DefaultSlots = 3
---@class WeatherType<string>
Config.WeatherType = 'EXTRASUNNY'
---@class Time<table>
Config.Time = {Hour = 22, Minute = 0}
---@class Debug<boolean>
-- Enables debug prints.
Config.Debug = true
---@class DebugTarget<boolean>
-- Enables debug related to target zones.
Config.DebugTarget = false
---@class UseTarget<boolean>
Config.UseTarget = false
---@class UseTextUI<boolean>
Config.UseTextUI = false
-- ██████╗ ███████╗███╗ ██╗███████╗██████╗ █████╗ ██╗ ███████╗███████╗████████╗████████╗██╗███╗ ██╗ ██████╗ ███████╗
-- ██╔════╝ ██╔════╝████╗ ██║██╔════╝██╔══██╗██╔══██╗██║ ██╔════╝██╔════╝╚══██╔══╝╚══██╔══╝██║████╗ ██║██╔════╝ ██╔════╝
-- ██║ ███╗█████╗ ██╔██╗ ██║█████╗ ██████╔╝███████║██║ ███████╗█████╗ ██║ ██║ ██║██╔██╗ ██║██║ ███╗███████╗
-- ██║ ██║██╔══╝ ██║╚██╗██║██╔══╝ ██╔══██╗██╔══██║██║ ╚════██║██╔══╝ ██║ ██║ ██║██║╚██╗██║██║ ██║╚════██║
-- ╚██████╔╝███████╗██║ ╚████║███████╗██║ ██║██║ ██║███████╗ ███████║███████╗ ██║ ██║ ██║██║ ╚████║╚██████╔╝███████║
-- ╚═════╝ ╚══════╝╚═╝ ╚═══╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚══════╝╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚══════╝
---@class Commands<table>
Config.Commands = {
['DeleteCharacter'] = {
Enabled = true,
Name = 'deletecharacter',
Help = 'Delete Character',
Groups = 'admin',
Suggestions = {
{name = 'identifier', label = 'Identifier or CitizenID'},
},
},
['SetSlots'] = {
Enabled = true,
Name = 'setslots',
Help = 'Set Slots',
Groups = 'admin',
Suggestions = {
{name = 'identifier', label = 'Identifier or CitizenID'},
{name = 'slots', help = 'Slots', type = 'number'}
},
},
['RemoveSlots'] = {
Enabled = true,
Name = 'removeslots',
Help = 'Remove Slots',
Groups = 'admin',
Suggestions = {
{name = 'identifier', label = 'Identifier or CitizenID'},
},
},
['EnableCharacter'] = {
Enabled = true,
Name = 'enablechar',
Help = 'Enable Character',
Groups = 'admin',
Suggestions = {
{name = 'identifier', label = 'Identifier or CitizenID'},
},
},
['DisableCharacter'] = {
Enabled = true,
Name = 'disablechar',
Help = 'Disable Character',
Groups = 'admin',
Suggestions = {
{name = 'identifier', label = 'Identifier or CitizenID'},
},
},
}
---@class StarterItems<table>
Config.StarterItems = {
Enabled = true,
List = {
{
name = 'bread',
count = 2,
},
{
name = 'water',
count = 2,
},
-- { -- QB-Core Default ID Card
-- name = 'id_card',
-- count = 1,
-- metadata = function(src, xPlayer)
-- local info = {}
-- info.citizenid = xPlayer.PlayerData.citizenid
-- info.firstname = xPlayer.PlayerData.charinfo.firstname
-- info.lastname = xPlayer.PlayerData.charinfo.lastname
-- info.birthdate = xPlayer.PlayerData.charinfo.birthdate
-- info.gender = xPlayer.PlayerData.charinfo.gender
-- info.nationality = xPlayer.PlayerData.charinfo.nationality
-- return info
-- end,
-- },
-- { -- QB-Core Default Driver License
-- name = 'driver_license',
-- count = 1,
-- metadata = function(src, xPlayer)
-- local info = {}
-- info.firstname = xPlayer.PlayerData.charinfo.firstname
-- info.lastname = xPlayer.PlayerData.charinfo.lastname
-- info.birthdate = xPlayer.PlayerData.charinfo.birthdate
-- info.type = 'Class C Driver License'
-- return info
-- end,
-- },
}
}
---@class StarterMoney<table>
Config.StarterMoney = {
Enabled = true,
List = {
{
account = 'money',
amount = 1000
},
{
account = 'bank',
amount = 5000
},
}
}
---@class CanDelete<boolean>
-- Allow players to delete their character.
Config.CanDelete = true
---@class RelogCommand<boolean>
-- Allow players to use the command to log out to the multi-character menu
Config.RelogCommand = true
---@class FirstSpawnLocation<vector4>
Config.FirstSpawnLocation = vector4(-1039.13, -2739.26, 12.84, 325.55)
---@class Scene<table>
Config.Scene = {
Coords = vector4(-885.82, -453.44, 124.26, 69.5),
MainCamera = {
Offset = vector3(1.5, 4.0, 0.2),
PointHeight = 0.8,
Rotation = vector3(0.0, 0.0, 0.0),
Fov = 15.0,
Shake = {
Enabled = true,
Type = 'HAND_SHAKE',
Amplitude = 0.125
}
},
StartCamera = {
Coords = vector3(-892.56, -450.19, 124.86),
Fov = 50.0,
TransitionDuration = 4000,
Shake = {
Enabled = true,
Type = 'HAND_SHAKE',
Amplitude = 0.45
}
},
Timecycle = {
Enabled = true,
Name = 'int_carrier_stair',
Strength = 1.0
}
}
---@class PedAnimation<table>
Config.PedAnimation = {
Enabled = true,
Genders = {
[0] = {
{
Dict = 'timetable@ron@ig_3_couch',
Name = 'base',
Flag = 1
},
},
[1] = {
{
Dict = 'timetable@reunited@ig_10',
Name = 'base_amanda',
Flag = 1
},
}
},
}
---@class ChangeCharacterPoint<table>
Config.ChangeCharacterPoint = {
Enabled = true,
Coords = vector3(-1045.07, -2750.11, 21.36),
Blip = {
Sprite = 480,
Color = 2,
Display = 4,
Scale = 1.0,
Name = "Character Selector"
},
Target = {
Rotation = 0.0,
Size = vector3(2.0, 2.0, 2.5)
},
Marker = {
Enabled = false,
Id = 2,
RGBA = {255, 215, 25, 100},
Size = vec(0.75, 0.75, 0.75),
Rotate = true
},
}Last updated