Chopshop
Chopshop Config (chopshop.lua
)
chopshop.lua
)The Chopshop system defines how vehicles are dismantled, which parts can be removed, what tools are required, and how skillchecks are handled. This config controls the entire chopshop process.
Example Config
Config.Chopshop = {
Doors = {
[0] = { index = 0, boneName = 'door_dside_f', label = 'Driver Door' },
[1] = { index = 1, boneName = 'door_pside_f', label = 'Passenger Door' },
[2] = { index = 2, boneName = 'door_dside_r', label = 'Rear Driver Door' },
[3] = { index = 3, boneName = 'door_pside_r', label = 'Rear Passenger Door' },
[4] = { index = 4, boneName = 'bonnet', label = 'Hood' },
[5] = { index = 5, boneName = 'boot', label = 'Trunk' },
},
Parts = {
['door-0'] = { reward = 'door', itemRequired = 'saw'},
['door-1'] = { reward = 'door', itemRequired = 'saw'},
['door-2'] = { reward = 'door', itemRequired = 'saw'},
['door-3'] = { reward = 'door', itemRequired = 'saw'},
['door-4'] = { reward = 'hood', itemRequired = 'saw'},
['door-5'] = { reward = 'trunk', itemRequired = 'saw'},
['wheel-0'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-1'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-2'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-3'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-4'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-5'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-6'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-7'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-8'] = { reward = 'wheel', itemRequired = 'drill'},
['wheel-9'] = { reward = 'wheel', itemRequired = 'drill'},
['battery'] = { reward = 'battery', itemRequired = 'screwdriverset'},
['exhaust'] = { reward = 'exhaust', itemRequired = 'screwdriverset'},
},
Skillcheck = {
["d"] = {
difficulties = { "easy", "easy", { areaSize = 60, speedMultiplier = 1.2 } },
inputs = { "w", "a", "s", "d" }
},
["c"] = {
difficulties = { "easy", "medium", { areaSize = 50, speedMultiplier = 1.5 } },
inputs = { "w", "a", "s", "d", "e" }
},
["b"] = {
difficulties = { "medium", "medium", "hard" },
inputs = { "q", "e", "w", "a", "s", "d" }
},
["a"] = {
difficulties = { "hard", { areaSize = 30, speedMultiplier = 2.0 }, "hard" },
inputs = { "q", "e", "z", "x", "c" }
},
["s"] = {
difficulties = { { areaSize = 20, speedMultiplier = 2.2 }, "hard", "hard" },
inputs = { "q", "e", "z", "x", "c" }
}
}
}
Explanation of Settings
Doors
Defines the vehicle doors and their labels for reference.
index – door index used in GTA natives.
boneName – bone name in the model.
label – friendly name shown to players.
Parts
Defines which vehicle parts can be removed, their rewards, and required items.
reward – item given to the player after removing the part.
itemRequired – tool needed to dismantle the part (e.g.,
saw
,drill
,screwdriverset
).
Skillcheck
Controls the difficulty and inputs required when dismantling parts.
Keys (
d
,c
,b
,a
,s
) represent difficulty tiers (similar to GTA ranks).difficulties – list of steps or levels. Can be strings (
easy
,medium
,hard
) or objects with custom values (areaSize
,speedMultiplier
).inputs – keys the player must press during the skillcheck.
Example: Adding a New Part
['engine'] = { reward = 'engine_block', itemRequired = 'wrench' }
This would allow players to remove the engine using a wrench and get an engine_block
item as a reward.
Notes
You can expand the
Parts
list with as many custom components as you like.Adjust
Skillcheck
difficulties to balance how hard or easy dismantling feels.Use meaningful
reward
items that connect to your economy (e.g., sellable parts, crafting materials).
Last updated