Skip to content

Configuration

This page documents all configuration options available in config.lua.

Config.DebugMode = true

Enables or disables debug logging in the server console. Set to false in production.

Config.Framework = 'esx'

Sets your server framework. Valid values: 'esx' or 'qb'.

Config.Target = true

Enables target system integration for chain snatching. Supports ox_target, qtarget, and qb-target when enabled.

Config.ChainSnatch = {
enabled = true,
target = false,
distance = 2.0,
needHandsUp = true,
minigGame = { 'easy', 'easy' },
coolDown = 30000,
}
SettingTypeDefaultDescription
enabledbooleantrueEnable or disable chain snatching feature
targetbooleanfalseEnable target eye interaction for chain snatching
distancenumber2.0Maximum distance in meters to snatch chains
needHandsUpbooleantrueRequire target to be hands up or cuffed
minigGametable/boolean{'easy', 'easy'}Skill check difficulty array or false to disable
coolDownnumber30000Cooldown in milliseconds between snatch attempts

The minigame setting accepts an array of two difficulty levels:

minigGame = { 'easy', 'easy' } -- Single difficulty
minigGame = { 'easy', 'medium' } -- Progressive difficulty
minigGame = { 'medium', 'hard' } -- Harder difficulty

Valid difficulty values: 'easy', 'medium', 'hard'

Set to false to disable the minigame requirement:

minigGame = false

Adjust the distance value to change how close players must be to snatch chains:

distance = 2.0 -- Default (2 meters)
distance = 3.0 -- Allow from further away
distance = 1.5 -- Require closer proximity

Adjust the cooldown between snatch attempts in milliseconds:

coolDown = 30000 -- 30 seconds (default)
coolDown = 60000 -- 60 seconds
coolDown = 10000 -- 10 seconds

Set needHandsUp to false to allow chain snatching from any player:

needHandsUp = false -- Allow snatching from any player
needHandsUp = true -- Only allow when target is hands up or cuffed

When enabled, the target must be in one of these states:

  • Handcuffed
  • Playing mp_arresting animation
  • Playing missminuteman_1ig_2 hands up animation
  • Playing random@mugging3 hands up animation
Config.Presets = {}

This table is populated automatically from files in the preset/ folder. Each preset defines a clothing type with its items, animations, and default values.

To add custom clothing items, create a new file in the preset/ folder following this structure:

Config.Presets.chains = {
animation = {
puton = { dict = 'clothingtie', anim = 'try_tie_positive_a', delay = 3400 },
takeoff = { dict = 'clothingtie', anim = 'try_tie_positive_a', delay = 2800 },
},
default = {
male = {
chain_1 = 0,
chain_2 = 0,
},
female = {
chain_1 = 0,
chain_2 = 0,
},
},
items = {
['custom_chain'] = {
male = {
main = {
chain_1 = 123,
chain_2 = 0,
},
},
female = {
main = {
chain_1 = 104,
chain_2 = 0,
},
},
},
},
}

Animation:

  • puton - Animation dictionary and name when putting on clothing, plus delay in milliseconds
  • takeoff - Animation dictionary and name when taking off clothing, plus delay in milliseconds

Default:

  • Default clothing values for each gender when no item is equipped
  • Use drawable ID 0 and texture ID 0 to remove the item

Items:

  • Key is the item name from your inventory
  • Define drawable (_1) and texture (_2) IDs for each gender
  • Optional extras field for additional clothing components

Component Slots (clothing):

  • mask_1, mask_2 - Masks
  • arms_1, arms_2 - Arms
  • pants_1, pants_2 - Pants
  • bags_1, bags_2 - Bags
  • shoes_1, shoes_2 - Shoes
  • tshirt_1, tshirt_2 - T-shirts
  • chain_1, chain_2 - Chains/Necklaces
  • vests_1, vests_2 - Vests
  • decals_1, decals_2 - Decals
  • torso_1, torso_2 - Torso

Prop Slots (accessories):

  • helmet_1, helmet_2 - Helmets/Hats
  • glasses_1, glasses_2 - Glasses
  • ears_1, ears_2 - Earrings/Headsets
  • watches_1, watches_2 - Watches
  • bracelets_1, bracelets_2 - Bracelets

The script includes pre-configured preset files for 14 clothing categories:

PresetFileDescription
Chainspreset/chains.luaNecklaces and chain jewelry
Braceletspreset/bracelets.luaWrist bracelets
Earringspreset/ears.luaEar accessories
Glassespreset/glass.luaSunglasses and eyewear
Watchespreset/watches.luaWrist watches
Helmetspreset/helmets.luaHats and helmets
Maskspreset/masks.luaFace masks
Bagspreset/bags.luaBackpacks and bags
Shoespreset/shoes.luaFootwear
Pantspreset/pants.luaJeans and legwear
T-shirtspreset/tshirt.luaUpper body clothing
Torsopreset/torso.luaJacket and torso clothing
Decalspreset/decals.luaShirts and decals
Vestspreset/vest.luaBody armor and vests

You can add new items to existing presets or create new preset files following the same structure.

Config.Presets.watches = {
animation = {
puton = { dict = 'clothingtie', anim = 'try_tie_positive_a', delay = 2000 },
takeoff = { dict = 'clothingtie', anim = 'try_tie_positive_a', delay = 1500 },
},
default = {
male = {
watches_1 = -1,
watches_2 = 0,
},
female = {
watches_1 = -1,
watches_2 = 0,
},
},
items = {
['gold_watch'] = {
male = {
main = {
watches_1 = 7,
watches_2 = 0,
},
},
female = {
main = {
watches_1 = 7,
watches_2 = 0,
},
},
},
},
}

Note: For prop slots like watches, use -1 as the default drawable ID to remove the prop, and 0 as the texture ID.


Note: This guide is written by a third party. If you find any incorrect or outdated information, please contact us on Discord so we can update it for you.