DZR DevelopmentDZR Development
Skip to content

Modkit Editor

A free browser editor for FiveM carcols.meta mod kits - add parts, link replacement parts, check, and export.

[experimental]v0.1updated 2026-10-24
# on this page
Warning

The Modkit Editor is experimental. It is early, it may change or break, and its exports are not guaranteed to work. Keep your original files and test every export in game before using it on a live server.

The Modkit Editor edits the carcols.meta file that defines a vehicle's mod kit: the parts players can pick in the mod shop. It works on models you have already exported; it does not make or check models.

Your files stay in your browser. Nothing is uploaded, and there is no account or autosave, so export before you close the tab.

Build a mod kit

  1. Open the Modkit Editor and choose New kit, or Open carcols to edit an existing file. Open the complete original file if you want to keep its stock options.
  2. Add an option. Enter the model name (the .yft suffix is optional), the category, the shop label key, the attachment bone, and the collision bone.
  3. Add accompanying parts when one option should install several models at once. Give each part its model and attachment bone, then list every stock bone the option should hide.
  4. Apply the option, then open Metadata checks and fix any errors.
  5. Export a copy of carcols.meta. Export also gives you the kit reference for carvariations.meta, or updates one vehicle in a copy of that file.
  6. Add the files to your vehicle resource, register the shop labels, and test in game. Keep the originals until the result works.

Load example opens a sample kit with placeholder names to show how linked parts are set up.

Linked parts

One option can install several models. Each accompanying part keeps its own attachment bone, and several options can share the same part.

  • Blower with a cut-out bonnet: make it a bonnet option, as the base game does. Use the blower as the main model on engineblock, add the cut-out bonnet as an accompanying part on bonnet, and hide bonnet and the stock engine part's bone. As a bonnet option it cannot be combined with another bonnet mod.
  • Doors: one door option with the other doors as accompanying parts, each on its own door bone.
  • Mirrors: one mirror as the main model and the other as an accompanying part on the opposite door bone.

Hiding a bone hides only the stock geometry on it. Parts attached to that bone still show.

Bones

The bone list holds the standard GTA bone names. A vehicle can use any bone in its own skeleton, so other names are allowed with a warning: they must exist in the vehicle model, or the part will not attach or hide.

Collision

The collision bone picks which collision the part uses. How the base game sets it up:

  • chassis adds no collision of its own. Most base-game parts use it.
  • For a part with its own collision, the vehicle model has a mod_col_1 (mod_col_2, and so on) bone with a collision shape on it, set as the part's collision bone.
  • Base-game part models carry no collision of their own, and accompanying parts have no collision bone setting.

This comes from reading the game's files, not from testing in game. Check collision in game before you rely on it.

Kit ID

  • Each kit needs an ID no other loaded kit uses, across every resource on the server.
  • Base-game kits use IDs 0 to 640 and 999; the editor warns about those.
  • IDs from 1024 up, such as the default 60000, work only in FiveM. Avoid 65535; it may be read as no kit.

When the editor updates a vehicle in carvariations.meta, it puts the kit first and keeps the vehicle's other kits after it. Mod shops use the first kit.

Add it to your resource

Add both files to the vehicle resource's fxmanifest.lua:

data_file 'CARCOLS_FILE' 'data/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/carvariations.meta'

Shop labels are text keys. A key that is not registered shows as NULL in the mod shop. Register each one from a client script:

AddTextEntry('EXAMPLE_BIG', 'Big Blower')

Editing tools

  • Duplicate copies the whole option.
  • Bulk add creates one option per model name, using the selected option's settings. Their shop labels start empty.
  • Undo and Redo keep the last 60 edits in the open tab.
  • Unknown or unusual fields in an imported file are kept as they are until you edit them. Fields repeated with the same value are merged into one when you edit that option.

What it cannot check

  • The checks cover the file's structure, known values, ranges, and references inside the file. They cannot open models, check collision, or prove a part fits.
  • It does not edit performance upgrades or category names (statMods and slotNames). A new kit has none, so the shop offers no engine, brake, or horn upgrades for it until you add them.
  • Base-game vehicles keep their kits in a binary carcols.ymt. Convert it to XML with CodeWalker before opening it here.

Offline copy

The editor also runs offline from a zip: extract it, keep the files together, and open index.html in a current Chrome or Edge.

Sources

Need help with this? Open a ticket on Discord or read the support guide.