İçeriğe geç

Araç Paketi Doğrulayıcı

Bir FiveM araç resource klasörünü bırak ve rapor al: handling'i olmayan modeller, eşleşmeyen handling id'leri, eksik carcols ya da carvariations girdileri, eksik .yft/.ytd dosyaları, eksik _hi modeller, hatalı ya da eksik data_file satırları, tekrar eden isimler ve fazlası, her biri çözümüyle birlikte.

Bu araç ve notları şimdilik İngilizce.

Config ve KodAraçlar, DoğrulamaDokümanları oku

How to use it

Drop the resource folder (the one with fxmanifest.lua), a whole [cars] folder with many resources, or a .zip. Dropping several car resources at once also finds conflicts between them: the same model twice, shared kit or siren ids, and stream files that overwrite each other. Everything stays in your browser.

Each finding says where the problem is (file and line) and what to change. The Vehicles tab shows every model with the files it links to, and the fxmanifest tab has a manifest built from what is really in the folder. The report downloads as Markdown for a ticket or a Discord post.

What it checks

fxmanifest and data_file

  • Every meta needs a data_file line with the right type and must be in files { }, or clients never download it. Types: VEHICLE_METADATA_FILE (vehicles.meta),HANDLING_FILE, CARCOLS_FILE, VEHICLE_VARIATION_FILE (carvariations),VEHICLE_LAYOUTS_FILE. The type is checked against what the file contains, not its name.
  • DLCTEXT_FILE is in many templates but is not a type FiveM has a loader for, so it does nothing. Car names come from AddTextEntry in a client script.
  • Order: FiveM moves HANDLING_FILE and VEHICLE_LAYOUTS_FILE to the front on its own and keeps the rest in manifest order. Rockstar's DLCs load vehicles.meta, then carcols.meta, then carvariations.meta.
  • Globs follow FiveM's rules: * stays inside one folder, ** matches any number of folders. Paths that only match with different upper/lower case are flagged because they break on Linux hosts.
  • Engine sounds: AUDIO_GAMEDATA points at name_game.dat for the filename_game.dat151.rel, AUDIO_SOUNDDATA at the .dat54.rel,AUDIO_WAVEPACK at the folder with the .awc files. Audio data files can't use wildcards.

Links between the metas

  • modelName needs a matching .yft in stream/, plus _hi.yft for the close up model.
  • txdName needs a .ytd (or a base game dictionary). txd parents must exist.
  • handlingId must match a handlingName. Base game handling names are allowed but reported.
  • layout must be a base game layout or be defined in a loaded vehiclelayouts.meta.
  • carvariations kits must exist in a carcols.meta, sirenSettings must point at a siren id that exists.
  • audioNameHash must be a base game car or a sound in the pack.

Ids and sizes

  • Names and ids are compared with the base game: 935 model names, 827 handling names, 386 layouts, mod kit ids 0 to 640 and 999, siren ids 0 to 20. A kit or siren id the game already uses mixes up tuning parts or light patterns.
  • Siren ids above 255 wrap around in FiveM (only 8 bits are kept), so 300 acts as 44. Seecitizenfx/fivem issue 2612.
  • Memory size is the same number the server prints as "Asset uses X MiB of physical memory". Over 16 MiB is a warning, over 48 MiB is an error because FiveM says those "can and WILL lead to streaming issues". When it can't be read (escrowed files), the file size is shown instead and labelled as such.

Limits

  • It checks metas and file sizes. It does not open the models, so it can't see a broken mesh, missing bones or a wrong embedded texture.
  • Escrowed (.fxap) stream files are encrypted, so their memory size is estimated from the file size.
  • A sound that another resource provides can't be seen from here. The finding says so instead of calling it broken.
  • Normal zip files work. Password protected zips and 7z/rar need to be extracted first.
  • The sample pack is made up: invented names and placeholder model files, no game or author data.

Sources