> ## Documentation Index
> Fetch the complete documentation index at: https://lationscripts.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Chop Shop - Previews

> Preview the config file(s) available in his resource

<CodeGroup>
  ```lua config/shared.lua expandable theme={null}
  return {

      -- ⚠️ WARNING: When you are working with this script, never do "restart lation_chopshop"
      -- ⚠️ This will cause issues, data loss & more! You must restart the script like this:
      -- ⚠️ "stop lation_chopshop" ..wait a couple seconds.. then "ensure lation_chopshop"

      ----------------------------------------------
      --        🛠️ Setup the basics below
      ----------------------------------------------

      setup = {
          -- Use only if needed, directed by support or know what you're doing
          -- Notice: enabling debug features will significantly increase resmon
          -- And should always be disabled in production
          debug = false,
          -- Set your interaction system below
          -- Available options are: 'ox_target', 'qb-target', 'interact' & 'custom'
          -- 'custom' needs to be added to client/functions.lua
          interact = 'ox_target',
          -- Set your notification system below
          -- Available options are: 'lation_ui', 'ox_lib', 'esx', 'qb', 'okok', 'sd-notify', 'wasabi_notify' & 'custom'
          -- 'custom' needs to be added to client/functions.lua
          notify = 'ox_lib',
          -- Set your progress bar system below
          -- Available options are: 'lation_ui', 'ox_lib', 'qbcore' & 'custom'
          -- 'custom' needs to be added to client/functions.lua
          -- Any custom progress bar must also support animations
          progress = 'ox_lib',
          -- Set your minigame (skillcheck) system below
          -- Available options are: 'lation_ui', 'ox_lib' & 'custom'
          minigame = 'ox_lib',
          -- Do you want to use Lith Studios Bolt Minigame?
          -- This is a free, interactive minigame for removing wheels
          -- Learn more here: https://lith.store/package/6174416
          ls_bolt_minigame = false,
          -- Set your context menu system below
          -- Available options are: 'lation_ui', 'ox_lib' & 'custom'
          menu = 'ox_lib',
          -- Set your alert & input dialog system below
          -- Available options are: 'lation_ui', 'ox_lib' & 'custom'
          dialogs = 'ox_lib',
          -- Do you want to hide player names in the group menu?
          -- If true, names will instead be replaced with their Player IDs
          -- If false it will display their character names as normal
          hideNames = false,
          -- Do you want to be notified via server console if an update is available?
          -- True if yes, false if no
          version = true,
          -- Input all your police jobs below
          police = { 'police', 'sheriff' }
      },

      ----------------------------------------------
      --       📍 Activity start settings
      ----------------------------------------------

      start = {
          -- Where to spawn the main ped to start chopping
          -- If you wish to disable the starting ped, set coords = false
          coords = vec4(-169.0171, -1352.3877, 29.9817, 91.8764),
          -- The ped model used
          -- More models: https://docs.fivem.net/docs/game-references/ped-models/
          model = 'a_m_m_bevhills_01',
          -- The scenario assigned to the ped (or scenario = false for no scenario)
          -- More scenarios: https://github.com/DioneB/gtav-scenarios
          scenario = 'WORLD_HUMAN_CLIPBOARD',
          -- You can limit the hours at which the ped is available here
          -- By default, this ped is available 24/7
          -- Min is the earliest the ped is available (in 24hr format)
          -- Max is the latest the ped is available (in 24hr format)
          -- For example, if you want the ped only available during daytime set min = 6 & max = 21
          hours = { min = 0, max = 24 },
          -- How many police must be online in order to start a chop job?
          police = 0,
          -- How long (in seconds) until a vehicle is assigned after requesting a job
          -- Set min & max to 0 to disable the cooldown and instantly assign a vehicle
          cooldown = { min = 5, max = 25 },
          -- When a chop job is completed, do you want to display the "Continue Chopping?"
          -- Dialog to the group owner? True if yes, false if no
          continue = true,
          -- Easy mode is an optional mode that highlights matching vehicle models nearby
          -- Radius is the distance from the player to search for & highlight vehicles
          -- 424 is the maximum "focus zone" with FiveM OneSync anything higher than this will not work
          easyMode = { enable = false, radius = 424 },
          -- This option will REMOVE the ability to start the chopping activity from the main menu
          -- This is useful if you want to use your own custom method to start the chop job
          -- Do not set this option to true if you do not plan to implement a custom method
          exportOnly = false,
          -- Do you want to allow players to chop owned vehicles?
          -- If true, players can chop all vehicles, including owned vehicles
          -- If false, players can only chop unowned vehicles
          allowOwned = true,
          -- ⛔ DANGER: THIS IS A DESTRUCTIVE SETTING
          -- ⛔ DANGER: deleteOwned is only used if allowOwned = true above
          -- ⛔ DANGER: This will delete (permanently remove) an owned vehicle when chopped
          -- ℹ️ INFO: Deleted vehicles are stored in the "deleted_vehicles.sql" file
          -- ℹ️ INFO: This is merely a backup safety measure used for restoration if needed
          deleteOwned = false
      },

      ----------------------------------------------
      --       📈 Customize the XP system
      ----------------------------------------------

      experience = {
          -- The number in these [brackets] are the level
          -- The number after = is the exp required to reach that level
          -- Be sure levels *always* start at level 1 with 0 exp
          [1] = 0,
          [2] = 5000,
          [3] = 10000,
          [4] = 25000,
          [5] = 75000,
          -- You can add or remove levels as you wish
      },

      ----------------------------------------------
      --       🚗 Customize chop vehicles
      ----------------------------------------------

      vehicles = {
          "alpha", "asea", "baller", "banshee", "bjxl", "buccaneer", "bullet", "carbonizzare", "cavalcade2", "coquette",
          "dubsta", "dukes", "emperor", "exemplar", "f620", "felon", "felon2", "furoregt", "futo", "glendale",
          "huntley", "ingot", "intruder", "jackal", "jester", "manana", "massacro", "ninef", "patriot", "peyote", "phoenix",
          "picador", "premier", "primo", "radi", "rapidgt", "rapidgt2", "regina", "rhapsody", "rocoto", "sabregt", "schafter2",
          "schwarzer", "sentinel", "stanier", "stratum", "sultan", "superd", "surano", "tornado", "vigero", "voltic"
      },

      ----------------------------------------------
      --        🔨 Customize chopping
      ----------------------------------------------

      chopping = {
          wheels = {
              [0] = { -- Front left tire
                  difficulty = { 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 10000
              },
              [1] = { -- Front right tire
                  difficulty = { 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 10000
              },
              [2] = { -- Rear left tire
                  difficulty = { 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 10000
              },
              [3] = { -- Rear right tire
                  difficulty = { 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 10000
              }
          },
          doors = {
              [0] = { -- Front driver door
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 12500
              },
              [1] = { -- Front passenger door
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 12500
              },
              [2] = { -- Rear driver door
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 12500
              },
              [3] = { -- Rear passenger door
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 12500
              },
              [4] = { -- Hood
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 15000
              },
              [5] = { -- Trunk
                  difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy' },
                  inputs = { 'E' },
                  duration = 15000
              },
          },
          frame = { -- The frame/chassis
              difficulty = { 'easy', 'easy', 'easy', 'easy', 'easy', 'easy' },
              inputs = { 'E' },
              duration = 25000
          }
      },

      ----------------------------------------------
      --       💰 Customize chop rewards
      ----------------------------------------------

      rewards = {
          -- The number in these [brackets] are the player level
          [1] = {
              -- The min/max amount of "ls_auto_parts" rewarded for each part chopped
              wheels = { min = 1, max = 3 },
              doors = { min = 2, max = 4 },
              frame = { min = 5, max = 10 },
              -- The min/max amount of XP rewarded when completing a chop job
              xp = { min = 25, max = 35 },
              -- The percentage at which chopping parts duration is reduced for this level
              speed = 0
          },
          [2] = {
              wheels = { min = 2, max = 4 },
              doors = { min = 3, max = 5 },
              frame = { min = 6, max = 12 },
              xp = { min = 35, max = 50 },
              speed = 15
          },
          [3] = {
              wheels = { min = 3, max = 5 },
              doors = { min = 4, max = 6 },
              frame = { min = 7, max = 14 },
              xp = { min = 50, max = 75 },
              speed = 30
          },
          [4] = {
              wheels = { min = 4, max = 6 },
              doors = { min = 5, max = 7 },
              frame = { min = 8, max = 16 },
              xp = { min = 75, max = 100 },
              speed = 45
          },
          [5] = {
              wheels = { min = 5, max = 7 },
              doors = { min = 6, max = 8 },
              frame = { min = 9, max = 18 },
              xp = { min = 100, max = 150 },
              speed = 60
          }
      },

      ----------------------------------------------
      --          🗺️ Assign chop zones
      ----------------------------------------------

      zones = {
          vec3(1565.1211, -2161.1277, 77.5340),
          vec3(1134.0985, -793.7753, 57.5917),
          vec3(-84.7814, -2225.9697, 7.8117),
          vec3(-467.7876, -1678.4623, 19.0395),
          vec3(1596.7920, -1709.7660, 88.1285),
          vec3(833.9869, -1405.5132, 26.1511),
          vec3(970.2102, -1632.1747, 30.1107),
          vec3(248.3347, 380.5432, 105.5951),
          vec3(-69.7967, 83.2294, 71.5020),
          vec3(-1315.3870, -1257.1395, 4.5771),
          vec3(-443.0953, -2282.7065, 7.6081),
          vec3(-1597.3135, -1008.8568, 7.6894),
          -- You can add or remove locations as you wish
      },

      ----------------------------------------------
      --      🔨 Customize chop shop items
      ----------------------------------------------

      items = {
          -- The main item rewarded when a vehicle part is chopped
          auto_parts = 'ls_auto_parts',
          -- The torch item used to remove doors/frame from vehicle
          torch = {
              -- The item spawn name
              item = 'ls_torch',
              -- Do you want to require the player have a torch to chop?
              require = true,
              -- Should this item be removed on each use?
              remove = false,
              -- Percentage chance this item breaks on failed skillcheck
              -- Set chance to 0 to disable break chance
              break_chance = 20
          },
          lug_wrench = {
              -- The item spawn name
              item = 'ls_lug_wrench',
              -- Do you want to require the player have a lug wrench to chop?
              require = true,
              -- Should this item be removed on each use?
              remove = false,
              -- Percentage chance this item breaks on failed skillcheck
              -- Set chance to 0 to disable break chance
              break_chance = 20
          },
          vehicle_finder = {
              -- The item spawn name
              item = 'ls_vehicle_finder',
              -- Should this item be removed on each use?
              remove = false,
              -- How far the detector searches for vehicles
              -- 424 is the maximum "focus zone" with FiveM OneSync
              -- Anything higher than this will not work
              radius = 424,
              -- How long (in seconds) the vehicle finder lasts
              duration = 60,
              -- Customize blip related settings
              blips = {
                  -- The blip sprite ID
                  sprite = 225,
                  -- The blip color ID
                  color = 1,
                  -- The blip scale
                  scale = 0.8,
                  -- The blip name
                  name = 'Discovered Vehicle',
              }
          }
      },

      ----------------------------------------------
      --          🛒 Customize shops
      ----------------------------------------------

      shops = {
          -- ⚠️ The shops below are added to the main chop shop menu when enabled!
          -- The swap shop is a shop where players can exchange their ls_auto_parts
          -- For whatever items you wish, such as materials, illegal items, etc
          swap = {
              -- Optionally disable this shop if you wish
              enable = true,
              -- This shop specifically only accepts an item as payment
              -- You cannot use traditional methods of cash/bank/etc
              account = 'ls_auto_parts',
              -- Items available for swapping in this shop
              items = {
                  -- item: item spawn name
                  -- price: price of item in ls_auto_parts
                  -- quantity: amount of item given for price
                  -- icon: icon for item
                  -- level: optional level requirement to buy item
                  -- metadata: optional metadata for item
                  [1] = { item = 'plastic', price = 1, quantity = 1, icon = 'recycle' },
                  [2] = { item = 'aluminium', price = 1, quantity = 1, icon = 'recycle' },
                  [3] = { item = 'copper', price = 1, quantity = 1, icon = 'recycle' },
                  -- Add or remove items as you wish
              }
          },
          tool = {
              -- Optionally disable this shop if you wish
              enable = true,
              -- Use cash or bank when purchasing here?
              account = 'cash',
              -- Items available for sale in this shop
              items = {
                  -- item: item spawn name
                  -- price: price of item
                  -- icon: icon for item
                  -- level: optional level requirement to buy item
                  -- metadata: optional metadata for item
                  [1] = { item = 'ls_torch', price = 1250, icon = 'fire-flame-curved' },
                  [2] = { item = 'ls_lug_wrench', price = 750, icon = 'wrench' },
                  [3] = { item = 'ls_vehicle_finder', price = 4500, icon = 'satellite-dish' },
                  -- Add or remove items as you wish
              }
          }
      },

  }
  ```

  ```lua config/client.lua expandable theme={null}
  return {
      ----------------------------------------------
      --     📊 Customize stats & leaderboard
      ----------------------------------------------

      -- Don't want to show the stats menu option at all?
      -- Set all stats below to false!
      stats = {
          -- Do you want to show the total vehicles chopped stat?
          vehicles = true,
          -- Do you want to show the total parts received stat?
          parts = true
      },

      -- Do you want to display the leaderboard?
      -- This shows the top 10 divers by XP
      -- 🗒️ Note: the leaderboard is not updated constantly
      -- It is only updated on server restarts & player logouts
      leaderboard = true,

      ----------------------------------------------
      --          🗺️ Customize blips
      ----------------------------------------------

      blips = {
          -- The location of the starting/main ped
          start = {
              -- Enable or disable the blip
              enable = true,
              -- Sprite ID (https://docs.fivem.net/docs/game-references/blips/)
              sprite = 225,
              -- Color (https://docs.fivem.net/docs/game-references/blips/#blip-colors)
              color = 2,
              -- Size/scale
              scale = 0.9,
              -- Label
              label = 'Chop Shop'
          },
          -- The available chop zones
          zones = {
              enable = true,
              sprite = 225,
              color = 0,
              scale = 0.9,
              label = 'Chop Zones'
          }
      },

      ----------------------------------------------
      --     💃 Customize animations & props
      ----------------------------------------------

      anims = {
          chopWheel = {
              part1 = {
                  dict = 'anim@amb@clubhouse@tutorial@bkr_tut_ig3@',
                  clip = 'machinic_loop_mechandplayer'
              },
              part2 = {
                  label = 'Removing part..',
                  description = 'Using your lug wrench you start to remove the wheel',
                  icon = 'fas fa-wrench',
                  duration = nil,
                  position = 'bottom',
                  useWhileDead = false,
                  canCancel = true,
                  disable = { move = true, car = true, combat = true },
                  anim = { },
                  prop = { }
              }
          },
          chopDoor = {
              part1 = {
                  dict = 'amb@world_human_welding@male@base',
                  clip = 'base',
                  fx = {
                      dict = 'scr_ih_fin',
                      name = 'scr_ih_fin_torch_lock_cutting',
                      pos = vec3(-0.18, 0.15, 0.0),
                      rot = vec3(0.0, 0.0, 0.0),
                      scale = 1.0
                  },
                  prop = {
                      model = 'prop_weld_torch',
                      pos = vec3(-0.01, 0.03, 0.02),
                      rot = vec3(0.0, 0.0, -1.5)
                  }
              },
              part2 = {
                  label = 'Removing part..',
                  description = 'Using your torch you start to remove the door',
                  icon = 'fas fa-fire',
                  duration = nil,
                  position = 'bottom',
                  useWhileDead = false,
                  canCancel = true,
                  disable = { move = true, car = true, combat = true },
                  anim = { },
                  prop = { }
              }
          },
          chopFrame = {
              part1 = {
                  dict = 'amb@world_human_welding@male@base',
                  clip = 'base',
                  fx = {
                      dict = 'scr_ih_fin',
                      name = 'scr_ih_fin_torch_lock_cutting',
                      pos = vec3(-0.18, 0.15, 0.0),
                      rot = vec3(0.0, 0.0, 0.0),
                      scale = 1.0
                  },
                  prop = {
                      model = 'prop_weld_torch',
                      pos = vec3(-0.01, 0.03, 0.02),
                      rot = vec3(0.0, 0.0, -1.5)
                  }
              },
              part2 = {
                  label = 'Scrapping frame..',
                  description = 'You finish up the job by scrapping the frame',
                  icon = 'fas fa-fire',
                  duration = nil,
                  position = 'bottom',
                  useWhileDead = false,
                  canCancel = true,
                  disable = { move = true, car = true, combat = true },
                  anim = { },
                  prop = { }
              }
          },
          createGroup = {
              label = 'Creating group..',
              icon = 'fas fa-users',
              duration = 1000,
              position = 'bottom',
              useWhileDead = false,
              canCancel = true,
              disable = { car = true, move = true, combat = true },
              anim = { },
              prop = { }
          },
      }
  }
  ```

  ```lua config/server.lua expandable theme={null}
  return {
      ----------------------------------------------
      --        💬 Setup logging system
      ----------------------------------------------

      logs = {
          -- What logging service do you want to use?
          -- Available options: 'fivemanage', 'fivemerr', 'discord' & 'none'
          -- It is highly recommended to use a proper logging service such as Fivemanage or Fivemerr
          service = 'none',
          -- Do you want to include screenshots with your logs?
          -- This is only applicable to Fivemanage and Fivemerr
          screenshots = false,
          -- You can enable (true) or disable (false) specific player events to log here
          events = {
              -- Log when a player chops a part from a vehicle
              partChopped = false,
              -- Log when a player breaks a tool
              toolBroke = false,
              -- Log when a player purchases an item from the tool shop
              itemPurchased = false,
              -- Log when a player swaps an item from the swap shop
              itemSwapped = false,
          },
          -- If service = 'discord', you can customize the webhook data here
          -- If not using Discord, this section can be ignored
          discord = {
              -- The name of the webhook
              name = 'Chop Shop',
              -- The webhook link
              link = '',
              -- The webhook profile image
              image = 'https://i.imgur.com/ILTkWBh.png',
              -- The webhook footer image
              footer = 'https://i.imgur.com/ILTkWBh.png'
          }
      },

  }
  ```
</CodeGroup>
