Skip to content

mmVehiclesMetaMerger v2.0.3

Choose a tag to compare

@github-actions github-actions released this 24 Aug 01:50
· 5 commits to main since this release
9b2098e

Tool made to easily merge multiple GTA 5 vehicle meta files, now with a desktop interface.

Downloads

File What it is
...-portable.exe No install. Drop it in a folder and run it. Recommended.
...-setup.exe Normal installer, adds a Start Menu shortcut.

The portable build creates vehicles_meta/, carcols_meta/, carvariations_meta/, handling_meta/, vehiclelayouts_meta/ and output/ next to itself, exactly like the console version did.

What is new

A desktop interface. No more console menu. All sixteen operations are laid out and grouped Merge / Import / Tools, with live counts of what is staged in each working folder, a folder picker for the source directory, the merged output files listed for one-click reveal in Explorer, and the console output streamed into an activity log.

Option 13: Import all + Emergency Flags. Does what option 12 does, then merges, then appends these to every vehicle in the merged output/vehicles.meta:

  • FLAG_LAW_ENFORCEMENT
  • FLAG_EMERGENCY_SERVICE
  • FLAG_REPORT_CRIME_IF_STANDING_ON

A flag a vehicle already carries is never written twice, and flags it already had are kept. Empty flag elements are filled in. Everything outside the flag elements is left byte-for-byte identical.

The old options 13, 14 and 15 are now 14, 15 and 16.

The merging engine is unchanged

src/core.js is a mechanical, byte-for-byte extraction of the merge and import functions from app.js. Only the terminal-specific seams were swapped so a window can drive them. app.js is untouched and still runs as the original command line tool via npm run cli.

Fixed since 2.0.0

vehicles.meta silently failing to merge (2.0.1). One odd file anywhere in the batch — a different root element, a missing <InitDatas> block, or invalid XML — threw an error that was swallowed internally, so output/vehicles.meta was never rewritten and you were left looking at the previous run's file. Every other meta type was unaffected, which is what made it confusing. Bad files are now named, written to errors.txt and skipped, and everything else still merges.

Extract model names only returning one vehicle per file (2.0.2). It read only the first <Item> in each file, so a vehicles.meta holding several vehicles exported just the first and silently dropped the rest. It now walks every entry.

Numbered meta files being ignored (2.0.3). This is the big one. A FiveM resource can declare the same data_file type several times, so packs routinely ship vehicles.meta, vehicles1.meta, vehicles2.meta and so on. The importer matched the exact name vehicles.meta only, so it found one file and silently skipped every other car in the pack. handling.meta usually being a single shared file is why that one always looked correct. All five importers now match numbered variants and are case-insensitive, and the import step reports how many files it found.

Both merge and extract steps now report their counts, for example "47 vehicle(s) from 12 file(s)", so a skipped file is visible instead of silent.


Original tool by mmleczek.