Vai al contenuto
Mod Converter

Mod Converter

Turn a GTA5-Mods car, weapon, ped or clothing pack into a FiveM resource: what it accepts, what it writes, how it tells the kinds apart, and what to do with an encrypted dlc.rpf.

Per ora questa documentazione è in inglese.

Open the tool Last updated

The Mod Converter takes a mod the way you downloaded it and gives back a FiveM resource: a stream/ folder with the model files named the way the game looks them up, the metas it needs, and an fxmanifest.lua that loads all of it. It handles cars, weapons, peds and freemode clothing. Everything runs in your browser. No file is uploaded anywhere.

What it is for

A GTA V mod and a FiveM resource are not the same thing. A mod expects you to drop a dlc.rpf into dlcpacks and edit dlclist.xml, which FiveM cannot do: it refuses to load extra DLC archives, so the pack has to be unpacked into loose stream files plus data_file lines in a manifest. Doing that by hand means reading five metas, matching model names to file names, guessing which data_file type each meta needs and hoping you did not miss one.

This tool does that part. It is for server owners installing something they bought or downloaded, and for anyone who keeps converting the same kind of pack over and over.

Quick start

  1. Open the tool and use Choose a folder (the folder you unzipped), Open a .zip or .rpf, or drag the folder, zip or dlc.rpf onto the card.
  2. Wait for it to read the files. A big pack with a dlc.rpf takes a second or two.
  3. Read the verdict at the top: what it found, how many things it had to fill in, and how many checks failed.
  4. Look through What it found. Every car, weapon, ped and clothing slot gets a card, with a note for anything that was renamed, copied or generated.
  5. Change the resource name or any of the switches if you want. The conversion runs again immediately.
  6. Press Download the resource, unzip it into your server’s resources folder and add ensure <name> to server.cfg.

No mod at hand? Try a sample loads a made up one, broken in the usual ways.

Note

The resource folder is named fivemad_<the mod's name> by default, so you can see at a glance where a folder in your resources list came from. It is an editable field. Change it to whatever you like before you download.

What it converts

Kind What goes in What comes out
Car .yft, _hi.yft, .ytd, tuning parts, the vehicle metas stream/ plus data/ with HANDLING_FILE, VEHICLE_METADATA_FILE and the rest
Weapon the w_ models and the weapon metas stream/ plus data/ with WEAPONINFO_FILE and the rest
Ped <model>.ydd + .ytd, or <model>.yft plus a folder of component files stream/ plus data/peds.meta and data_file 'PED_METADATA_FILE'
Freemode clothing jbib_000_u.ydd, jbib_diff_000_a_uni.ytd, p_head_000.ydd and friends either a collection of its own, or a replacement of the drawables the mod names. See Clothing

How it tells them apart

From the metas that parsed and from the file names, never from the mesh.

A car ships a model and its _hi twin. A weapon model is called w_…. A ped is named after itself. The one that needs care is a ped against clothing, because both are skinned drawables and look identical to a file reader.

The rule is the name. A file called jbib_000_u.ydd, uppr_diff_003_a_whi.ytd or p_head_000.ydd is a component of some ped, never a ped. Which ped it belongs to is the only question left:

  • a mp_m_freemode_01^ or mp_f_freemode_01_<collection>^ prefix: freemode clothing
  • a prefix or a folder named after anything else, with that name’s .yft next to it: that ped’s own component files
  • nothing says: freemode clothing, because that is what a loose jbib_000_u.ydd on gta5-mods is

What it accepts

Loose files

The common case. A folder with car.yft, car_hi.yft, car.ytd, or myped.ydd and myped.ytd, or a pile of jbib_*.ydd and jbib_diff_*.ytd. It does not matter how deep the files are nested, what the folders are called or whether the names are in capitals.

A readme with the metas pasted in

A lot of mods print the vehicles.meta, handling.meta, carcols.meta and carvariations.meta blocks inside a text file and tell you to paste them in yourself. Those blocks are read straight out of the text and turned back into real meta files. The report says which parts came from the readme, so you know which values were never in a file.

An existing FiveM resource

Drop one that already has stream/ and an fxmanifest.lua and it is read, corrected and written out again: a data_file type that does not exist gets the right one, a meta that was never listed in files { } gets listed, and a glob that matched nothing becomes a real path.

An add-on dlc.rpf

See About dlc.rpf below. In short: one a modder built opens here, one taken from the game does not.

Several cars in one download

You choose one resource for the whole pack, or one resource per car so you can start and stop them separately.

Warning

.rar and .7z cannot be opened in a browser. Unpack those with 7-Zip or WinRAR first and drop the folder. A .oiv installer is a zip with a different extension, so renaming it to .zip usually works.

About dlc.rpf

Whether a dlc.rpf opens here comes down to one number in its first 16 bytes.

  • An archive a modder built in OpenIV or CodeWalker is written with its file table unencrypted. The models, textures and metas come straight out and the conversion is the same as for loose files. This is what most add-on packs on gta5-mods are.
  • An archive taken out of the game, or one run through ArchiveFix so it works without OpenIV.asi, is encrypted with a key that only exists inside GTA5.exe. This site does not carry game keys and will not, so it cannot be opened here.

When you drop the second kind the tool says so, names the archive and tells you what to do: open it in OpenIV or CodeWalker on your own machine, drag out the .yft, the .ytd and the data folder, and drop those here instead. It does not fail with a vague error and it does not pretend to have tried.

What it writes

Path What is in it
stream/ The model and texture files, renamed the way the game looks them up
data/ The metas, one file per kind (peds.meta for a ped)
<ped>_<collection>.meta A clothing collection’s ShopPedApparel meta, at the resource root
convert_in_codewalker/ A clothing collection’s .ymt XML, the one file a browser cannot compile
fxmanifest.lua fx_version 'cerulean', game 'gta5', a files { } list and one data_file line per meta
client.lua An AddTextEntry per car or weapon, so menus show a real name
README.md The same report you see on the page, so it travels with the resource

Stream names follow the game, not the download:

  • a car’s model becomes <modelName>.yft and its textures <txdName>.ytd
  • a ped’s files become <model>.ydd / .ytd / .yft; a ped whose components sat in a folder inside the archive keeps that folder in the name with a caret, <model>^uppr_000_r.ydd, which is how FiveM flattens a streamed ped. Its props go in as <model>_p^p_head_000.ydd and the entry names them with <PropsName>
  • clothing becomes <ped>_<collection>^jbib_000_u.ydd in a collection, or <ped>^jbib_000_u.ydd as a replacement

A meta the mod shipped as one clean file is copied through as it is, values and all. It is only rebuilt when something had to change: two files of the same kind merged into one, entries recovered from a readme, or a mod kit wired up to the car that was supposed to use it. The Files tab says, per file, where it came from.

data_file types

The type is picked from what is inside the file, not from its name, so a meta saved as vehicles.meta.txt or handling.xml still gets the right line.

Vehicles:

fxmanifest.lua
data_file 'HANDLING_FILE' 'data/handling.meta'
data_file 'VEHICLE_LAYOUTS_FILE' 'data/vehiclelayouts.meta'
data_file 'VEHICLE_METADATA_FILE' 'data/vehicles.meta'
data_file 'CARCOLS_FILE' 'data/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/carvariations.meta'
data_file 'CONTENT_UNLOCKING_META_FILE' 'data/contentunlocks.meta'
data_file 'VEHICLE_SHOP_DLC_FILE' 'data/shop_vehicle.meta'

Weapons:

fxmanifest.lua
data_file 'WEAPONINFO_FILE' 'data/weapons.meta'
data_file 'WEAPON_METADATA_FILE' 'data/weaponarchetypes.meta'
data_file 'WEAPON_ANIMATIONS_FILE' 'data/weaponanimations.meta'
data_file 'WEAPONCOMPONENTSINFO_FILE' 'data/weaponcomponents.meta'
data_file 'PED_PERSONALITY_FILE' 'data/pedpersonality.meta'
data_file 'LOADOUTS_FILE' 'data/loadouts.meta'
data_file 'DLC_WEAPON_PICKUPS' 'data/pickups.meta'

Peds and clothing:

fxmanifest.lua
data_file 'PED_METADATA_FILE' 'data/peds.meta'
data_file 'SHOP_PED_APPAREL_META_FILE' 'mp_m_freemode_01_mybrand.meta'
data_file 'ALTERNATE_VARIATIONS_FILE' 'data/pedalternatevariations.meta'
data_file 'PED_OVERLAY_FILE' 'data/overlays.xml'

They are written in the order Rockstar’s own DLCs load them, which rules out a class of problem where a mod kit loads before the car that uses it.

Two types people write that do not exist get corrected on the way through. DLCTEXT_FILE is not a type FiveM has a loader for, so a line using it loads nothing: dlctext.meta is dropped and the names go into client.lua instead. And shop_vehicle.meta is VEHICLE_SHOP_DLC_FILE, not VEHICLE_SHOP_FILE.

When the mod is missing something

Nothing is invented quietly. Every one of these is a switch you can turn off, and every one is reported when it fires.

Missing What happens
handling.meta An entry is written from one of the templates in the Vehicle Handling Editor, and the report says the numbers are not the author’s. Turn the switch off and it tells you to supply one instead.
_hi.yft The normal model is copied to that name, so the car does not flicker or fall through the world up close. It will not look sharper up close until the author ships a real one.
carvariations entry One is written with the default colour and 0_default_modkit, so tuning menus are not empty.
vehicles.meta One is generated from the model files, with LAYOUT_STANDARD and class VC_SPORT.
.ytd Nothing is generated. A texture dictionary cannot be made up, so the report says the car will render untextured and that the file has to come from the mod.
peds.meta entry One is written from a real base game civilian entry. The ped then walks, talks and reacts like an ambient ped. Change the ped type, the walk and the voice in data/peds.meta if it should be something else.
pedalternatevariations.meta Nothing is generated. Hair that has to shrink under a hat, or a shoe with a heel, needs one; a file the mod ships is carried over, one is never invented.

Important

A car with generated handling drives on template numbers, not the ones the mod author tuned. Open it in the Vehicle Handling Editor before it goes on a live server.

Clothing: add it or replace something

These are two different resources, not two settings of one, and it is the thing people get wrong.

Add it as a collection (the default)

The pack gets a name of its own and the clothes get drawable numbers of its own, so nothing the base game ships is touched. Your players keep every outfit they had, and the new ones sit after them.

Text
fivemad_mybrand/
  fxmanifest.lua
  mp_m_freemode_01_mybrand.meta          <- ShopPedApparel
  stream/
    mp_m_freemode_01_mybrand.ymt         <- you make this, see below
    mp_m_freemode_01_mybrand^jbib_000_u.ydd
    mp_m_freemode_01_mybrand^jbib_diff_000_a_uni.ytd
  convert_in_codewalker/
    mp_m_freemode_01_mybrand.ymt.xml

A .ymt is a binary RAGE meta container and a browser cannot compile one, so the XML ships instead. Open it in CodeWalker (RPF Explorer, Tools, Import XML), put the .ymt it writes into stream/, delete convert_in_codewalker/, and the collection is done. Until then the clothes are streamed but the game does not know they exist. The YMT Creator opens the same XML if you want to change a slot, a texture race or a heel height by hand.

Replace the drawables it names

The files keep the numbers the mod gave them and stream as mp_m_freemode_01^jbib_000_u.ydd, which overwrites that exact drawable for every player on the server. Nobody keeps the outfit that was there before.

Text
fivemad_mybrand/
  fxmanifest.lua
  stream/
    mp_m_freemode_01^jbib_000_u.ydd
    mp_m_freemode_01^jbib_diff_000_a_uni.ytd

No meta and no data_file line. A streamed file whose name is the ped, a caret and the drawable is read instead of the game’s own copy, and that is the whole resource.

Which one you get

Left on Whatever the mod’s own file names say, a pack whose files already carry a freemode ped name and a caret is converted as a replacement, because that prefix is the author naming the drawable they meant to take. Everything else is added as a collection. Both choices are in the dropdown at all times.

Warning

Each add-on collection uses one of the freemode ped’s spare .ymt slots and current game builds only have about three per gender. If a collection’s clothes never show up and nothing is in the server log, that is the first thing to check.

Add-on or replace

A lot of car downloads ship both halves: an Add-On folder with the car under its own model name, and a Replace folder with the same car under a base game name.

Converting both would give you the same car twice, so the add-on is taken by default and the other half is left out, with a note saying so. You can switch to the replace version, but understand what it does: every car of that model on the server becomes this one, traffic included, and any other resource that touches the same model fights with it.

The checks tab

For a car or a weapon, the output is run through the Vehicle Pack Validator before you download anything, the same checks you would run on the finished resource. That is there so a conversion can never hand you something that tool would reject. A ped or a clothing resource gets no checks tab: that validator is a vehicle tool and would only report that the resource is not a car.

Anything still listed there is a fact about the mod’s own assets, not a wiring problem. The usual one is an oversized .ytd: FiveM warns about anything over 16 MiB of memory and says assets over 48 MiB will cause streaming problems. The YTD Optimizer shrinks those.

Limits

  • It does not open the models. A broken mesh, a missing bone or a wrong embedded texture is not something it can see. Use the Drawable Studio for that.
  • A clothing collection is not finished until the .ymt XML is imported in CodeWalker. Nothing in a browser can write that file.
  • A ped’s .ymt variation file is carried over when the mod ships one and is never written from nothing. A ped that needs one and has none shows only its first component.
  • An encrypted .rpf cannot be opened, and neither can a password protected zip.
  • Engine sound packs are carried over with their data_file lines, but the sounds themselves are not checked.
  • A very large pack is read into memory, so a multi gigabyte archive is better unpacked first.
  • The sample is made up: invented names, placeholder model files, no game or author data.

Credit

The models, textures and metas in a converted resource belong to whoever made the mod. This tool only repacks them. Check the mod’s own licence before you put it on a public server or redistribute it.